Added the EXEEXT variable so that Makefiles can figure out what extension
[oota-llvm.git] / Makefile.config.in
1 #===-- Makefile.config - Local configuration for LLVM ------*- Makefile -*--===#
2 #
3 #                     The LLVM Compiler Infrastructure
4 #
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.
7
8 #===------------------------------------------------------------------------===#
9 #
10 # This file is included by Makefile.common.  It defines paths and other
11 # values specific to a particular installation of LLVM.
12 #
13 #===------------------------------------------------------------------------===#
14
15 # Target operating system for which LLVM will be compiled.
16 OS=@OS@
17
18 # Target hardware architecture
19 ARCH=@ARCH@
20
21 # Endian-ness of the target
22 ENDIAN=@ENDIAN@
23
24 # Path to the C++ compiler to use.  This is an optional setting, which defaults
25 # to whatever your gmake defaults to.
26 #
27 # Under Linux, for some reason the compiler driver wants to search the PATH to
28 # find the system assembler, which breaks if the LLVM assembler is in our path.
29 # Hack it to use the assembler in /usr/bin directly.
30 CXX = @CXX@
31
32 # We have the same problem with the CC binary, which use used by testcases for
33 # native builds.
34 CC := @CC@
35
36 # Linker flags.
37 LDFLAGS+=@LDFLAGS@
38
39 # Libraries needed by tools
40 TOOLLINKOPTS=@LIBS@
41
42 # Path to the library archiver program.
43 AR_PATH = @AR@
44
45 # The pathnames of the Flex and Bison programs, respectively.
46 YACC     = @YACC@
47 BISON    = @BISON@
48 FLEX     = @LEX@
49
50 # Paths to miscellaneous programs.
51 RPWD    = pwd
52 SED     = sed
53 RM      = rm
54 ECHO    = echo
55 MKDIR   = @abs_top_srcdir@/autoconf/mkinstalldirs
56 DATE    = date
57 MV      = mv
58 INSTALL = @INSTALL@
59 DOT     = @DOT@
60 ETAGS   = @ETAGS@
61 ETAGSFLAGS = @ETAGSFLAGS@
62
63 # Determine the target for which LLVM should generate code.
64 LLVMGCCARCH := @target@/3.4-llvm
65
66 # Full pathnames of LLVM C/C++ front-end 'cc1' and 'cc1plus' binaries:
67 LCC1 = @LLVMCC1@
68 LCC1XX = @LLVMCC1PLUS@
69
70 # Path to directory where object files should be stored during a build.
71 # Set OBJ_ROOT to "." if you do not want to use a separate place for
72 # object files.
73 OBJ_ROOT := .
74
75 # Path to location for LLVM C/C++ front-end. You can modify this if you
76 # want to override the value set by configure.
77 LLVMGCCDIR := @LLVMGCCDIR@
78
79 # When this variable is set to 1, programs in the llvm/test/Programs hierarchy
80 # are not recompiled from source code.  Instead, the bytecode for the file is
81 # pulled from the BYTECODE_REPOSITORY directory.  This can be useful when disk
82 # space is limited or when you just don't want to spend time running the C
83 # frontend.
84 #USE_PRECOMPILED_BYTECODE := 1
85 @UPB@
86
87 # This path specifies the cannonical location of bytecode files for compiled
88 # versions of the test/Programs/* programs.  This is used as the bytecode source
89 # when USE_PRECOMPILED_BYTECODE is specified or when source code is not
90 # available for the program (such as SPEC).
91 BYTECODE_REPOSITORY := @BCR@
92
93 # SPEC benchmarks:
94 #       If these are set then run the SPEC benchmarks.
95 #       You must provide the SPEC benchmarks on your own.
96 @USE_SPEC2000@
97 @USE_SPEC95@
98
99 # Path to the SPEC benchmarks.
100 SPEC2000_ROOT := @SPEC2000_ROOT@
101 SPEC95_ROOT := @SPEC95_ROOT@
102
103 # Path to the Povray source code.
104 @USE_POVRAY@
105 POVRAY_ROOT := @POVRAY_ROOT@
106
107 # Path to the PAPI code.  This is used by the reoptimizer only.
108 #PAPIDIR := /home/vadve/shared/papi-2.3.4.1
109 PAPIDIR := @PAPIDIR@
110
111 # These are options that can either be enabled here, or can be enabled on the
112 # make command line (ie, make ENABLE_PROFILING=1):
113
114 # When ENABLE_OPTIMIZED is enabled, Release builds of all of the LLVM code are
115 # turned on, and Debug builds are turned off.
116 #ENABLE_OPTIMIZED = 1
117 @ENABLE_OPTIMIZED@
118
119 # When ENABLE_PROFILING is enabled, the llvm source base is built with profile
120 # information to allow gprof to be used to get execution frequencies.
121 #ENABLE_PROFILING = 1
122
123 # This option tells the Makefiles to produce verbose output.
124 # It essentially prints the commands that make is executing
125 #VERBOSE = 1
126
127 # Enable JIT for this platform
128 @JIT@
129
130 # Disable LLC diffs for testing.
131 @DISABLE_LLC_DIFFS@
132
133 # Shared library extension for this platform.
134 SHLIBEXT = @SHLIBEXT@
135
136 # Executable file extension for this platform.
137 EXEEXT = @EXEEXT@
138
139 ###########################################################################
140 # Directory Configuration
141 #       This section of the Makefile determines what is where.  To be
142 #       specific, there are several locations that need to be defined:
143 #
144 #       o LLVM_SRC_ROOT  : The root directory of the LLVM source code.
145 #       o LLVM_OBJ_ROOT  : The root directory containing the built LLVM code.
146 #
147 #       o BUILD_SRC_DIR  : The directory containing the code to build.
148 #       o BUILD_SRC_ROOT : The root directory of the code to build.
149 #
150 #       o BUILD_OBJ_DIR  : The directory in which compiled code will be placed.
151 #       o BUILD_OBJ_ROOT : The root directory in which compiled code is placed.
152 #
153 ###########################################################################
154
155 # Set the object build directory.  By default, it is the current directory.
156 ifndef BUILD_OBJ_DIR
157 BUILD_OBJ_DIR := $(subst //,/,$(shell $(RPWD)))
158 endif
159
160 # Set the root of the object directory.
161 ifndef BUILD_OBJ_ROOT
162 BUILD_OBJ_ROOT := $(subst //,/,$(shell cd $(BUILD_OBJ_DIR)/$(LEVEL); $(RPWD)))
163 endif
164
165 # Set the source build directory.  That is almost always the current directory.
166 ifndef BUILD_SRC_DIR
167 BUILD_SRC_DIR := $(subst //,/,@abs_top_srcdir@/$(patsubst $(BUILD_OBJ_ROOT)%,%,$(BUILD_OBJ_DIR)))
168 endif
169
170 # Set the source root directory.
171 ifndef BUILD_SRC_ROOT
172 BUILD_SRC_ROOT := $(subst //,/,@abs_top_srcdir@)
173 endif
174
175 # Set the LLVM object directory.
176 ifndef LLVM_OBJ_ROOT
177 ifdef LLVM_SRC_ROOT
178 LLVM_OBJ_ROOT := $(shell cd $(LLVM_SRC_ROOT); $(RPWD))
179 else
180 LLVM_OBJ_ROOT := $(BUILD_OBJ_ROOT)
181 endif
182 endif
183
184 # Set the LLVM source directory.
185 # It is typically the root directory of what we're compiling now.
186 ifndef LLVM_SRC_ROOT
187 LLVM_SRC_ROOT := $(BUILD_SRC_ROOT)
188 endif
189
190 # Set SourceDir for backwards compatbility.
191 ifndef SourceDir
192 SourceDir=$(BUILD_SRC_DIR)
193 endif
194
195 # Installation directories, as provided by the configure script.
196 exec_prefix = @exec_prefix@
197 prefix = @prefix@
198 program_transform_name = @program_transform_name@
199 bindir = @bindir@
200 sbindir = @sbindir@
201 libexecdir = @libexecdir@
202 datadir = @datadir@
203 sysconfdir = @sysconfdir@
204 sharedstatedir = @sharedstatedir@ 
205 localstatedir = @localstatedir@
206 libdir = @libdir@
207 bytecode_libdir = $(LLVMGCCDIR)/bytecode-libs
208 includedir = @includedir@
209 infodir = @infodir@
210 mandir = @mandir@
211 INSTALL_PROGRAM = @INSTALL_PROGRAM@
212 INSTALL_SCRIPT = @INSTALL_SCRIPT@
213 INSTALL_DATA = @INSTALL_DATA@
214