From e4f1de1eb94823053e742b84769de2d580d28af0 Mon Sep 17 00:00:00 2001 From: Alexandre Duret-Lutz Date: Wed, 10 Nov 2004 20:12:34 +0000 Subject: [PATCH] * m4/python.m4 (AM_PATH_PYTHON): Fix the invocation of AC_PATH_PROGS to correctly define PYTHON as `:' when no interpreter is found (this worked correctly only when a minimal version was passed to AM_PATH_PYTHON). Report from Stepan Kasal. (_AM_PYTHON_INTERPRETER_LIST): Define using m4_define_default, so we can easily override the list from the test suite. * tests/python11.test: New file. * tests/Makefile.am (TESTS): Add python11.test. --- ChangeLog | 9 +++++++ m4/python.m4 | 7 +++--- tests/Makefile.am | 1 + tests/Makefile.in | 1 + tests/python11.test | 58 +++++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 72 insertions(+), 4 deletions(-) create mode 100755 tests/python11.test diff --git a/ChangeLog b/ChangeLog index 99e421c42..4504f20d1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,14 @@ 2004-11-10 Alexandre Duret-Lutz + * m4/python.m4 (AM_PATH_PYTHON): Fix the invocation of + AC_PATH_PROGS to correctly define PYTHON as `:' when no interpreter + is found (this worked correctly only when a minimal version was + passed to AM_PATH_PYTHON). Report from Stepan Kasal. + (_AM_PYTHON_INTERPRETER_LIST): Define using m4_define_default, + so we can easily override the list from the test suite. + * tests/python11.test: New file. + * tests/Makefile.am (TESTS): Add python11.test. + * doc/automake.texi (Libtool Modules): Make clearer that -module should appear explicitly in _LDFLAGS. diff --git a/m4/python.m4 b/m4/python.m4 index 9d66d8876..168ef7513 100644 --- a/m4/python.m4 +++ b/m4/python.m4 @@ -51,16 +51,15 @@ AC_DEFUN([AM_PATH_PYTHON], dnl supported because the default installation locations changed from dnl $prefix/lib/site-python in 1.4 to $prefix/lib/python1.5/site-packages dnl in 1.5. - m4_define([_AM_PYTHON_INTERPRETER_LIST], - [python python2 python2.4 python2.3 python2.2 dnl + m4_define_default([_AM_PYTHON_INTERPRETER_LIST], + [python python2 python2.4 python2.3 python2.2 dnl python2.1 python2.0 python1.6 python1.5]) m4_if([$1],[],[ dnl No version check is needed. # Find any Python interpreter. if test -z "$PYTHON"; then - PYTHON=: - AC_PATH_PROGS([PYTHON], _AM_PYTHON_INTERPRETER_LIST) + AC_PATH_PROGS([PYTHON], _AM_PYTHON_INTERPRETER_LIST, :) fi am_display_PYTHON=python ], [ diff --git a/tests/Makefile.am b/tests/Makefile.am index b697c5fdc..f126d7904 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -417,6 +417,7 @@ python7.test \ python8.test \ python9.test \ python10.test \ +python11.test \ recurs.test \ recurs2.test \ remake.test \ diff --git a/tests/Makefile.in b/tests/Makefile.in index ec5c73802..31f799c4d 100644 --- a/tests/Makefile.in +++ b/tests/Makefile.in @@ -536,6 +536,7 @@ python7.test \ python8.test \ python9.test \ python10.test \ +python11.test \ recurs.test \ recurs2.test \ remake.test \ diff --git a/tests/python11.test b/tests/python11.test new file mode 100755 index 000000000..f88a5aa38 --- /dev/null +++ b/tests/python11.test @@ -0,0 +1,58 @@ +#! /bin/sh +# Copyright (C) 2004 Free Software Foundation, Inc. +# +# This file is part of GNU Automake. +# +# GNU Automake is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# GNU Automake is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Automake; see the file COPYING. If not, write to +# the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +# Boston, MA 02111-1307, USA. + +# Test missing python. + +# Python is not required for this test. +. ./defs || exit 1 + +set -e + +cat >>configure.in <<'EOF' +m4_define([_AM_PYTHON_INTERPRETER_LIST], [IShouldNotExist1 IShouldNotExist2]) +AM_PATH_PYTHON +# The following be executed only after the first run, once a +# third argument has been added to the previous macro. +echo PYTHON = $PYTHON +test "$PYTHON" = : || exit 1 +EOF + +: > Makefile.am + +$ACLOCAL +$AUTOCONF + +./configure >stdout 2>stderr && exit 1 +cat stdout +cat stderr +grep 'checking for IShouldNotExist1' stdout +grep 'checking for IShouldNotExist2' stdout +grep 'no suitable Python interpreter found' stderr + +$PERL -pi -e 's/AM_PATH_PYTHON/AM_PATH_PYTHON(,,:)/' configure.in +$ACLOCAL +$AUTOCONF +# This one should define PYTHON as : and exit succesfully +./configure + +# Any user setting should be used. +./configure PYTHON=foo >stdout && exit 1 +cat stdout +grep 'PYTHON = foo' stdout -- 2.47.2