This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Your patch: don't configure libobjc on Darwin
- From: Stan Shebs <shebs at apple dot com>
- To: Nicola Pero <nicola at brainstorm dot co dot uk>
- Cc: Geoff Keating <geoffk at geoffk dot org>, Carl Eugen Hoyos <ce at hoyos dot ws>, gcc-patches at gcc dot gnu dot org, rms at gnu dot org
- Date: Fri, 18 Jul 2003 11:46:14 -0700
- Subject: Re: Your patch: don't configure libobjc on Darwin
- References: <Pine.LNX.4.44.0307180932070.19224-100000@nicola.brainstorm.co.uk>
Nicola Pero wrote:
<fuming with rage after seeing one of our GNUstep users seriously (and
rightfully so) angry>
He might be using -fgnu-runtime. So what ? The whole purpose of
-fgnu-runtime and -fnext-runtime is to change the compiler behaviour *at
runtime* (as opposed to configure time) between the two runtimes!
It seems to me that you have applied a radical patch causing a major
regression (since the GNU Objective-C runtime was available on Darwin in
all previous releases of GCC, and is no longer available now) just because
you don't want to spend twenty minutes figuring out how to install both
runtimes together on darwin and switch safely between the two. I'm afraid
you'll have to fix your laziness, or revert your damaging patch.
It's a bit more than a 20-minute job I'm afraid, because on Darwin
both the NeXT and GNU libraries and headers are mutually exclusive
and will try to override each other in bad ways. I poked at this
very issue a couple years ago, and it took about 20 minutes :-) to
learn the full nastiness of the problem; for instance, dealing with
conflicting headers would probably require significant fixincludes
hacking, so that you don't get disasterized by seeing NeXT headers
when compiling with -fgnu-runtime.
Geoff's change is a reasonable bandaid, but it is possible to make
the two runtimes coexist peacefully, and would be much less work
than to merge them into a single runtime, so we should try for the
coexistence patch. On the plus side, it will be easy to test; just
make the ObjC testsuite loop over -fgnu-runtime and -fnext-runtime.
Stan