<rdar://problem/9091300> update Apple packaging of compiler-rt

llvm-svn: 127057
This commit is contained in:
Nick Kledzik 2011-03-05 02:15:16 +00:00
parent 250ffb1fcb
commit fc1586cf9f
2 changed files with 35 additions and 12 deletions

View File

@ -0,0 +1,21 @@
#
# These are soft float functions which can be
# aliased to the *vfp functions on arm processors
# that support floating point instructions.
#
___adddf3vfp ___adddf3
___addsf3vfp ___addsf3
___divdf3vfp ___divdf3
___divsf3vfp ___divsf3
___extendsfdf2vfp ___extendsfdf2
___fixdfsivfp ___fixdfsi
___fixsfsivfp ___fixsfsi
___floatsidfvfp ___floatsidf
___floatsisfvfp ___floatsisf
___muldf3vfp ___muldf3
___mulsf3vfp ___mulsf3
___subdf3vfp ___subdf3
___subsf3vfp ___subsf3
___truncdfsf2vfp ___truncdfsf2
___floatunssidfvfp ___floatunsidf
___floatunssisfvfp ___floatunsisf

View File

@ -14,8 +14,14 @@ endif
ifeq (,$(SDKROOT))
INSTALL_TARGET = install-MacOSX
LD_OTHER_FLAGS =
else
INSTALL_TARGET = install-iOS
CFLAGS.Release.armv6 := $(CFLAGS) -isysroot $(SDKROOT)
CFLAGS.Release.armv7 := $(CFLAGS) -isysroot $(SDKROOT)
CFLAGS.Static.armv6 := $(CFLAGS) -isysroot $(SDKROOT)
CFLAGS.Static.armv7 := $(CFLAGS) -isysroot $(SDKROOT)
LD_OTHER_FLAGS = -Wl,-alias_list,$(SRCROOT)/lib/arm/softfloat-alias.list
endif
@ -48,11 +54,11 @@ install-MacOSX : $(SYMROOT)/libcompiler_rt.dylib
# Rule to make each dylib slice
$(OBJROOT)/libcompiler_rt-%.dylib : $(OBJROOT)/darwin_bni/Release/%/libcompiler_rt.a
echo "const char vers[] = \"@(#) $(RC_ProjectName)-$(RC_ProjectSourceVersion)\"; " > $(OBJROOT)/version.c
cc $(OBJROOT)/version.c -arch $* -dynamiclib \
$(CC.Release) $(OBJROOT)/version.c -arch $* -dynamiclib \
-install_name /usr/lib/system/libcompiler_rt.dylib \
-compatibility_version 1 -current_version $(RC_ProjectSourceVersion) \
-nodefaultlibs -lSystem -umbrella System -dead_strip \
-Wl,-force_load,$^ -o $@
$(LD_OTHER_FLAGS) -Wl,-force_load,$^ -o $@
# Rule to make fat dylib
$(SYMROOT)/libcompiler_rt.dylib: $(foreach arch,$(RC_ARCHS), \
@ -63,19 +69,15 @@ $(SYMROOT)/libcompiler_rt.dylib: $(foreach arch,$(RC_ARCHS), \
# Copy results to DSTROOT.
install-iOS: $(SYMROOT)/libcompiler_rt.a $(SYMROOT)/libcompiler_rt-static.a
mkdir -p $(DSTROOT)/usr/local/lib/libgcc
cp $(SYMROOT)/libcompiler_rt.a \
$(DSTROOT)/usr/local/lib/libgcc/libcompiler_rt.a
mkdir -p $(DSTROOT)/usr/local/
install-iOS: $(SYMROOT)/libcompiler_rt-static.a \
$(SYMROOT)/libcompiler_rt.dylib
mkdir -p $(DSTROOT)/usr/local/lib
cp $(SYMROOT)/libcompiler_rt-static.a \
$(DSTROOT)/usr/local/lib/libcompiler_rt-static.a
mkdir -p $(DSTROOT)/usr/lib/system
strip -S $(SYMROOT)/libcompiler_rt.dylib \
-o $(DSTROOT)/usr/lib/system/libcompiler_rt.dylib
# Rule to make fat archive
$(SYMROOT)/libcompiler_rt.a : $(foreach arch,$(RC_ARCHS), \
$(OBJROOT)/darwin_bni/Release/$(arch)/libcompiler_rt.a)
lipo -create $^ -o $@
# Rule to make fat archive
$(SYMROOT)/libcompiler_rt-static.a : $(foreach arch,$(RC_ARCHS), \