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 # Define LLVM speific info and directories
16 PACKAGE_NAME := @PACKAGE_NAME@
17 PACKAGE_VERSION := @PACKAGE_VERSION@
18 LLVM_PREFIX := @LLVM_PREFIX@
19 LLVM_BINDIR := @LLVM_BINDIR@
20 LLVM_LIBDIR := @LLVM_LIBDIR@
21 LLVM_DATADIR := @LLVM_DATADIR@
22 LLVM_DOCSDIR := @LLVM_DOCSDIR@
23 LLVM_ETCDIR := @LLVM_ETCDIR@
24 LLVM_INCLUDEDIR := @LLVM_INCLUDEDIR@
25 LLVM_INFODIR := @LLVM_INFODIR@
26 LLVM_MANDIR := @LLVM_MANDIR@
27 LLVM_CONFIGTIME := @LLVM_CONFIGTIME@
28 LLVM_TARBALL_NAME := @PACKAGE_NAME@-@PACKAGE_VERSION@
30 # Target operating system for which LLVM will be compiled.
33 # Target hardware architecture
36 # Target triple (cpu-vendor-os) for which we should generate code
37 TARGET_TRIPLE=@target@
39 # Endian-ness of the target
42 # Path to the C++ compiler to use. This is an optional setting, which defaults
43 # to whatever your gmake defaults to.
46 # Path to the CC binary, which use used by testcases for native builds.
52 # Libraries needed by tools
55 # Path to the library archiver program.
58 # The pathnames of the programs we require to build
65 INSTALL_SH := $(BUILD_SRC_ROOT)/autoconf/install-sh
66 INSTALL_PROGRAM = @INSTALL_PROGRAM@
67 INSTALL_SCRIPT = @INSTALL_SCRIPT@
68 INSTALL_DATA = @INSTALL_DATA@
69 MKDIR := @abs_top_srcdir@/autoconf/mkinstalldirs
78 # Paths to miscellaneous programs we hope are present but might not be
83 ETAGSFLAGS := @ETAGSFLAGS@
86 POD2HTML := @POD2HTML@
93 # Paths to miscellaneous programs we assume are present
96 # Determine the target for which LLVM should generate code.
97 LLVMGCCARCH := @target@/3.4-llvm
99 # Full pathnames of LLVM C/C++ front-end 'cc1' and 'cc1plus' binaries:
101 LCC1XX = @LLVMCC1PLUS@
103 # Path to directory where object files should be stored during a build.
104 # Set OBJ_ROOT to "." if you do not want to use a separate place for
108 # Path to location for LLVM C/C++ front-end. You can modify this if you
109 # want to override the value set by configure.
110 LLVMGCCDIR := @LLVMGCCDIR@
112 # These are options that can either be enabled here, or can be enabled on the
113 # make command line (ie, make ENABLE_PROFILING=1):
115 # When ENABLE_OPTIMIZED is enabled, Release builds of all of the LLVM code are
116 # turned on, and Debug builds are turned off.
117 #ENABLE_OPTIMIZED = 1
120 # When ENABLE_PROFILING is enabled, the llvm source base is built with profile
121 # information to allow gprof to be used to get execution frequencies.
122 #ENABLE_PROFILING = 1
124 # When ENABLE_DOXYGEN is enabled, the doxygen documentation will be built
125 ENABLE_DOXYGEN = @ENABLE_DOXYGEN@
127 # This option tells the Makefiles to produce verbose output.
128 # It essentially prints the commands that make is executing
131 # Enable JIT for this platform
134 # Shared library extension for this platform.
135 SHLIBEXT = @SHLIBEXT@
137 # Executable file extension for this platform.
140 ###########################################################################
141 # Directory Configuration
142 # This section of the Makefile determines what is where. To be
143 # specific, there are several locations that need to be defined:
145 # o LLVM_SRC_ROOT : The root directory of the LLVM source code.
146 # o LLVM_OBJ_ROOT : The root directory containing the built LLVM code.
148 # o BUILD_SRC_DIR : The directory containing the code to build.
149 # o BUILD_SRC_ROOT : The root directory of the code to build.
151 # o BUILD_OBJ_DIR : The directory in which compiled code will be placed.
152 # o BUILD_OBJ_ROOT : The root directory in which compiled code is placed.
154 ###########################################################################
156 # Set the object build directory. By default, it is the current directory.
158 BUILD_OBJ_DIR := $(subst //,/,$(shell $(RPWD)))
161 # Set the root of the object directory.
162 ifndef BUILD_OBJ_ROOT
163 BUILD_OBJ_ROOT := $(subst //,/,$(shell cd $(BUILD_OBJ_DIR)/$(LEVEL); $(RPWD)))
166 # Set the source build directory. That is almost always the current directory.
168 BUILD_SRC_DIR := $(subst //,/,@abs_top_srcdir@/$(patsubst $(BUILD_OBJ_ROOT)%,%,$(BUILD_OBJ_DIR)))
171 # Set the source root directory.
172 ifndef BUILD_SRC_ROOT
173 BUILD_SRC_ROOT := $(subst //,/,@abs_top_srcdir@)
176 # Set the LLVM object directory.
179 LLVM_OBJ_ROOT := $(shell cd $(LLVM_SRC_ROOT); $(RPWD))
181 LLVM_OBJ_ROOT := $(BUILD_OBJ_ROOT)
185 # Set the LLVM source directory.
186 # It is typically the root directory of what we're compiling now.
188 LLVM_SRC_ROOT := $(BUILD_SRC_ROOT)
191 # Installation directories, as provided by the configure script.
192 abs_top_srcdir = @abs_top_srcdir@
193 abs_top_builddir = @abs_top_builddir@
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@