This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: (top level patch) Autoconfiscate. (Woo!)
- From: Alexandre Oliva <aoliva at redhat dot com>
- To: Mark Kettenis <kettenis at chello dot nl>
- Cc: Nathanael Nerode <neroden at twcny dot rr dot com>, gcc-patches at gcc dot gnu dot org, gdb-patches at sources dot redhat dot com, binutils at sources dot redhat dot com, dj at redhat dot com
- Date: 28 Dec 2002 14:16:59 -0200
- Subject: Re: (top level patch) Autoconfiscate. (Woo!)
- Organization: GCC Team, Red Hat
- References: <20021228035943.GA3173@doctormoo><86smwijnhi.fsf@elgar.kettenis.dyndns.org>
On Dec 28, 2002, Mark Kettenis <kettenis@chello.nl> wrote:
> Nathanael Nerode <neroden@twcny.rr.com> writes:
>> This autoconfiscates the top level. Tested on i686-pc-linux-gnu, produced
>> a Makefile with only trivial differences from before.
> Nothing serious, but...
> ...I get the following warning when configuring readline:
> Configuring in readline
> configure: WARNING: If you wanted to set the --build type, don't use --host.
> If a cross compiler is detected then cross compile mode will be used.
We can't really help warnings like this from autoconf 2.5x, unless we
check each sub-package's configure to see which autoconf it's using.
The problem is that, in autoconf 2.13, the build platform defaults to
the host platform that is auto-detected, but in autoconf 2.5x, this
was fixed such that it is host that defaults to build that is
auto-detected. So, you get the warning when you specify only --host,
since eventually the backward-compatible behavior in autoconf will be
disabled. Worse yet, if you specify both --build and --host, you'll
get a different warning, since autoconf 2.5x wants this to imply that
we're doing cross-compilation. Fortunately, it checks whether the
--build and --host arguments to see whether they're the same, and
disables this assumption in this case. I heard talk about removing
these backward-compatible features a few months ago; I hope my protest
against it didn't get in too late; it would simply make it impossible
to have a tree like uberbaum unless *every* *single* component in it
switches to the newer version of autoconf.
> Anyway, as far as I can determine, the warning doesn't hurt, but we
> might want to get rid of it.
Ideally, the top-level should pass down to host packages exactly the
same --build, --host and --target flags that were passed to it.
Currently, we attempt to do it, but we fail because buildopt is no
longer set anywhere. Oops :-)
This is a problem, because specifying --build no longer has any effect
on host packages. I don't know whether any package actually relies on
--build these days, but it should be fixed.
> Note that this is probably caused by an earlier patch, and not by this
> last autoconfiscate patch, but I didn't notice it before.
It was probably the autoconfiscate patch that dropped the assignment
of buildopt. Earlier, we used to pass both --build and --host down.
> P.S. Why is Makefile.tpl not included in the src CVS tree? It is
> included in the gcc CVS tree.
It should be there too. Probably just a pilot error.
--
Alexandre Oliva Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer aoliva@{redhat.com, gcc.gnu.org}
CS PhD student at IC-Unicamp oliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist Professional serial bug killer