From ea1911c741d1744069c5479ff8de357d791a23b2 Mon Sep 17 00:00:00 2001 From: Christian Wiese Date: Sun, 30 Sep 2007 06:41:30 +0300 Subject: [PATCH] Added gcc pure64 patch - This patch has to be applied if we want to build "pure" 64bit builds, that means no multilib support! --- base/gcc/gcc-4.1.2-pure64-1.diff | 143 +++++++++++++++++++++++++++++++ 1 file changed, 143 insertions(+) create mode 100644 base/gcc/gcc-4.1.2-pure64-1.diff diff --git a/base/gcc/gcc-4.1.2-pure64-1.diff b/base/gcc/gcc-4.1.2-pure64-1.diff new file mode 100644 index 000000000..2d5918aa0 --- /dev/null +++ b/base/gcc/gcc-4.1.2-pure64-1.diff @@ -0,0 +1,143 @@ +diff -ruN gcc-4.1.2/gcc/config/i386/linux64.h gcc-4.1.2-pure64/gcc/config/i386/linux64.h +--- gcc-4.1.2/gcc/config/i386/linux64.h 2005-08-10 20:53:01.000000000 +0300 ++++ gcc-4.1.2-pure64/gcc/config/i386/linux64.h 2007-09-30 02:40:00.000000000 +0300 +@@ -60,8 +60,8 @@ + %{!shared: \ + %{!static: \ + %{rdynamic:-export-dynamic} \ +- %{m32:%{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ +- %{!m32:%{!dynamic-linker:-dynamic-linker /lib64/ld-linux-x86-64.so.2}}} \ ++ %{m32:%{!dynamic-linker:-dynamic-linker /lib32/ld-linux.so.2}} \ ++ %{!m32:%{!dynamic-linker:-dynamic-linker /lib/ld-linux-x86-64.so.2}}} \ + %{static:-static}}" + + /* Similar to standard Linux, but adding -ffast-math support. */ +diff -ruN gcc-4.1.2/gcc/config/i386/t-linux64 gcc-4.1.2-pure64/gcc/config/i386/t-linux64 +--- gcc-4.1.2/gcc/config/i386/t-linux64 2005-08-10 20:53:01.000000000 +0300 ++++ gcc-4.1.2-pure64/gcc/config/i386/t-linux64 2007-09-30 02:41:43.000000000 +0300 +@@ -6,7 +6,7 @@ + + MULTILIB_OPTIONS = m64/m32 + MULTILIB_DIRNAMES = 64 32 +-MULTILIB_OSDIRNAMES = ../lib64 ../lib ++MULTILIB_OSDIRNAMES = ../lib ../lib32 + + LIBGCC = stmp-multilib + INSTALL_LIBGCC = install-multilib +diff -ruN gcc-4.1.2/gcc/config/mips/linux64.h gcc-4.1.2-pure64/gcc/config/mips/linux64.h +--- gcc-4.1.2/gcc/config/mips/linux64.h 2005-06-25 04:22:41.000000000 +0300 ++++ gcc-4.1.2-pure64/gcc/config/mips/linux64.h 2007-09-30 02:42:37.000000000 +0300 +@@ -47,9 +47,9 @@ + %{!static: \ + %{rdynamic:-export-dynamic} \ + %{!dynamic-linker: \ +- %{mabi=n32: -dynamic-linker /lib32/ld.so.1} \ +- %{mabi=64: -dynamic-linker /lib64/ld.so.1} \ +- %{mabi=32: -dynamic-linker /lib/ld.so.1}}} \ ++ %{mabi=n32: -dynamic-linker /lib64/ld.so.1} \ ++ %{mabi=64: -dynamic-linker /lib/ld.so.1} \ ++ %{mabi=32: -dynamic-linker /lib32/ld.so.1}}} \ + %{static:-static}}} \ + %{mabi=n32:-melf32%{EB:b}%{EL:l}tsmipn32} \ + %{mabi=64:-melf64%{EB:b}%{EL:l}tsmip} \ +diff -ruN gcc-4.1.2/gcc/config/mips/t-linux64 gcc-4.1.2-pure64/gcc/config/mips/t-linux64 +--- gcc-4.1.2/gcc/config/mips/t-linux64 2006-09-10 10:13:12.000000000 +0300 ++++ gcc-4.1.2-pure64/gcc/config/mips/t-linux64 2007-09-30 02:43:48.000000000 +0300 +@@ -1,6 +1,6 @@ + MULTILIB_OPTIONS = mabi=n32/mabi=32/mabi=64 + MULTILIB_DIRNAMES = n32 32 64 +-MULTILIB_OSDIRNAMES = ../lib32 ../lib ../lib64 ++MULTILIB_OSDIRNAMES = ../lib64 ../lib32 ../lib + + EXTRA_MULTILIB_PARTS=crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o + +diff -ruN gcc-4.1.2/gcc/config/rs6000/linux64.h gcc-4.1.2-pure64/gcc/config/rs6000/linux64.h +--- gcc-4.1.2/gcc/config/rs6000/linux64.h 2006-02-10 22:58:33.000000000 +0200 ++++ gcc-4.1.2-pure64/gcc/config/rs6000/linux64.h 2007-09-30 02:46:47.000000000 +0300 +@@ -339,11 +339,11 @@ + + #define LINK_OS_LINUX_SPEC32 "-m elf32ppclinux %{!shared: %{!static: \ + %{rdynamic:-export-dynamic} \ +- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}}}" ++ %{!dynamic-linker:-dynamic-linker /lib32/ld.so.1}}}" + + #define LINK_OS_LINUX_SPEC64 "-m elf64ppc %{!shared: %{!static: \ + %{rdynamic:-export-dynamic} \ +- %{!dynamic-linker:-dynamic-linker /lib64/ld64.so.1}}}" ++ %{!dynamic-linker:-dynamic-linker /lib/ld64.so.1}}}" + + #undef TOC_SECTION_ASM_OP + #define TOC_SECTION_ASM_OP \ +diff -ruN gcc-4.1.2/gcc/config/rs6000/t-linux64 gcc-4.1.2-pure64/gcc/config/rs6000/t-linux64 +--- gcc-4.1.2/gcc/config/rs6000/t-linux64 2006-02-10 22:58:33.000000000 +0200 ++++ gcc-4.1.2-pure64/gcc/config/rs6000/t-linux64 2007-09-30 02:47:31.000000000 +0300 +@@ -11,7 +11,7 @@ + MULTILIB_EXTRA_OPTS = fPIC mstrict-align + MULTILIB_EXCEPTIONS = + MULTILIB_EXCLUSIONS = +-MULTILIB_OSDIRNAMES = ../lib64 ../lib ++MULTILIB_OSDIRNAMES = ../lib ../lib32 + MULTILIB_MATCHES = + + # We want fine grained libraries, so use the new code to build the +diff -ruN gcc-4.1.2/gcc/config/sparc/linux64.h gcc-4.1.2-pure64/gcc/config/sparc/linux64.h +--- gcc-4.1.2/gcc/config/sparc/linux64.h 2006-02-11 10:38:51.000000000 +0200 ++++ gcc-4.1.2-pure64/gcc/config/sparc/linux64.h 2007-09-30 02:51:50.000000000 +0300 +@@ -162,21 +162,21 @@ + { "link_arch_default", LINK_ARCH_DEFAULT_SPEC }, \ + { "link_arch", LINK_ARCH_SPEC }, + +-#define LINK_ARCH32_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \ ++#define LINK_ARCH32_SPEC "-m elf32_sparc -Y P,/usr/lib32 %{shared:-shared} \ + %{!shared: \ + %{!ibcs: \ + %{!static: \ + %{rdynamic:-export-dynamic} \ +- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ ++ %{!dynamic-linker:-dynamic-linker /lib32/ld-linux.so.2}} \ + %{static:-static}}} \ + " + +-#define LINK_ARCH64_SPEC "-m elf64_sparc -Y P,/usr/lib64 %{shared:-shared} \ ++#define LINK_ARCH64_SPEC "-m elf64_sparc -Y P,/usr/lib %{shared:-shared} \ + %{!shared: \ + %{!ibcs: \ + %{!static: \ + %{rdynamic:-export-dynamic} \ +- %{!dynamic-linker:-dynamic-linker /lib64/ld-linux.so.2}} \ ++ %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ + %{static:-static}}} \ + " + +@@ -252,12 +252,12 @@ + #else /* !SPARC_BI_ARCH */ + + #undef LINK_SPEC +-#define LINK_SPEC "-m elf64_sparc -Y P,/usr/lib64 %{shared:-shared} \ ++#define LINK_SPEC "-m elf64_sparc -Y P,/usr/lib %{shared:-shared} \ + %{!shared: \ + %{!ibcs: \ + %{!static: \ + %{rdynamic:-export-dynamic} \ +- %{!dynamic-linker:-dynamic-linker /lib64/ld-linux.so.2}} \ ++ %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ + %{static:-static}}} \ + %{mlittle-endian:-EL} \ + %{!mno-relax:%{!r:-relax}} \ +diff -ruN gcc-4.1.2/gcc/config/sparc/t-linux64 gcc-4.1.2-pure64/gcc/config/sparc/t-linux64 +--- gcc-4.1.2/gcc/config/sparc/t-linux64 2004-04-01 19:05:22.000000000 +0300 ++++ gcc-4.1.2-pure64/gcc/config/sparc/t-linux64 2007-09-30 02:54:16.000000000 +0300 +@@ -1,6 +1,6 @@ + MULTILIB_OPTIONS = m64/m32 + MULTILIB_DIRNAMES = 64 32 +-MULTILIB_OSDIRNAMES = ../lib64 ../lib ++MULTILIB_OSDIRNAMES = ../lib ../lib32 + + LIBGCC = stmp-multilib + INSTALL_LIBGCC = install-multilib +@@ -16,4 +16,4 @@ + + CRTSTUFF_T_CFLAGS = `if test x$$($(GCC_FOR_TARGET) $(MULTILIB_CFLAGS) \ + -print-multi-os-directory) \ +- = x../lib64; then echo -mcmodel=medany; fi` ++ = x../lib; then echo -mcmodel=medany; fi`