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 # Determine if we're on a unix type operating system
31 LLVM_ON_UNIX:=@LLVM_ON_UNIX@
32 LLVM_ON_WIN32:=@LLVM_ON_WIN32@
34 # Target operating system for which LLVM will be compiled.
37 # Target hardware architecture
40 # Target triple (cpu-vendor-os) for which we should generate code
41 TARGET_TRIPLE=@target@
43 # Endian-ness of the target
46 # Path to the C++ compiler to use. This is an optional setting, which defaults
47 # to whatever your gmake defaults to.
50 # Path to the CC binary, which use used by testcases for native builds.
56 # Libraries needed by tools
59 # Path to the library archiver program.
62 # The pathnames of the programs we require to build
71 INSTALL_SH := $(BUILD_SRC_ROOT)/autoconf/install-sh
72 INSTALL_PROGRAM = @INSTALL_PROGRAM@
73 INSTALL_SCRIPT = @INSTALL_SCRIPT@
74 INSTALL_DATA = @INSTALL_DATA@
75 MKDIR := @abs_top_srcdir@/autoconf/mkinstalldirs
84 # Paths to miscellaneous programs we hope are present but might not be
89 ETAGSFLAGS := @ETAGSFLAGS@
92 POD2HTML := @POD2HTML@
98 # Paths to miscellaneous programs we assume are present
102 # Path to location for LLVM C/C++ front-end. You can modify this if you
103 # want to override the value set by configure.
104 LLVMGCCDIR := @LLVMGCCDIR@
106 # Determine the target for which LLVM should generate code.
107 LLVMGCCARCH := @target@/3.4-llvm
109 # Full pathnames of LLVM C/C++ front-end 'cc1' and 'cc1plus' binaries:
113 LLVMCC1PLUS := @LLVMCC1PLUS@
115 # Path to directory where object files should be stored during a build.
116 # Set OBJ_ROOT to "." if you do not want to use a separate place for
120 # These are options that can either be enabled here, or can be enabled on the
121 # make command line (ie, make ENABLE_PROFILING=1):
123 # When ENABLE_OPTIMIZED is enabled, Release builds of all of the LLVM code are
124 # turned on, and Debug builds are turned off.
125 #ENABLE_OPTIMIZED = 1
128 # When ENABLE_PROFILING is enabled, the llvm source base is built with profile
129 # information to allow gprof to be used to get execution frequencies.
130 #ENABLE_PROFILING = 1
132 # When ENABLE_DOXYGEN is enabled, the doxygen documentation will be built
133 ENABLE_DOXYGEN = @ENABLE_DOXYGEN@
135 # This option tells the Makefiles to produce verbose output.
136 # It essentially prints the commands that make is executing
139 # Enable JIT for this platform
142 # Shared library extension for this platform.
143 SHLIBEXT = @SHLIBEXT@
145 # Executable file extension for this platform.
148 ###########################################################################
149 # Directory Configuration
150 # This section of the Makefile determines what is where. To be
151 # specific, there are several locations that need to be defined:
153 # o LLVM_SRC_ROOT : The root directory of the LLVM source code.
154 # o LLVM_OBJ_ROOT : The root directory containing the built LLVM code.
156 # o BUILD_SRC_DIR : The directory containing the code to build.
157 # o BUILD_SRC_ROOT : The root directory of the code to build.
159 # o BUILD_OBJ_DIR : The directory in which compiled code will be placed.
160 # o BUILD_OBJ_ROOT : The root directory in which compiled code is placed.
162 ###########################################################################
164 # Set the object build directory. By default, it is the current directory.
166 BUILD_OBJ_DIR := $(subst //,/,$(shell $(RPWD)))
169 # Set the root of the object directory.
170 ifndef BUILD_OBJ_ROOT
171 BUILD_OBJ_ROOT := $(subst //,/,$(shell cd $(BUILD_OBJ_DIR)/$(LEVEL); $(RPWD)))
174 # Set the source build directory. That is almost always the current directory.
176 BUILD_SRC_DIR := $(subst //,/,@abs_top_srcdir@/$(patsubst $(BUILD_OBJ_ROOT)%,%,$(BUILD_OBJ_DIR)))
179 # Set the source root directory.
180 ifndef BUILD_SRC_ROOT
181 BUILD_SRC_ROOT := $(subst //,/,@abs_top_srcdir@)
184 # Set the LLVM object directory.
187 LLVM_OBJ_ROOT := $(shell cd $(LLVM_SRC_ROOT); $(RPWD))
189 LLVM_OBJ_ROOT := $(BUILD_OBJ_ROOT)
193 # Set the LLVM source directory.
194 # It is typically the root directory of what we're compiling now.
196 LLVM_SRC_ROOT := $(BUILD_SRC_ROOT)
199 # Installation directories, as provided by the configure script.
200 abs_top_srcdir = @abs_top_srcdir@
201 abs_top_builddir = @abs_top_builddir@
202 exec_prefix = @exec_prefix@
204 program_transform_name = @program_transform_name@
207 libexecdir = @libexecdir@
209 sysconfdir = @sysconfdir@
210 sharedstatedir = @sharedstatedir@
211 localstatedir = @localstatedir@
213 includedir = @includedir@