blob: e3af0bf161f92cfeef74b3725eed466d7ff70b56 [file] [log] [blame]
Patrick Williamse760df82023-05-26 11:10:49 -05001From ba2e308f7993099708ef3d8cbf2db5f134f08941 Mon Sep 17 00:00:00 2001
Andrew Geisslerd5838332022-05-27 11:33:10 -05002From: Khem Raj <raj.khem@gmail.com>
3Date: Fri, 29 Mar 2013 09:24:50 +0400
4Subject: [PATCH] Define GLIBC_DYNAMIC_LINKER and UCLIBC_DYNAMIC_LINKER
5 relative to SYSTEMLIBS_DIR
6
7This patch defines GLIBC_DYNAMIC_LINKER and UCLIBC_DYNAMIC_LINKER
8relative to SYSTEMLIBS_DIR which can be set in generated headers
9This breaks the assumption of hardcoded multilib in gcc
10Change is only for the supported architectures in OE including
11SH, sparc, alpha for possible future support (if any)
12
13Removes the do_headerfix task in metadata
14
Andrew Geisslerd5838332022-05-27 11:33:10 -050015Upstream-Status: Inappropriate [OE configuration]
16Signed-off-by: Khem Raj <raj.khem@gmail.com>
17---
18 gcc/config/aarch64/aarch64-linux.h | 4 ++--
19 gcc/config/alpha/linux-elf.h | 4 ++--
20 gcc/config/arm/linux-eabi.h | 6 +++---
21 gcc/config/arm/linux-elf.h | 2 +-
22 gcc/config/i386/linux.h | 4 ++--
23 gcc/config/i386/linux64.h | 12 ++++++------
24 gcc/config/linux.h | 8 ++++----
25 gcc/config/loongarch/gnu-user.h | 4 ++--
26 gcc/config/microblaze/linux.h | 4 ++--
27 gcc/config/mips/linux.h | 18 +++++++++---------
28 gcc/config/nios2/linux.h | 4 ++--
29 gcc/config/riscv/linux.h | 4 ++--
30 gcc/config/rs6000/linux64.h | 15 +++++----------
31 gcc/config/rs6000/sysv4.h | 4 ++--
32 gcc/config/s390/linux.h | 8 ++++----
33 gcc/config/sh/linux.h | 4 ++--
34 gcc/config/sparc/linux.h | 2 +-
35 gcc/config/sparc/linux64.h | 4 ++--
36 18 files changed, 53 insertions(+), 58 deletions(-)
37
Andrew Geisslerd5838332022-05-27 11:33:10 -050038--- a/gcc/config/aarch64/aarch64-linux.h
39+++ b/gcc/config/aarch64/aarch64-linux.h
40@@ -21,10 +21,10 @@
41 #ifndef GCC_AARCH64_LINUX_H
42 #define GCC_AARCH64_LINUX_H
43
44-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1"
45+#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1"
46
47 #undef MUSL_DYNAMIC_LINKER
48-#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1"
49+#define MUSL_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-musl-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1"
50
51 #undef ASAN_CC1_SPEC
52 #define ASAN_CC1_SPEC "%{%:sanitize(address):-funwind-tables}"
Andrew Geisslerd5838332022-05-27 11:33:10 -050053--- a/gcc/config/alpha/linux-elf.h
54+++ b/gcc/config/alpha/linux-elf.h
Patrick Williamsb542dec2023-06-09 01:26:37 -050055@@ -23,8 +23,8 @@ along with GCC; see the file COPYING3.
Andrew Geisslerd5838332022-05-27 11:33:10 -050056 #define EXTRA_SPECS \
57 { "elf_dynamic_linker", ELF_DYNAMIC_LINKER },
58
59-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
60-#define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
61+#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux.so.2"
62+#define UCLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-uClibc.so.0"
63 #if DEFAULT_LIBC == LIBC_UCLIBC
64 #define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}"
65 #elif DEFAULT_LIBC == LIBC_GLIBC
Andrew Geisslerd5838332022-05-27 11:33:10 -050066--- a/gcc/config/arm/linux-eabi.h
67+++ b/gcc/config/arm/linux-eabi.h
Patrick Williamse760df82023-05-26 11:10:49 -050068@@ -62,8 +62,8 @@
Andrew Geisslerd5838332022-05-27 11:33:10 -050069 GLIBC_DYNAMIC_LINKER_DEFAULT and TARGET_DEFAULT_FLOAT_ABI. */
70
71 #undef GLIBC_DYNAMIC_LINKER
72-#define GLIBC_DYNAMIC_LINKER_SOFT_FLOAT "/lib/ld-linux.so.3"
73-#define GLIBC_DYNAMIC_LINKER_HARD_FLOAT "/lib/ld-linux-armhf.so.3"
74+#define GLIBC_DYNAMIC_LINKER_SOFT_FLOAT SYSTEMLIBS_DIR "ld-linux.so.3"
75+#define GLIBC_DYNAMIC_LINKER_HARD_FLOAT SYSTEMLIBS_DIR "ld-linux-armhf.so.3"
76 #define GLIBC_DYNAMIC_LINKER_DEFAULT GLIBC_DYNAMIC_LINKER_SOFT_FLOAT
77
78 #define GLIBC_DYNAMIC_LINKER \
Patrick Williamse760df82023-05-26 11:10:49 -050079@@ -86,7 +86,7 @@
Andrew Geisslerd5838332022-05-27 11:33:10 -050080 #define MUSL_DYNAMIC_LINKER_E "%{mbig-endian:eb}"
81 #endif
82 #define MUSL_DYNAMIC_LINKER \
83- "/lib/ld-musl-arm" MUSL_DYNAMIC_LINKER_E "%{mfloat-abi=hard:hf}%{mfdpic:-fdpic}.so.1"
84+ SYSTEMLIBS_DIR "ld-musl-arm" MUSL_DYNAMIC_LINKER_E "%{mfloat-abi=hard:hf}%{mfdpic:-fdpic}.so.1"
85
86 /* At this point, bpabi.h will have clobbered LINK_SPEC. We want to
87 use the GNU/Linux version, not the generic BPABI version. */
Andrew Geisslerd5838332022-05-27 11:33:10 -050088--- a/gcc/config/arm/linux-elf.h
89+++ b/gcc/config/arm/linux-elf.h
90@@ -60,7 +60,7 @@
91
92 #define LIBGCC_SPEC "%{mfloat-abi=soft*:-lfloat} -lgcc"
93
94-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
95+#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux.so.2"
96
97 #define LINUX_TARGET_LINK_SPEC "%{h*} \
98 %{static:-Bstatic} \
Andrew Geisslerd5838332022-05-27 11:33:10 -050099--- a/gcc/config/i386/linux.h
100+++ b/gcc/config/i386/linux.h
Patrick Williamsb542dec2023-06-09 01:26:37 -0500101@@ -20,7 +20,7 @@ along with GCC; see the file COPYING3.
Andrew Geisslerd5838332022-05-27 11:33:10 -0500102 <http://www.gnu.org/licenses/>. */
103
104 #define GNU_USER_LINK_EMULATION "elf_i386"
105-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
106+#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux.so.2"
107
108 #undef MUSL_DYNAMIC_LINKER
109-#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-i386.so.1"
110+#define MUSL_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-musl-i386.so.1"
Andrew Geisslerd5838332022-05-27 11:33:10 -0500111--- a/gcc/config/i386/linux64.h
112+++ b/gcc/config/i386/linux64.h
Patrick Williamsb542dec2023-06-09 01:26:37 -0500113@@ -27,13 +27,13 @@ see the files COPYING3 and COPYING.RUNTI
Andrew Geisslerd5838332022-05-27 11:33:10 -0500114 #define GNU_USER_LINK_EMULATION64 "elf_x86_64"
115 #define GNU_USER_LINK_EMULATIONX32 "elf32_x86_64"
116
117-#define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2"
118-#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2"
119-#define GLIBC_DYNAMIC_LINKERX32 "/libx32/ld-linux-x32.so.2"
120+#define GLIBC_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld-linux.so.2"
121+#define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld-linux-x86-64.so.2"
122+#define GLIBC_DYNAMIC_LINKERX32 SYSTEMLIBS_DIR "ld-linux-x32.so.2"
123
124 #undef MUSL_DYNAMIC_LINKER32
125-#define MUSL_DYNAMIC_LINKER32 "/lib/ld-musl-i386.so.1"
126+#define MUSL_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld-musl-i386.so.1"
127 #undef MUSL_DYNAMIC_LINKER64
128-#define MUSL_DYNAMIC_LINKER64 "/lib/ld-musl-x86_64.so.1"
129+#define MUSL_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld-musl-x86_64.so.1"
130 #undef MUSL_DYNAMIC_LINKERX32
131-#define MUSL_DYNAMIC_LINKERX32 "/lib/ld-musl-x32.so.1"
132+#define MUSL_DYNAMIC_LINKERX32 SYSTEMLIBS_DIR "ld-musl-x32.so.1"
Andrew Geisslerd5838332022-05-27 11:33:10 -0500133--- a/gcc/config/linux.h
134+++ b/gcc/config/linux.h
Patrick Williamsb542dec2023-06-09 01:26:37 -0500135@@ -86,10 +86,10 @@ see the files COPYING3 and COPYING.RUNTI
Andrew Geisslerd5838332022-05-27 11:33:10 -0500136 GLIBC_DYNAMIC_LINKER must be defined for each target using them, or
137 GLIBC_DYNAMIC_LINKER32 and GLIBC_DYNAMIC_LINKER64 for targets
138 supporting both 32-bit and 64-bit compilation. */
139-#define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
140-#define UCLIBC_DYNAMIC_LINKER32 "/lib/ld-uClibc.so.0"
141-#define UCLIBC_DYNAMIC_LINKER64 "/lib/ld64-uClibc.so.0"
142-#define UCLIBC_DYNAMIC_LINKERX32 "/lib/ldx32-uClibc.so.0"
143+#define UCLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-uClibc.so.0"
144+#define UCLIBC_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld-uClibc.so.0"
145+#define UCLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld64-uClibc.so.0"
146+#define UCLIBC_DYNAMIC_LINKERX32 SYSTEMLIBS_DIR "ldx32-uClibc.so.0"
147 #define BIONIC_DYNAMIC_LINKER "/system/bin/linker"
148 #define BIONIC_DYNAMIC_LINKER32 "/system/bin/linker"
149 #define BIONIC_DYNAMIC_LINKER64 "/system/bin/linker64"
Andrew Geisslerd5838332022-05-27 11:33:10 -0500150--- a/gcc/config/loongarch/gnu-user.h
151+++ b/gcc/config/loongarch/gnu-user.h
Patrick Williamsb542dec2023-06-09 01:26:37 -0500152@@ -31,11 +31,11 @@ along with GCC; see the file COPYING3.
Andrew Geisslerd5838332022-05-27 11:33:10 -0500153
154 #undef GLIBC_DYNAMIC_LINKER
155 #define GLIBC_DYNAMIC_LINKER \
156- "/lib" ABI_GRLEN_SPEC "/ld-linux-loongarch-" ABI_SPEC ".so.1"
157+ SYSTEMLIBS_DIR "ld-linux-loongarch-" ABI_SPEC ".so.1"
158
159 #undef MUSL_DYNAMIC_LINKER
160 #define MUSL_DYNAMIC_LINKER \
161- "/lib" ABI_GRLEN_SPEC "/ld-musl-loongarch-" ABI_SPEC ".so.1"
162+ SYSTEMLIBS_DIR "ld-musl-loongarch-" ABI_SPEC ".so.1"
163
164 #undef GNU_USER_TARGET_LINK_SPEC
165 #define GNU_USER_TARGET_LINK_SPEC \
Andrew Geisslerd5838332022-05-27 11:33:10 -0500166--- a/gcc/config/microblaze/linux.h
167+++ b/gcc/config/microblaze/linux.h
168@@ -28,7 +28,7 @@
169 #undef TLS_NEEDS_GOT
170 #define TLS_NEEDS_GOT 1
171
172-#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1"
173+#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "/ld.so.1"
174 #define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
175
176 #if TARGET_BIG_ENDIAN_DEFAULT == 0 /* LE */
177@@ -38,7 +38,7 @@
178 #endif
179
180 #undef MUSL_DYNAMIC_LINKER
181-#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-microblaze" MUSL_DYNAMIC_LINKER_E ".so.1"
182+#define MUSL_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-musl-microblaze" MUSL_DYNAMIC_LINKER_E ".so.1"
183
184 #undef SUBTARGET_EXTRA_SPECS
185 #define SUBTARGET_EXTRA_SPECS \
Andrew Geisslerd5838332022-05-27 11:33:10 -0500186--- a/gcc/config/mips/linux.h
187+++ b/gcc/config/mips/linux.h
Patrick Williamsb542dec2023-06-09 01:26:37 -0500188@@ -22,29 +22,29 @@ along with GCC; see the file COPYING3.
Andrew Geisslerd5838332022-05-27 11:33:10 -0500189 #define GNU_USER_LINK_EMULATIONN32 "elf32%{EB:b}%{EL:l}tsmipn32"
190
191 #define GLIBC_DYNAMIC_LINKER32 \
192- "%{mnan=2008:/lib/ld-linux-mipsn8.so.1;:/lib/ld.so.1}"
193+ "%{mnan=2008:" SYSTEMLIBS_DIR "ld-linux-mipsn8.so.1;:" SYSTEMLIBS_DIR "ld.so.1}"
194 #define GLIBC_DYNAMIC_LINKER64 \
195- "%{mnan=2008:/lib64/ld-linux-mipsn8.so.1;:/lib64/ld.so.1}"
196+ "%{mnan=2008:" SYSTEMLIBS_DIR "ld-linux-mipsn8.so.1;:" SYSTEMLIBS_DIR "ld.so.1}"
197 #define GLIBC_DYNAMIC_LINKERN32 \
198- "%{mnan=2008:/lib32/ld-linux-mipsn8.so.1;:/lib32/ld.so.1}"
199+ "%{mnan=2008:" SYSTEMLIBS_DIR "ld-linux-mipsn8.so.1;:" SYSTEMLIBS_DIR "ld.so.1}"
200
201 #undef UCLIBC_DYNAMIC_LINKER32
202 #define UCLIBC_DYNAMIC_LINKER32 \
203- "%{mnan=2008:/lib/ld-uClibc-mipsn8.so.0;:/lib/ld-uClibc.so.0}"
204+ "%{mnan=2008:" SYSTEMLIBS_DIR "ld-uClibc-mipsn8.so.0;:" SYSTEMLIBS_DIR "ld-uClibc.so.0}"
205 #undef UCLIBC_DYNAMIC_LINKER64
206 #define UCLIBC_DYNAMIC_LINKER64 \
207- "%{mnan=2008:/lib/ld64-uClibc-mipsn8.so.0;:/lib/ld64-uClibc.so.0}"
208+ "%{mnan=2008:" SYSTEMLIBS_DIR "ld64-uClibc-mipsn8.so.0;:" SYSTEMLIBS_DIR "ld64-uClibc.so.0}"
209 #define UCLIBC_DYNAMIC_LINKERN32 \
210- "%{mnan=2008:/lib32/ld-uClibc-mipsn8.so.0;:/lib32/ld-uClibc.so.0}"
211+ "%{mnan=2008:" SYSTEMLIBS_DIR "ld-uClibc-mipsn8.so.0;:" SYSTEMLIBS_DIR "ld-uClibc.so.0}"
212
213 #undef MUSL_DYNAMIC_LINKER32
214 #define MUSL_DYNAMIC_LINKER32 \
215- "/lib/ld-musl-mips%{mips32r6|mips64r6:r6}%{EL:el}%{msoft-float:-sf}.so.1"
216+ SYSTEMLIBS_DIR "ld-musl-mips%{mips32r6|mips64r6:r6}%{EL:el}%{msoft-float:-sf}.so.1"
217 #undef MUSL_DYNAMIC_LINKER64
218 #define MUSL_DYNAMIC_LINKER64 \
219- "/lib/ld-musl-mips64%{mips64r6:r6}%{EL:el}%{msoft-float:-sf}.so.1"
220+ SYSTEMLIBS_DIR "ld-musl-mips64%{mips64r6:r6}%{EL:el}%{msoft-float:-sf}.so.1"
221 #define MUSL_DYNAMIC_LINKERN32 \
222- "/lib/ld-musl-mipsn32%{mips64r6:r6}%{EL:el}%{msoft-float:-sf}.so.1"
223+ SYSTEMLIBS_DIR "ld-musl-mipsn32%{mips64r6:r6}%{EL:el}%{msoft-float:-sf}.so.1"
224
225 #define BIONIC_DYNAMIC_LINKERN32 "/system/bin/linker32"
226 #define GNU_USER_DYNAMIC_LINKERN32 \
Andrew Geisslerd5838332022-05-27 11:33:10 -0500227--- a/gcc/config/nios2/linux.h
228+++ b/gcc/config/nios2/linux.h
Patrick Williamse760df82023-05-26 11:10:49 -0500229@@ -29,10 +29,10 @@
Andrew Geisslerd5838332022-05-27 11:33:10 -0500230 #undef CPP_SPEC
231 #define CPP_SPEC "%{posix:-D_POSIX_SOURCE} %{pthread:-D_REENTRANT}"
232
233-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-nios2.so.1"
Andrew Geisslerd5838332022-05-27 11:33:10 -0500234+#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux-nios2.so.1"
Patrick Williamse760df82023-05-26 11:10:49 -0500235
236 #undef MUSL_DYNAMIC_LINKER
237-#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-nios2.so.1"
Andrew Geisslerd5838332022-05-27 11:33:10 -0500238+#define MUSL_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-musl-nios2.so.1"
239
240 #undef LINK_SPEC
241 #define LINK_SPEC LINK_SPEC_ENDIAN \
Andrew Geisslerd5838332022-05-27 11:33:10 -0500242--- a/gcc/config/riscv/linux.h
243+++ b/gcc/config/riscv/linux.h
Patrick Williamsb542dec2023-06-09 01:26:37 -0500244@@ -22,7 +22,7 @@ along with GCC; see the file COPYING3.
Andrew Geisslerd5838332022-05-27 11:33:10 -0500245 GNU_USER_TARGET_OS_CPP_BUILTINS(); \
246 } while (0)
247
248-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-riscv" XLEN_SPEC "-" ABI_SPEC ".so.1"
249+#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux-riscv" XLEN_SPEC "-" ABI_SPEC ".so.1"
250
251 #define MUSL_ABI_SUFFIX \
252 "%{mabi=ilp32:-sf}" \
Patrick Williamsb542dec2023-06-09 01:26:37 -0500253@@ -33,7 +33,7 @@ along with GCC; see the file COPYING3.
Andrew Geisslerd5838332022-05-27 11:33:10 -0500254 "%{mabi=lp64d:}"
255
256 #undef MUSL_DYNAMIC_LINKER
257-#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-riscv" XLEN_SPEC MUSL_ABI_SUFFIX ".so.1"
258+#define MUSL_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-musl-riscv" XLEN_SPEC MUSL_ABI_SUFFIX ".so.1"
259
Patrick Williamsb542dec2023-06-09 01:26:37 -0500260 #define ICACHE_FLUSH_FUNC "__riscv_flush_icache"
261
Andrew Geisslerd5838332022-05-27 11:33:10 -0500262--- a/gcc/config/rs6000/linux64.h
263+++ b/gcc/config/rs6000/linux64.h
264@@ -339,24 +339,19 @@ extern int dot_symbols;
265 #undef LINK_OS_DEFAULT_SPEC
266 #define LINK_OS_DEFAULT_SPEC "%(link_os_linux)"
267
268-#define GLIBC_DYNAMIC_LINKER32 "%(dynamic_linker_prefix)/lib/ld.so.1"
269-
270+#define GLIBC_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld.so.1"
271 #ifdef LINUX64_DEFAULT_ABI_ELFv2
272-#define GLIBC_DYNAMIC_LINKER64 \
273-"%{mabi=elfv1:%(dynamic_linker_prefix)/lib64/ld64.so.1;" \
274-":%(dynamic_linker_prefix)/lib64/ld64.so.2}"
275+#define GLIBC_DYNAMIC_LINKER64 "%{mabi=elfv1:" SYSTEMLIBS_DIR "ld64.so.1;:" SYSTEMLIBS_DIR "ld64.so.2}"
276 #else
277-#define GLIBC_DYNAMIC_LINKER64 \
278-"%{mabi=elfv2:%(dynamic_linker_prefix)/lib64/ld64.so.2;" \
279-":%(dynamic_linker_prefix)/lib64/ld64.so.1}"
280+#define GLIBC_DYNAMIC_LINKER64 "%{mabi=elfv2:" SYSTEMLIBS_DIR "ld64.so.2;:" SYSTEMLIBS_DIR "ld64.so.1}"
281 #endif
282
283 #undef MUSL_DYNAMIC_LINKER32
284 #define MUSL_DYNAMIC_LINKER32 \
285- "/lib/ld-musl-powerpc" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1"
286+ SYSTEMLIBS_DIR "ld-musl-powerpc" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1"
287 #undef MUSL_DYNAMIC_LINKER64
288 #define MUSL_DYNAMIC_LINKER64 \
289- "/lib/ld-musl-powerpc64" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1"
290+ SYSTEMLIBS_DIR "ld-musl-powerpc64" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1"
291
292 #undef DEFAULT_ASM_ENDIAN
293 #if (TARGET_DEFAULT & MASK_LITTLE_ENDIAN)
Andrew Geisslerd5838332022-05-27 11:33:10 -0500294--- a/gcc/config/rs6000/sysv4.h
295+++ b/gcc/config/rs6000/sysv4.h
Patrick Williamse760df82023-05-26 11:10:49 -0500296@@ -771,10 +771,10 @@ GNU_USER_TARGET_CC1_SPEC
Andrew Geisslerd5838332022-05-27 11:33:10 -0500297
298 #define MUSL_DYNAMIC_LINKER_E ENDIAN_SELECT("","le","")
299
300-#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1"
301+#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld.so.1"
302 #undef MUSL_DYNAMIC_LINKER
303 #define MUSL_DYNAMIC_LINKER \
304- "/lib/ld-musl-powerpc" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1"
305+ SYSTEMLIBS_DIR "ld-musl-powerpc" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1"
306
307 #ifndef GNU_USER_DYNAMIC_LINKER
308 #define GNU_USER_DYNAMIC_LINKER GLIBC_DYNAMIC_LINKER
Andrew Geisslerd5838332022-05-27 11:33:10 -0500309--- a/gcc/config/s390/linux.h
310+++ b/gcc/config/s390/linux.h
Patrick Williamsb542dec2023-06-09 01:26:37 -0500311@@ -72,13 +72,13 @@ along with GCC; see the file COPYING3.
Andrew Geisslerd5838332022-05-27 11:33:10 -0500312 #define MULTILIB_DEFAULTS { "m31" }
313 #endif
314
315-#define GLIBC_DYNAMIC_LINKER32 "/lib/ld.so.1"
316-#define GLIBC_DYNAMIC_LINKER64 "/lib/ld64.so.1"
317+#define GLIBC_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld.so.1"
318+#define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld64.so.1"
319
320 #undef MUSL_DYNAMIC_LINKER32
321-#define MUSL_DYNAMIC_LINKER32 "/lib/ld-musl-s390.so.1"
322+#define MUSL_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld-musl-s390.so.1"
323 #undef MUSL_DYNAMIC_LINKER64
324-#define MUSL_DYNAMIC_LINKER64 "/lib/ld-musl-s390x.so.1"
325+#define MUSL_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld-musl-s390x.so.1"
326
327 #undef LINK_SPEC
328 #define LINK_SPEC \
Andrew Geisslerd5838332022-05-27 11:33:10 -0500329--- a/gcc/config/sh/linux.h
330+++ b/gcc/config/sh/linux.h
Patrick Williamsb542dec2023-06-09 01:26:37 -0500331@@ -61,10 +61,10 @@ along with GCC; see the file COPYING3.
Andrew Geisslerd5838332022-05-27 11:33:10 -0500332
333 #undef MUSL_DYNAMIC_LINKER
334 #define MUSL_DYNAMIC_LINKER \
335- "/lib/ld-musl-sh" MUSL_DYNAMIC_LINKER_E MUSL_DYNAMIC_LINKER_FP \
336+ SYSTEMLIBS_DIR "ld-musl-sh" MUSL_DYNAMIC_LINKER_E MUSL_DYNAMIC_LINKER_FP \
337 "%{mfdpic:-fdpic}.so.1"
338
339-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
340+#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux.so.2"
341
342 #undef SUBTARGET_LINK_EMUL_SUFFIX
343 #define SUBTARGET_LINK_EMUL_SUFFIX "%{mfdpic:_fd;:_linux}"
Andrew Geisslerd5838332022-05-27 11:33:10 -0500344--- a/gcc/config/sparc/linux.h
345+++ b/gcc/config/sparc/linux.h
Patrick Williamsb542dec2023-06-09 01:26:37 -0500346@@ -78,7 +78,7 @@ extern const char *host_detect_local_cpu
Andrew Geisslerd5838332022-05-27 11:33:10 -0500347 When the -shared link option is used a final link is not being
348 done. */
349
350-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
351+#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux.so.2"
352
353 #undef LINK_SPEC
354 #define LINK_SPEC "-m elf32_sparc %{shared:-shared} \
Andrew Geisslerd5838332022-05-27 11:33:10 -0500355--- a/gcc/config/sparc/linux64.h
356+++ b/gcc/config/sparc/linux64.h
Patrick Williamsb542dec2023-06-09 01:26:37 -0500357@@ -78,8 +78,8 @@ along with GCC; see the file COPYING3.
Andrew Geisslerd5838332022-05-27 11:33:10 -0500358 When the -shared link option is used a final link is not being
359 done. */
360
361-#define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2"
362-#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux.so.2"
363+#define GLIBC_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld-linux.so.2"
364+#define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld-linux.so.2"
365
366 #ifdef SPARC_BI_ARCH
367