mirror of
https://github.com/pmmp/musl-cross-make.git
synced 2024-11-24 10:46:11 +00:00
7ea487218f
new patch: 0017-c++-abi-break.diff fixes a C++ ABI break regression. 0010-static-pie-support.diff was removed as it doesn't apply anymore, and forward-porting it requires arcane knowledge of GCC details. the patches 0018 and 0019 have been copied from GCC 7.3.0. the static pie patch from GCC 6.4.0, renumbered 0020, depends on the reversions they make.
58 lines
1.9 KiB
Diff
58 lines
1.9 KiB
Diff
diff --git a/gcc/config/rs6000/sysv4.h b/gcc/config/rs6000/sysv4.h
|
|
index cbee89140dd..de386291a51 100644
|
|
--- a/gcc/config/rs6000/sysv4.h
|
|
+++ b/gcc/config/rs6000/sysv4.h
|
|
@@ -757,34 +757,24 @@ ENDIAN_SELECT(" -mbig", " -mlittle", DEFAULT_ASM_ENDIAN)
|
|
#define CRTOFFLOADEND ""
|
|
#endif
|
|
|
|
-/* STARTFILE_LINUX_SPEC should be the same as GNU_USER_TARGET_STARTFILE_SPEC
|
|
- but with the mnewlib ecrti.o%s selection substituted for crti.o%s. */
|
|
-#define STARTFILE_LINUX_SPEC \
|
|
- "%{shared:; \
|
|
- pg|p|profile:gcrt1.o%s; \
|
|
- static:crt1.o%s; \
|
|
- " PIE_SPEC ":Scrt1.o%s; \
|
|
- :crt1.o%s} \
|
|
- %{mnewlib:ecrti.o%s;:crti.o%s} \
|
|
- %{static:crtbeginT.o%s; \
|
|
- shared|" PIE_SPEC ":crtbeginS.o%s; \
|
|
- :crtbegin.o%s} \
|
|
- %{fvtable-verify=none:%s; \
|
|
- fvtable-verify=preinit:vtv_start_preinit.o%s; \
|
|
- fvtable-verify=std:vtv_start.o%s} \
|
|
- " CRTOFFLOADBEGIN
|
|
-
|
|
-/* ENDFILE_LINUX_SPEC should be the same as GNU_USER_TARGET_ENDFILE_SPEC
|
|
- but with the mnewlib ecrtn.o%s selection substituted for crtn.o%s. */
|
|
-#define ENDFILE_LINUX_SPEC \
|
|
- "%{fvtable-verify=none:%s; \
|
|
- fvtable-verify=preinit:vtv_end_preinit.o%s; \
|
|
- fvtable-verify=std:vtv_end.o%s} \
|
|
- %{static:crtend.o%s; \
|
|
- shared|" PIE_SPEC ":crtendS.o%s; \
|
|
- :crtend.o%s} \
|
|
- %{mnewlib:ecrtn.o%s;:crtn.o%s} \
|
|
- " CRTOFFLOADEND
|
|
+#ifdef HAVE_LD_PIE
|
|
+#define STARTFILE_LINUX_SPEC "\
|
|
+%{!shared: %{pg|p|profile:gcrt1.o%s;pie:Scrt1.o%s;:crt1.o%s}} \
|
|
+%{mnewlib:ecrti.o%s;:crti.o%s} \
|
|
+%{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s} \
|
|
+" CRTOFFLOADBEGIN
|
|
+#else
|
|
+#define STARTFILE_LINUX_SPEC "\
|
|
+%{!shared: %{pg|p|profile:gcrt1.o%s;:crt1.o%s}} \
|
|
+%{mnewlib:ecrti.o%s;:crti.o%s} \
|
|
+%{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s} \
|
|
+" CRTOFFLOADBEGIN
|
|
+#endif
|
|
+
|
|
+#define ENDFILE_LINUX_SPEC "\
|
|
+%{shared|pie:crtendS.o%s;:crtend.o%s} \
|
|
+%{mnewlib:ecrtn.o%s;:crtn.o%s} \
|
|
+" CRTOFFLOADEND
|
|
|
|
#define LINK_START_LINUX_SPEC ""
|
|
|