Subject: Re: bug#7698: aclocal generates too strict a check for name-lister

From: Stefano Lattarini <[email-masked]>
Date: Tue, 21 Dec 2010 14:36:02 +0100

Hello Ximin

[I hope this will work; I'm answering by cut & pasting from the
 debbugs web interface, since the bug report didn't make it to me
 through mail.]

> I have a core2 system, and have been trying to compile GMP 5.0.1
> optimised for other x86 CPUs, by doing (e.g.)
>  $ ./configure --host=pentium4-$(./config.guess | cut -d- -f2-)
>
> However, these fail with an obscure error message about `link -dump -symbols`
> (see snippet 1). After a convoluted path of debugging, I've worked out that
> the cause is ./configure not detecting the presence of "/usr/bin/nm -B", in
> the case where $build != $host.
>
> The responsible code is the following snippet:
>  if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
>
> which occurs twice in GMP 5.0.1's ./configure, and once in aclocal.m4, so
> the source seems to be automake's aclocal program.
>
There's a misunderstanding here.  While aclocal indeed generates aclocal.m4,
it does so by copying macro definitions provided either by automake or by
third-parts packages.

To put it differently: aclocal's work is *not* to directly provide any
macro definition, but only to *retrieve* definitions of macros required
by configure.ac, and make such definitions available to autconf.  It
does so by copying those definition in aclocal.m4 (basically).  See the
automake manual for more information:
 <http://www.gnu.org/software/automake/manual/html_node/Invoking-aclocal.html>

The bug you're hitting must be located in a third-part macro, since no
automake-provided macro do something similar to that.  And in fact, it
seems to come from GMP-5.0.1's own acinclude.m4 (which is *not* the same
as aclocal.m4! see the automake manual for more info):

 $ cd /tmp/gmp-5.0.1
 $ grep -r '___gmpn_add_n (note three underscores)' .
 ./acinclude.m4:    AC_MSG_WARN([| to ___gmpn_add_n (note three underscores).])
 ./configure:    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: | to ___gmpn_add_n (note three underscores)." >&5
 ./configure:$as_echo "$as_me: WARNING: | to ___gmpn_add_n (note three underscores)." >&2;}

So you should report your issue to the GMP bug tracker.

For what concerns the automake bug tracker, I'm closing the bug
as invalid.

HTH,
   Stefano