summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/Target/Makefile10
-rw-r--r--tools/llc/Makefile48
2 files changed, 45 insertions, 13 deletions
diff --git a/lib/Target/Makefile b/lib/Target/Makefile
index 5b69f49b2e..ae70488a4d 100644
--- a/lib/Target/Makefile
+++ b/lib/Target/Makefile
@@ -7,8 +7,14 @@
#
##===----------------------------------------------------------------------===##
LEVEL = ../..
-PARALLEL_DIRS = CBackend X86 SparcV8 SparcV9 PowerPC Alpha IA64 Skeleton
LIBRARYNAME = LLVMTarget
BUILD_ARCHIVE = 1
-include $(LEVEL)/Makefile.common
+# We include this early so we can access the value of TARGETS_TO_BUILD as the
+# value for PARALLEL_DIRS which must be set before Makefile.rules is included
+include $(LEVEL)/Makefile.config
+
+PARALLEL_DIRS := $(TARGETS_TO_BUILD)
+
+include $(LLVM_SRC_ROOT)/Makefile.rules
+
diff --git a/tools/llc/Makefile b/tools/llc/Makefile
index 6d7edf8efe..8eff3c1612 100644
--- a/tools/llc/Makefile
+++ b/tools/llc/Makefile
@@ -9,22 +9,50 @@
LEVEL = ../..
TOOLNAME = llc
-USEDLIBS = \
+
+# 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
+
+# We always build the C Backend and the Skeleton
+USEDLIBS := LLVMCBackend LLVMSkeleton
+
+# Check for Sparc target
+ifneq ($(strip $(filter SparcV8,$(TARGETS_TO_BUILD))),)
+USEDLIBS += \
LLVMSparcV9ModuloSched \
- LLVMCBackend \
- LLVMPowerPC \
LLVMSparcV8 \
LLVMSparcV9 \
- LLVMX86 \
- LLVMAlpha \
- LLVMIA64 \
- LLVMSkeleton \
LLVMSparcV9RegAlloc \
LLVMSparcV9InstrSched \
+ LLVMSparcV9LiveVar
+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
+
+USEDLIBS += \
LLVMSelectionDAG \
LLVMCodeGen \
LLVMTarget.a \
- LLVMSparcV9LiveVar \
LLVMipa.a \
LLVMTransforms.a \
LLVMScalarOpts \
@@ -37,7 +65,5 @@ USEDLIBS = \
LLVMbzip2 \
LLVMSystem.a
-TOOLLINKOPTS = $(PLATFORMLIBDL)
-
-include $(LEVEL)/Makefile.common
+include $(LLVM_SRC_ROOT)/Makefile.rules