Submitted By: Martin Ward <macros_the_black@ntlworld.com>
Date: 19-06-2014
Initial Package Version: 4.9.0
Origin: Idea originally developed by Ryan Oliver and Greg Schafer for
the Pure LFS project. With contributions from William Harrington
Upstream Status: Not Applied - CLFS Specific
Description: This patch makes changes to the paths for pure64, eg 64bit libs
in /usr/lib, 32bit in /usr/lib32.
diff -Naur gcc-4.9.0.orig/gcc/config/i386/linux64.h gcc-4.9.0/gcc/config/i386/linux64.h
old
|
new
|
|
27 | 27 | #define GNU_USER_LINK_EMULATION64 "elf_x86_64" |
28 | 28 | #define GNU_USER_LINK_EMULATIONX32 "elf32_x86_64" |
29 | 29 | |
30 | | #define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2" |
31 | | #define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2" |
| 30 | #define GLIBC_DYNAMIC_LINKER32 "/lib32/ld-linux.so.2" |
| 31 | #define GLIBC_DYNAMIC_LINKER64 "/lib/ld-linux-x86-64.so.2" |
32 | 32 | #define GLIBC_DYNAMIC_LINKERX32 "/libx32/ld-linux-x32.so.2" |
diff -Naur gcc-4.9.0.orig/gcc/config/i386/t-linux64 gcc-4.9.0/gcc/config/i386/t-linux64
old
|
new
|
|
33 | 33 | comma=, |
34 | 34 | MULTILIB_OPTIONS = $(subst $(comma),/,$(TM_MULTILIB_CONFIG)) |
35 | 35 | MULTILIB_DIRNAMES = $(patsubst m%, %, $(subst /, ,$(MULTILIB_OPTIONS))) |
36 | | MULTILIB_OSDIRNAMES = m64=../lib64$(call if_multiarch,:x86_64-linux-gnu) |
37 | | MULTILIB_OSDIRNAMES+= m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:i386-linux-gnu) |
| 36 | MULTILIB_OSDIRNAMES = m64=../lib$(call if_multiarch,:x86_64-linux-gnu) |
| 37 | MULTILIB_OSDIRNAMES+= m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib32)$(call if_multiarch,:i386-linux-gnu) |
38 | 38 | MULTILIB_OSDIRNAMES+= mx32=../libx32$(call if_multiarch,:x86_64-linux-gnux32) |
diff -Naur gcc-4.9.0.orig/gcc/config/linux.h gcc-4.9.0/gcc/config/linux.h
old
|
new
|
|
74 | 74 | GLIBC_DYNAMIC_LINKER32 and GLIBC_DYNAMIC_LINKER64 for targets |
75 | 75 | supporting both 32-bit and 64-bit compilation. */ |
76 | 76 | #define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" |
77 | | #define UCLIBC_DYNAMIC_LINKER32 "/lib/ld-uClibc.so.0" |
| 77 | #define UCLIBC_DYNAMIC_LINKER32 "/lib32/ld-uClibc.so.0" |
78 | 78 | #define UCLIBC_DYNAMIC_LINKER64 "/lib/ld64-uClibc.so.0" |
79 | 79 | #define UCLIBC_DYNAMIC_LINKERX32 "/lib/ldx32-uClibc.so.0" |
80 | 80 | #define BIONIC_DYNAMIC_LINKER "/system/bin/linker" |
diff -Naur gcc-4.9.0.orig/gcc/config/mips/linux64.h gcc-4.9.0/gcc/config/mips/linux64.h
old
|
new
|
|
23 | 23 | #define GNU_USER_LINK_EMULATIONN32 "elf32%{EB:b}%{EL:l}tsmipn32" |
24 | 24 | |
25 | 25 | #define GLIBC_DYNAMIC_LINKER32 \ |
26 | | "%{mnan=2008:/lib/ld-linux-mipsn8.so.1;:/lib/ld.so.1}" |
| 26 | "%{mnan=2008:/lib32/ld-linux-mipsn8.so.1;:/lib/ld.so.1}" |
27 | 27 | #define GLIBC_DYNAMIC_LINKER64 \ |
28 | | "%{mnan=2008:/lib64/ld-linux-mipsn8.so.1;:/lib64/ld.so.1}" |
| 28 | "%{mnan=2008:/lib/ld-linux-mipsn8.so.1;:/lib64/ld.so.1}" |
29 | 29 | #define GLIBC_DYNAMIC_LINKERN32 \ |
30 | | "%{mnan=2008:/lib32/ld-linux-mipsn8.so.1;:/lib32/ld.so.1}" |
| 30 | "%{mnan=2008:/lib64/ld-linux-mipsn8.so.1;:/lib32/ld.so.1}" |
31 | 31 | |
32 | 32 | #undef UCLIBC_DYNAMIC_LINKER32 |
33 | 33 | #define UCLIBC_DYNAMIC_LINKER32 \ |
34 | | "%{mnan=2008:/lib/ld-uClibc-mipsn8.so.0;:/lib/ld-uClibc.so.0}" |
| 34 | "%{mnan=2008:/lib32/ld-uClibc-mipsn8.so.0;:/lib32/ld-uClibc.so.0}" |
35 | 35 | #undef UCLIBC_DYNAMIC_LINKER64 |
36 | 36 | #define UCLIBC_DYNAMIC_LINKER64 \ |
37 | 37 | "%{mnan=2008:/lib/ld64-uClibc-mipsn8.so.0;:/lib/ld64-uClibc.so.0}" |
38 | 38 | #define UCLIBC_DYNAMIC_LINKERN32 \ |
39 | | "%{mnan=2008:/lib32/ld-uClibc-mipsn8.so.0;:/lib32/ld-uClibc.so.0}" |
| 39 | "%{mnan=2008:/lib64/ld-uClibc-mipsn8.so.0;:/lib64/ld-uClibc.so.0}" |
40 | 40 | |
41 | 41 | #define BIONIC_DYNAMIC_LINKERN32 "/system/bin/linker32" |
42 | 42 | #define GNU_USER_DYNAMIC_LINKERN32 \ |
diff -Naur gcc-4.9.0.orig/gcc/config/mips/t-linux64 gcc-4.9.0/gcc/config/mips/t-linux64
old
|
new
|
|
22 | 22 | MIPS_SOFT = $(if $(strip $(filter MASK_SOFT_FLOAT_ABI, $(target_cpu_default)) $(filter soft, $(with_float))),soft) |
23 | 23 | MULTILIB_OSDIRNAMES = \ |
24 | 24 | ../lib32$(call if_multiarch,:mips64$(MIPS_EL)-linux-gnuabin32$(MIPS_SOFT)) \ |
25 | | ../lib$(call if_multiarch,:mips$(MIPS_EL)-linux-gnu$(MIPS_SOFT)) \ |
26 | | ../lib64$(call if_multiarch,:mips64$(MIPS_EL)-linux-gnuabi64$(MIPS_SOFT)) |
| 25 | ../lib32$(call if_multiarch,:mips$(MIPS_EL)-linux-gnu$(MIPS_SOFT)) \ |
| 26 | ../lib$(call if_multiarch,:mips64$(MIPS_EL)-linux-gnuabi64$(MIPS_SOFT)) |
diff -Naur gcc-4.9.0.orig/gcc/config/rs6000/linux64.h gcc-4.9.0/gcc/config/rs6000/linux64.h
old
|
new
|
|
367 | 367 | #undef LINK_OS_DEFAULT_SPEC |
368 | 368 | #define LINK_OS_DEFAULT_SPEC "%(link_os_linux)" |
369 | 369 | |
370 | | #define GLIBC_DYNAMIC_LINKER32 "/lib/ld.so.1" |
| 370 | #define GLIBC_DYNAMIC_LINKER32 "/lib32/ld.so.1" |
371 | 371 | #ifdef LINUX64_DEFAULT_ABI_ELFv2 |
372 | | #define GLIBC_DYNAMIC_LINKER64 "%{mabi=elfv1:/lib64/ld64.so.1;:/lib64/ld64.so.2}" |
| 372 | #define GLIBC_DYNAMIC_LINKER64 "%{mabi=elfv1:/lib/ld64.so.1;:/lib/ld64.so.2}" |
373 | 373 | #else |
374 | | #define GLIBC_DYNAMIC_LINKER64 "%{mabi=elfv2:/lib64/ld64.so.2;:/lib64/ld64.so.1}" |
| 374 | #define GLIBC_DYNAMIC_LINKER64 "%{mabi=elfv2:/lib/ld64.so.2;:/lib/ld64.so.1}" |
375 | 375 | #endif |
376 | | #define UCLIBC_DYNAMIC_LINKER32 "/lib/ld-uClibc.so.0" |
| 376 | #define UCLIBC_DYNAMIC_LINKER32 "/lib32/ld-uClibc.so.0" |
377 | 377 | #define UCLIBC_DYNAMIC_LINKER64 "/lib/ld64-uClibc.so.0" |
378 | 378 | #if DEFAULT_LIBC == LIBC_UCLIBC |
379 | 379 | #define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}" |
diff -Naur gcc-4.9.0.orig/gcc/config/rs6000/t-linux64 gcc-4.9.0/gcc/config/rs6000/t-linux64
old
|
new
|
|
28 | 28 | MULTILIB_OPTIONS := m64/m32 |
29 | 29 | MULTILIB_DIRNAMES := 64 32 |
30 | 30 | MULTILIB_EXTRA_OPTS := |
31 | | MULTILIB_OSDIRNAMES := m64=../lib64$(call if_multiarch,:powerpc64-linux-gnu) |
32 | | MULTILIB_OSDIRNAMES += m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:powerpc-linux-gnu) |
| 31 | MULTILIB_OSDIRNAMES := m64=../lib$(call if_multiarch,:powerpc64-linux-gnu) |
| 32 | MULTILIB_OSDIRNAMES += m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib32)$(call if_multiarch,:powerpc-linux-gnu) |
33 | 33 | |
34 | 34 | rs6000-linux.o: $(srcdir)/config/rs6000/rs6000-linux.c |
35 | 35 | $(COMPILE) $< |
diff -Naur gcc-4.9.0.orig/gcc/config/s390/linux.h gcc-4.9.0/gcc/config/s390/linux.h
old
|
new
|
|
60 | 60 | #define MULTILIB_DEFAULTS { "m31" } |
61 | 61 | #endif |
62 | 62 | |
63 | | #define GLIBC_DYNAMIC_LINKER32 "/lib/ld.so.1" |
| 63 | #define GLIBC_DYNAMIC_LINKER32 "/lib32/ld.so.1" |
64 | 64 | #define GLIBC_DYNAMIC_LINKER64 "/lib/ld64.so.1" |
65 | 65 | |
66 | 66 | #undef LINK_SPEC |
diff -Naur gcc-4.9.0.orig/gcc/config/s390/t-linux64 gcc-4.9.0/gcc/config/s390/t-linux64
old
|
new
|
|
7 | 7 | |
8 | 8 | MULTILIB_OPTIONS = m64/m31 |
9 | 9 | MULTILIB_DIRNAMES = 64 32 |
10 | | MULTILIB_OSDIRNAMES = ../lib64$(call if_multiarch,:s390x-linux-gnu) |
11 | | MULTILIB_OSDIRNAMES += $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:s390-linux-gnu) |
| 10 | MULTILIB_OSDIRNAMES = ../lib$(call if_multiarch,:s390x-linux-gnu) |
| 11 | MULTILIB_OSDIRNAMES += $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib32)$(call if_multiarch,:s390-linux-gnu) |
diff -Naur gcc-4.9.0.orig/gcc/config/sparc/linux.h gcc-4.9.0/gcc/config/sparc/linux.h
old
|
new
|
|
83 | 83 | When the -shared link option is used a final link is not being |
84 | 84 | done. */ |
85 | 85 | |
86 | | #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" |
| 86 | #define GLIBC_DYNAMIC_LINKER "/lib32/ld-linux.so.2" |
87 | 87 | |
88 | 88 | #undef LINK_SPEC |
89 | 89 | #define LINK_SPEC "-m elf32_sparc %{shared:-shared} \ |
diff -Naur gcc-4.9.0.orig/gcc/config/sparc/linux64.h gcc-4.9.0/gcc/config/sparc/linux64.h
old
|
new
|
|
92 | 92 | When the -shared link option is used a final link is not being |
93 | 93 | done. */ |
94 | 94 | |
95 | | #define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2" |
96 | | #define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux.so.2" |
| 95 | #define GLIBC_DYNAMIC_LINKER32 "/lib32/ld-linux.so.2" |
| 96 | #define GLIBC_DYNAMIC_LINKER64 "/lib/ld-linux.so.2" |
97 | 97 | |
98 | 98 | #ifdef SPARC_BI_ARCH |
99 | 99 | |
… |
… |
|
201 | 201 | #else /* !SPARC_BI_ARCH */ |
202 | 202 | |
203 | 203 | #undef LINK_SPEC |
204 | | #define LINK_SPEC "-m elf64_sparc -Y P,%R/usr/lib64 %{shared:-shared} \ |
| 204 | #define LINK_SPEC "-m elf64_sparc -Y P,%R/lib %{shared:-shared} \ |
205 | 205 | %{!shared: \ |
206 | 206 | %{!static: \ |
207 | 207 | %{rdynamic:-export-dynamic} \ |
diff -Naur gcc-4.9.0.orig/gcc/config/sparc/t-linux64 gcc-4.9.0/gcc/config/sparc/t-linux64
old
|
new
|
|
25 | 25 | |
26 | 26 | MULTILIB_OPTIONS = m64/m32 |
27 | 27 | MULTILIB_DIRNAMES = 64 32 |
28 | | MULTILIB_OSDIRNAMES = ../lib64$(call if_multiarch,:sparc64-linux-gnu) |
29 | | MULTILIB_OSDIRNAMES += $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:sparc-linux-gnu) |
| 28 | MULTILIB_OSDIRNAMES = ../lib$(call if_multiarch,:sparc64-linux-gnu) |
| 29 | MULTILIB_OSDIRNAMES += $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib32)$(call if_multiarch,:sparc-linux-gnu) |