automake
[Top][All Lists]
Advanced

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

Re: Broken makefile given Autoconf version mismatch


From: Alexandre Duret-Lutz
Subject: Re: Broken makefile given Autoconf version mismatch
Date: Sun, 16 Apr 2006 12:58:08 +0200
User-agent: Gnus/5.110003 (No Gnus v0.3) Emacs/22.0.50 (gnu/linux)

>>> "SK" == Stepan Kasal <address@hidden> writes:

 SK> Hello,
 SK> On Thu, Apr 13, 2006 at 08:52:48PM +0200, Alexandre Duret-Lutz wrote:
 >> Or can we tweak Autoconf to make its version more accessible?

 SK> what would be wrong with parsing `autoconf --version' or
 SK> `autom4te --version'?  (At least as a fallback, when autom4te is
 SK> not able to handle stdin.)

I'm leery of assuming that Autoconf's version will always be at
this spot in the output of --version.  Sometimes people customize their
copy and tweak --version to reflect so:

% gcc --version
gcc (GCC) 4.0.3 (Debian 4.0.3-1)
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

This sounds legitimate for me.  --version really is a human
thing in my opinion.

Anyway it sure feels better to directly compare the value of
m4_PACKAGE_VERSION in one Autoconf with the value of
m4_PACKAGE_VERSION in another, without trying to infer any of
them.

 SK> The problem is that autom4te calls m4 with `</dev/null' because of a
 SK> problem with a development version of m4:

 SK> 2001-09-07  Akim Demaille
 SK> * bin/autom4te.in (&handle_m4): `< /dev/null' so that GNU M4 1.5
 SK> doesn't neutralize SIGINT, making autoconf etc. non interruptible.

That was around the time caching was introduced, so I presume
that the interaction between the cache and reading stdin has
never been considered.  I think it should disable cache for
stdin, since it cannot check its timestamp.

I'm starting to think now is probably not the right time to try
to fix this.  Nobody is actually missing this to the point it
should delay 2.60.  (I'm only speaking of the stdin issue here; 
the version check in aclocal can be implemented independently.)

 SK> I posted a question to m4-discuss asking whether this concern is still
 SK> valid for the not-yet-released m4 2.0.

 SK> There is a related problem:

 SK> autom4te -l Autoconf-without-aclocal-m4 -

 SK> still wouldn't work, because find_file doesn't recognize `-' as stdin.

autoconf wouldn't pass any argument as far as I can tell.  

 SK> What do you think about the patch to find_file attached below?

This has implications on the caching code, which tries to
mtime() all arguments.  Really this is too early.  How about
adding syntactic sugar only after it can be supported?
-- 
Alexandre Duret-Lutz

Shared books are happy books.     http://www.bookcrossing.com/friend/gadl





reply via email to

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