automake-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

FYI: fix AM_PATH_PYTHON's unversioned check in case python is not found


From: Alexandre Duret-Lutz
Subject: FYI: fix AM_PATH_PYTHON's unversioned check in case python is not found
Date: Wed, 10 Nov 2004 21:12:04 +0100
User-agent: Gnus/5.1003 (Gnus v5.10.3) Emacs/21.3.50 (gnu/linux)

I'm installing this on HEAD and branch-1-9.

2004-11-10  Alexandre Duret-Lutz  <address@hidden>

        * 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.

Index: m4/python.m4
===================================================================
RCS file: /cvs/automake/automake/m4/python.m4,v
retrieving revision 1.17
diff -u -r1.17 python.m4
--- m4/python.m4        26 Mar 2004 21:00:47 -0000      1.17
+++ m4/python.m4        10 Nov 2004 20:05:18 -0000
@@ -51,16 +51,15 @@
   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
   ], [
Index: tests/Makefile.am
===================================================================
RCS file: /cvs/automake/automake/tests/Makefile.am,v
retrieving revision 1.565.2.5
diff -u -r1.565.2.5 Makefile.am
--- tests/Makefile.am   21 Oct 2004 21:37:52 -0000      1.565.2.5
+++ tests/Makefile.am   10 Nov 2004 20:05:18 -0000
@@ -416,6 +416,7 @@
 python8.test \
 python9.test \
 python10.test \
+python11.test \
 recurs.test \
 recurs2.test \
 remake.test \
Index: tests/python11.test
===================================================================
RCS file: tests/python11.test
diff -N tests/python11.test
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ tests/python11.test 10 Nov 2004 20:05:18 -0000
@@ -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
-- 
Alexandre Duret-Lutz





reply via email to

[Prev in Thread] Current Thread [Next in Thread]