Use archive libraries instead of object files for VMCore, BCReader,
[oota-llvm.git] / tools / llc / Makefile
index a58fd46352c0e9bd66ed9384e333e8617ada426e..fe744039636ded64f010dc6593bc470efac14c43 100644 (file)
@@ -1,8 +1,73 @@
+#===- tools/llc/Makefile -----------------------------------*- Makefile -*-===##
+# 
+#                     The LLVM Compiler Infrastructure
+#
+# This file was developed by the LLVM research group and is distributed under
+# the University of Illinois Open Source License. See LICENSE.TXT for details.
+# 
+##===----------------------------------------------------------------------===##
+
 LEVEL = ../..
 TOOLNAME = llc
-USEDLIBS = sparc regalloc sched select sched select target \
-           instrument livevar bcreader bcwriter analysis transforms analysis \
-          scalaropts vmcore asmwriter support
 
-include $(LEVEL)/Makefile.common
+# Include this here so we can get the configuration of the targets
+# that have been configured for construction. We have to do this 
+# early so we can set up USEDLIBS properly before includeing Makefile.rules
+include $(LEVEL)/Makefile.config
+
+# Initialize the USEDLIBS so we can add to it
+USEDLIBS :=
+
+# Check for LLVMCBackend  target
+ifneq ($(strip $(filter CBackend,$(TARGETS_TO_BUILD))),)
+USEDLIBS += LLVMCBackend
+endif
+
+ifneq ($(strip $(filter Sparc,$(TARGETS_TO_BUILD))),)
+USEDLIBS += LLVMSparc
+endif
+
+
+#Check for X86 Target
+ifneq ($(strip $(filter X86,$(TARGETS_TO_BUILD))),)
+USEDLIBS += LLVMX86
+endif
+
+#Check for PowerPC Target
+ifneq ($(strip $(filter PowerPC,$(TARGETS_TO_BUILD))),)
+USEDLIBS += LLVMPowerPC
+endif
+
+#Check for Alpha Target
+ifneq ($(strip $(filter Alpha,$(TARGETS_TO_BUILD))),)
+USEDLIBS += LLVMAlpha
+endif
+
+#Check for IA64 Target
+ifneq ($(strip $(filter IA64,$(TARGETS_TO_BUILD))),)
+USEDLIBS += LLVMIA64
+endif
+
+#Check for ARM Target
+ifneq ($(strip $(filter ARM,$(TARGETS_TO_BUILD))),)
+USEDLIBS += LLVMARM
+endif
+
+USEDLIBS += \
+       LLVMSelectionDAG \
+       LLVMCodeGen \
+       LLVMTarget \
+       LLVMipa.a \
+       LLVMTransforms.a \
+       LLVMScalarOpts.a \
+       LLVMTransformUtils.a \
+       LLVMAnalysis.a \
+       LLVMBCReader.a \
+       LLVMBCWriter.a \
+       LLVMCore.a \
+       LLVMSupport.a \
+       LLVMbzip2.a \
+       LLVMSystem.a
+
+include $(LLVM_SRC_ROOT)/Makefile.rules