[Top][All Lists]

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

Re: AC_PATH_PROG ignores the variable

From: Stepan Kasal
Subject: Re: AC_PATH_PROG ignores the variable
Date: Wed, 10 Nov 2004 12:02:08 +0100
User-agent: Mutt/1.4.1i

Hello Alexandre,

On Wed, Nov 10, 2004 at 10:24:40AM +0100, Alexandre Duret-Lutz wrote:
> Would that affect AC_PATH_PROGS or not?

yes, it would.  AC_PATH_PROGS is just a thin wrapper around AC_PATH_PROG.

> AC_PATH_PROGS is documented as leaving the value of the variable
> unchanged if no program is found.

I have just discovered that it actually doesn't work that way.
If AC_PATH_PROG doesn't find the program, it calls AC_SUBST, which clears
the variable.  Considering your example from automake's python.m4:

>       PYTHON=:

If python is not found, PYTHON is set to "".

I have verified this:
1) I moved all my python binaries away. (/usr/bin/python*)
2) I deleted the line
   from automake-1.9.3/tests/python8.test
3) Then I ran
        env VERBOSE=x TESTS=python8.test make -e check

The result is below:
=== Running test ./python8.test
++ pwd
+ set -e
+ cat
+ :
+ aclocal-1.9
+ autoconf
+ automake-1.9 --foreign -Werror -Wall --add-missing
+ ./configure
checking for a BSD-compatible install... /usr/bin/ginstall -c
checking whether build environment is sane... yes
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for python... no
checking for python2... no
checking for python2.4... no
checking for python2.3... no
checking for python2.2... no
checking for python2.1... no
checking for python2.0... no
checking for python1.6... no
checking for python1.5... no
checking for python version...
checking for python platform...
checking for python script directory... ${prefix}/lib/python/site-packages
checking for python extension module directory... 
configure: creating ./config.status
config.status: creating Makefile
+ cat stderr
./configure: line 1: -c: command not found
./configure: line 1: -c: command not found
+ grep 'GREP ME' stderr
PASS: python8.test

The error is from executing "$PYTHON -c ..." when PYTHON is empty.

> It's no big deal to change the above lines to 

Yes, that's possible, though I think it's more natural to use
empty variable as an indication that python was not found, as in
the patch attached to

(Please note that the mail accompanying the patch is silly; only the
code is right.  Sorry.)

> and I don't really care if a new version of Autoconf causes
> configure scripts generated by past versions of Automake to
> complain (other might disagree, but I'm happy when people
> upgrade).

I agree with you.  But anyway, you could accept the patch mentioned
above and jump on the safe side.  ;-)

Have a nice day,
        Stepan Kasal

reply via email to

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