This is the mail archive of the
mailing list for the GCC project.
Re: GCC 3.0.2 and BSD Make
On Fri, Nov 02, 2001 at 02:32:07PM -0500, Perry E. Metzger wrote:
> Zack Weinberg <firstname.lastname@example.org> writes:
> > You want to stop binding GCC so tightly into your build environment
> > anyway.
> We can't help that. When you run on 50+ types of machines, you have to
> know which version of the compiler you're building with.
I was not suggesting you take it out of the set of things built by
"make world", nor that you stop selecting one version and importing it
into your CVS tree.
You just shouldn't rearrange the version you import so much from what
we ship. For instance-
$ uname -srm
NetBSD 1.5.2 i386
$ gcc -v test.c
Using builtin specs.
gcc version egcs-2.91.66 19990314 (egcs-1.1.2 release)
/usr/libexec/cpp -lang-c -v -undef -D__GNUC__=2 -D__GNUC_MINOR__=91
-Di386 -D__NetBSD__ -D__ELF__ -D__KPRINTF_ATTRIBUTE__ -D__i386__
-D__NetBSD__ -D__ELF__ -D__KPRINTF_ATTRIBUTE__ -D__i386
-Asystem(unix) -Asystem(NetBSD) -Acpu(i386) -Amachine(i386) test.c
Why on earth are you putting cpp, cc1, etc in /usr/libexec instead of
in .../gcc-lib/TARGET/VERSION? You're just asking for headaches (if
only when you want to make multiple versions of GCC coexist).
> I'd suggest that someone put #ifdefs into a make to make it insanely
> POSIXy, and then use that as the standard for tests.
This will not help. There are Makefile-breaking differences between
implementations even if you stick to the feature set specified by
POSIX. You would have to take out VPATH entirely, for instance, and
then split tree builds won't work and we're hosed anyway.