1
# DP: On linux targets pass --no-add-needed to the linker.
3
2010-02-08 Roland McGrath <roland@redhat.com>
5
* config/rs6000/sysv4.h (LINK_EH_SPEC): Pass --no-add-needed to the
7
* config/linux.h (LINK_EH_SPEC): Likewise.
8
* config/alpha/elf.h (LINK_EH_SPEC): Likewise.
9
* config/ia64/linux.h (LINK_EH_SPEC): Likewise.
11
--- a/src/gcc/config/rs6000/sysv4.h
12
+++ b/src/gcc/config/rs6000/sysv4.h
15
#if defined(HAVE_LD_EH_FRAME_HDR)
17
-# define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
18
+# define LINK_EH_SPEC "--no-add-needed %{!static:--eh-frame-hdr} "
21
#define CPP_OS_LINUX_SPEC "-D__unix__ -D__gnu_linux__ -D__linux__ \
22
--- a/src/gcc/config/gnu-user.h
23
+++ b/src/gcc/config/gnu-user.h
25
#define LIB_SPEC GNU_USER_TARGET_LIB_SPEC
27
#if defined(HAVE_LD_EH_FRAME_HDR)
28
-#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
29
+#define LINK_EH_SPEC "--no-add-needed %{!static:--eh-frame-hdr} "
31
+#define LINK_EH_SPEC "--no-add-needed "
34
#undef LINK_GCC_C_SEQUENCE_SPEC
35
--- a/src/gcc/config/alpha/elf.h
36
+++ b/src/gcc/config/alpha/elf.h
38
I imagine that other systems will catch up. In the meantime, it
39
doesn't harm to make sure that the data exists to be used later. */
40
#if defined(HAVE_LD_EH_FRAME_HDR)
41
-#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
42
+#define LINK_EH_SPEC "--no-add-needed %{!static:--eh-frame-hdr} "
45
/* A C statement (sans semicolon) to output to the stdio stream STREAM
46
--- a/src/gcc/config/ia64/linux.h
47
+++ b/src/gcc/config/ia64/linux.h
49
Signalize that because we have fde-glibc, we don't need all C shared libs
50
linked against -lgcc_s. */
52
-#define LINK_EH_SPEC ""
53
+#define LINK_EH_SPEC "--no-add-needed "
55
#define MD_UNWIND_SUPPORT "config/ia64/linux-unwind.h"