aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorGeoffrey Keating <geoffk@apple.com>2007-03-08 19:56:37 +0000
committerGeoffrey Keating <geoffk@gcc.gnu.org>2007-03-08 19:56:37 +0000
commitd2328a13136009623fdf98d86bfdce88835588c7 (patch)
treee6b918a2bc12fd02e164aa9d987ffd5fe96f6a4e /gcc
parentebb07520cddaa13da40dbd6775c5ff3f1b22494c (diff)
downloadgcc-d2328a13136009623fdf98d86bfdce88835588c7.zip
gcc-d2328a13136009623fdf98d86bfdce88835588c7.tar.gz
gcc-d2328a13136009623fdf98d86bfdce88835588c7.tar.bz2
re PR objc/31013 (objc PCH is broken on powerpc-darwin again)
PR 31013 * gccspec.c (lang_specific_driver): Do nothing when NEXT_OBJC_RUNTIME is declared. * config/darwin.h (REAL_LIBGCC_SPEC): When -fgnu-runtime is passed, use shared libgcc. From-SVN: r122709
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog8
-rw-r--r--gcc/config/darwin.h2
-rw-r--r--gcc/gccspec.c5
3 files changed, 13 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 75b37e4..921bc49 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,11 @@
+2007-03-08 Geoffrey Keating <geoffk@apple.com>
+
+ PR 31013
+ * gccspec.c (lang_specific_driver): Do nothing when NEXT_OBJC_RUNTIME
+ is declared.
+ * config/darwin.h (REAL_LIBGCC_SPEC): When -fgnu-runtime is
+ passed, use shared libgcc.
+
2007-03-08 Roger Sayle <roger@eyesopen.com>
* tree-eh.c (do_return_redirection): Call build_gimple_modify_stmt
diff --git a/gcc/config/darwin.h b/gcc/config/darwin.h
index 3d93399..efe1ef0 100644
--- a/gcc/config/darwin.h
+++ b/gcc/config/darwin.h
@@ -351,7 +351,7 @@ extern GTY(()) int darwin_ms_struct;
#undef REAL_LIBGCC_SPEC
#define REAL_LIBGCC_SPEC \
"%{static-libgcc|static: -lgcc_eh -lgcc; \
- shared-libgcc|fexceptions: \
+ shared-libgcc|fexceptions|fgnu-runtime: \
%:version-compare(!> 10.5 mmacosx-version-min= -lgcc_s.10.4) \
%:version-compare(>= 10.5 mmacosx-version-min= -lgcc_s.10.5) \
-lgcc; \
diff --git a/gcc/gccspec.c b/gcc/gccspec.c
index 39b90d9..242e198 100644
--- a/gcc/gccspec.c
+++ b/gcc/gccspec.c
@@ -30,7 +30,10 @@ lang_specific_driver (int *in_argc ATTRIBUTE_UNUSED,
const char *const **in_argv ATTRIBUTE_UNUSED,
int *in_added_libraries ATTRIBUTE_UNUSED)
{
-#ifdef ENABLE_SHARED_LIBGCC
+ /* Systems which use the NeXT runtime by default should arrange
+ for the shared libgcc to be used when -fgnu-runtime is passed
+ through specs. */
+#if defined(ENABLE_SHARED_LIBGCC) && ! defined(NEXT_OBJC_RUNTIME)
int i;
/* The new argument list will be contained in this. */