summaryrefslogtreecommitdiff
path: root/make/AppleBI.mk
diff options
context:
space:
mode:
authorNick Kledzik <kledzik@apple.com>2010-04-21 22:46:53 +0000
committerNick Kledzik <kledzik@apple.com>2010-04-21 22:46:53 +0000
commitafb7b6e421785106a7e13e13c2a5320e3f1d9bd3 (patch)
tree919a72712b239958904602d99f7f69327b7882c6 /make/AppleBI.mk
parentd016b38b065fbe3e22584728c3b8bc55fc8a5f9c (diff)
downloadcompiler-rt-afb7b6e421785106a7e13e13c2a5320e3f1d9bd3.tar.gz
compiler-rt-afb7b6e421785106a7e13e13c2a5320e3f1d9bd3.tar.bz2
compiler-rt-afb7b6e421785106a7e13e13c2a5320e3f1d9bd3.tar.xz
improve arm build support on darwin
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@102032 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'make/AppleBI.mk')
-rw-r--r--make/AppleBI.mk36
1 files changed, 34 insertions, 2 deletions
diff --git a/make/AppleBI.mk b/make/AppleBI.mk
index 66a9036e..7d2ad9e5 100644
--- a/make/AppleBI.mk
+++ b/make/AppleBI.mk
@@ -12,6 +12,13 @@ else
ProjObjRoot := $(ProjSrcRoot)
endif
+ifeq (,$(SDKROOT))
+ INSTALL_TARGET = install-MacOSX
+else
+ INSTALL_TARGET = install-iPhoneOS
+endif
+
+
# Log full compile lines in B&I logs and omit summary lines.
Verb :=
Summary := @true
@@ -27,8 +34,10 @@ installsrc:
cp -r . $(SRCROOT)
+install: $(INSTALL_TARGET)
+
# Copy results to DSTROOT.
-install: $(SYMROOT)/libcompiler_rt.dylib
+install-MacOSX : $(SYMROOT)/libcompiler_rt.dylib
mkdir -p $(DSTROOT)/usr/lib/system
strip -S $(SYMROOT)/libcompiler_rt.dylib \
-o $(DSTROOT)/usr/lib/system/libcompiler_rt.dylib
@@ -47,6 +56,29 @@ $(OBJROOT)/libcompiler_rt-%.dylib : $(OBJROOT)/darwin_bni/Release/%/libcompiler_
# Rule to make fat dylib
$(SYMROOT)/libcompiler_rt.dylib: $(foreach arch,$(RC_ARCHS), \
- $(OBJROOT)/libcompiler_rt-$(arch).dylib)
+ $(OBJROOT)/libcompiler_rt-$(arch).dylib)
+ lipo -create $^ -o $@
+
+
+
+
+# Copy results to DSTROOT.
+install-iPhoneOS: $(SYMROOT)/libcompiler_rt.a $(SYMROOT)/libcompiler_rt-static.a
+ mkdir -p $(DSTROOT)/$(SDKROOT)/usr/local/lib/libgcc
+ cp $(SYMROOT)/libcompiler_rt.a \
+ $(DSTROOT)/$(SDKROOT)/usr/local/lib/libgcc/libcompiler_rt.a
+ mkdir -p $(DSTROOT)/$(SDKROOT)/usr/local/
+ cp $(SYMROOT)/libcompiler_rt-static.a \
+ $(DSTROOT)/$(SDKROOT)/usr/local/lib/libcompiler_rt-static.a
+
+
+# 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), \
+ $(OBJROOT)/darwin_bni/Static/$(arch)/libcompiler_rt.a)
lipo -create $^ -o $@