This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: PATCH RFA: Only define USE_COLLECT2 in host makefile fragments
- From: Zack Weinberg <zack at codesourcery dot com>
- To: neroden at twcny dot rr dot com (Nathanael Nerode)
- Cc: ian at wasabisystems dot com, gcc-patches at gcc dot gnu dot org
- Date: Sun, 04 Apr 2004 19:45:47 -0700
- Subject: Re: PATCH RFA: Only define USE_COLLECT2 in host makefile fragments
- References: <20040405023032.GA30312@twcny.rr.com>
neroden@twcny.rr.com (Nathanael Nerode) writes:
> So thanks to your ping, I looked at
> http://gcc.gnu.org/ml/gcc-patches/2004-03/msg01585.html
>
> Now, this patch is an improvement on the status quo. But I'd like to
> explain why I just rewrote it. :-)
>
>> However, there are a few non-Unix
>> systems which are as yet unable to build collect2. For those systems,
>> it is reasonable to avoid building collect2.
> There are systems which cannot *build* collect2. In other words, this is
> a *build*-specific question. So there should be entries in *config.build*
> (not config.host) for the systems which cannot *build* collect2; these
> set build_collect2=no.
Whoa whoa whoa. collect2 executes on the host, and (unless I'm
confused) the observation that "certain systems cannot build collect2"
is actually observing that collect2 demands Unix-specific capabilities
of the system it will run against - this shows up as a build failure,
since the functions it tries to use aren't present in the C library it
gets linked against, but the issue is actually with the host.
In other words, collect2 is expected to fail to build in the
--build=<something-unixy> --host=i386-mingw32 --target=<whatever>
case just as it is expected to fail to build in the
--build=i386-mingw32 --host=i386-mingw32 --target=<whatever>
case.
And therefore I think this *is* a property that belongs in
config.host.
zw