]> git.ipfire.org Git - ipfire-3.x.git/commitdiff
gcc: Add patch to always pass --no-add-needed to the linker.
authorMichael Tremer <michael.tremer@ipfire.org>
Sun, 5 Sep 2010 15:52:29 +0000 (17:52 +0200)
committerMichael Tremer <michael.tremer@ipfire.org>
Sun, 5 Sep 2010 15:52:29 +0000 (17:52 +0200)
pkgs/core/gcc/patches/gcc-4.5.0-no-add-needed.patch [new file with mode: 0644]

diff --git a/pkgs/core/gcc/patches/gcc-4.5.0-no-add-needed.patch b/pkgs/core/gcc/patches/gcc-4.5.0-no-add-needed.patch
new file mode 100644 (file)
index 0000000..792bcb8
--- /dev/null
@@ -0,0 +1,52 @@
+2010-02-08  Roland McGrath  <roland@redhat.com>
+
+       * config/rs6000/sysv4.h (LINK_EH_SPEC): Pass --no-add-needed to the
+       linker.
+       * config/linux.h (LINK_EH_SPEC): Likewise.
+       * config/alpha/elf.h (LINK_EH_SPEC): Likewise.
+       * config/ia64/linux.h (LINK_EH_SPEC): Likewise.
+
+--- a/gcc/config/alpha/elf.h.~1~
++++ b/gcc/config/alpha/elf.h
+@@ -421,7 +421,7 @@ extern int alpha_this_gpdisp_sequence_nu
+    I imagine that other systems will catch up.  In the meantime, it
+    doesn't harm to make sure that the data exists to be used later.  */
+ #if defined(HAVE_LD_EH_FRAME_HDR)
+-#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
++#define LINK_EH_SPEC "--no-add-needed %{!static:--eh-frame-hdr} "
+ #endif
+ /* A C statement (sans semicolon) to output to the stdio stream STREAM
+--- a/gcc/config/ia64/linux.h.~1~
++++ b/gcc/config/ia64/linux.h
+@@ -58,7 +58,7 @@ do {                                         \
+    Signalize that because we have fde-glibc, we don't need all C shared libs
+    linked against -lgcc_s.  */
+ #undef LINK_EH_SPEC
+-#define LINK_EH_SPEC ""
++#define LINK_EH_SPEC "--no-add-needed "
+ #define MD_UNWIND_SUPPORT "config/ia64/linux-unwind.h"
+--- a/gcc/config/linux.h.~1~
++++ b/gcc/config/linux.h
+@@ -89,7 +89,7 @@ see the files COPYING3 and COPYING.RUNTI
+     } while (0)
+ #if defined(HAVE_LD_EH_FRAME_HDR)
+-#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
++#define LINK_EH_SPEC "--no-add-needed %{!static:--eh-frame-hdr} "
+ #endif
+ /* Define this so we can compile MS code for use with WINE.  */
+--- a/gcc/config/rs6000/sysv4.h.~1~
++++ b/gcc/config/rs6000/sysv4.h
+@@ -917,7 +917,7 @@ SVR4_ASM_SPEC \
+   %{!dynamic-linker:-dynamic-linker " LINUX_DYNAMIC_LINKER "}}}"
+ #if defined(HAVE_LD_EH_FRAME_HDR)
+-# define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
++# define LINK_EH_SPEC "--no-add-needed %{!static:--eh-frame-hdr} "
+ #endif
+ #define CPP_OS_LINUX_SPEC "-D__unix__ -D__gnu_linux__ -D__linux__ \