* [committed] Fix libcc1 build on Darwin (PR target/65351)
@ 2015-04-07 10:04 Jakub Jelinek
0 siblings, 0 replies; only message in thread
From: Jakub Jelinek @ 2015-04-07 10:04 UTC (permalink / raw)
To: gcc-patches
Hi!
I've committed the following patch (which Iain tested - at least
libiberty part). The issue is that while Darwin is PIC by default, for
performance reasons it uses -mdynamic-no-pic and that makes code compiled
that way not suitable for shared libraries.
Committed to trunk as obvious.
2015-04-07 Jakub Jelinek <jakub@redhat.com>
Iain Sandoe <iain@codesourcery.com>
PR target/65351
config/
* picflag.m4: Append -mno-dynamic-no-pic for Darwin.
libiberty/
* configure: Regenerate.
libada/
* configure: Regenerate.
libgcc/
* configure: Regenerate.
gcc/
* configure: Regenerate.
--- config/picflag.m4.jj 2013-11-18 09:59:08.000000000 +0100
+++ config/picflag.m4 2015-04-07 11:40:49.963566972 +0200
@@ -9,7 +9,9 @@ case "${$2}" in
*-*-darwin*)
# PIC is the default on this platform
# Common symbols not allowed in MH_DYLIB files
- $1=-fno-common
+ # Cancel any earlier -mdynamic-no-pic, as that makes
+ # the code not suitable for shared libraries.
+ $1='-fno-common -mno-dynamic-no-pic'
;;
alpha*-dec-osf5*)
# PIC is the default.
--- libiberty/configure.jj 2014-11-24 10:26:27.000000000 +0100
+++ libiberty/configure 2015-04-07 11:41:43.075707899 +0200
@@ -4887,7 +4887,9 @@ case "${host}" in
*-*-darwin*)
# PIC is the default on this platform
# Common symbols not allowed in MH_DYLIB files
- PICFLAG=-fno-common
+ # Cancel any earlier -mdynamic-no-pic, as that makes
+ # the code not suitable for shared libraries.
+ PICFLAG='-fno-common -mno-dynamic-no-pic'
;;
alpha*-dec-osf5*)
# PIC is the default.
--- libada/configure.jj 2015-01-05 13:40:49.000000000 +0100
+++ libada/configure 2015-04-07 11:42:44.517715744 +0200
@@ -2826,7 +2826,9 @@ case "${host}" in
*-*-darwin*)
# PIC is the default on this platform
# Common symbols not allowed in MH_DYLIB files
- PICFLAG=-fno-common
+ # Cancel any earlier -mdynamic-no-pic, as that makes
+ # the code not suitable for shared libraries.
+ PICFLAG='-fno-common -mno-dynamic-no-pic'
;;
alpha*-dec-osf5*)
# PIC is the default.
--- libgcc/configure.jj 2015-03-09 08:05:17.000000000 +0100
+++ libgcc/configure 2015-04-07 11:42:30.927935072 +0200
@@ -2305,7 +2305,9 @@ case "${host}" in
*-*-darwin*)
# PIC is the default on this platform
# Common symbols not allowed in MH_DYLIB files
- PICFLAG=-fno-common
+ # Cancel any earlier -mdynamic-no-pic, as that makes
+ # the code not suitable for shared libraries.
+ PICFLAG='-fno-common -mno-dynamic-no-pic'
;;
alpha*-dec-osf5*)
# PIC is the default.
--- gcc/configure.jj 2015-03-11 20:17:47.000000000 +0100
+++ gcc/configure 2015-04-07 11:42:11.266252397 +0200
@@ -4788,7 +4788,9 @@ case "${target}" in
*-*-darwin*)
# PIC is the default on this platform
# Common symbols not allowed in MH_DYLIB files
- PICFLAG_FOR_TARGET=-fno-common
+ # 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'
;;
alpha*-dec-osf5*)
# PIC is the default.
@@ -18147,7 +18149,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 18150 "configure"
+#line 18152 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -18253,7 +18255,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 18256 "configure"
+#line 18258 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
Jakub
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2015-04-07 10:04 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-04-07 10:04 [committed] Fix libcc1 build on Darwin (PR target/65351) Jakub Jelinek
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).