On a Mac running 10.7, building -current fails, as does a locally modified netbsd-5. The problem is early on, with the (netbsd-built cross) lint getting a SEGV. Mac OS 10.7 (as they seem to call it now) has 3 compilers: cc/gcc: gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00) gcc-4.2: gcc version 4.2.1 (Apple Inc. build 5666) (dot 3) clang: Apple clang version 2.1 (tags/Apple/clang-163.7.1) (based on LLVM 3.0svn) If I set HOST_{CC,CXX,CPP} to {gcc,g++,cpp},-4.2, then the build seems to run ok. I'm also having trouble building things from pkgsrc (migrated from an older machine with 10.6), but haven't tracked that down. Is this a known issue? I'm guessing it's a bug in the Apple gcc/clang hybrid that miscompiles our lint. If so, I wonder if we should choose the HOST_CC default by OS/version, or if people should set it manually. Here's what I did (yes, I know I should use mk.conf instead). diff --git a/netbsd/src/share/mk/bsd.sys.mk b/netbsd/src/share/mk/bsd.sys.mk index d9b3aef..8487a0e 100644 --- a/netbsd/src/share/mk/bsd.sys.mk +++ b/netbsd/src/share/mk/bsd.sys.mk @@ -94,7 +94,7 @@ PIE_LDFLAGS?= -Wl,-pie -shared-libgcc PIE_AFLAGS?= -fPIC -DPIC # Helpers for cross-compiling -HOST_CC?= cc +HOST_CC?= gcc-4.2 HOST_CFLAGS?= -O HOST_COMPILE.c?=${HOST_CC} ${HOST_CFLAGS} ${HOST_CPPFLAGS} -c HOST_COMPILE.cc?= ${HOST_CXX} ${HOST_CXXFLAGS} ${HOST_CPPFLAGS} -c @@ -104,10 +104,10 @@ HOST_LINK.c?= ${HOST_CXX} ${HOST_CXXFLAGS} ${HOST_CPPFLAGS} ${HOST_LDFLAGS} HOST_LINK.c?= ${HOST_CC} ${HOST_CFLAGS} ${HOST_CPPFLAGS} ${HOST_LDFLAGS} .endif -HOST_CXX?= c++ +HOST_CXX?= g++-4.2 HOST_CXXFLAGS?= -O -HOST_CPP?= cpp +HOST_CPP?= cpp-4.2 HOST_CPPFLAGS?= HOST_LD?= ld
Attachment:
pgpNmDb7aF9Gl.pgp
Description: PGP signature