[llvm-commits] CVS: llvm/tools/llvm-config/FinalLibDeps.txt Makefile

Reid Spencer reid at x10sys.com
Thu Apr 20 14:14:10 PDT 2006



Changes in directory llvm/tools/llvm-config:

FinalLibDeps.txt added (r1.1)
Makefile updated: 1.4 -> 1.5
---
Log message:

Several Changes To Support Building llvm-config:
1. If Perl is not available, don't run Perl dependent targets.
2. Check in FinalLibDeps.txt for build environments that can't build it
   because there's no Perl processor.
3. Ensure that FinalLibDeps.txt depends on LibDeps.txt so it is 
   automatically regenerated.
4. Support objdir != srcdir building.


---
Diffs of the changes:  (+42 -10)

 FinalLibDeps.txt |   25 +++++++++++++++++++++++++
 Makefile         |   27 +++++++++++++++++----------
 2 files changed, 42 insertions(+), 10 deletions(-)


Index: llvm/tools/llvm-config/FinalLibDeps.txt
diff -c /dev/null llvm/tools/llvm-config/FinalLibDeps.txt:1.1
*** /dev/null	Thu Apr 20 16:14:08 2006
--- llvm/tools/llvm-config/FinalLibDeps.txt	Thu Apr 20 16:13:58 2006
***************
*** 0 ****
--- 1,25 ----
+ LLVMAlpha.o: LLVMCodeGen.o LLVMCore.o LLVMSelectionDAG.o libLLVMScalarOpts.a libLLVMSupport.a libLLVMTarget.a
+ LLVMAsmParser.o: LLVMCore.o
+ LLVMBCReader.o: LLVMCore.o libLLVMSupport.a libLLVMSystem.a
+ LLVMBCWriter.o: LLVMCore.o libLLVMSupport.a
+ LLVMCBackend.o: LLVMCodeGen.o LLVMCore.o libLLVMAnalysis.a libLLVMScalarOpts.a libLLVMSupport.a libLLVMTarget.a libLLVMipa.a
+ LLVMCodeGen.o LLVMSelectionDAG.o libLLVMAnalysis.a libLLVMTarget.a libLLVMTransformUtils.a libLLVMipa.a libLLVMAnalysis.a libLLVMTarget.a libLLVMTransformUtils.a libLLVMipa.a: LLVMCore.o libLLVMSupport.a libLLVMSystem.a
+ LLVMCore.o: libLLVMSupport.a
+ LLVMDataStructure.o: LLVMCore.o libLLVMAnalysis.a libLLVMSupport.a libLLVMTarget.a
+ LLVMDebugger.o: LLVMBCReader.o LLVMCore.o libLLVMSupport.a libLLVMSystem.a
+ LLVMExecutionEngine.o: LLVMCore.o libLLVMSupport.a libLLVMSystem.a libLLVMTarget.a
+ LLVMIA64.o: LLVMCodeGen.o LLVMCore.o LLVMSelectionDAG.o libLLVMScalarOpts.a libLLVMSupport.a libLLVMTarget.a
+ LLVMInterpreter.o: LLVMCore.o LLVMExecutionEngine.o libLLVMSupport.a libLLVMSystem.a libLLVMTarget.a
+ LLVMJIT.o: LLVMCore.o LLVMExecutionEngine.o libLLVMSupport.a libLLVMSystem.a libLLVMTarget.a
+ LLVMPowerPC.o: LLVMCodeGen.o LLVMCore.o LLVMSelectionDAG.o libLLVMScalarOpts.a libLLVMSupport.a libLLVMTarget.a
+ LLVMSparc.o: LLVMCodeGen.o LLVMCore.o LLVMSelectionDAG.o libLLVMScalarOpts.a libLLVMSupport.a libLLVMTarget.a
+ LLVMX86.o: LLVMCodeGen.o LLVMCore.o LLVMSelectionDAG.o libLLVMScalarOpts.a libLLVMSupport.a libLLVMTarget.a
+ LLVMbzip2.o: 
+ libLLVMArchive.a: LLVMBCReader.o LLVMCore.o libLLVMSupport.a libLLVMSystem.a
+ libLLVMInstrumentation.a: LLVMCore.o libLLVMScalarOpts.a libLLVMSupport.a libLLVMTransformUtils.a
+ libLLVMLinker.a: LLVMBCReader.o LLVMCore.o libLLVMArchive.a libLLVMSystem.a
+ libLLVMScalarOpts.a: LLVMCore.o libLLVMAnalysis.a libLLVMSupport.a libLLVMTarget.a libLLVMTransformUtils.a
+ libLLVMSupport.a: LLVMbzip2.o libLLVMSystem.a
+ libLLVMSystem.a: 
+ libLLVMTransforms.a: LLVMCore.o libLLVMSupport.a libLLVMTarget.a libLLVMTransformUtils.a
+ libLLVMipo.a: LLVMCore.o libLLVMAnalysis.a libLLVMSupport.a libLLVMTarget.a libLLVMTransformUtils.a libLLVMipa.a


