X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/531d32058a39ccf38a949351aa0d7ccc749b1591..8d18817441d8804958e74a81454848abb6534d09:/toolchain/gcc/patches/linaro/850-use_shared_libgcc.patch diff --git a/toolchain/gcc/patches/linaro/850-use_shared_libgcc.patch b/toolchain/gcc/patches/linaro/850-use_shared_libgcc.patch index a9cc80bfe..902edf58b 100644 --- a/toolchain/gcc/patches/linaro/850-use_shared_libgcc.patch +++ b/toolchain/gcc/patches/linaro/850-use_shared_libgcc.patch @@ -1,8 +1,8 @@ --- a/gcc/config/arm/linux-eabi.h +++ b/gcc/config/arm/linux-eabi.h -@@ -72,10 +72,6 @@ - #undef LINK_SPEC - #define LINK_SPEC LINUX_TARGET_LINK_SPEC BE8_LINK_SPEC TARGET_FIX_V4BX_SPEC +@@ -95,10 +95,6 @@ + #define ENDFILE_SPEC \ + LINUX_OR_ANDROID_LD (LINUX_TARGET_ENDFILE_SPEC, ANDROID_ENDFILE_SPEC) -/* Use the default LIBGCC_SPEC, not the version in linux-elf.h, as we - do not use -lfloat. */ @@ -24,7 +24,7 @@ #define LINUX_TARGET_LINK_SPEC "%{h*} %{version:-v} \ --- a/gcc/config/linux.h +++ b/gcc/config/linux.h -@@ -104,6 +104,10 @@ +@@ -116,6 +116,10 @@ see the files COPYING3 and COPYING.RUNTI #define USE_LD_AS_NEEDED 1 #endif @@ -33,40 +33,20 @@ +#endif + /* Determine which dynamic linker to use depending on whether GLIBC or - uClibc is the default C library and whether -muclibc or -mglibc has - been passed to change the default. */ ---- a/gcc/config/rs6000/ppc-asm.h -+++ b/gcc/config/rs6000/ppc-asm.h -@@ -325,8 +325,7 @@ - FUNC_NAME(name): - - #define HIDDEN_FUNC(name) \ -- FUNC_START(name) \ -- .hidden FUNC_NAME(name); -+ FUNC_START(name); - - #define FUNC_END(name) \ - GLUE(.L,name): \ + uClibc or Bionic is the default C library and whether + -muclibc or -mglibc or -mbionic has been passed to change the default. */ --- a/gcc/mkmap-symver.awk +++ b/gcc/mkmap-symver.awk -@@ -132,5 +132,5 @@ +@@ -132,5 +132,5 @@ function output(lib) { else if (inherit[lib]) printf("} %s;\n", inherit[lib]); else - printf ("\n local:\n\t*;\n};\n"); + printf ("\n\t*;\n};\n"); } ---- a/libgcc/config/rs6000/t-ppccomm -+++ b/libgcc/config/rs6000/t-ppccomm -@@ -1,4 +1,4 @@ --LIB2ADD_ST += crtsavfpr.S crtresfpr.S \ -+LIB2ADD += crtsavfpr.S crtresfpr.S \ - crtsavgpr.S crtresgpr.S \ - crtresxfpr.S crtresxgpr.S \ - e500crtres32gpr.S \ --- a/libgcc/Makefile.in +++ b/libgcc/Makefile.in -@@ -265,7 +265,7 @@ +@@ -265,7 +265,7 @@ ifeq ($(enable_shared),yes) # For -fvisibility=hidden. We need both a -fvisibility=hidden on # the command line, and a #define to prevent libgcc2.h etc from # overriding that with #pragmas. @@ -75,3 +55,14 @@ ifneq (,$(vis_hide)) +--- a/gcc/config/rs6000/linux.h ++++ b/gcc/config/rs6000/linux.h +@@ -85,6 +85,8 @@ + #define USE_LD_AS_NEEDED 1 + #endif + ++#define LIBGCC_SPEC "%{!static:%{!static-libgcc:-lgcc_s}} -lgcc" ++ + #undef TARGET_VERSION + #define TARGET_VERSION fprintf (stderr, " (PowerPC GNU/Linux)"); +