diff options
author | Pavel Zhukov <pavel@zhukoff.net> | 2023-01-16 08:56:02 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2023-01-26 23:37:05 +0000 |
commit | 2453dfa90af40286618511eab41aa19aaf054804 (patch) | |
tree | 5aa0a176685c04360b844f3e7c767f2004ea17d3 | |
parent | 370c87ac605e867450a12b00658ff707e4adbed2 (diff) | |
download | poky-2453dfa90af40286618511eab41aa19aaf054804.tar.gz |
gcc: Refactor linker patches and fix linker on arm with usrmerge
Backport fix from master to allow gcc to use proper linker path for
musl [Yocto #14977].
Fixes:
| qemu-arm: Could not open '/lib/ld-musl-armhf.so.1': No such file or directory
(From OE-Core rev: d821a602c56a8d0c8171ee0d2ce31613121be3a6)
Signed-off-by: Pavel Zhukov <pavel@zhukoff.net>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
5 files changed, 245 insertions, 149 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-11.3.inc b/meta/recipes-devtools/gcc/gcc-11.3.inc index 27074a06ae..ab2ece3cce 100644 --- a/meta/recipes-devtools/gcc/gcc-11.3.inc +++ b/meta/recipes-devtools/gcc/gcc-11.3.inc | |||
@@ -48,7 +48,6 @@ SRC_URI = "\ | |||
48 | file://0016-If-CXXFLAGS-contains-something-unsupported-by-the-bu.patch \ | 48 | file://0016-If-CXXFLAGS-contains-something-unsupported-by-the-bu.patch \ |
49 | file://0017-handle-sysroot-support-for-nativesdk-gcc.patch \ | 49 | file://0017-handle-sysroot-support-for-nativesdk-gcc.patch \ |
50 | file://0018-Search-target-sysroot-gcc-version-specific-dirs-with.patch \ | 50 | file://0018-Search-target-sysroot-gcc-version-specific-dirs-with.patch \ |
51 | file://0019-nios2-Define-MUSL_DYNAMIC_LINKER.patch \ | ||
52 | file://0020-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch \ | 51 | file://0020-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch \ |
53 | file://0021-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch \ | 52 | file://0021-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch \ |
54 | file://0022-sync-gcc-stddef.h-with-musl.patch \ | 53 | file://0022-sync-gcc-stddef.h-with-musl.patch \ |
diff --git a/meta/recipes-devtools/gcc/gcc/0004-arm-add-armv9-a-architecture-to-march.patch b/meta/recipes-devtools/gcc/gcc/0004-arm-add-armv9-a-architecture-to-march.patch index c38d1b9119..864c8b3017 100644 --- a/meta/recipes-devtools/gcc/gcc/0004-arm-add-armv9-a-architecture-to-march.patch +++ b/meta/recipes-devtools/gcc/gcc/0004-arm-add-armv9-a-architecture-to-march.patch | |||
@@ -43,10 +43,10 @@ Signed-off-by: Ruiqiang Hao <Ruiqiang.Hao@windriver.com> | |||
43 | gcc/testsuite/lib/target-supports.exp | 3 ++- | 43 | gcc/testsuite/lib/target-supports.exp | 3 ++- |
44 | 9 files changed, 79 insertions(+), 8 deletions(-) | 44 | 9 files changed, 79 insertions(+), 8 deletions(-) |
45 | 45 | ||
46 | diff --git a/gcc/config/arm/arm-cpus.in b/gcc/config/arm/arm-cpus.in | 46 | Index: gcc-11.3.0/gcc/config/arm/arm-cpus.in |
47 | index bcc9ebe9f..58d83829c 100644 | 47 | =================================================================== |
48 | --- a/gcc/config/arm/arm-cpus.in | 48 | --- gcc-11.3.0.orig/gcc/config/arm/arm-cpus.in |
49 | +++ b/gcc/config/arm/arm-cpus.in | 49 | +++ gcc-11.3.0/gcc/config/arm/arm-cpus.in |
50 | @@ -132,6 +132,9 @@ define feature cmse | 50 | @@ -132,6 +132,9 @@ define feature cmse |
51 | # Architecture rel 8.1-M. | 51 | # Architecture rel 8.1-M. |
52 | define feature armv8_1m_main | 52 | define feature armv8_1m_main |
@@ -57,7 +57,7 @@ index bcc9ebe9f..58d83829c 100644 | |||
57 | # Floating point and Neon extensions. | 57 | # Floating point and Neon extensions. |
58 | # VFPv1 is not supported in GCC. | 58 | # VFPv1 is not supported in GCC. |
59 | 59 | ||
60 | @@ -293,6 +296,7 @@ define fgroup ARMv8m_base ARMv6m armv8 cmse tdiv | 60 | @@ -293,6 +296,7 @@ define fgroup ARMv8m_base ARMv6m armv8 c |
61 | define fgroup ARMv8m_main ARMv7m armv8 cmse | 61 | define fgroup ARMv8m_main ARMv7m armv8 cmse |
62 | define fgroup ARMv8r ARMv8a | 62 | define fgroup ARMv8r ARMv8a |
63 | define fgroup ARMv8_1m_main ARMv8m_main armv8_1m_main | 63 | define fgroup ARMv8_1m_main ARMv8m_main armv8_1m_main |
@@ -87,10 +87,10 @@ index bcc9ebe9f..58d83829c 100644 | |||
87 | begin arch iwmmxt | 87 | begin arch iwmmxt |
88 | tune for iwmmxt | 88 | tune for iwmmxt |
89 | tune flags LDSCHED STRONG XSCALE | 89 | tune flags LDSCHED STRONG XSCALE |
90 | diff --git a/gcc/config/arm/arm-tables.opt b/gcc/config/arm/arm-tables.opt | 90 | Index: gcc-11.3.0/gcc/config/arm/arm-tables.opt |
91 | index 5692d4fb7..ae3dd9414 100644 | 91 | =================================================================== |
92 | --- a/gcc/config/arm/arm-tables.opt | 92 | --- gcc-11.3.0.orig/gcc/config/arm/arm-tables.opt |
93 | +++ b/gcc/config/arm/arm-tables.opt | 93 | +++ gcc-11.3.0/gcc/config/arm/arm-tables.opt |
94 | @@ -380,10 +380,13 @@ EnumValue | 94 | @@ -380,10 +380,13 @@ EnumValue |
95 | Enum(arm_arch) String(armv8.1-m.main) Value(30) | 95 | Enum(arm_arch) String(armv8.1-m.main) Value(30) |
96 | 96 | ||
@@ -107,10 +107,10 @@ index 5692d4fb7..ae3dd9414 100644 | |||
107 | 107 | ||
108 | Enum | 108 | Enum |
109 | Name(arm_fpu) Type(enum fpu_type) | 109 | Name(arm_fpu) Type(enum fpu_type) |
110 | diff --git a/gcc/config/arm/arm.h b/gcc/config/arm/arm.h | 110 | Index: gcc-11.3.0/gcc/config/arm/arm.h |
111 | index 47c13a9e5..088c7725c 100644 | 111 | =================================================================== |
112 | --- a/gcc/config/arm/arm.h | 112 | --- gcc-11.3.0.orig/gcc/config/arm/arm.h |
113 | +++ b/gcc/config/arm/arm.h | 113 | +++ gcc-11.3.0/gcc/config/arm/arm.h |
114 | @@ -456,7 +456,8 @@ enum base_architecture | 114 | @@ -456,7 +456,8 @@ enum base_architecture |
115 | BASE_ARCH_8A = 8, | 115 | BASE_ARCH_8A = 8, |
116 | BASE_ARCH_8M_BASE = 8, | 116 | BASE_ARCH_8M_BASE = 8, |
@@ -121,10 +121,10 @@ index 47c13a9e5..088c7725c 100644 | |||
121 | }; | 121 | }; |
122 | 122 | ||
123 | /* The major revision number of the ARM Architecture implemented by the target. */ | 123 | /* The major revision number of the ARM Architecture implemented by the target. */ |
124 | diff --git a/gcc/config/arm/t-aprofile b/gcc/config/arm/t-aprofile | 124 | Index: gcc-11.3.0/gcc/config/arm/t-aprofile |
125 | index 8574ac3e2..68e2251c7 100644 | 125 | =================================================================== |
126 | --- a/gcc/config/arm/t-aprofile | 126 | --- gcc-11.3.0.orig/gcc/config/arm/t-aprofile |
127 | +++ b/gcc/config/arm/t-aprofile | 127 | +++ gcc-11.3.0/gcc/config/arm/t-aprofile |
128 | @@ -26,8 +26,8 @@ | 128 | @@ -26,8 +26,8 @@ |
129 | 129 | ||
130 | # Arch and FPU variants to build libraries with | 130 | # Arch and FPU variants to build libraries with |
@@ -136,7 +136,7 @@ index 8574ac3e2..68e2251c7 100644 | |||
136 | 136 | ||
137 | # ARMv7-A - build nofp, fp-d16 and SIMD variants | 137 | # ARMv7-A - build nofp, fp-d16 and SIMD variants |
138 | 138 | ||
139 | @@ -46,6 +46,11 @@ MULTILIB_REQUIRED += mthumb/march=armv8-a/mfloat-abi=soft | 139 | @@ -46,6 +46,11 @@ MULTILIB_REQUIRED += mthumb/march=armv8- |
140 | MULTILIB_REQUIRED += mthumb/march=armv8-a+simd/mfloat-abi=hard | 140 | MULTILIB_REQUIRED += mthumb/march=armv8-a+simd/mfloat-abi=hard |
141 | MULTILIB_REQUIRED += mthumb/march=armv8-a+simd/mfloat-abi=softfp | 141 | MULTILIB_REQUIRED += mthumb/march=armv8-a+simd/mfloat-abi=softfp |
142 | 142 | ||
@@ -148,7 +148,7 @@ index 8574ac3e2..68e2251c7 100644 | |||
148 | # Matches | 148 | # Matches |
149 | 149 | ||
150 | # Arch Matches | 150 | # Arch Matches |
151 | @@ -129,17 +134,29 @@ MULTILIB_MATCHES += march?armv8-a=march?armv8.6-a | 151 | @@ -129,17 +134,29 @@ MULTILIB_MATCHES += march?armv8-a=march? |
152 | MULTILIB_MATCHES += $(foreach ARCH, $(v8_6_a_simd_variants), \ | 152 | MULTILIB_MATCHES += $(foreach ARCH, $(v8_6_a_simd_variants), \ |
153 | march?armv8-a+simd=march?armv8.6-a$(ARCH)) | 153 | march?armv8-a+simd=march?armv8.6-a$(ARCH)) |
154 | 154 | ||
@@ -180,11 +180,11 @@ index 8574ac3e2..68e2251c7 100644 | |||
180 | - $(foreach ARCH, armv7-a armv8-a, \ | 180 | - $(foreach ARCH, armv7-a armv8-a, \ |
181 | + $(foreach ARCH, armv7-a armv8-a armv9-a, \ | 181 | + $(foreach ARCH, armv7-a armv8-a armv9-a, \ |
182 | mthumb/march.$(ARCH)/mfloat-abi.soft=m$(MODE)/march.$(ARCH)/mfloat-abi.softfp)) | 182 | mthumb/march.$(ARCH)/mfloat-abi.soft=m$(MODE)/march.$(ARCH)/mfloat-abi.softfp)) |
183 | diff --git a/gcc/config/arm/t-arm-elf b/gcc/config/arm/t-arm-elf | 183 | Index: gcc-11.3.0/gcc/config/arm/t-arm-elf |
184 | index d68def308..b3a900e8c 100644 | 184 | =================================================================== |
185 | --- a/gcc/config/arm/t-arm-elf | 185 | --- gcc-11.3.0.orig/gcc/config/arm/t-arm-elf |
186 | +++ b/gcc/config/arm/t-arm-elf | 186 | +++ gcc-11.3.0/gcc/config/arm/t-arm-elf |
187 | @@ -38,6 +38,8 @@ v7ve_fps := vfpv3-d16 vfpv3 vfpv3-d16-fp16 vfpv3-fp16 vfpv4 neon \ | 187 | @@ -38,6 +38,8 @@ v7ve_fps := vfpv3-d16 vfpv3 vfpv3-d16-fp |
188 | # it seems to work ok. | 188 | # it seems to work ok. |
189 | v8_fps := simd fp16 crypto fp16+crypto dotprod fp16fml | 189 | v8_fps := simd fp16 crypto fp16+crypto dotprod fp16fml |
190 | 190 | ||
@@ -202,7 +202,7 @@ index d68def308..b3a900e8c 100644 | |||
202 | # No floating point variants, require thumb1 softfp | 202 | # No floating point variants, require thumb1 softfp |
203 | all_nofp_t := armv6-m armv6s-m armv8-m.base | 203 | all_nofp_t := armv6-m armv6s-m armv8-m.base |
204 | 204 | ||
205 | @@ -110,6 +114,11 @@ MULTILIB_MATCHES += $(foreach ARCH, $(all_v8_archs), \ | 205 | @@ -110,6 +114,11 @@ MULTILIB_MATCHES += $(foreach ARCH, |
206 | $(foreach FPARCH, $(v8_fps), \ | 206 | $(foreach FPARCH, $(v8_fps), \ |
207 | march?armv7+fp=march?$(ARCH)+$(FPARCH))) | 207 | march?armv7+fp=march?$(ARCH)+$(FPARCH))) |
208 | 208 | ||
@@ -214,11 +214,11 @@ index d68def308..b3a900e8c 100644 | |||
214 | MULTILIB_MATCHES += $(foreach ARCH, armv7e-m armv8-m.mainline, \ | 214 | MULTILIB_MATCHES += $(foreach ARCH, armv7e-m armv8-m.mainline, \ |
215 | march?armv7+fp=march?$(ARCH)+fp.dp) | 215 | march?armv7+fp=march?$(ARCH)+fp.dp) |
216 | 216 | ||
217 | diff --git a/gcc/config/arm/t-multilib b/gcc/config/arm/t-multilib | 217 | Index: gcc-11.3.0/gcc/config/arm/t-multilib |
218 | index ddc5033bf..d789b86ee 100644 | 218 | =================================================================== |
219 | --- a/gcc/config/arm/t-multilib | 219 | --- gcc-11.3.0.orig/gcc/config/arm/t-multilib |
220 | +++ b/gcc/config/arm/t-multilib | 220 | +++ gcc-11.3.0/gcc/config/arm/t-multilib |
221 | @@ -78,6 +78,8 @@ v8_4_a_simd_variants := $(call all_feat_combs, simd fp16 crypto i8mm bf16) | 221 | @@ -78,6 +78,8 @@ v8_4_a_simd_variants := $(call all_feat_ |
222 | v8_5_a_simd_variants := $(call all_feat_combs, simd fp16 crypto i8mm bf16) | 222 | v8_5_a_simd_variants := $(call all_feat_combs, simd fp16 crypto i8mm bf16) |
223 | v8_6_a_simd_variants := $(call all_feat_combs, simd fp16 crypto i8mm bf16) | 223 | v8_6_a_simd_variants := $(call all_feat_combs, simd fp16 crypto i8mm bf16) |
224 | v8_r_nosimd_variants := +crc | 224 | v8_r_nosimd_variants := +crc |
@@ -227,7 +227,7 @@ index ddc5033bf..d789b86ee 100644 | |||
227 | 227 | ||
228 | ifneq (,$(HAS_APROFILE)) | 228 | ifneq (,$(HAS_APROFILE)) |
229 | include $(srcdir)/config/arm/t-aprofile | 229 | include $(srcdir)/config/arm/t-aprofile |
230 | @@ -202,6 +204,16 @@ MULTILIB_MATCHES += march?armv7=march?armv8.6-a | 230 | @@ -202,6 +204,16 @@ MULTILIB_MATCHES += march?armv7=march?ar |
231 | MULTILIB_MATCHES += $(foreach ARCH, $(v8_6_a_simd_variants), \ | 231 | MULTILIB_MATCHES += $(foreach ARCH, $(v8_6_a_simd_variants), \ |
232 | march?armv7+fp=march?armv8.6-a$(ARCH)) | 232 | march?armv7+fp=march?armv8.6-a$(ARCH)) |
233 | 233 | ||
@@ -244,10 +244,10 @@ index ddc5033bf..d789b86ee 100644 | |||
244 | endif # Not APROFILE. | 244 | endif # Not APROFILE. |
245 | 245 | ||
246 | # Use Thumb libraries for everything. | 246 | # Use Thumb libraries for everything. |
247 | diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi | 247 | Index: gcc-11.3.0/gcc/doc/invoke.texi |
248 | index 7184a62d0..9a712c0d6 100644 | 248 | =================================================================== |
249 | --- a/gcc/doc/invoke.texi | 249 | --- gcc-11.3.0.orig/gcc/doc/invoke.texi |
250 | +++ b/gcc/doc/invoke.texi | 250 | +++ gcc-11.3.0/gcc/doc/invoke.texi |
251 | @@ -19701,6 +19701,7 @@ Permissible names are: | 251 | @@ -19701,6 +19701,7 @@ Permissible names are: |
252 | @samp{armv7-m}, @samp{armv7e-m}, | 252 | @samp{armv7-m}, @samp{armv7e-m}, |
253 | @samp{armv8-m.base}, @samp{armv8-m.main}, | 253 | @samp{armv8-m.base}, @samp{armv8-m.main}, |
@@ -256,10 +256,10 @@ index 7184a62d0..9a712c0d6 100644 | |||
256 | @samp{iwmmxt} and @samp{iwmmxt2}. | 256 | @samp{iwmmxt} and @samp{iwmmxt2}. |
257 | 257 | ||
258 | Additionally, the following architectures, which lack support for the | 258 | Additionally, the following architectures, which lack support for the |
259 | diff --git a/gcc/testsuite/gcc.target/arm/multilib.exp b/gcc/testsuite/gcc.target/arm/multilib.exp | 259 | Index: gcc-11.3.0/gcc/testsuite/gcc.target/arm/multilib.exp |
260 | index 4b30025db..e3f06c316 100644 | 260 | =================================================================== |
261 | --- a/gcc/testsuite/gcc.target/arm/multilib.exp | 261 | --- gcc-11.3.0.orig/gcc/testsuite/gcc.target/arm/multilib.exp |
262 | +++ b/gcc/testsuite/gcc.target/arm/multilib.exp | 262 | +++ gcc-11.3.0/gcc/testsuite/gcc.target/arm/multilib.exp |
263 | @@ -135,6 +135,14 @@ if {[multilib_config "aprofile"] } { | 263 | @@ -135,6 +135,14 @@ if {[multilib_config "aprofile"] } { |
264 | {-march=armv8.6-a+simd+fp16 -mfloat-abi=softfp} "thumb/v8-a+simd/softfp" | 264 | {-march=armv8.6-a+simd+fp16 -mfloat-abi=softfp} "thumb/v8-a+simd/softfp" |
265 | {-march=armv8.6-a+simd+fp16+nofp -mfloat-abi=softfp} "thumb/v8-a/nofp" | 265 | {-march=armv8.6-a+simd+fp16+nofp -mfloat-abi=softfp} "thumb/v8-a/nofp" |
@@ -275,10 +275,10 @@ index 4b30025db..e3f06c316 100644 | |||
275 | {-mcpu=cortex-a53+crypto -mfloat-abi=hard} "thumb/v8-a+simd/hard" | 275 | {-mcpu=cortex-a53+crypto -mfloat-abi=hard} "thumb/v8-a+simd/hard" |
276 | {-mcpu=cortex-a53+nofp -mfloat-abi=softfp} "thumb/v8-a/nofp" | 276 | {-mcpu=cortex-a53+nofp -mfloat-abi=softfp} "thumb/v8-a/nofp" |
277 | {-march=armv8-a+crc -mfloat-abi=hard -mfpu=vfp} "thumb/v8-a+simd/hard" | 277 | {-march=armv8-a+crc -mfloat-abi=hard -mfpu=vfp} "thumb/v8-a+simd/hard" |
278 | diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp | 278 | Index: gcc-11.3.0/gcc/testsuite/lib/target-supports.exp |
279 | index 857e57218..52e043917 100644 | 279 | =================================================================== |
280 | --- a/gcc/testsuite/lib/target-supports.exp | 280 | --- gcc-11.3.0.orig/gcc/testsuite/lib/target-supports.exp |
281 | +++ b/gcc/testsuite/lib/target-supports.exp | 281 | +++ gcc-11.3.0/gcc/testsuite/lib/target-supports.exp |
282 | @@ -4820,7 +4820,8 @@ foreach { armfunc armflag armdefs } { | 282 | @@ -4820,7 +4820,8 @@ foreach { armfunc armflag armdefs } { |
283 | v8m_base "-march=armv8-m.base -mthumb -mfloat-abi=soft" | 283 | v8m_base "-march=armv8-m.base -mthumb -mfloat-abi=soft" |
284 | __ARM_ARCH_8M_BASE__ | 284 | __ARM_ARCH_8M_BASE__ |
@@ -289,6 +289,3 @@ index 857e57218..52e043917 100644 | |||
289 | eval [string map [list FUNC $armfunc FLAG $armflag DEFS $armdefs ] { | 289 | eval [string map [list FUNC $armfunc FLAG $armflag DEFS $armdefs ] { |
290 | proc check_effective_target_arm_arch_FUNC_ok { } { | 290 | proc check_effective_target_arm_arch_FUNC_ok { } { |
291 | return [check_no_compiler_messages arm_arch_FUNC_ok assembly { | 291 | return [check_no_compiler_messages arm_arch_FUNC_ok assembly { |
292 | -- | ||
293 | 2.34.1 | ||
294 | |||
diff --git a/meta/recipes-devtools/gcc/gcc/0006-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch b/meta/recipes-devtools/gcc/gcc/0006-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch index ef19eef822..b3515c9734 100644 --- a/meta/recipes-devtools/gcc/gcc/0006-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch +++ b/meta/recipes-devtools/gcc/gcc/0006-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From 84dd8ea4c982fc2c82af642293d29e9c1880de5b Mon Sep 17 00:00:00 2001 | 1 | From 4de00af67b57b5440bdf61ab364ad959ad0aeee7 Mon Sep 17 00:00:00 2001 |
2 | From: Khem Raj <raj.khem@gmail.com> | 2 | From: Khem Raj <raj.khem@gmail.com> |
3 | Date: Fri, 29 Mar 2013 09:24:50 +0400 | 3 | Date: Fri, 29 Mar 2013 09:24:50 +0400 |
4 | Subject: [PATCH] Define GLIBC_DYNAMIC_LINKER and UCLIBC_DYNAMIC_LINKER | 4 | Subject: [PATCH] Define GLIBC_DYNAMIC_LINKER and UCLIBC_DYNAMIC_LINKER |
@@ -12,28 +12,37 @@ SH, sparc, alpha for possible future support (if any) | |||
12 | 12 | ||
13 | Removes the do_headerfix task in metadata | 13 | Removes the do_headerfix task in metadata |
14 | 14 | ||
15 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
16 | |||
15 | Upstream-Status: Inappropriate [OE configuration] | 17 | Upstream-Status: Inappropriate [OE configuration] |
16 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | 18 | Signed-off-by: Khem Raj <raj.khem@gmail.com> |
19 | |||
20 | Refresh patch from master to deduplicate patches and fix arm linker | ||
21 | Signed-off-by: Pavel Zhukov <pavel@zhukoff.net> | ||
17 | --- | 22 | --- |
18 | gcc/config/aarch64/aarch64-linux.h | 4 ++-- | 23 | gcc/config/aarch64/aarch64-linux.h | 4 ++-- |
19 | gcc/config/alpha/linux-elf.h | 4 ++-- | 24 | gcc/config/alpha/linux-elf.h | 4 ++-- |
20 | gcc/config/arm/linux-eabi.h | 4 ++-- | 25 | gcc/config/arm/linux-eabi.h | 6 +++--- |
21 | gcc/config/arm/linux-elf.h | 2 +- | 26 | gcc/config/arm/linux-elf.h | 2 +- |
22 | gcc/config/i386/linux.h | 2 +- | 27 | gcc/config/i386/linux.h | 4 ++-- |
23 | gcc/config/i386/linux64.h | 6 +++--- | 28 | gcc/config/i386/linux64.h | 12 ++++++------ |
24 | gcc/config/linux.h | 8 ++++---- | 29 | gcc/config/linux.h | 8 ++++---- |
25 | gcc/config/mips/linux.h | 12 ++++++------ | 30 | gcc/config/microblaze/linux.h | 4 ++-- |
26 | gcc/config/riscv/linux.h | 2 +- | 31 | gcc/config/mips/linux.h | 18 +++++++++--------- |
32 | gcc/config/nios2/linux.h | 4 ++-- | ||
33 | gcc/config/riscv/linux.h | 4 ++-- | ||
27 | gcc/config/rs6000/linux64.h | 15 +++++---------- | 34 | gcc/config/rs6000/linux64.h | 15 +++++---------- |
28 | gcc/config/sh/linux.h | 2 +- | 35 | gcc/config/rs6000/sysv4.h | 4 ++-- |
36 | gcc/config/s390/linux.h | 8 ++++---- | ||
37 | gcc/config/sh/linux.h | 4 ++-- | ||
29 | gcc/config/sparc/linux.h | 2 +- | 38 | gcc/config/sparc/linux.h | 2 +- |
30 | gcc/config/sparc/linux64.h | 4 ++-- | 39 | gcc/config/sparc/linux64.h | 4 ++-- |
31 | 13 files changed, 31 insertions(+), 36 deletions(-) | 40 | 17 files changed, 53 insertions(+), 58 deletions(-) |
32 | 41 | ||
33 | diff --git a/gcc/config/aarch64/aarch64-linux.h b/gcc/config/aarch64/aarch64-linux.h | 42 | Index: gcc-11.3.0/gcc/config/aarch64/aarch64-linux.h |
34 | index 7f2529a2a1d..4bcae7f3110 100644 | 43 | =================================================================== |
35 | --- a/gcc/config/aarch64/aarch64-linux.h | 44 | --- gcc-11.3.0.orig/gcc/config/aarch64/aarch64-linux.h |
36 | +++ b/gcc/config/aarch64/aarch64-linux.h | 45 | +++ gcc-11.3.0/gcc/config/aarch64/aarch64-linux.h |
37 | @@ -21,10 +21,10 @@ | 46 | @@ -21,10 +21,10 @@ |
38 | #ifndef GCC_AARCH64_LINUX_H | 47 | #ifndef GCC_AARCH64_LINUX_H |
39 | #define GCC_AARCH64_LINUX_H | 48 | #define GCC_AARCH64_LINUX_H |
@@ -47,11 +56,11 @@ index 7f2529a2a1d..4bcae7f3110 100644 | |||
47 | 56 | ||
48 | #undef ASAN_CC1_SPEC | 57 | #undef ASAN_CC1_SPEC |
49 | #define ASAN_CC1_SPEC "%{%:sanitize(address):-funwind-tables}" | 58 | #define ASAN_CC1_SPEC "%{%:sanitize(address):-funwind-tables}" |
50 | diff --git a/gcc/config/alpha/linux-elf.h b/gcc/config/alpha/linux-elf.h | 59 | Index: gcc-11.3.0/gcc/config/alpha/linux-elf.h |
51 | index c1dae8ca2cf..3ce2b76c1a4 100644 | 60 | =================================================================== |
52 | --- a/gcc/config/alpha/linux-elf.h | 61 | --- gcc-11.3.0.orig/gcc/config/alpha/linux-elf.h |
53 | +++ b/gcc/config/alpha/linux-elf.h | 62 | +++ gcc-11.3.0/gcc/config/alpha/linux-elf.h |
54 | @@ -23,8 +23,8 @@ along with GCC; see the file COPYING3. If not see | 63 | @@ -23,8 +23,8 @@ along with GCC; see the file COPYING3. |
55 | #define EXTRA_SPECS \ | 64 | #define EXTRA_SPECS \ |
56 | { "elf_dynamic_linker", ELF_DYNAMIC_LINKER }, | 65 | { "elf_dynamic_linker", ELF_DYNAMIC_LINKER }, |
57 | 66 | ||
@@ -62,10 +71,10 @@ index c1dae8ca2cf..3ce2b76c1a4 100644 | |||
62 | #if DEFAULT_LIBC == LIBC_UCLIBC | 71 | #if DEFAULT_LIBC == LIBC_UCLIBC |
63 | #define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}" | 72 | #define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}" |
64 | #elif DEFAULT_LIBC == LIBC_GLIBC | 73 | #elif DEFAULT_LIBC == LIBC_GLIBC |
65 | diff --git a/gcc/config/arm/linux-eabi.h b/gcc/config/arm/linux-eabi.h | 74 | Index: gcc-11.3.0/gcc/config/arm/linux-eabi.h |
66 | index 85d0136e76e..6bd95855827 100644 | 75 | =================================================================== |
67 | --- a/gcc/config/arm/linux-eabi.h | 76 | --- gcc-11.3.0.orig/gcc/config/arm/linux-eabi.h |
68 | +++ b/gcc/config/arm/linux-eabi.h | 77 | +++ gcc-11.3.0/gcc/config/arm/linux-eabi.h |
69 | @@ -65,8 +65,8 @@ | 78 | @@ -65,8 +65,8 @@ |
70 | GLIBC_DYNAMIC_LINKER_DEFAULT and TARGET_DEFAULT_FLOAT_ABI. */ | 79 | GLIBC_DYNAMIC_LINKER_DEFAULT and TARGET_DEFAULT_FLOAT_ABI. */ |
71 | 80 | ||
@@ -77,10 +86,19 @@ index 85d0136e76e..6bd95855827 100644 | |||
77 | #define GLIBC_DYNAMIC_LINKER_DEFAULT GLIBC_DYNAMIC_LINKER_SOFT_FLOAT | 86 | #define GLIBC_DYNAMIC_LINKER_DEFAULT GLIBC_DYNAMIC_LINKER_SOFT_FLOAT |
78 | 87 | ||
79 | #define GLIBC_DYNAMIC_LINKER \ | 88 | #define GLIBC_DYNAMIC_LINKER \ |
80 | diff --git a/gcc/config/arm/linux-elf.h b/gcc/config/arm/linux-elf.h | 89 | @@ -89,7 +89,7 @@ |
81 | index 0c1c4e70b6b..6bd643ade11 100644 | 90 | #define MUSL_DYNAMIC_LINKER_E "%{mbig-endian:eb}" |
82 | --- a/gcc/config/arm/linux-elf.h | 91 | #endif |
83 | +++ b/gcc/config/arm/linux-elf.h | 92 | #define MUSL_DYNAMIC_LINKER \ |
93 | - "/lib/ld-musl-arm" MUSL_DYNAMIC_LINKER_E "%{mfloat-abi=hard:hf}%{mfdpic:-fdpic}.so.1" | ||
94 | + SYSTEMLIBS_DIR "ld-musl-arm" MUSL_DYNAMIC_LINKER_E "%{mfloat-abi=hard:hf}%{mfdpic:-fdpic}.so.1" | ||
95 | |||
96 | /* At this point, bpabi.h will have clobbered LINK_SPEC. We want to | ||
97 | use the GNU/Linux version, not the generic BPABI version. */ | ||
98 | Index: gcc-11.3.0/gcc/config/arm/linux-elf.h | ||
99 | =================================================================== | ||
100 | --- gcc-11.3.0.orig/gcc/config/arm/linux-elf.h | ||
101 | +++ gcc-11.3.0/gcc/config/arm/linux-elf.h | ||
84 | @@ -60,7 +60,7 @@ | 102 | @@ -60,7 +60,7 @@ |
85 | 103 | ||
86 | #define LIBGCC_SPEC "%{mfloat-abi=soft*:-lfloat} -lgcc" | 104 | #define LIBGCC_SPEC "%{mfloat-abi=soft*:-lfloat} -lgcc" |
@@ -90,11 +108,11 @@ index 0c1c4e70b6b..6bd643ade11 100644 | |||
90 | 108 | ||
91 | #define LINUX_TARGET_LINK_SPEC "%{h*} \ | 109 | #define LINUX_TARGET_LINK_SPEC "%{h*} \ |
92 | %{static:-Bstatic} \ | 110 | %{static:-Bstatic} \ |
93 | diff --git a/gcc/config/i386/linux.h b/gcc/config/i386/linux.h | 111 | Index: gcc-11.3.0/gcc/config/i386/linux.h |
94 | index 04b274f1654..7aafcf3ac2d 100644 | 112 | =================================================================== |
95 | --- a/gcc/config/i386/linux.h | 113 | --- gcc-11.3.0.orig/gcc/config/i386/linux.h |
96 | +++ b/gcc/config/i386/linux.h | 114 | +++ gcc-11.3.0/gcc/config/i386/linux.h |
97 | @@ -20,7 +20,7 @@ along with GCC; see the file COPYING3. If not see | 115 | @@ -20,7 +20,7 @@ along with GCC; see the file COPYING3. |
98 | <http://www.gnu.org/licenses/>. */ | 116 | <http://www.gnu.org/licenses/>. */ |
99 | 117 | ||
100 | #define GNU_USER_LINK_EMULATION "elf_i386" | 118 | #define GNU_USER_LINK_EMULATION "elf_i386" |
@@ -102,12 +120,13 @@ index 04b274f1654..7aafcf3ac2d 100644 | |||
102 | +#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux.so.2" | 120 | +#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux.so.2" |
103 | 121 | ||
104 | #undef MUSL_DYNAMIC_LINKER | 122 | #undef MUSL_DYNAMIC_LINKER |
105 | #define MUSL_DYNAMIC_LINKER "/lib/ld-musl-i386.so.1" | 123 | -#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-i386.so.1" |
106 | diff --git a/gcc/config/i386/linux64.h b/gcc/config/i386/linux64.h | 124 | +#define MUSL_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-musl-i386.so.1" |
107 | index b3822ced528..92d303e80d6 100644 | 125 | Index: gcc-11.3.0/gcc/config/i386/linux64.h |
108 | --- a/gcc/config/i386/linux64.h | 126 | =================================================================== |
109 | +++ b/gcc/config/i386/linux64.h | 127 | --- gcc-11.3.0.orig/gcc/config/i386/linux64.h |
110 | @@ -27,9 +27,9 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see | 128 | +++ gcc-11.3.0/gcc/config/i386/linux64.h |
129 | @@ -27,13 +27,13 @@ see the files COPYING3 and COPYING.RUNTI | ||
111 | #define GNU_USER_LINK_EMULATION64 "elf_x86_64" | 130 | #define GNU_USER_LINK_EMULATION64 "elf_x86_64" |
112 | #define GNU_USER_LINK_EMULATIONX32 "elf32_x86_64" | 131 | #define GNU_USER_LINK_EMULATIONX32 "elf32_x86_64" |
113 | 132 | ||
@@ -119,12 +138,19 @@ index b3822ced528..92d303e80d6 100644 | |||
119 | +#define GLIBC_DYNAMIC_LINKERX32 SYSTEMLIBS_DIR "ld-linux-x32.so.2" | 138 | +#define GLIBC_DYNAMIC_LINKERX32 SYSTEMLIBS_DIR "ld-linux-x32.so.2" |
120 | 139 | ||
121 | #undef MUSL_DYNAMIC_LINKER32 | 140 | #undef MUSL_DYNAMIC_LINKER32 |
122 | #define MUSL_DYNAMIC_LINKER32 "/lib/ld-musl-i386.so.1" | 141 | -#define MUSL_DYNAMIC_LINKER32 "/lib/ld-musl-i386.so.1" |
123 | diff --git a/gcc/config/linux.h b/gcc/config/linux.h | 142 | +#define MUSL_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld-musl-i386.so.1" |
124 | index 4e1db60fced..87efc5f69fe 100644 | 143 | #undef MUSL_DYNAMIC_LINKER64 |
125 | --- a/gcc/config/linux.h | 144 | -#define MUSL_DYNAMIC_LINKER64 "/lib/ld-musl-x86_64.so.1" |
126 | +++ b/gcc/config/linux.h | 145 | +#define MUSL_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld-musl-x86_64.so.1" |
127 | @@ -94,10 +94,10 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see | 146 | #undef MUSL_DYNAMIC_LINKERX32 |
147 | -#define MUSL_DYNAMIC_LINKERX32 "/lib/ld-musl-x32.so.1" | ||
148 | +#define MUSL_DYNAMIC_LINKERX32 SYSTEMLIBS_DIR "ld-musl-x32.so.1" | ||
149 | Index: gcc-11.3.0/gcc/config/linux.h | ||
150 | =================================================================== | ||
151 | --- gcc-11.3.0.orig/gcc/config/linux.h | ||
152 | +++ gcc-11.3.0/gcc/config/linux.h | ||
153 | @@ -94,10 +94,10 @@ see the files COPYING3 and COPYING.RUNTI | ||
128 | GLIBC_DYNAMIC_LINKER must be defined for each target using them, or | 154 | GLIBC_DYNAMIC_LINKER must be defined for each target using them, or |
129 | GLIBC_DYNAMIC_LINKER32 and GLIBC_DYNAMIC_LINKER64 for targets | 155 | GLIBC_DYNAMIC_LINKER32 and GLIBC_DYNAMIC_LINKER64 for targets |
130 | supporting both 32-bit and 64-bit compilation. */ | 156 | supporting both 32-bit and 64-bit compilation. */ |
@@ -139,11 +165,33 @@ index 4e1db60fced..87efc5f69fe 100644 | |||
139 | #define BIONIC_DYNAMIC_LINKER "/system/bin/linker" | 165 | #define BIONIC_DYNAMIC_LINKER "/system/bin/linker" |
140 | #define BIONIC_DYNAMIC_LINKER32 "/system/bin/linker" | 166 | #define BIONIC_DYNAMIC_LINKER32 "/system/bin/linker" |
141 | #define BIONIC_DYNAMIC_LINKER64 "/system/bin/linker64" | 167 | #define BIONIC_DYNAMIC_LINKER64 "/system/bin/linker64" |
142 | diff --git a/gcc/config/mips/linux.h b/gcc/config/mips/linux.h | 168 | Index: gcc-11.3.0/gcc/config/microblaze/linux.h |
143 | index 44a85e410d9..8d41b5574f6 100644 | 169 | =================================================================== |
144 | --- a/gcc/config/mips/linux.h | 170 | --- gcc-11.3.0.orig/gcc/config/microblaze/linux.h |
145 | +++ b/gcc/config/mips/linux.h | 171 | +++ gcc-11.3.0/gcc/config/microblaze/linux.h |
146 | @@ -22,20 +22,20 @@ along with GCC; see the file COPYING3. If not see | 172 | @@ -28,7 +28,7 @@ |
173 | #undef TLS_NEEDS_GOT | ||
174 | #define TLS_NEEDS_GOT 1 | ||
175 | |||
176 | -#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" | ||
177 | +#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "/ld.so.1" | ||
178 | #define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" | ||
179 | |||
180 | #if TARGET_BIG_ENDIAN_DEFAULT == 0 /* LE */ | ||
181 | @@ -38,7 +38,7 @@ | ||
182 | #endif | ||
183 | |||
184 | #undef MUSL_DYNAMIC_LINKER | ||
185 | -#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-microblaze" MUSL_DYNAMIC_LINKER_E ".so.1" | ||
186 | +#define MUSL_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-musl-microblaze" MUSL_DYNAMIC_LINKER_E ".so.1" | ||
187 | |||
188 | #undef SUBTARGET_EXTRA_SPECS | ||
189 | #define SUBTARGET_EXTRA_SPECS \ | ||
190 | Index: gcc-11.3.0/gcc/config/mips/linux.h | ||
191 | =================================================================== | ||
192 | --- gcc-11.3.0.orig/gcc/config/mips/linux.h | ||
193 | +++ gcc-11.3.0/gcc/config/mips/linux.h | ||
194 | @@ -22,29 +22,29 @@ along with GCC; see the file COPYING3. | ||
147 | #define GNU_USER_LINK_EMULATIONN32 "elf32%{EB:b}%{EL:l}tsmipn32" | 195 | #define GNU_USER_LINK_EMULATIONN32 "elf32%{EB:b}%{EL:l}tsmipn32" |
148 | 196 | ||
149 | #define GLIBC_DYNAMIC_LINKER32 \ | 197 | #define GLIBC_DYNAMIC_LINKER32 \ |
@@ -170,11 +218,36 @@ index 44a85e410d9..8d41b5574f6 100644 | |||
170 | 218 | ||
171 | #undef MUSL_DYNAMIC_LINKER32 | 219 | #undef MUSL_DYNAMIC_LINKER32 |
172 | #define MUSL_DYNAMIC_LINKER32 \ | 220 | #define MUSL_DYNAMIC_LINKER32 \ |
173 | diff --git a/gcc/config/riscv/linux.h b/gcc/config/riscv/linux.h | 221 | - "/lib/ld-musl-mips%{mips32r6|mips64r6:r6}%{EL:el}%{msoft-float:-sf}.so.1" |
174 | index fce5b896e6e..03aa55cb5ab 100644 | 222 | + SYSTEMLIBS_DIR "ld-musl-mips%{mips32r6|mips64r6:r6}%{EL:el}%{msoft-float:-sf}.so.1" |
175 | --- a/gcc/config/riscv/linux.h | 223 | #undef MUSL_DYNAMIC_LINKER64 |
176 | +++ b/gcc/config/riscv/linux.h | 224 | #define MUSL_DYNAMIC_LINKER64 \ |
177 | @@ -22,7 +22,7 @@ along with GCC; see the file COPYING3. If not see | 225 | - "/lib/ld-musl-mips64%{mips64r6:r6}%{EL:el}%{msoft-float:-sf}.so.1" |
226 | + SYSTEMLIBS_DIR "ld-musl-mips64%{mips64r6:r6}%{EL:el}%{msoft-float:-sf}.so.1" | ||
227 | #define MUSL_DYNAMIC_LINKERN32 \ | ||
228 | - "/lib/ld-musl-mipsn32%{mips64r6:r6}%{EL:el}%{msoft-float:-sf}.so.1" | ||
229 | + SYSTEMLIBS_DIR "ld-musl-mipsn32%{mips64r6:r6}%{EL:el}%{msoft-float:-sf}.so.1" | ||
230 | |||
231 | #define BIONIC_DYNAMIC_LINKERN32 "/system/bin/linker32" | ||
232 | #define GNU_USER_DYNAMIC_LINKERN32 \ | ||
233 | Index: gcc-11.3.0/gcc/config/nios2/linux.h | ||
234 | =================================================================== | ||
235 | --- gcc-11.3.0.orig/gcc/config/nios2/linux.h | ||
236 | +++ gcc-11.3.0/gcc/config/nios2/linux.h | ||
237 | @@ -29,7 +29,7 @@ | ||
238 | #undef CPP_SPEC | ||
239 | #define CPP_SPEC "%{posix:-D_POSIX_SOURCE} %{pthread:-D_REENTRANT}" | ||
240 | |||
241 | -#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-nios2.so.1" | ||
242 | +#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux-nios2.so.1" | ||
243 | |||
244 | #undef LINK_SPEC | ||
245 | #define LINK_SPEC LINK_SPEC_ENDIAN \ | ||
246 | Index: gcc-11.3.0/gcc/config/riscv/linux.h | ||
247 | =================================================================== | ||
248 | --- gcc-11.3.0.orig/gcc/config/riscv/linux.h | ||
249 | +++ gcc-11.3.0/gcc/config/riscv/linux.h | ||
250 | @@ -22,7 +22,7 @@ along with GCC; see the file COPYING3. | ||
178 | GNU_USER_TARGET_OS_CPP_BUILTINS(); \ | 251 | GNU_USER_TARGET_OS_CPP_BUILTINS(); \ |
179 | } while (0) | 252 | } while (0) |
180 | 253 | ||
@@ -183,10 +256,19 @@ index fce5b896e6e..03aa55cb5ab 100644 | |||
183 | 256 | ||
184 | #define MUSL_ABI_SUFFIX \ | 257 | #define MUSL_ABI_SUFFIX \ |
185 | "%{mabi=ilp32:-sf}" \ | 258 | "%{mabi=ilp32:-sf}" \ |
186 | diff --git a/gcc/config/rs6000/linux64.h b/gcc/config/rs6000/linux64.h | 259 | @@ -33,7 +33,7 @@ along with GCC; see the file COPYING3. |
187 | index e3f2cd254f6..a11e01faa3d 100644 | 260 | "%{mabi=lp64d:}" |
188 | --- a/gcc/config/rs6000/linux64.h | 261 | |
189 | +++ b/gcc/config/rs6000/linux64.h | 262 | #undef MUSL_DYNAMIC_LINKER |
263 | -#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-riscv" XLEN_SPEC MUSL_ABI_SUFFIX ".so.1" | ||
264 | +#define MUSL_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-musl-riscv" XLEN_SPEC MUSL_ABI_SUFFIX ".so.1" | ||
265 | |||
266 | /* Because RISC-V only has word-sized atomics, it requries libatomic where | ||
267 | others do not. So link libatomic by default, as needed. */ | ||
268 | Index: gcc-11.3.0/gcc/config/rs6000/linux64.h | ||
269 | =================================================================== | ||
270 | --- gcc-11.3.0.orig/gcc/config/rs6000/linux64.h | ||
271 | +++ gcc-11.3.0/gcc/config/rs6000/linux64.h | ||
190 | @@ -336,24 +336,19 @@ extern int dot_symbols; | 272 | @@ -336,24 +336,19 @@ extern int dot_symbols; |
191 | #undef LINK_OS_DEFAULT_SPEC | 273 | #undef LINK_OS_DEFAULT_SPEC |
192 | #define LINK_OS_DEFAULT_SPEC "%(link_os_linux)" | 274 | #define LINK_OS_DEFAULT_SPEC "%(link_os_linux)" |
@@ -217,12 +299,55 @@ index e3f2cd254f6..a11e01faa3d 100644 | |||
217 | 299 | ||
218 | #undef DEFAULT_ASM_ENDIAN | 300 | #undef DEFAULT_ASM_ENDIAN |
219 | #if (TARGET_DEFAULT & MASK_LITTLE_ENDIAN) | 301 | #if (TARGET_DEFAULT & MASK_LITTLE_ENDIAN) |
220 | diff --git a/gcc/config/sh/linux.h b/gcc/config/sh/linux.h | 302 | Index: gcc-11.3.0/gcc/config/rs6000/sysv4.h |
221 | index 7558d2f7195..3aaa6c3a078 100644 | 303 | =================================================================== |
222 | --- a/gcc/config/sh/linux.h | 304 | --- gcc-11.3.0.orig/gcc/config/rs6000/sysv4.h |
223 | +++ b/gcc/config/sh/linux.h | 305 | +++ gcc-11.3.0/gcc/config/rs6000/sysv4.h |
224 | @@ -64,7 +64,7 @@ along with GCC; see the file COPYING3. If not see | 306 | @@ -780,10 +780,10 @@ GNU_USER_TARGET_CC1_SPEC |
225 | "/lib/ld-musl-sh" MUSL_DYNAMIC_LINKER_E MUSL_DYNAMIC_LINKER_FP \ | 307 | |
308 | #define MUSL_DYNAMIC_LINKER_E ENDIAN_SELECT("","le","") | ||
309 | |||
310 | -#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" | ||
311 | +#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld.so.1" | ||
312 | #undef MUSL_DYNAMIC_LINKER | ||
313 | #define MUSL_DYNAMIC_LINKER \ | ||
314 | - "/lib/ld-musl-powerpc" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1" | ||
315 | + SYSTEMLIBS_DIR "ld-musl-powerpc" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1" | ||
316 | |||
317 | #ifndef GNU_USER_DYNAMIC_LINKER | ||
318 | #define GNU_USER_DYNAMIC_LINKER GLIBC_DYNAMIC_LINKER | ||
319 | Index: gcc-11.3.0/gcc/config/s390/linux.h | ||
320 | =================================================================== | ||
321 | --- gcc-11.3.0.orig/gcc/config/s390/linux.h | ||
322 | +++ gcc-11.3.0/gcc/config/s390/linux.h | ||
323 | @@ -72,13 +72,13 @@ along with GCC; see the file COPYING3. | ||
324 | #define MULTILIB_DEFAULTS { "m31" } | ||
325 | #endif | ||
326 | |||
327 | -#define GLIBC_DYNAMIC_LINKER32 "/lib/ld.so.1" | ||
328 | -#define GLIBC_DYNAMIC_LINKER64 "/lib/ld64.so.1" | ||
329 | +#define GLIBC_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld.so.1" | ||
330 | +#define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld64.so.1" | ||
331 | |||
332 | #undef MUSL_DYNAMIC_LINKER32 | ||
333 | -#define MUSL_DYNAMIC_LINKER32 "/lib/ld-musl-s390.so.1" | ||
334 | +#define MUSL_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld-musl-s390.so.1" | ||
335 | #undef MUSL_DYNAMIC_LINKER64 | ||
336 | -#define MUSL_DYNAMIC_LINKER64 "/lib/ld-musl-s390x.so.1" | ||
337 | +#define MUSL_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld-musl-s390x.so.1" | ||
338 | |||
339 | #undef LINK_SPEC | ||
340 | #define LINK_SPEC \ | ||
341 | Index: gcc-11.3.0/gcc/config/sh/linux.h | ||
342 | =================================================================== | ||
343 | --- gcc-11.3.0.orig/gcc/config/sh/linux.h | ||
344 | +++ gcc-11.3.0/gcc/config/sh/linux.h | ||
345 | @@ -61,10 +61,10 @@ along with GCC; see the file COPYING3. | ||
346 | |||
347 | #undef MUSL_DYNAMIC_LINKER | ||
348 | #define MUSL_DYNAMIC_LINKER \ | ||
349 | - "/lib/ld-musl-sh" MUSL_DYNAMIC_LINKER_E MUSL_DYNAMIC_LINKER_FP \ | ||
350 | + SYSTEMLIBS_DIR "ld-musl-sh" MUSL_DYNAMIC_LINKER_E MUSL_DYNAMIC_LINKER_FP \ | ||
226 | "%{mfdpic:-fdpic}.so.1" | 351 | "%{mfdpic:-fdpic}.so.1" |
227 | 352 | ||
228 | -#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" | 353 | -#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" |
@@ -230,11 +355,11 @@ index 7558d2f7195..3aaa6c3a078 100644 | |||
230 | 355 | ||
231 | #undef SUBTARGET_LINK_EMUL_SUFFIX | 356 | #undef SUBTARGET_LINK_EMUL_SUFFIX |
232 | #define SUBTARGET_LINK_EMUL_SUFFIX "%{mfdpic:_fd;:_linux}" | 357 | #define SUBTARGET_LINK_EMUL_SUFFIX "%{mfdpic:_fd;:_linux}" |
233 | diff --git a/gcc/config/sparc/linux.h b/gcc/config/sparc/linux.h | 358 | Index: gcc-11.3.0/gcc/config/sparc/linux.h |
234 | index 2550d7ee8f0..a94f4cd8ba2 100644 | 359 | =================================================================== |
235 | --- a/gcc/config/sparc/linux.h | 360 | --- gcc-11.3.0.orig/gcc/config/sparc/linux.h |
236 | +++ b/gcc/config/sparc/linux.h | 361 | +++ gcc-11.3.0/gcc/config/sparc/linux.h |
237 | @@ -78,7 +78,7 @@ extern const char *host_detect_local_cpu (int argc, const char **argv); | 362 | @@ -78,7 +78,7 @@ extern const char *host_detect_local_cpu |
238 | When the -shared link option is used a final link is not being | 363 | When the -shared link option is used a final link is not being |
239 | done. */ | 364 | done. */ |
240 | 365 | ||
@@ -243,11 +368,11 @@ index 2550d7ee8f0..a94f4cd8ba2 100644 | |||
243 | 368 | ||
244 | #undef LINK_SPEC | 369 | #undef LINK_SPEC |
245 | #define LINK_SPEC "-m elf32_sparc %{shared:-shared} \ | 370 | #define LINK_SPEC "-m elf32_sparc %{shared:-shared} \ |
246 | diff --git a/gcc/config/sparc/linux64.h b/gcc/config/sparc/linux64.h | 371 | Index: gcc-11.3.0/gcc/config/sparc/linux64.h |
247 | index 95af8afa9b5..63127afb074 100644 | 372 | =================================================================== |
248 | --- a/gcc/config/sparc/linux64.h | 373 | --- gcc-11.3.0.orig/gcc/config/sparc/linux64.h |
249 | +++ b/gcc/config/sparc/linux64.h | 374 | +++ gcc-11.3.0/gcc/config/sparc/linux64.h |
250 | @@ -78,8 +78,8 @@ along with GCC; see the file COPYING3. If not see | 375 | @@ -78,8 +78,8 @@ along with GCC; see the file COPYING3. |
251 | When the -shared link option is used a final link is not being | 376 | When the -shared link option is used a final link is not being |
252 | done. */ | 377 | done. */ |
253 | 378 | ||
diff --git a/meta/recipes-devtools/gcc/gcc/0009-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch b/meta/recipes-devtools/gcc/gcc/0009-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch index ac139542f1..0f94936140 100644 --- a/meta/recipes-devtools/gcc/gcc/0009-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch +++ b/meta/recipes-devtools/gcc/gcc/0009-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch | |||
@@ -18,13 +18,13 @@ Upstream-Status: Pending | |||
18 | gcc/config/arm/linux-eabi.h | 6 +++++- | 18 | gcc/config/arm/linux-eabi.h | 6 +++++- |
19 | 1 file changed, 5 insertions(+), 1 deletion(-) | 19 | 1 file changed, 5 insertions(+), 1 deletion(-) |
20 | 20 | ||
21 | diff --git a/gcc/config/arm/linux-eabi.h b/gcc/config/arm/linux-eabi.h | 21 | Index: gcc-11.3.0/gcc/config/arm/linux-eabi.h |
22 | index 6bd95855827..77befab5da8 100644 | 22 | =================================================================== |
23 | --- a/gcc/config/arm/linux-eabi.h | 23 | --- gcc-11.3.0.orig/gcc/config/arm/linux-eabi.h |
24 | +++ b/gcc/config/arm/linux-eabi.h | 24 | +++ gcc-11.3.0/gcc/config/arm/linux-eabi.h |
25 | @@ -91,10 +91,14 @@ | 25 | @@ -91,10 +91,14 @@ |
26 | #define MUSL_DYNAMIC_LINKER \ | 26 | #define MUSL_DYNAMIC_LINKER \ |
27 | "/lib/ld-musl-arm" MUSL_DYNAMIC_LINKER_E "%{mfloat-abi=hard:hf}%{mfdpic:-fdpic}.so.1" | 27 | SYSTEMLIBS_DIR "ld-musl-arm" MUSL_DYNAMIC_LINKER_E "%{mfloat-abi=hard:hf}%{mfdpic:-fdpic}.so.1" |
28 | 28 | ||
29 | +/* For armv4 we pass --fix-v4bx to linker to support EABI */ | 29 | +/* For armv4 we pass --fix-v4bx to linker to support EABI */ |
30 | +#undef TARGET_FIX_V4BX_SPEC | 30 | +#undef TARGET_FIX_V4BX_SPEC |
diff --git a/meta/recipes-devtools/gcc/gcc/0019-nios2-Define-MUSL_DYNAMIC_LINKER.patch b/meta/recipes-devtools/gcc/gcc/0019-nios2-Define-MUSL_DYNAMIC_LINKER.patch deleted file mode 100644 index 76ebfd7f77..0000000000 --- a/meta/recipes-devtools/gcc/gcc/0019-nios2-Define-MUSL_DYNAMIC_LINKER.patch +++ /dev/null | |||
@@ -1,25 +0,0 @@ | |||
1 | From 9ec4db8e910d9a51ae43f6b20d4bf1dac2d8cca8 Mon Sep 17 00:00:00 2001 | ||
2 | From: Khem Raj <raj.khem@gmail.com> | ||
3 | Date: Tue, 2 Feb 2016 10:26:10 -0800 | ||
4 | Subject: [PATCH] nios2: Define MUSL_DYNAMIC_LINKER | ||
5 | |||
6 | Upstream-Status: Backport [https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=e5ddbbf992b909d8e38851bd3179d29389e6ac97] | ||
7 | |||
8 | Signed-off-by: Marek Vasut <marex@denx.de> | ||
9 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
10 | --- | ||
11 | gcc/config/nios2/linux.h | 1 + | ||
12 | 1 file changed, 1 insertion(+) | ||
13 | |||
14 | diff --git a/gcc/config/nios2/linux.h b/gcc/config/nios2/linux.h | ||
15 | index 08edf1521f6..15696d86241 100644 | ||
16 | --- a/gcc/config/nios2/linux.h | ||
17 | +++ b/gcc/config/nios2/linux.h | ||
18 | @@ -30,6 +30,7 @@ | ||
19 | #define CPP_SPEC "%{posix:-D_POSIX_SOURCE} %{pthread:-D_REENTRANT}" | ||
20 | |||
21 | #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-nios2.so.1" | ||
22 | +#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-nios2.so.1" | ||
23 | |||
24 | #undef LINK_SPEC | ||
25 | #define LINK_SPEC LINK_SPEC_ENDIAN \ | ||