Don't return error_code from a function that doesn't fail.
[oota-llvm.git] / utils / buildit / GNUmakefile
index a024c1ef4c1e7ba3a17b716499e1fa5672e96790..fc5578a68464e4d13a5299d3e34c2f8c2145aa9c 100644 (file)
@@ -6,7 +6,7 @@
 #
 # You can specify TARGETS=ppc (or i386) on the buildit command line to limit the
 # build to just one target. The default is for ppc and i386. The compiler
-# targetted at this host gets built anyway, but not installed unless it's listed
+# targeted at this host gets built anyway, but not installed unless it's listed
 # in TARGETS.
 
 # Include the set of standard Apple makefile definitions.
@@ -35,26 +35,51 @@ DSTROOT = $(OBJROOT)/../dst
 PREFIX = /usr/local
 
 # Unless assertions are forced on in the GMAKE command line, disable them.
-ifdef ENABLE_ASSERTIONS
-LLVM_ASSERTIONS := yes
+ifndef ENABLE_ASSERTIONS
+ENABLE_ASSERTIONS := no
+endif
+
+# Default is optimized build.
+ifeq ($(LLVM_DEBUG),1)
+LLVM_OPTIMIZED := no
 else
-LLVM_ASSERTIONS := no
+LLVM_OPTIMIZED := yes
 endif
 
+# Default to do a native build, not a cross-build for an ARM host or simulator.
+ARM_HOSTED_BUILD := no
+IOS_SIM_BUILD := no
+
 ifndef RC_ProjectSourceVersion
 RC_ProjectSourceVersion = 9999
 endif
 
 ifndef RC_ProjectSourceSubversion
-RC_ProjectSourceSubversion = 01
+RC_ProjectSourceSubversion = 0
 endif
 
+# NOTE : Always put version numbers at the end because they are optional.
 install: $(OBJROOT) $(SYMROOT) $(DSTROOT)
        cd $(OBJROOT) && \
-         $(SRC)/build_llvm "$(RC_ARCHS)" "$(TARGETS)" \
+         $(SRC)/utils/buildit/build_llvm "$(RC_ARCHS)" "$(TARGETS)" \
            $(SRC) $(PREFIX) $(DSTROOT) $(SYMROOT) \
-           $(RC_ProjectSourceVersion) $(RC_ProjectSourceSubversion) \
-           $(LLVM_ASSERTIONS)
+           $(ENABLE_ASSERTIONS) $(LLVM_OPTIMIZED) \
+           $(ARM_HOSTED_BUILD) $(IOS_SIM_BUILD) \
+           $(RC_ProjectSourceVersion) $(RC_ProjectSourceSubversion) 
+
+EmbeddedHosted:
+       $(MAKE) ARM_HOSTED_BUILD=yes PREFIX=/usr/local install
+
+# When building for the iOS simulator, MACOSX_DEPLOYMENT_TARGET is not set
+# by default, but it needs to be set when building tools that run on the host
+# (e.g., tblgen), so set it here.
+EmbeddedSim:
+       export MACOSX_DEPLOYMENT_TARGET=`sw_vers -productVersion`; \
+       $(MAKE) IOS_SIM_BUILD=yes PREFIX=$(SDKROOT)/usr/local install
+
+Embedded:
+       ARM_PLATFORM=`xcodebuild -version -sdk iphoneos PlatformPath` && \
+       $(MAKE) DSTROOT=$(DSTROOT)$$ARM_PLATFORM/Developer install
 
 # installhdrs does nothing, because the headers aren't useful until
 # the compiler is installed.
@@ -76,6 +101,7 @@ installsrc:
                                -type f -a -name .DS_Store -o \
                                -name \*~ -o -name .\#\* \) \
          -exec rm -rf {} \;
+       rm -rf "$(SRCROOT)/test"
 
 #######################################################################
 
@@ -103,4 +129,4 @@ clean:
 $(OBJROOT) $(SYMROOT) $(DSTROOT):
        mkdir -p $@
 
-.PHONY: install installsrc clean
+.PHONY: install installsrc clean EmbeddedHosted EmbeddedSim Embedded