This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [patch] Important comment update to gcc/configure.in
On Mar 16, 2003, Nathanael Nerode <neroden at twcny dot rr dot com> wrote:
> Alexandre Oliva wrote:
>> On Mar 14, 2003, Nathanael Nerode <neroden at twcny dot rr dot com> wrote:
>> the assumption is that it's as close
>> an approximation as possible. Since we're going to use this
>> BUILD-> TARGET assembler at build time, and the resulting compiler is
>> going to use a HOST->TARGET assembler we're about to build, they'd
>> better be fully compatible, so it doesn't matter all that much how we
> Actually, this doesn't follow. The generated *object files* must be
> fully compatible. The assemblers don't even need to accept the same
> syntax, really.
Not true. Some of the assembler tests check whether certain
constructs are supported. If we find that the BUILD->TARGET assembler
supports them, but the HOST->TARGET turns out to not support them, the
run-time compiler loses.
> I believe that the first simplification I can get out of this is
> elimination, or at least massive cleanup, of the baroque methods used
> to search for the assembler. If we're looking for a build->target
> assembler, we include ../config/acx.m4 and call
> NCN_CHECK_TARGET_TOOL([AS_FOR_TARGET],as).
Right.
> If we're looking for a host-> target compiler, we do something
> different but equally simple.
We can't do that unless host = build, and if host != build, we'll
never be able to use that compiler anyway.
>> The proper procedure to build a Canadian cross is to
>> build BUILD->HOST, use that to build BUILD->TARGET,
> ^^^^^^^^
> Um... no. Try again.
Err... ENOCOFFEE, I suppose :-) It's obviously BUILD->HOST (not
necessarily from the same code base) and BUILD->TARGET, then use those
to build HOST->TARGET.
--
Alexandre Oliva Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer aoliva at {redhat dot com, gcc.gnu.org}
CS PhD student at IC-Unicamp oliva at {lsd dot ic dot unicamp dot br, gnu.org}
Free Software Evangelist Professional serial bug killer