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