PR 31013
authorgeoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 8 Mar 2007 19:56:37 +0000 (19:56 +0000)
committergeoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 8 Mar 2007 19:56:37 +0000 (19:56 +0000)
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@122709 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/darwin.h
gcc/gccspec.c

index 75b37e4..921bc49 100644 (file)
@@ -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
index 3d93399..efe1ef0 100644 (file)
@@ -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;                                                             \
index 39b90d9..242e198 100644 (file)
@@ -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.  */