diff options
Diffstat (limited to 'gcc/configure')
-rwxr-xr-x | gcc/configure | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/gcc/configure b/gcc/configure index ed948285282..9523773e721 100755 --- a/gcc/configure +++ b/gcc/configure @@ -4786,11 +4786,15 @@ esac case "${target}" in # PIC is the default on some targets or must not be used. *-*-darwin*) - # PIC is the default on this platform - # Common symbols not allowed in MH_DYLIB files - # Cancel any earlier -mdynamic-no-pic, as that makes - # the code not suitable for shared libraries. - PICFLAG_FOR_TARGET='-fno-common -mno-dynamic-no-pic' + # For darwin, common symbols are not allowed in MH_DYLIB files + case "${CFLAGS}" in + # If we are using a compiler supporting mdynamic-no-pic + # and the option has been tested as safe to add, then cancel + # it here, since the code generated is incompatible with shared + # libs. + *-mdynamic-no-pic*) PICFLAG_FOR_TARGET='-fno-common -mno-dynamic-no-pic' ;; + *) PICFLAG_FOR_TARGET=-fno-common ;; + esac ;; alpha*-dec-osf5*) # PIC is the default. @@ -18149,7 +18153,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 18152 "configure" +#line 18156 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -18255,7 +18259,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 18258 "configure" +#line 18262 "configure" #include "confdefs.h" #if HAVE_DLFCN_H |