1 1.1.1.2 mrg # Set this as a minimum (unless overriden by arch t-files) since it's a 2 1.1.1.2 mrg # reasonable lowest common denominator that works for all our archs. 3 1.1.1.8 mrg HOST_LIBGCC2_CFLAGS += $(DARWIN_MIN_LIB_VERSION) 4 1.1.1.2 mrg 5 1.1 mrg crt3.o: $(srcdir)/config/darwin-crt3.c 6 1.1.1.8 mrg $(crt_compile) $(DARWIN_MIN_CRT_VERSION) -c $< 7 1.1 mrg 8 1.1 mrg crttms.o: $(srcdir)/config/darwin-crt-tm.c 9 1.1.1.8 mrg $(crt_compile) $(DARWIN_MIN_CRT_VERSION) -DSTART -c $< 10 1.1 mrg 11 1.1 mrg crttme.o: $(srcdir)/config/darwin-crt-tm.c 12 1.1.1.8 mrg $(crt_compile) $(DARWIN_MIN_CRT_VERSION) -DEND -c $< 13 1.1 mrg 14 1.1.1.5 mrg # Make emutls weak so that we can deal with -static-libgcc, override the 15 1.1.1.5 mrg #hidden visibility when this is present in libgcc_eh. 16 1.1.1.5 mrg emutls.o: HOST_LIBGCC2_CFLAGS += \ 17 1.1.1.5 mrg -DEMUTLS_ATTR='__attribute__((__weak__,__visibility__("default")))' 18 1.1.1.5 mrg emutls_s.o: HOST_LIBGCC2_CFLAGS += \ 19 1.1.1.5 mrg -DEMUTLS_ATTR='__attribute__((__weak__,__visibility__("default")))' 20 1.1.1.5 mrg 21 1.1.1.5 mrg # Make the emutls crt as a convenience lib so that it can be linked 22 1.1.1.5 mrg #optionally, use the shared version so that we can link with DSO. 23 1.1.1.5 mrg libemutls_w.a: emutls_s.o 24 1.1.1.5 mrg $(AR_CREATE_FOR_TARGET) $@ $< 25 1.1.1.5 mrg $(RANLIB_FOR_TARGET) $@ 26 1.1.1.4 mrg 27 1.1.1.4 mrg # Patch to __Unwind_Find_Enclosing_Function for Darwin10. 28 1.1.1.8 mrg # This needs to be built for darwin10, regardless of the current platform 29 1.1.1.8 mrg # version. 30 1.1.1.5 mrg d10-uwfef.o: $(srcdir)/config/darwin10-unwind-find-enc-func.c libgcc_tm.h 31 1.1.1.4 mrg $(crt_compile) -mmacosx-version-min=10.6 -c $< 32 1.1.1.5 mrg 33 1.1.1.5 mrg # Using this crt as a library means that it will not be added to an exe 34 1.1.1.5 mrg #(or module) unless needed. 35 1.1.1.5 mrg libd10-uwfef.a: d10-uwfef.o 36 1.1.1.5 mrg $(AR_CREATE_FOR_TARGET) $@ d10-uwfef.o 37 1.1.1.5 mrg $(RANLIB_FOR_TARGET) $@ 38 1.1.1.5 mrg 39 1.1.1.5 mrg ######Unwinder ####### 40 1.1.1.5 mrg # Most Darwin versions get their unwinder from libSystem; older versions 41 1.1.1.5 mrg #have an installed /usr/lib/libgcc_s.1.dylib. 42 1.1.1.5 mrg # So do not add the unwinder to the shared libgcc. 43 1.1.1.5 mrg LIB2ADDEHSHARED = 44 1.1.1.5 mrg 45 1.1.1.5 mrg # We still need it in the _eh.a for earlier platform versions. 46 1.1.1.5 mrg # Use unwind-dw2-fde-darwin 47 1.1.1.5 mrg LIB2ADDEH = $(srcdir)/unwind-dw2.c \ 48 1.1.1.5 mrg $(srcdir)/config/unwind-dw2-fde-darwin.c \ 49 1.1.1.5 mrg $(srcdir)/unwind-c.c 50 1.1.1.5 mrg 51 1.1.1.5 mrg # Do not build a shared unwind lib by default. 52 1.1.1.5 mrg LIBEHSOBJS= 53 1.1.1.5 mrg 54 1.1.1.9 mrg # Make heap trampoline helpers weak definitions so that we can merge them from 55 1.1.1.9 mrg # multiple DSOs. 56 1.1.1.9 mrg heap-trampoline.o: HOST_LIBGCC2_CFLAGS += \ 57 1.1.1.9 mrg -DHEAP_T_ATTR='__attribute__((__weak__,__visibility__("default")))' 58 1.1.1.9 mrg heap-trampoline_s.o: HOST_LIBGCC2_CFLAGS += \ 59 1.1.1.9 mrg -DHEAP_T_ATTR='__attribute__((__weak__,__visibility__("default")))' 60 1.1.1.9 mrg 61 1.1.1.9 mrg # Make a heap trampoline support CRT so that it can be linked optionally, use 62 1.1.1.9 mrg # the shared version so that we can link with DSOs. 63 1.1.1.9 mrg libheapt_w.a: heap-trampoline_s.o 64 1.1.1.9 mrg $(AR_CREATE_FOR_TARGET) $@ $< 65 1.1.1.9 mrg $(RANLIB_FOR_TARGET) $@ 66 1.1.1.9 mrg 67 1.1.1.5 mrg # Symbols for all the sub-ports. 68 1.1.1.5 mrg SHLIB_MAPFILES = libgcc-std.ver $(srcdir)/config/libgcc-libsystem.ver 69