1 #===-- Makefile.config - Local configuration for LLVM ------*- Makefile -*--===#
3 # The LLVM Compiler Infrastructure
5 # This file was developed by the LLVM research group and is distributed under
6 # the University of Illinois Open Source License. See LICENSE.TXT for details.
8 #===------------------------------------------------------------------------===#
10 # This file is included by Makefile.common. It defines paths and other
11 # values specific to a particular installation of LLVM.
13 #===------------------------------------------------------------------------===#
15 # Target operating system for which LLVM will be compiled.
18 # Target hardware architecture
21 # Endian-ness of the target
24 # Path to the C++ compiler to use. This is an optional setting, which defaults
25 # to whatever your gmake defaults to.
28 # Path to the CC binary, which use used by testcases for native builds.
31 # Path to the Python interpreter
37 # Libraries needed by tools
40 # Path to the library archiver program.
43 # The pathnames of the Flex and Bison programs, respectively.
48 # Paths to miscellaneous programs.
53 MKDIR = @abs_top_srcdir@/autoconf/mkinstalldirs
59 ETAGSFLAGS = @ETAGSFLAGS@
61 # Determine the target for which LLVM should generate code.
62 LLVMGCCARCH := @target@/3.4-llvm
64 # Full pathnames of LLVM C/C++ front-end 'cc1' and 'cc1plus' binaries:
66 LCC1XX = @LLVMCC1PLUS@
68 # Path to directory where object files should be stored during a build.
69 # Set OBJ_ROOT to "." if you do not want to use a separate place for
73 # Path to location for LLVM C/C++ front-end. You can modify this if you
74 # want to override the value set by configure.
75 LLVMGCCDIR := @LLVMGCCDIR@
77 # When this variable is set to 1, programs in the llvm/test/Programs hierarchy
78 # are not recompiled from source code. Instead, the bytecode for the file is
79 # pulled from the BYTECODE_REPOSITORY directory. This can be useful when disk
80 # space is limited or when you just don't want to spend time running the C
82 #USE_PRECOMPILED_BYTECODE := 1
85 # This path specifies the cannonical location of bytecode files for compiled
86 # versions of the test/Programs/* programs. This is used as the bytecode source
87 # when USE_PRECOMPILED_BYTECODE is specified or when source code is not
88 # available for the program (such as SPEC).
89 BYTECODE_REPOSITORY := @BCR@
92 # If these are set then run the SPEC benchmarks.
93 # You must provide the SPEC benchmarks on your own.
97 # Path to the SPEC benchmarks.
98 SPEC2000_ROOT := @SPEC2000_ROOT@
99 SPEC95_ROOT := @SPEC95_ROOT@
101 # Path to the Povray source code.
103 POVRAY_ROOT := @POVRAY_ROOT@
105 # Path to the PAPI code. This is used by the reoptimizer only.
106 #PAPIDIR := /home/vadve/shared/papi-2.3.4.1
109 # These are options that can either be enabled here, or can be enabled on the
110 # make command line (ie, make ENABLE_PROFILING=1):
112 # When ENABLE_OPTIMIZED is enabled, Release builds of all of the LLVM code are
113 # turned on, and Debug builds are turned off.
114 #ENABLE_OPTIMIZED = 1
117 # When ENABLE_PROFILING is enabled, the llvm source base is built with profile
118 # information to allow gprof to be used to get execution frequencies.
119 #ENABLE_PROFILING = 1
121 # This option tells the Makefiles to produce verbose output.
122 # It essentially prints the commands that make is executing
125 # Enable JIT for this platform
128 # Disable LLC diffs for testing.
131 # Shared library extension for this platform.
132 SHLIBEXT = @SHLIBEXT@
134 # Executable file extension for this platform.
137 ###########################################################################
138 # Directory Configuration
139 # This section of the Makefile determines what is where. To be
140 # specific, there are several locations that need to be defined:
142 # o LLVM_SRC_ROOT : The root directory of the LLVM source code.
143 # o LLVM_OBJ_ROOT : The root directory containing the built LLVM code.
145 # o BUILD_SRC_DIR : The directory containing the code to build.
146 # o BUILD_SRC_ROOT : The root directory of the code to build.
148 # o BUILD_OBJ_DIR : The directory in which compiled code will be placed.
149 # o BUILD_OBJ_ROOT : The root directory in which compiled code is placed.
151 ###########################################################################
153 # Set the object build directory. By default, it is the current directory.
155 BUILD_OBJ_DIR := $(subst //,/,$(shell $(RPWD)))
158 # Set the root of the object directory.
159 ifndef BUILD_OBJ_ROOT
160 BUILD_OBJ_ROOT := $(subst //,/,$(shell cd $(BUILD_OBJ_DIR)/$(LEVEL); $(RPWD)))
163 # Set the source build directory. That is almost always the current directory.
165 BUILD_SRC_DIR := $(subst //,/,@abs_top_srcdir@/$(patsubst $(BUILD_OBJ_ROOT)%,%,$(BUILD_OBJ_DIR)))
168 # Set the source root directory.
169 ifndef BUILD_SRC_ROOT
170 BUILD_SRC_ROOT := $(subst //,/,@abs_top_srcdir@)
173 # Set the LLVM object directory.
176 LLVM_OBJ_ROOT := $(shell cd $(LLVM_SRC_ROOT); $(RPWD))
178 LLVM_OBJ_ROOT := $(BUILD_OBJ_ROOT)
182 # Set the LLVM source directory.
183 # It is typically the root directory of what we're compiling now.
185 LLVM_SRC_ROOT := $(BUILD_SRC_ROOT)
188 # Set SourceDir for backwards compatbility.
190 SourceDir=$(BUILD_SRC_DIR)
193 # Installation directories, as provided by the configure script.
194 exec_prefix = @exec_prefix@
196 program_transform_name = @program_transform_name@
199 libexecdir = @libexecdir@
201 sysconfdir = @sysconfdir@
202 sharedstatedir = @sharedstatedir@
203 localstatedir = @localstatedir@
205 bytecode_libdir = $(LLVMGCCDIR)/bytecode-libs
206 includedir = @includedir@
209 INSTALL_PROGRAM = @INSTALL_PROGRAM@
210 INSTALL_SCRIPT = @INSTALL_SCRIPT@
211 INSTALL_DATA = @INSTALL_DATA@