#===-- Makefile.config - Local configuration for LLVM ------*- makefile -*--==== # # This file is included by Makefile.common. It defines paths and other # values specific to a particular installation of LLVM. #===-----------------------------------------------------------------------==== # # Target operating system for which LLVM will be compiled. # OS=@OS@ # # Target hardware architecture # ARCH=@ARCH@ # Path to the C++ compiler to use. This is an optional setting, which defaults # to whatever your gmake defaults to. # # Under Linux, for some reason the compiler driver wants to search the PATH to # find the system assembler, which breaks if the LLVM assembler is in our path. # Hack it to use the assembler in /usr/bin directly. # CXX = @CXX@ # We have the same problem with the CC binary, which use used by testcases for # native builds. # CC := @CC@ # # Compilation flags for the C and C++ compilers. # # # Removing the compiler flags for now. They interfere with the test suite # (which has its own autoconf stuff), and we don't use -DHAVE_CONFIG_H anyway. # #CPPFLAGS+=@DEFS@ #CCFLAGS+=@DEFS@ LDFLAGS+=@LDFLAGS@ # # Removed since it prevents the tests from working properly. # #LIBS+=@LIBS@ # # Libraries needed by tools # TOOLLINKOPTS=@LIBS@ # # Path to the archiver program. # AR_PATH = @AR@ # # The pathnames of the Flex and Bison programs, respectively. # BISON = @YACC@ FLEX = @LEX@ # # Paths to miscellaneous programs. # RPWD = @RPWD@ SED = @SED@ RM = @RM@ ECHO = @ECHO@ MKDIR = @abs_top_srcdir@/autoconf/mkinstalldirs DATE = @DATE@ MV = @MV@ INSTALL = @INSTALL@ DOT = @DOT@ ETAGS = @ETAGS@ # # Determine the target for which LLVM should generate code. # LLVMGCCARCH := @target@/3.4-llvm # Path to directory where object files should be stored during a build. # Set OBJ_ROOT to "." if you do not want to use a separate place for # object files. # #OBJ_ROOT = . OBJ_ROOT := . # Path to location for LLVM front-end this should only be specified here if you # want to override the value set in Makefile.$(uname) # LLVMGCCDIR := @LLVMGCCDIR@ # When this setting is set to true, programs in the llvm/test/Programs hierarchy # are not recompiled from source code. Instead, the bytecode for the file is # pulled from the BYTECODE_REPOSITORY directory. This can be useful when disk # space is limited or when you just don't want to spend time running the C # frontend. # #USE_PRECOMPILED_BYTECODE := 1 @UPB@ # This path specifies the cannonical location of bytecode files for compiled # versions of the test/Programs/* programs. This is used as the bytecode source # when USE_PRECOMPILED_BYTECODE is specified or when source code is not # available for the program (such as SPEC). # BYTECODE_REPOSITORY := @BCR@ # Path to location for purify, this is only needed if you build with # ENABLE_PURIFY=1 # PURIFY = @PURIFY@ # # SPEC benchmarks: # Set the USE_SPEC variable to enable the use of the SPEC benchmarks. # You must provide the SPEC benchmarks on your own. # @USE_SPEC@ # # Path to the SPEC benchmarks. If you have the SPEC benchmarks, place the # path here. # #SPEC_ROOT := /home/vadve/shared/benchmarks/speccpu2000/benchspec SPEC_ROOT := @SPEC_ROOT@ # # Path to the PAPI code. This is used by the reoptimizer only. # #PAPIDIR := /home/vadve/shared/papi-2.3.4.1 PAPIDIR := @PAPIDIR@ # These are options that can either be enabled here, or can be enabled on the # make command line (ie, make ENABLE_PROFILING=1) # # When ENABLE_OPTIMIZED is enabled, Release builds of all of the LLVM code are # turned on, and Debug builds are turned off. # #ENABLE_OPTIMIZED = 1 @ENABLE_OPTIMIZED@ # When ENABLE_PROFILING is enabled, the llvm source base is built with profile # information to allow gprof to be used to get execution frequencies. # #ENABLE_PROFILING = 1 # # This option tells the Makefiles to produce verbose output. # It essentially prints the commands that make is executing # #VERBOSE = 1 # When ENABLE_PURIFY is set to 1, the LLVM tools are linked with purify (which # must be locally installed) to allow for some automated memory error debugging. # #ENABLE_PURIFY = 1 @ENABLE_PURIFY@ # # Enable JIT for this platform # @JIT@ # # Disable LLC diffs for testing. # @DISABLE_LLC_DIFFS@ ########################################################################### # Directory Configuration # This section of the Makefile determines what is where. To be # specific, there are several locations that need to be defined: # # o LLVM_SRC_ROOT : The root directory of the LLVM source code. # o LLVM_OBJ_ROOT : The root directory containing the built LLVM code. # # o BUILD_SRC_DIR : The directory containing the code to build. # o BUILD_SRC_ROOT : The root directory of the code to build. # # o BUILD_OBJ_DIR : The directory in which compiled code will be placed. # o BUILD_OBJ_ROOT : The root directory in which compiled code is placed. # ########################################################################### # # Set the object build directory. By default, it is the current directory. # ifndef BUILD_OBJ_DIR BUILD_OBJ_DIR := $(subst //,/,$(shell $(RPWD))) endif # # Set the root of the object directory. # ifndef BUILD_OBJ_ROOT BUILD_OBJ_ROOT := $(subst //,/,$(shell cd $(BUILD_OBJ_DIR)/$(LEVEL); $(RPWD))) endif # # Set the source build directory. That is almost always the current directory. # ifndef BUILD_SRC_DIR BUILD_SRC_DIR := $(subst //,/,@abs_top_srcdir@/$(patsubst $(BUILD_OBJ_ROOT)%,%,$(BUILD_OBJ_DIR))) endif # # Set the source root directory. # ifndef BUILD_SRC_ROOT BUILD_SRC_ROOT := $(subst //,/,@abs_top_srcdir@) endif # # Set the LLVM object directory. # ifndef LLVM_OBJ_ROOT ifdef LLVM_SRC_ROOT LLVM_OBJ_ROOT := $(shell cd $(LLVM_SRC_ROOT); $(RPWD)) else LLVM_OBJ_ROOT := $(BUILD_OBJ_ROOT) endif endif # # Set the LLVM source directory. # It is typically the root directory of what we're compiling now. # ifndef LLVM_SRC_ROOT LLVM_SRC_ROOT := $(BUILD_SRC_ROOT) endif