Correctly build shared objects on MacOS X for debugging code generators


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14892 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Support/ToolRunner.cpp b/lib/Support/ToolRunner.cpp
index a28527a..73a0c31 100644
--- a/lib/Support/ToolRunner.cpp
+++ b/lib/Support/ToolRunner.cpp
@@ -403,7 +403,11 @@
     InputFile.c_str(),           // Specify the input filename...
 #if defined(sparc) || defined(__sparc__) || defined(__sparcv9)
     "-G",                        // Compile a shared library, `-G' for Sparc
-#else                             
+#elif (defined(__POWERPC__) || defined(__ppc__)) && defined(__APPLE__)
+    "-dynamiclib",               // `-dynamiclib' for MacOS X/PowerPC
+    "-fno-common",               // allow global vars w/o initializers to live
+                                 // in data segment, rather than generating blocks
+#else
     "-shared",                   // `-shared' for Linux/X86, maybe others
 #endif
     "-o", OutputFile.c_str(),    // Output to the right filename...