aboutsummaryrefslogtreecommitdiffstats
path: root/toolchain/gcc
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2011-03-06 22:54:30 +0000
committerFelix Fietkau <nbd@openwrt.org>2011-03-06 22:54:30 +0000
commit3fdc3e96598ca70f8420f139bbcc0aac6b256a66 (patch)
tree907f7178d347ca6bade0dcf417fcd209c24170a6 /toolchain/gcc
parent00392a05b94f51911c06ea619948225ccc7b00b9 (diff)
downloadmaster-187ad058-3fdc3e96598ca70f8420f139bbcc0aac6b256a66.tar.gz
master-187ad058-3fdc3e96598ca70f8420f139bbcc0aac6b256a66.tar.bz2
master-187ad058-3fdc3e96598ca70f8420f139bbcc0aac6b256a66.zip
gcc: include assembler functions in the shared libgcc_s library, fixes missing symbol issues on powerpc
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@25912 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'toolchain/gcc')
-rw-r--r--toolchain/gcc/patches/linaro/850-use_shared_libgcc.patch42
1 files changed, 41 insertions, 1 deletions
diff --git a/toolchain/gcc/patches/linaro/850-use_shared_libgcc.patch b/toolchain/gcc/patches/linaro/850-use_shared_libgcc.patch
index c9a565cf8b..a9cc80bfe0 100644
--- a/toolchain/gcc/patches/linaro/850-use_shared_libgcc.patch
+++ b/toolchain/gcc/patches/linaro/850-use_shared_libgcc.patch
@@ -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 @@ see the files COPYING3 and COPYING.RUNTI
+@@ -104,6 +104,10 @@
#define USE_LD_AS_NEEDED 1
#endif
@@ -35,3 +35,43 @@
/* 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): \
+--- a/gcc/mkmap-symver.awk
++++ b/gcc/mkmap-symver.awk
+@@ -132,5 +132,5 @@
+ 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 @@
+ # 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.
+-vis_hide = @vis_hide@
++vis_hide =
+
+ ifneq (,$(vis_hide))
+