diff options
author | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2006-07-14 22:34:24 +0000 |
---|---|---|
committer | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2006-07-14 22:34:24 +0000 |
commit | 3defd9a3d3011be9be039519f7b32176365e2baa (patch) | |
tree | f995651779a166c05873aec20d4a2eda5198c456 /pkgs/development/compilers/gcc-apple/no-sys-dirs.patch | |
parent | 4ac32aa6398ae5de1eedd426c935c4e6ff1a2588 (diff) | |
download | nixlib-3defd9a3d3011be9be039519f7b32176365e2baa.tar nixlib-3defd9a3d3011be9be039519f7b32176365e2baa.tar.gz nixlib-3defd9a3d3011be9be039519f7b32176365e2baa.tar.bz2 nixlib-3defd9a3d3011be9be039519f7b32176365e2baa.tar.lz nixlib-3defd9a3d3011be9be039519f7b32176365e2baa.tar.xz nixlib-3defd9a3d3011be9be039519f7b32176365e2baa.tar.zst nixlib-3defd9a3d3011be9be039519f7b32176365e2baa.zip |
* On Darwin, use Apple's gcc fork.
svn path=/nixpkgs/trunk/; revision=5715
Diffstat (limited to 'pkgs/development/compilers/gcc-apple/no-sys-dirs.patch')
-rw-r--r-- | pkgs/development/compilers/gcc-apple/no-sys-dirs.patch | 126 |
1 files changed, 126 insertions, 0 deletions
diff --git a/pkgs/development/compilers/gcc-apple/no-sys-dirs.patch b/pkgs/development/compilers/gcc-apple/no-sys-dirs.patch new file mode 100644 index 000000000000..b7b93d6944cc --- /dev/null +++ b/pkgs/development/compilers/gcc-apple/no-sys-dirs.patch @@ -0,0 +1,126 @@ +diff -ruN gcc-4.1.0/gcc/cppdefault.c gcc-4.1.0.new/gcc/cppdefault.c +--- gcc-4.1.0/gcc/cppdefault.c 2005-06-25 04:02:01.000000000 +0200 ++++ gcc-4.1.0.new/gcc/cppdefault.c 2006-03-01 18:48:58.000000000 +0100 +@@ -41,6 +41,10 @@ + # undef CROSS_INCLUDE_DIR + #endif + ++#undef LOCAL_INCLUDE_DIR ++#undef SYSTEM_INCLUDE_DIR ++#undef STANDARD_INCLUDE_DIR ++ + const struct default_include cpp_include_defaults[] + #ifdef INCLUDE_DEFAULTS + = INCLUDE_DEFAULTS; +diff -ruN gcc-4.1.0/gcc/Makefile.in gcc-4.1.0.new/gcc/Makefile.in +--- gcc-4.1.0/gcc/Makefile.in 2006-02-16 16:23:24.000000000 +0100 ++++ gcc-4.1.0.new/gcc/Makefile.in 2006-03-01 18:55:12.000000000 +0100 +@@ -219,7 +219,7 @@ + CPPFLAGS = @CPPFLAGS@ + + # These exists to be overridden by the x-* and t-* files, respectively. +-X_CFLAGS = ++X_CFLAGS = $(NIX_EXTRA_CFLAGS) $(NIX_EXTRA_LDFLAGS) + T_CFLAGS = + + X_CPPFLAGS = +@@ -383,7 +383,11 @@ + MD5_H = $(srcdir)/../include/md5.h + + # Default native SYSTEM_HEADER_DIR, to be overridden by targets. +-NATIVE_SYSTEM_HEADER_DIR = /usr/include ++# Nix: we override NATIVE_SYSTEM_HEADER_DIR in order to prevent ++# `fixinc' from fixing header files in /usr/include. However, ++# NATIVE_SYSTEM_HEADER_DIR must point to an existing directory, so set ++# it to some dummy directory. ++NATIVE_SYSTEM_HEADER_DIR = $(NIX_FIXINC_DUMMY) + # Default cross SYSTEM_HEADER_DIR, to be overridden by targets. + CROSS_SYSTEM_HEADER_DIR = @CROSS_SYSTEM_HEADER_DIR@ + +@@ -395,7 +399,7 @@ + STMP_FIXINC = @STMP_FIXINC@ + + # Test to see whether <limits.h> exists in the system header files. +-LIMITS_H_TEST = [ -f $(SYSTEM_HEADER_DIR)/limits.h ] ++LIMITS_H_TEST = true + + # Directory for prefix to system directories, for + # each of $(system_prefix)/usr/include, $(system_prefix)/usr/lib, etc. +@@ -3002,7 +3006,7 @@ + -DGPLUSPLUS_INCLUDE_DIR=\"$(gcc_gxx_include_dir)\" \ + -DGPLUSPLUS_TOOL_INCLUDE_DIR=\"$(gcc_gxx_include_dir)/$(target_noncanonical)\" \ + -DGPLUSPLUS_BACKWARD_INCLUDE_DIR=\"$(gcc_gxx_include_dir)/backward\" \ +- -DLOCAL_INCLUDE_DIR=\"$(local_includedir)\" \ ++ -DLOCAL_INCLUDE_DIR=\"/no-such-dir\" \ + -DCROSS_INCLUDE_DIR=\"$(CROSS_SYSTEM_HEADER_DIR)\" \ + -DTOOL_INCLUDE_DIR=\"$(gcc_tooldir)/include\" \ + @TARGET_SYSTEM_ROOT_DEFINE@ +diff -ruN gcc-4.1.0/libstdc++-v3/include/Makefile.in gcc-4.1.0.new/libstdc++-v3/include/Makefile.in +--- gcc-4.1.0/libstdc++-v3/include/Makefile.in 2006-01-10 18:14:00.000000000 +0100 ++++ gcc-4.1.0.new/libstdc++-v3/include/Makefile.in 2006-03-01 18:57:32.000000000 +0100 +@@ -1257,8 +1257,8 @@ + if [ ! -d "${pch_output_builddir}" ]; then \ + mkdir -p ${pch_output_builddir}; \ + fi; \ +- $(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) ${pch_source} -O0 -g -o ${pch_output_builddir}/O0g.gch; \ +- $(CXX) $(PCHFLAGS) $(AM_CPPFLAGS) ${pch_source} -O2 -g -o ${pch_output_builddir}/O2g.gch; ++ $(CXX) $(CFLAGS) $(PCHFLAGS) $(AM_CPPFLAGS) ${pch_source} -O0 -g -o ${pch_output_builddir}/O0g.gch; \ ++ $(CXX) $(CFLAGS) $(PCHFLAGS) $(AM_CPPFLAGS) ${pch_source} -O2 -g -o ${pch_output_builddir}/O2g.gch; + + # For robustness sake (in light of junk files or in-source + # configuration), copy from the build or source tree to the install +diff -ruN gcc-4.1.0/ltcf-cxx.sh gcc-4.1.0.new/ltcf-cxx.sh +--- gcc-4.1.0/ltcf-cxx.sh 2005-07-16 04:30:53.000000000 +0200 ++++ gcc-4.1.0.new/ltcf-cxx.sh 2006-03-01 18:58:15.000000000 +0100 +@@ -989,7 +989,7 @@ + # the conftest object file. + pre_test_object_deps_done=no + +- for p in `eval $output_verbose_link_cmd`; do ++ for p in `true`; do + + case $p in + +diff -ruN gcc-4.1.0/ltconfig gcc-4.1.0.new/ltconfig +--- gcc-4.1.0/ltconfig 2005-07-16 04:30:53.000000000 +0200 ++++ gcc-4.1.0.new/ltconfig 2006-03-01 18:59:58.000000000 +0100 +@@ -2322,6 +2322,11 @@ + # A language-specific compiler. + CC=$CC + ++# Ugly hack to get libmudflap (and possibly other libraries) to build. ++# Libtool filters out \`-B' flags when linking (why?), so the \`-B' flag ++# to Glibc gets lost. Here we forcibly add it to any invocation. ++CC="\$CC $NIX_EXTRA_LDFLAGS" ++ + # Is the compiler the GNU C compiler? + with_gcc=$with_gcc + +diff -ruN gcc-4.1.0/Makefile.in gcc-4.1.0.new/Makefile.in +--- gcc-4.1.0/Makefile.in 2005-12-15 15:02:02.000000000 +0100 ++++ gcc-4.1.0.new/Makefile.in 2006-03-01 19:41:04.000000000 +0100 +@@ -286,7 +286,7 @@ + WINDRES = @WINDRES@ + + CFLAGS = @CFLAGS@ +-LDFLAGS = ++LDFLAGS = $(NIX_EXTRA_LDFLAGS) + LIBCFLAGS = $(CFLAGS) + CXXFLAGS = @CXXFLAGS@ + LIBCXXFLAGS = $(CXXFLAGS) -fno-implicit-templates +@@ -329,12 +329,12 @@ + # CFLAGS will be just -g. We want to ensure that TARGET libraries + # (which we know are built with gcc) are built with optimizations so + # prepend -O2 when setting CFLAGS_FOR_TARGET. +-CFLAGS_FOR_TARGET = -O2 $(CFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET) ++CFLAGS_FOR_TARGET = -O2 $(CFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET) $(NIX_EXTRA_CFLAGS) + SYSROOT_CFLAGS_FOR_TARGET = @SYSROOT_CFLAGS_FOR_TARGET@ +-CXXFLAGS_FOR_TARGET = $(CXXFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET) ++CXXFLAGS_FOR_TARGET = $(CXXFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET) $(NIX_EXTRA_CFLAGS) + LIBCFLAGS_FOR_TARGET = $(CFLAGS_FOR_TARGET) + LIBCXXFLAGS_FOR_TARGET = $(CXXFLAGS_FOR_TARGET) -fno-implicit-templates +-LDFLAGS_FOR_TARGET = ++LDFLAGS_FOR_TARGET = $(NIX_EXTRA_LDFLAGS) + PICFLAG_FOR_TARGET = + + # ------------------------------------ |