diff options
Diffstat (limited to 'gcc-4.6/gcc/crtstuff.c')
-rw-r--r-- | gcc-4.6/gcc/crtstuff.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/gcc-4.6/gcc/crtstuff.c b/gcc-4.6/gcc/crtstuff.c index 010d47276..d25a9529a 100644 --- a/gcc-4.6/gcc/crtstuff.c +++ b/gcc-4.6/gcc/crtstuff.c @@ -83,7 +83,8 @@ call_ ## FUNC (void) \ #if defined(OBJECT_FORMAT_ELF) \ && !defined(OBJECT_FORMAT_FLAT) \ && defined(HAVE_LD_EH_FRAME_HDR) \ - && !defined(inhibit_libc) && !defined(CRTSTUFFT_O) \ + && !defined(inhibit_libc) \ + && (defined(USE_EH_FRAME_HDR_FOR_STATIC) || !defined(CRTSTUFFT_O)) \ && defined(__FreeBSD__) && __FreeBSD__ >= 7 #include <link.h> # define USE_PT_GNU_EH_FRAME @@ -92,7 +93,8 @@ call_ ## FUNC (void) \ #if defined(OBJECT_FORMAT_ELF) \ && !defined(OBJECT_FORMAT_FLAT) \ && defined(HAVE_LD_EH_FRAME_HDR) && defined(TARGET_DL_ITERATE_PHDR) \ - && !defined(inhibit_libc) && !defined(CRTSTUFFT_O) \ + && !defined(inhibit_libc) \ + && (defined(USE_EH_FRAME_HDR_FOR_STATIC) || !defined(CRTSTUFFT_O)) \ && defined(__sun__) && defined(__svr4__) #include <link.h> # define USE_PT_GNU_EH_FRAME @@ -101,7 +103,8 @@ call_ ## FUNC (void) \ #if defined(OBJECT_FORMAT_ELF) \ && !defined(OBJECT_FORMAT_FLAT) \ && defined(HAVE_LD_EH_FRAME_HDR) \ - && !defined(inhibit_libc) && !defined(CRTSTUFFT_O) \ + && !defined(inhibit_libc) \ + && (defined(USE_EH_FRAME_HDR_FOR_STATIC) || !defined(CRTSTUFFT_O)) \ && defined(__GLIBC__) && __GLIBC__ >= 2 #include <link.h> /* uClibc pretends to be glibc 2.2 and DT_CONFIG is defined in its link.h. |