Implement the --enable-targets= feature of the configure script. The make

variable TARGETS_TO_BUILD is used to determine which targets in lib/Target
are built and which libraries are linked into llc. This effectively
implements the feature. One item remains: disabling targets in the dejagnu
test suite.

llvm-svn: 21450
This commit is contained in:
Reid Spencer 2005-04-22 17:20:11 +00:00
parent 8e5135f359
commit 868f3fb2e0
2 changed files with 45 additions and 13 deletions

View File

@ -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

View File

@ -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