[Darwin, PPC, committed] Use Darwin9 dylib header for Rosetta builds.

Iain Sandoe iain@sandoe.co.uk
Fri Dec 13 21:12:00 GMT 2019


On Darwin10 it's possible to make a 32b PPC build using the
'Rosetta' emulator.  However, these builds need to make use of
Darwin9 crts (for exes and dylibs).  This adds the change to
cater for dylibs.

tested on a powerpc-darwin10 native and a powerpc-darwin10 
cross from x86_64-darwin16.
applied to mainline,
thanks
Iain

gcc/ChangeLog:

2019-12-13  Iain Sandoe  <iain@sandoe.co.uk>

	* config/rs6000/darwin.h (DARWIN_DYLIB1_SPEC): New.

diff --git a/gcc/config/rs6000/darwin.h b/gcc/config/rs6000/darwin.h
index d1a096f..8cf25b0 100644
--- a/gcc/config/rs6000/darwin.h
+++ b/gcc/config/rs6000/darwin.h
@@ -173,6 +173,12 @@
    %:version-compare(!> 10.4 mmacosx-version-min= crt3_2.o%s) \
   }}"
 
+/* We need to jam the dylib1 to 10.5 for 10.6 (Rosetta) use.  */
+#undef DARWIN_DYLIB1_SPEC
+#define DARWIN_DYLIB1_SPEC						\
+  "%:version-compare(!> 10.5 mmacosx-version-min= -ldylib1.o)		\
+   %:version-compare(>< 10.5 10.7 mmacosx-version-min= -ldylib1.10.5.o)"
+
 /* The PPC regs save/restore functions are leaves and could, conceivably
    be used by the tm destructor.  */
 #undef ENDFILE_SPEC



More information about the Gcc-patches mailing list