gcc: fix visibility of symbols libgcc.a
[openwrt.git] / toolchain / gcc / patches / 4.6-linaro / 850-use_shared_libgcc.patch
index a197bed..61e1035 100644 (file)
@@ -1,6 +1,6 @@
 --- a/gcc/config/arm/linux-eabi.h
 +++ b/gcc/config/arm/linux-eabi.h
-@@ -96,10 +96,6 @@
+@@ -115,10 +115,6 @@
  #define ENDFILE_SPEC \
    LINUX_OR_ANDROID_LD (GNU_USER_TARGET_ENDFILE_SPEC, ANDROID_ENDFILE_SPEC)
  
@@ -24,7 +24,7 @@
  #define LINUX_TARGET_LINK_SPEC  "%{h*} \
 --- a/gcc/config/linux.h
 +++ b/gcc/config/linux.h
-@@ -50,6 +50,10 @@ see the files COPYING3 and COPYING.RUNTI
+@@ -52,6 +52,10 @@ see the files COPYING3 and COPYING.RUNTI
        builtin_assert ("system=posix");                        \
      } while (0)
  
  }
 --- a/libgcc/Makefile.in
 +++ b/libgcc/Makefile.in
-@@ -272,7 +272,7 @@ ifeq ($(enable_shared),yes)
+@@ -269,6 +269,12 @@ ifeq ($(enable_shared),yes)
+     install-libunwind = install-libunwind
+   endif
++else
++# Not enable_shared.
++iterator = $(srcdir)/empty.mk $(patsubst %,$(srcdir)/static-object.mk,$(iter-items))
++endif
++
++
  # 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))
+@@ -291,13 +297,6 @@ else
+ gen-hide-list = echo > $@
+ endif
  
+-else
+-# Not enable_shared.
+-iterator = $(srcdir)/empty.mk $(patsubst %,$(srcdir)/static-object.mk,$(iter-items))
+-vis_hide =
+-gen-hide-list = echo > \$@
+-endif
+-
+ ifneq ($(EXTRA_PARTS),)
+   extra-parts = libgcc-extra-parts
+   INSTALL_PARTS = $(EXTRA_PARTS)