Subject: Re: macos X cross compile broken with HAVE_GCC3=yes
To: None <>
From: Darrin B. Jewell <>
List: tech-toolchain
Date: 10/06/2003 01:15:34
Well, I've found that if I set HOST_CFLAGS=-no-cpp-precomp in
Makefile.gnuhost, netbsd-current will cross compile on netbsd-current.
I have included a proposed patch below, although I'm not sure that
this is the correct fix.

I first tried to include ${COMPATOBJ}/ in Makefile.gnuhost,
similar to, but ran into problems with the compat
library colliding with native support for similar features such as
readline.  I then tried to set HOST_CPPFLAGS, as is done inside, but discovered that the gnu tools do not always pay attention
to the CPPFLAGS environment variable being set when configure was run.

This patch sets HOST_CFLAGS, which does appear to be correctly
incorporated by configure, and which allows tools to work
correctly when HAVE_GCC3 is either yes or no.  Unfortunately, I
did notice from the debugging logs that setting HOST_CFLAGS
with this patch causes the -O option to be lost from the CFLAGS
variable when configure is invoked.  I am not sure that this is
the optimal fix to my problem.

Does anyone have a better fix to suggest?


Index: src/tools/Makefile.gnuhost
RCS file: /cvsroot/src/tools/Makefile.gnuhost,v retrieving revision
1.19 diff -u -u -r1.19 Makefile.gnuhost --- src/tools/Makefile.gnuhost
18 Jul 2003 08:26:12 -0000 1.19 +++ src/tools/Makefile.gnuhost 6 Oct
2003 05:06:13 -0000 @@ -17,6 +17,12 @@
 .include <>
+# Disable use of pre-compiled headers on Darwin.
+BUILD_OSTYPE!=  uname -s
+.if ${BUILD_OSTYPE} == "Darwin"
+HOST_CFLAGS+=  -no-cpp-precomp
 GNUHOSTDIST?=  ${.CURDIR}/../../gnu/dist/${MODULE}
 FIND_ARGS+=    \! \( -type d \( \

"Darrin B. Jewell" <> writes:

> The recent switch to HAVE_GCC3=yes for i386 has broken
> cross compiling when hosted on macos X.
> The same tree compiles fine if I put HAVE_GCC3=no in mk.conf
> The problem appears to be that -no-cpp-precomp is not being included
> on the command line when compiling gcc.  It does appear to be used
> correctly when HAVE_GCC3=no.  I have uploaded build logs to
> A log of the failed compile is at:
> A log of the successful compile with HAVE_GCC3=no is at:
> I am using the Dec 2002 developer tools on MacOS X 10.2.6
> This is a clean netbsd-current source tree updated via CVS
> on approximately 20030929T2022Z
> I could use some help in unraveling the build system enough
> to understand what is wrong and getting it fixed.
> Thanks,
> Darrin