Index: llvm/tools/llvm-config/Makefile
diff -u llvm/tools/llvm-config/Makefile:1.4 llvm/tools/llvm-config/Makefile:1.5
--- llvm/tools/llvm-config/Makefile:1.4	Thu Mar 23 17:21:29 2006
+++ llvm/tools/llvm-config/Makefile	Thu Apr 20 16:13:58 2006
@@ -1,4 +1,4 @@
-##===- utils/llvm-config/Makefile --------------------------*- Makefile -*-===##
+##===- tools/llvm-config/Makefile --------------------------*- Makefile -*-===##
 #
 #                     The LLVM Compiler Infrastructure
 #
@@ -21,40 +21,47 @@
 # user to use libtool when linking against LLVM.
 SUB_LDFLAGS = 
 
+FinalLibDeps = $(PROJ_SRC_DIR)/FinalLibDeps.txt
+ifdef HAVE_PERL
+ifeq ($(HAVE_PERL),1)
+LibDeps = $(PROJ_SRC_DIR)/LibDeps.txt
+GenLibDeps = $(PROJ_SRC_ROOT)/utils/GenLibDeps.pl
 # MANUAL USE ONLY!  GenLibDeps.pl is very non-portable, so LibDeps.txt
 # should only be re-built manually.  No other rule in this file should
 # depend on LibDeps.txt.
-LibDeps.txt: $(LEVEL)/utils/GenLibDeps.pl $(LibDir)
+$(LibDeps): $(GenLibDeps) $(LibDir)
 	$(Echo) "Regenerating LibDeps.txt"
-	$(Verb) $(LLVM_SRC_ROOT)/utils/GenLibDeps.pl -flat $(LibDir) | \
-	  sort > LibDeps.txt
+	$(Verb) $(GenLibDeps) -flat $(LibDir) | sort > $(LibDeps)
 
 # Find all the cyclic dependencies between various LLVM libraries, so we
 # don't have to process them at runtime.
-FinalLibDeps.txt: find-cycles.pl # LibDeps.txt deliberately omitted.
+$(FinalLibDeps): find-cycles.pl $(LibDeps)
 	$(Echo) "Finding cyclic dependencies between LLVM libraries."
 	$(Verb) $(PERL) $< < $(PROJ_SRC_DIR)/LibDeps.txt > $@
+endif
+endif
 
 # Rerun our configure substitutions as needed.
-llvm-config.in: llvm-config.in.in $(ConfigStatusScript)
+ConfigInIn = $(PROJ_SRC_DIR)/llvm-config.in.in
+llvm-config.in: $(ConfigInIn) $(ConfigStatusScript)
 	$(Verb) cd $(PROJ_OBJ_ROOT) ; \
-		$(ConfigStatusScript) utils/llvm-config/llvm-config.in
+		$(ConfigStatusScript) tools/llvm-config/llvm-config.in
 
 # Build our final script.
-llvm-config: llvm-config.in FinalLibDeps.txt
+llvm-config: llvm-config.in $(FinalLibDeps)
 	$(Echo) "Building llvm-config script."
 	$(Verb) $(ECHO) 's, at LLVM_CXXFLAGS@,$(SUB_CXXFLAGS),' > temp.sed
 	$(Verb) $(ECHO) 's, at LLVM_LDFLAGS@,$(SUB_LDFLAGS),' >> temp.sed
 	$(Verb) $(ECHO) 's, at CORE_IS_ARCHIVE@,$(CORE_IS_ARCHIVE),' >> temp.sed
 	$(Verb) $(SED) -f temp.sed < $< > $@
 	$(Verb) $(RM) temp.sed
-	$(Verb) cat FinalLibDeps.txt >> $@
+	$(Verb) cat $(FinalLibDeps) >> $@
 	$(Verb) chmod +x llvm-config
 
 # Hook into the standard Makefile rules.
 all-local:: llvm-config
 clean-local::
-	$(Verb) $(RM) -f FinalLibDeps.txt llvm-config llvm-config.in
+	$(Verb) $(RM) -f llvm-config llvm-config.in
 install-local:: all-local
 	$(Echo) Installing llvm-config
 	$(Verb) $(MKDIR) $(PROJ_bindir)






More information about the llvm-commits mailing list