This is the mail archive of the
mailing list for the glibc project.
Re: current glibc vs debian sid
On Friday 18 October 2002 20:25, Paul Eggert wrote:
> > Date: Fri, 18 Oct 2002 16:44:35 +0200
> > From: Franz Sirl <Franz.Sirlemail@example.com>
> > I've sent patches to the autoconf people a while ago, but it seems
> > they haven't been applied yet. A lot of autoconf stuff may be bitten
> > by this bug, not just glibc.
> Can you please give more detail about those patches? I briefly
> searched the Autoconf archives for messages from you about ppc, but
> found only
> and this doesn't seem to be relevant.
No, it was earlier in 2002
http://mail.gnu.org/pipermail/autoconf-patches/2002-May/008371.html , but it
was rejected back then, cause $build/$host/$target are deprecated. I even
asked you about suggestions for a different solution.
Well, I just waded thru all this again and here a short summary.
Basically the semantics for
have changed heavily with autoconf-2.50 and later. Whereas in earlier autoconf
the meaning was "build NATIVE with $build_alias/$host_alias/$target_alias ==
some_alias" it now means "build CROSS with
$build_alias/$host_alias/$target_alias == some_alias". I think it would have
been better to completely reject the old syntax...
Now, let's see how we are supposed to do this in autoconf-2.50+. The docs tell
us to use --build, --host and --target, with --target only to be used with
compilers (GCC canadian cross) and using --host=my-host-alias triggering a
normal crosscompile (this is what changes the semantics like described above)
Let's leave out the "canadian cross" thing for now, that gives us:
NATIVE: ./configure --build=somebuild_alias
CROSS: ./configure --build=somebuild_alias --host=somehost_alias
The problem here is that the NATIVE case doesn't set+replace $host_alias or
$target_alias, but things like binutils and GCC rely on $target_alias being
set+replaced even for NATIVE.
After thinking about it, I'm suggesting the following for autoconf:
- reject the "./configure some_alias" syntax
- handle $build_alias/$host_alias/$target_alias like $build/$host/$target,
meaning that $build_alias defaults to config.guess, $host_alias defaults to
$build_alias and $target_alias defaults to $host_alias. Note that the setting
of $host_alias/$target_alias from $build_alias shouldn't trigger the setting
of variables like $ac_tool_prefix or $program_prefix.