[llvm-commits] [llvm] r84872 - in /llvm/trunk: Makefile utils/buildit/GNUmakefile utils/buildit/build_llvm

Stuart Hastings stuart at apple.com
Thu Oct 22 10:22:37 PDT 2009


Author: stuart
Date: Thu Oct 22 12:22:37 2009
New Revision: 84872

URL: http://llvm.org/viewvc/llvm-project?rev=84872&view=rev
Log:
Trying again to tweak the top-level Makefile to facilitate an Apple-style build.
Now with Clang-compatibility.

Modified:
    llvm/trunk/Makefile
    llvm/trunk/utils/buildit/GNUmakefile
    llvm/trunk/utils/buildit/build_llvm

Modified: llvm/trunk/Makefile
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/Makefile?rev=84872&r1=84871&r2=84872&view=diff

==============================================================================
--- llvm/trunk/Makefile (original)
+++ llvm/trunk/Makefile Thu Oct 22 12:22:37 2009
@@ -19,6 +19,12 @@
 #
 # When cross-compiling, there are some things (tablegen) that need to
 # be build for the build system first.
+
+# If "RC_ProjectName" exists in the environment, and its value is
+# "llvmCore", then this is an "Apple-style" build; search for
+# "Apple-style" in the comments for more info.  Anything else is a
+# normal build.
+ifneq ($(RC_ProjectName),llvmCore)  # Normal build (not "Apple-style").
 ifeq ($(BUILD_DIRS_ONLY),1)
   DIRS := lib/System lib/Support utils
   OPTIONAL_DIRS :=
@@ -211,3 +217,9 @@
 
 .NOTPARALLEL:
 
+else # Building "Apple-style."
+# In an Apple-style build, once configuration is done, lines marked
+# "Apple-style" are removed with sed!  Please don't remove these!
+# Look for the string "Apple-style" in utils/buildit/build_llvm.
+include $(shell find . -name GNUmakefile) # Building "Apple-style."
+endif # Building "Apple-style."

Modified: llvm/trunk/utils/buildit/GNUmakefile
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/buildit/GNUmakefile?rev=84872&r1=84871&r2=84872&view=diff

==============================================================================
--- llvm/trunk/utils/buildit/GNUmakefile (original)
+++ llvm/trunk/utils/buildit/GNUmakefile Thu Oct 22 12:22:37 2009
@@ -59,7 +59,7 @@
 # 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) \
 	    $(LLVM_ASSERTIONS) $(LLVM_OPTIMIZED) \
 	    $(RC_ProjectSourceVersion) $(RC_ProjectSourceSubversion) 

Modified: llvm/trunk/utils/buildit/build_llvm
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/buildit/build_llvm?rev=84872&r1=84871&r2=84872&view=diff

==============================================================================
--- llvm/trunk/utils/buildit/build_llvm (original)
+++ llvm/trunk/utils/buildit/build_llvm Thu Oct 22 12:22:37 2009
@@ -82,6 +82,10 @@
 rm -rf $SRC_DIR || exit 1
 mkdir $SRC_DIR || exit 1
 ln -s $ORIG_SRC_DIR/* $SRC_DIR/ || exit 1
+# We can't use the top-level Makefile as-is.  Remove the soft link:
+rm $SRC_DIR/Makefile || exit 1
+# Now create our own by editing the top-level Makefile, deleting every line marked "Apple-style":
+sed -e '/[Aa]pple-style/d' -e '/include.*GNUmakefile/d' $ORIG_SRC_DIR/Makefile > $SRC_DIR/Makefile || exit 1
 
 # Build the LLVM tree universal.
 mkdir -p $DIR/obj-llvm || exit 1





More information about the llvm-commits mailing list