On 23 Jun 2007, at 06:25, Eric Blake wrote:
If you reconfigured autoconf after installing a newer GNU m4, and
autoconf
did not find the right m4, then that is a bug in autoconf, and
should be
dealt with there.
Right. Since it was experienced by the developers on the Bug-Bison
list, I hoped that they would have done just that. :-)
My system has a /usr/bison/m4 and a /usr/bin/gm4, but no
/usr/local/bin/gm4, because later version of M4 odes not install it.
m4 will install as /usr/local/bin/gm4 if you use the --program-
prefix=g
option at m4's configure time.
Thank you for the info. But I think it is correct to not have gm4
installed these days:
I have a vague memory that once (?) there was an independent m4, and
GNU making their own version gm4. The development of m4 was dropped,
so that GNU could take over the name m4.
So
you need to check what exactly autoconf does, like simply trying
to find
gm4 before trying m4, which would be wrong.
The current algorithm is in autoconf's m4/m4.m4:
AC_PATH_PROGS([M4], [gm4 gnum4 m4], [m4])
AC_CACHE_CHECK([whether m4 supports accurate traces],
...
In other words, during configuration, autoconf finds the first
program on
your PATH named gm4, gnum4, and then m4, which also meets the minimum
requirements of m4 1.4.5 or later. If you have suggestions for a
better
algorithm, we'd like to know about it.
So a correct algorithm is complicated, as this configurability can
make it did hard to get hold of the latest GNU version. Autoconf
requires some of the latest GNU M4, and there are no other M4 to look
for, so perhaps it can just look for m4 first.
And when finding that a version looked for is not up-to-date, the
program should not only report the name of the program, but the full
path (for example, command line "which <program name>"), which I
think should be done for all GNU programs and libraries. I found out
that it is gm4 for that is used and its full path only by pasting
some command into the shell, and it reported an error (don't recall
the details).
Hans Aberg
Don't work too hard, make some time for fun as well!
"I like work: I can watch it for ours.", somebody said (don't know
who) :-).