16d5ab866fc1492c12b1f2531bbe7dcdb55ac9e15Misha Brukman#===-- Makefile.config - Local configuration for LLVM ------*- Makefile -*--===#
26d5ab866fc1492c12b1f2531bbe7dcdb55ac9e15Misha Brukman#
36d5ab866fc1492c12b1f2531bbe7dcdb55ac9e15Misha Brukman#                     The LLVM Compiler Infrastructure
46d5ab866fc1492c12b1f2531bbe7dcdb55ac9e15Misha Brukman#
557360d1f1cede3b26744d0ce3ade814fcc0f332dChris Lattner# This file is distributed under the University of Illinois Open Source
657360d1f1cede3b26744d0ce3ade814fcc0f332dChris Lattner# License. See LICENSE.TXT for details.
79b8f542e2746b28721b3ec603c3aaaa10ea708fcMisha Brukman#
86d5ab866fc1492c12b1f2531bbe7dcdb55ac9e15Misha Brukman#===------------------------------------------------------------------------===#
97a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell#
107a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell# This file is included by Makefile.common.  It defines paths and other
117a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell# values specific to a particular installation of LLVM.
12f1dd2004c07126944c9384d25e866215fd93c3bbBrian Gaeke#
136d5ab866fc1492c12b1f2531bbe7dcdb55ac9e15Misha Brukman#===------------------------------------------------------------------------===#
147a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell
15b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencer# Define LLVM specific info and directories based on the autoconf variables
167fe0e03fb068406b9a67930c278aff661ef271e8Dylan NoblesmithLLVMPackageName   := @PACKAGE_TARNAME@
17b2cb4861511692d8566b50fa34720eeb09ed617eReid SpencerLLVMVersion       := @PACKAGE_VERSION@
1836b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen HinesLLVM_VERSION_MAJOR := @LLVM_VERSION_MAJOR@
1936b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen HinesLLVM_VERSION_MINOR := @LLVM_VERSION_MINOR@
2036b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen HinesLLVM_VERSION_PATCH := @LLVM_VERSION_PATCH@
2136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen HinesLLVM_VERSION_SUFFIX := @LLVM_VERSION_SUFFIX@
22e1200219ec6f4d6ff7f54933ccad462c8dfdbb70Reid SpencerLLVM_CONFIGTIME   := @LLVM_CONFIGTIME@
23b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencer
24b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencer###########################################################################
25b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencer# Directory Configuration
26b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencer#	This section of the Makefile determines what is where.  To be
27b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencer#	specific, there are several locations that need to be defined:
28b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencer#
29b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencer#	o LLVM_SRC_ROOT  : The root directory of the LLVM source code.
30b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencer#	o LLVM_OBJ_ROOT  : The root directory containing the built LLVM code.
31b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencer#
32b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencer#	o PROJ_SRC_DIR  : The directory containing the code to build.
33b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencer#	o PROJ_SRC_ROOT : The root directory of the code to build.
34b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencer#
35b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencer#	o PROJ_OBJ_DIR  : The directory in which compiled code will be placed.
36b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencer#	o PROJ_OBJ_ROOT : The root directory in which compiled code is placed.
37b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencer#
38b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencer###########################################################################
39b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencer
40aea7fe4abd1f54edd3cbdadcbd8f0e2e99c5acf3Reid SpencerPWD := @BINPWD@
41b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencer# Set the project name to LLVM if its not defined
42b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencerifndef PROJECT_NAME
431b22fde3b225e4e465e6b53ca9ce03461223488fReid SpencerPROJECT_NAME := $(LLVMPackageName)
44b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencerendif
45b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencer
467cf8fc7a45373aab97ce58130087b8b5db064f54Chris Lattner# The macro below is expanded when 'realpath' is not built-in.
477cf8fc7a45373aab97ce58130087b8b5db064f54Chris Lattner# Built-in 'realpath' is available on GNU Make 3.81.
487cf8fc7a45373aab97ce58130087b8b5db064f54Chris Lattnerrealpath = $(shell cd $(1); $(PWD))
497cf8fc7a45373aab97ce58130087b8b5db064f54Chris Lattner
507cf8fc7a45373aab97ce58130087b8b5db064f54Chris LattnerPROJ_OBJ_DIR  := $(call realpath, .)
517cf8fc7a45373aab97ce58130087b8b5db064f54Chris LattnerPROJ_OBJ_ROOT := $(call realpath, $(PROJ_OBJ_DIR)/$(LEVEL))
52b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencer
53e5ab51d51f6e5cebf57db76c7f8527febc6a2b71NAKAMURA TakumiCLANG_SRC_ROOT  := @CLANG_SRC_ROOT@
54e5ab51d51f6e5cebf57db76c7f8527febc6a2b71NAKAMURA Takumi
557fe0e03fb068406b9a67930c278aff661ef271e8Dylan Noblesmithifeq ($(PROJECT_NAME),$(LLVMPackageName))
567cf8fc7a45373aab97ce58130087b8b5db064f54Chris LattnerLLVM_SRC_ROOT   := $(call realpath, @abs_top_srcdir@)
577cf8fc7a45373aab97ce58130087b8b5db064f54Chris LattnerLLVM_OBJ_ROOT   := $(call realpath, @abs_top_builddir@)
587cf8fc7a45373aab97ce58130087b8b5db064f54Chris LattnerPROJ_SRC_ROOT   := $(LLVM_SRC_ROOT)
59e5ab51d51f6e5cebf57db76c7f8527febc6a2b71NAKAMURA TakumiPROJ_SRC_DIR    := $(LLVM_SRC_ROOT)$(patsubst $(PROJ_OBJ_ROOT)%,%,$(PROJ_OBJ_DIR))
60e5ab51d51f6e5cebf57db76c7f8527febc6a2b71NAKAMURA Takumi
61e5ab51d51f6e5cebf57db76c7f8527febc6a2b71NAKAMURA Takumiifneq ($(CLANG_SRC_ROOT),)
62e5ab51d51f6e5cebf57db76c7f8527febc6a2b71NAKAMURA Takumi  CLANG_SRC_ROOT:= $(call realpath, $(CLANG_SRC_ROOT))
63e5ab51d51f6e5cebf57db76c7f8527febc6a2b71NAKAMURA Takumi  PROJ_SRC_DIR  := $(patsubst $(LLVM_SRC_ROOT)/tools/clang%,$(CLANG_SRC_ROOT)%,$(PROJ_SRC_DIR))
64e5ab51d51f6e5cebf57db76c7f8527febc6a2b71NAKAMURA Takumiendif
65e5ab51d51f6e5cebf57db76c7f8527febc6a2b71NAKAMURA Takumi
6632b169114e586e61a95f11043aa6032f11995fb7Reid Spencerprefix          := @prefix@
6732b169114e586e61a95f11043aa6032f11995fb7Reid SpencerPROJ_prefix     := $(prefix)
6892080529a05e223303a75d83008f804fd518aba7Jordan Roseprogram_prefix  := @program_prefix@
69b2cb4861511692d8566b50fa34720eeb09ed617eReid SpencerPROJ_VERSION    := $(LLVMVersion)
70b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencerelse
71b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencerifndef PROJ_SRC_ROOT
72b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencer$(error Projects must define PROJ_SRC_ROOT)
73b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencerendif
74b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencerifndef PROJ_OBJ_ROOT
75b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencer$(error Projects must define PROJ_OBJ_ROOT)
76b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencerendif
77b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencerifndef PROJ_INSTALL_ROOT
78b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencer$(error Projects must define PROJ_INSTALL_ROOT)
79b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencerendif
80b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencerifndef LLVM_SRC_ROOT
81b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencer$(error Projects must define LLVM_SRC_ROOT)
82b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencerendif
83b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencerifndef LLVM_OBJ_ROOT
84b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencer$(error Projects must define LLVM_OBJ_ROOT)
85b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencerendif
867cf8fc7a45373aab97ce58130087b8b5db064f54Chris LattnerPROJ_SRC_DIR := $(call realpath, $(PROJ_SRC_ROOT)/$(patsubst $(PROJ_OBJ_ROOT)%,%,$(PROJ_OBJ_DIR)))
8732b169114e586e61a95f11043aa6032f11995fb7Reid Spencerprefix          := $(PROJ_INSTALL_ROOT)
8832b169114e586e61a95f11043aa6032f11995fb7Reid SpencerPROJ_prefix     := $(prefix)
89b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencerifndef PROJ_VERSION
90b2cb4861511692d8566b50fa34720eeb09ed617eReid SpencerPROJ_VERSION := 1.0
91b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencerendif
92b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencerendif
93e1200219ec6f4d6ff7f54933ccad462c8dfdbb70Reid Spencer
94ae7e2a4bbbdfa82b4e2670fccb3a0aed812c3b0aBob WilsonINTERNAL_PREFIX := @INTERNAL_PREFIX@
95ae7e2a4bbbdfa82b4e2670fccb3a0aed812c3b0aBob Wilsonifneq ($(INTERNAL_PREFIX),)
96ae7e2a4bbbdfa82b4e2670fccb3a0aed812c3b0aBob WilsonPROJ_internal_prefix := $(INTERNAL_PREFIX)
97ae7e2a4bbbdfa82b4e2670fccb3a0aed812c3b0aBob Wilsonelse
98ae7e2a4bbbdfa82b4e2670fccb3a0aed812c3b0aBob WilsonPROJ_internal_prefix := $(prefix)
99ae7e2a4bbbdfa82b4e2670fccb3a0aed812c3b0aBob Wilsonendif
100ae7e2a4bbbdfa82b4e2670fccb3a0aed812c3b0aBob Wilson
101d4076cfc834da5255d2f7a15b6f9c7cd80132223Erick TryzelaarPROJ_bindir     := $(PROJ_prefix)/bin
102d4076cfc834da5255d2f7a15b6f9c7cd80132223Erick TryzelaarPROJ_libdir     := $(PROJ_prefix)/lib
103d4076cfc834da5255d2f7a15b6f9c7cd80132223Erick TryzelaarPROJ_datadir    := $(PROJ_prefix)/share
104d4076cfc834da5255d2f7a15b6f9c7cd80132223Erick TryzelaarPROJ_docsdir    := $(PROJ_prefix)/docs/llvm
105d4076cfc834da5255d2f7a15b6f9c7cd80132223Erick TryzelaarPROJ_etcdir     := $(PROJ_prefix)/etc/llvm
106d4076cfc834da5255d2f7a15b6f9c7cd80132223Erick TryzelaarPROJ_includedir := $(PROJ_prefix)/include
107d4076cfc834da5255d2f7a15b6f9c7cd80132223Erick TryzelaarPROJ_infodir    := $(PROJ_prefix)/info
108d4076cfc834da5255d2f7a15b6f9c7cd80132223Erick TryzelaarPROJ_mandir     := $(PROJ_prefix)/share/man
10932b169114e586e61a95f11043aa6032f11995fb7Reid Spencer
110bbf7a8af5a7781cf0f721770ab81333f22c0f464Reid Spencer# Determine if we're on a unix type operating system
111bbf7a8af5a7781cf0f721770ab81333f22c0f464Reid SpencerLLVM_ON_UNIX:=@LLVM_ON_UNIX@
112bbf7a8af5a7781cf0f721770ab81333f22c0f464Reid SpencerLLVM_ON_WIN32:=@LLVM_ON_WIN32@
113bbf7a8af5a7781cf0f721770ab81333f22c0f464Reid Spencer
114e55db741523b51f3f754b6dd62c5e0f52bb83b98Anton Korobeynikov# Host operating system for which LLVM will be run.
1157a73b80b9052136c8cd2234eb3433a07df7cf38eJohn CriswellOS=@OS@
116e55db741523b51f3f754b6dd62c5e0f52bb83b98Anton KorobeynikovHOST_OS=@HOST_OS@
117e55db741523b51f3f754b6dd62c5e0f52bb83b98Anton Korobeynikov# Target operating system for which LLVM will compile for.
118e55db741523b51f3f754b6dd62c5e0f52bb83b98Anton KorobeynikovTARGET_OS=@TARGET_OS@
1197a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell
120bb8cef51dfe7bb59109786a0ca46ad165c39aa38Danil Malyshev# Host hardware architecture
121bb8cef51dfe7bb59109786a0ca46ad165c39aa38Danil MalyshevHOST_ARCH=@HOST_ARCH@
1227659545ceef542dc9951673e1f9085ef2d045699John Criswell# Target hardware architecture
1237659545ceef542dc9951673e1f9085ef2d045699John CriswellARCH=@ARCH@
124a7de1d67b2c57153732c394172a64d157c80988eDaniel DunbarTARGET_NATIVE_ARCH := $(ARCH)
12536b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen HinesLLVM_NATIVE_ARCH := @LLVM_NATIVE_ARCH@
1267659545ceef542dc9951673e1f9085ef2d045699John Criswell
127e2cfe5d23225fa74febd5f170b919bba2c495308Reid Spencer# Indicates, whether we're cross-compiling LLVM or not
128e2cfe5d23225fa74febd5f170b919bba2c495308Reid SpencerLLVM_CROSS_COMPILING=@LLVM_CROSS_COMPILING@
129e2cfe5d23225fa74febd5f170b919bba2c495308Reid Spencer
130e2cfe5d23225fa74febd5f170b919bba2c495308Reid Spencer# Executable file extension for build platform (mainly for
131e2cfe5d23225fa74febd5f170b919bba2c495308Reid Spencer# tablegen call if we're cross-compiling).
132e2cfe5d23225fa74febd5f170b919bba2c495308Reid SpencerBUILD_EXEEXT=@BUILD_EXEEXT@
133e2cfe5d23225fa74febd5f170b919bba2c495308Reid Spencer
134673612ec72e0e246ca671a3977666424b5ed77ccJim Grosbach# Compilers for the build platflorm (mainly for tablegen
135673612ec72e0e246ca671a3977666424b5ed77ccJim Grosbach# call if we're cross-compiling).
136673612ec72e0e246ca671a3977666424b5ed77ccJim GrosbachBUILD_CC=@BUILD_CC@
137673612ec72e0e246ca671a3977666424b5ed77ccJim GrosbachBUILD_CXX=@BUILD_CXX@
138673612ec72e0e246ca671a3977666424b5ed77ccJim Grosbach
1395e869c353c01f168712ae33cb7de2e9ba5cdf658Shantonu Sen# Triple for configuring build tools when cross-compiling
1405e869c353c01f168712ae33cb7de2e9ba5cdf658Shantonu SenBUILD_TRIPLE=@build@
1415e869c353c01f168712ae33cb7de2e9ba5cdf658Shantonu Sen
142fbb662f840c2f76988ff9f3f152695632cfc71bePeter Collingbourne# Target triple (cpu-vendor-os) which LLVM is compiled for
143fbb662f840c2f76988ff9f3f152695632cfc71bePeter CollingbourneHOST_TRIPLE=@host@
144fbb662f840c2f76988ff9f3f152695632cfc71bePeter Collingbourne
14518224032d3b26cad39991fc569948f15cf5ed953Reid Spencer# Target triple (cpu-vendor-os) for which we should generate code
14618224032d3b26cad39991fc569948f15cf5ed953Reid SpencerTARGET_TRIPLE=@target@
14718224032d3b26cad39991fc569948f15cf5ed953Reid Spencer
148cf9be26e5d99c50b350aa8c5bf6ce6bc8322b213Evan Cheng# Extra options to compile LLVM with
149cf9be26e5d99c50b350aa8c5bf6ce6bc8322b213Evan ChengEXTRA_OPTIONS=@EXTRA_OPTIONS@
150cf9be26e5d99c50b350aa8c5bf6ce6bc8322b213Evan Cheng
151e2a91a76dffcf8cda97b835f0693f9dc6f26ba68Daniel Dunbar# Extra options to link LLVM with
152e2a91a76dffcf8cda97b835f0693f9dc6f26ba68Daniel DunbarEXTRA_LD_OPTIONS=@EXTRA_LD_OPTIONS@
153e2a91a76dffcf8cda97b835f0693f9dc6f26ba68Daniel Dunbar
1540021c31b60706f0a35f0858c112ebdc709f3d3e7John Criswell# Endian-ness of the target
1550021c31b60706f0a35f0858c112ebdc709f3d3e7John CriswellENDIAN=@ENDIAN@
1560021c31b60706f0a35f0858c112ebdc709f3d3e7John Criswell
1577a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell# Path to the C++ compiler to use.  This is an optional setting, which defaults
1587a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell# to whatever your gmake defaults to.
1597a73b80b9052136c8cd2234eb3433a07df7cf38eJohn CriswellCXX = @CXX@
1607a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell
161b5a2e40dd8f6b6550d4191f6d74edcb641d0153fMisha Brukman# Path to the CC binary, which use used by testcases for native builds.
1627a73b80b9052136c8cd2234eb3433a07df7cf38eJohn CriswellCC := @CC@
1637a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell
1646c440fcea52e27b3befcf2ad5f7dcc58a15a2e58Patrik Hagglund# C/C++ preprocessor flags.
1656c440fcea52e27b3befcf2ad5f7dcc58a15a2e58Patrik HagglundCPPFLAGS += @CPPFLAGS@
1666c440fcea52e27b3befcf2ad5f7dcc58a15a2e58Patrik Hagglund
1676c440fcea52e27b3befcf2ad5f7dcc58a15a2e58Patrik Hagglund# C compiler flags.
1686c440fcea52e27b3befcf2ad5f7dcc58a15a2e58Patrik HagglundCFLAGS += @CFLAGS@
1696c440fcea52e27b3befcf2ad5f7dcc58a15a2e58Patrik Hagglund
1706c440fcea52e27b3befcf2ad5f7dcc58a15a2e58Patrik Hagglund# C++ compiler flags.
1716c440fcea52e27b3befcf2ad5f7dcc58a15a2e58Patrik HagglundCXXFLAGS += @CXXFLAGS@
1726c440fcea52e27b3befcf2ad5f7dcc58a15a2e58Patrik Hagglund
173f1dd2004c07126944c9384d25e866215fd93c3bbBrian Gaeke# Linker flags.
1746c440fcea52e27b3befcf2ad5f7dcc58a15a2e58Patrik HagglundLDFLAGS += @LDFLAGS@
17549bf862719c5ac24ddc9eafa35e51dd68904b1beJohn Criswell
176f1dd2004c07126944c9384d25e866215fd93c3bbBrian Gaeke# Path to the library archiver program.
1777a73b80b9052136c8cd2234eb3433a07df7cf38eJohn CriswellAR_PATH = @AR@
178e55db741523b51f3f754b6dd62c5e0f52bb83b98Anton KorobeynikovAR = @AR@
1797a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell
1801bc686433bd5dea7ef4b8b5d97cd9461f041b56fReid Spencer# Path to the nm program
1811bc686433bd5dea7ef4b8b5d97cd9461f041b56fReid SpencerNM_PATH = @NM@
1821bc686433bd5dea7ef4b8b5d97cd9461f041b56fReid Spencer
183151f8ba3645defc371eb4b68427384e411305734Reid Spencer# The pathnames of the programs we require to build
1848a2d4718257aa1a97dad9f9f8cce719b539c694bReid SpencerCMP        := @CMP@
1858a2d4718257aa1a97dad9f9f8cce719b539c694bReid SpencerCP         := @CP@
186e1200219ec6f4d6ff7f54933ccad462c8dfdbb70Reid SpencerDATE       := @DATE@
187e1200219ec6f4d6ff7f54933ccad462c8dfdbb70Reid SpencerFIND       := @FIND@
188e1200219ec6f4d6ff7f54933ccad462c8dfdbb70Reid SpencerGREP       := @GREP@
189e1200219ec6f4d6ff7f54933ccad462c8dfdbb70Reid SpencerINSTALL    := @INSTALL@
190b2cb4861511692d8566b50fa34720eeb09ed617eReid SpencerMKDIR      := $(LLVM_SRC_ROOT)/autoconf/mkinstalldirs
191e1200219ec6f4d6ff7f54933ccad462c8dfdbb70Reid SpencerMV         := @MV@
192e1200219ec6f4d6ff7f54933ccad462c8dfdbb70Reid SpencerRANLIB     := @RANLIB@
193e1200219ec6f4d6ff7f54933ccad462c8dfdbb70Reid SpencerRM         := @RM@
194e1200219ec6f4d6ff7f54933ccad462c8dfdbb70Reid SpencerSED        := @SED@
195e1200219ec6f4d6ff7f54933ccad462c8dfdbb70Reid SpencerTAR        := @TAR@
1963ef8b0adb4c64b5a8611472850b4991afaf289f1Saleem AbdulrasoolPYTHON     := @PYTHON@
197e1200219ec6f4d6ff7f54933ccad462c8dfdbb70Reid Spencer
198e1200219ec6f4d6ff7f54933ccad462c8dfdbb70Reid Spencer# Paths to miscellaneous programs we hope are present but might not be
199e1200219ec6f4d6ff7f54933ccad462c8dfdbb70Reid SpencerBZIP2      := @BZIP2@
20068cb31901c590cabceee6e6356d62c84142114cbmike-mCAT        := @CAT@
201e1200219ec6f4d6ff7f54933ccad462c8dfdbb70Reid SpencerDOT        := @DOT@
202e1200219ec6f4d6ff7f54933ccad462c8dfdbb70Reid SpencerDOXYGEN    := @DOXYGEN@
203e1200219ec6f4d6ff7f54933ccad462c8dfdbb70Reid SpencerGROFF      := @GROFF@
204031d30781acaecb58f64a7b480818a219594e99fEric ChristopherGZIPBIN    := @GZIPBIN@
205279219a3d5faeb18a9f0c91c1fbbb8404c5d0225Gordon HenriksenOCAMLC     := @OCAMLC@
206279219a3d5faeb18a9f0c91c1fbbb8404c5d0225Gordon HenriksenOCAMLOPT   := @OCAMLOPT@
207279219a3d5faeb18a9f0c91c1fbbb8404c5d0225Gordon HenriksenOCAMLDEP   := @OCAMLDEP@
208279219a3d5faeb18a9f0c91c1fbbb8404c5d0225Gordon HenriksenOCAMLDOC   := @OCAMLDOC@
2093a67f5050307789b8ff0db80f19b2b4c8a95cf81Duncan SandsGAS        := @GAS@
210e1200219ec6f4d6ff7f54933ccad462c8dfdbb70Reid SpencerPOD2HTML   := @POD2HTML@
211e1200219ec6f4d6ff7f54933ccad462c8dfdbb70Reid SpencerPOD2MAN    := @POD2MAN@
21268cb31901c590cabceee6e6356d62c84142114cbmike-mPDFROFF    := @PDFROFF@
213e1200219ec6f4d6ff7f54933ccad462c8dfdbb70Reid SpencerZIP        := @ZIP@
2147a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell
21536b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen HinesHAVE_LIBZ  := @HAVE_LIBZ@
21636b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen HinesHAVE_DLOPEN := @HAVE_DLOPEN@
2171000b73397bd72b71ede338caf5b6379072d94a4Reid SpencerHAVE_PTHREAD := @HAVE_PTHREAD@
21836b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen HinesHAVE_TERMINFO := @HAVE_TERMINFO@
219b195d9d365e5f960c93ddfdf10638d5d147d9f6fReid Spencer
2205a870448d12a786098e9ec5018cd2bb3f5f673fdReid SpencerLIBS       := @LIBS@
2215a870448d12a786098e9ec5018cd2bb3f5f673fdReid Spencer
22236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines# Targets that are possible to build
22336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen HinesALL_TARGETS := @ALL_TARGETS@
22436b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines
2256530e9d8e6dfc8f16fe509701967e4ade99fae6cGordon Henriksen# Targets that we should build
2266530e9d8e6dfc8f16fe509701967e4ade99fae6cGordon HenriksenTARGETS_TO_BUILD=@TARGETS_TO_BUILD@
2276530e9d8e6dfc8f16fe509701967e4ade99fae6cGordon Henriksen
22836b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines# Targets supporting JIT
22936b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen HinesTARGETS_WITH_JIT := @TARGETS_WITH_JIT@
23036b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines
2317a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell# Path to directory where object files should be stored during a build.
2327a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell# Set OBJ_ROOT to "." if you do not want to use a separate place for
2337a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell# object files.
2347f33695eac684bac5e925cf2039c8f9b001ceb7fJohn CriswellOBJ_ROOT := .
2357a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell
2361dace48f538d44156cdb71834e718b9ad93d2711Nick Lewycky# What to pass as rpath flag to g++
2371dace48f538d44156cdb71834e718b9ad93d2711Nick LewyckyRPATH := @RPATH@
2381dace48f538d44156cdb71834e718b9ad93d2711Nick Lewycky
23918f99072a61429cc6aec9bd3dc611867819d962bNick Lewycky# What to pass as -rdynamic flag to g++
24018f99072a61429cc6aec9bd3dc611867819d962bNick LewyckyRDYNAMIC := @RDYNAMIC@
24118f99072a61429cc6aec9bd3dc611867819d962bNick Lewycky
2427a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell# These are options that can either be enabled here, or can be enabled on the
243f1dd2004c07126944c9384d25e866215fd93c3bbBrian Gaeke# make command line (ie, make ENABLE_PROFILING=1):
2447a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell
245bee515f66baf4f7858d30c2fe6657d35f177dfcdEric Christopher# When ENABLE_LIBCPP is enabled, LLVM uses libc++ by default to build.
246bee515f66baf4f7858d30c2fe6657d35f177dfcdEric Christopher#ENABLE_LIBCPP = 0
247bee515f66baf4f7858d30c2fe6657d35f177dfcdEric ChristopherENABLE_LIBCPP = @ENABLE_LIBCPP@
248bee515f66baf4f7858d30c2fe6657d35f177dfcdEric Christopher
24936b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines# When ENABLE_CXX1Y is enabled, LLVM uses c++1y mode by default to build.
25036b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines# Otherwise it uses the baseline c++11.
25136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen HinesENABLE_CXX1Y = @ENABLE_CXX1Y@
25282120023861a85427f436dcb6f21a741e32a7896Eric Christopher
2531baa38147a62cb9e905c8229098be2e3a7627032Eric Christopher# When ENABLE_SPLIT_DWARF is enabled, LLVM uses -gfission to build in debug mode.
2541baa38147a62cb9e905c8229098be2e3a7627032Eric ChristopherENABLE_SPLIT_DWARF = @ENABLE_SPLIT_DWARF@
2551baa38147a62cb9e905c8229098be2e3a7627032Eric Christopher
25636b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines# When enabled, clang will have plugin support.
25736b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen HinesCLANG_PLUGIN_SUPPORT = @CLANG_PLUGIN_SUPPORT@
25836b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines
259d14baf450b17d47c80950b59e3dd8844b79821f7Roman Divacky# When ENABLE_CLANG_ARCMT is enabled, clang will have ARCMigrationTool.
260d14baf450b17d47c80950b59e3dd8844b79821f7Roman DivackyENABLE_CLANG_ARCMT = @ENABLE_CLANG_ARCMT@
261d14baf450b17d47c80950b59e3dd8844b79821f7Roman Divacky
262d14baf450b17d47c80950b59e3dd8844b79821f7Roman Divacky# When ENABLE_CLANG_REWRITER is enabled, clang will have Rewriter.
263d14baf450b17d47c80950b59e3dd8844b79821f7Roman DivackyENABLE_CLANG_REWRITER = @ENABLE_CLANG_REWRITER@
264d14baf450b17d47c80950b59e3dd8844b79821f7Roman Divacky
265d14baf450b17d47c80950b59e3dd8844b79821f7Roman Divacky# When ENABLE_CLANG_STATIC_ANALYZER is enabled, clang will have StaticAnalyzer.
266d14baf450b17d47c80950b59e3dd8844b79821f7Roman DivackyENABLE_CLANG_STATIC_ANALYZER = @ENABLE_CLANG_STATIC_ANALYZER@
267d14baf450b17d47c80950b59e3dd8844b79821f7Roman Divacky
26809a887345f283f3ffb46a36e78ca761026ab0cf2Eric Christopher# When ENABLE_WERROR is enabled, we'll pass -Werror on the command line
26909a887345f283f3ffb46a36e78ca761026ab0cf2Eric ChristopherENABLE_WERROR = @ENABLE_WERROR@
27009a887345f283f3ffb46a36e78ca761026ab0cf2Eric Christopher
27136b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines# When ENABLE_TERMINFO is enabled, we use terminfo.
27236b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen HinesENABLE_TERMINFO = @ENABLE_TERMINFO@
27336b56886974eae4f9c5ebc96befd3e7bfe5de338Stephen Hines
274c4329cf5059a7caedc45d77e6ee80e92b8123394Reid Spencer# When ENABLE_OPTIMIZED is enabled, LLVM code is optimized and output is put
2759b8f542e2746b28721b3ec603c3aaaa10ea708fcMisha Brukman# into the "Release" directories. Otherwise, LLVM code is not optimized and
276c4329cf5059a7caedc45d77e6ee80e92b8123394Reid Spencer# output is put in the "Debug" directories.
2777a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell#ENABLE_OPTIMIZED = 1
2787a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell@ENABLE_OPTIMIZED@
2797a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell
280dbefd0c15be7daa3d74a0a9a04a068ea76c641f8David Greene# When ENABLE_PROFILING is enabled, profile instrumentation is done
281dbefd0c15be7daa3d74a0a9a04a068ea76c641f8David Greene# and output is put into the "<Flavor>+Profile" directories, where
2826418cb3f4b558ff917509b661e29b5a556f0e11dGabor Greif# <Flavor> is either Debug or Release depending on how other build
2836418cb3f4b558ff917509b661e29b5a556f0e11dGabor Greif# flags are set. Otherwise, output is put in the <Flavor>
284dbefd0c15be7daa3d74a0a9a04a068ea76c641f8David Greene# directories.
285dbefd0c15be7daa3d74a0a9a04a068ea76c641f8David Greene#ENABLE_PROFILING = 1
286dbefd0c15be7daa3d74a0a9a04a068ea76c641f8David Greene@ENABLE_PROFILING@
287dbefd0c15be7daa3d74a0a9a04a068ea76c641f8David Greene
288895f32c212032e546c743bf0a815044981521160Mikhail Glushenkov# When DISABLE_ASSERTIONS is enabled, builds of all of the LLVM code will
2891a5a551919198a7e508624c6f555119815e4c66eReid Spencer# exclude assertion checks, otherwise they are included.
290c28ccd86b574cdcde54fa68f2f28e18f4b49498eReid Spencer#DISABLE_ASSERTIONS = 1
291c28ccd86b574cdcde54fa68f2f28e18f4b49498eReid Spencer@DISABLE_ASSERTIONS@
292c4329cf5059a7caedc45d77e6ee80e92b8123394Reid Spencer
293a696d24ad275608540aba1e5c668bbd52e04317eDavid Greene# When ENABLE_EXPENSIVE_CHECKS is enabled, builds of all of the LLVM
294a696d24ad275608540aba1e5c668bbd52e04317eDavid Greene# code will include expensive checks, otherwise they are excluded.
295a696d24ad275608540aba1e5c668bbd52e04317eDavid Greene#ENABLE_EXPENSIVE_CHECKS = 0
296a696d24ad275608540aba1e5c668bbd52e04317eDavid Greene@ENABLE_EXPENSIVE_CHECKS@
297a696d24ad275608540aba1e5c668bbd52e04317eDavid Greene
2988b2e1419cf24a33df5a87c99e367528b44dc28cfReid Spencer# When DEBUG_RUNTIME is enabled, the runtime libraries will retain debug
2998b2e1419cf24a33df5a87c99e367528b44dc28cfReid Spencer# symbols.
3008b2e1419cf24a33df5a87c99e367528b44dc28cfReid Spencer#DEBUG_RUNTIME = 1
3018b2e1419cf24a33df5a87c99e367528b44dc28cfReid Spencer@DEBUG_RUNTIME@
3028b2e1419cf24a33df5a87c99e367528b44dc28cfReid Spencer
3037fd82e56a8d6fd48dd22f85ce502c24ff599d7a8Jeffrey Yasskin# When DEBUG_SYMBOLS is enabled, the compiler libraries will retain debug
3047fd82e56a8d6fd48dd22f85ce502c24ff599d7a8Jeffrey Yasskin# symbols.
3057fd82e56a8d6fd48dd22f85ce502c24ff599d7a8Jeffrey Yasskin#DEBUG_SYMBOLS = 1
3067fd82e56a8d6fd48dd22f85ce502c24ff599d7a8Jeffrey Yasskin@DEBUG_SYMBOLS@
3077fd82e56a8d6fd48dd22f85ce502c24ff599d7a8Jeffrey Yasskin
3088b5bee495f8ffcaad8f8b24f93b10c674d84f0e5Daniel Dunbar# When KEEP_SYMBOLS is enabled, installed executables will never have their
3098b5bee495f8ffcaad8f8b24f93b10c674d84f0e5Daniel Dunbar# symbols stripped.
3108b5bee495f8ffcaad8f8b24f93b10c674d84f0e5Daniel Dunbar#KEEP_SYMBOLS = 1
3118b5bee495f8ffcaad8f8b24f93b10c674d84f0e5Daniel Dunbar@KEEP_SYMBOLS@
3128b5bee495f8ffcaad8f8b24f93b10c674d84f0e5Daniel Dunbar
3131fce948ccbd67fff3fc7df954cd1c38f7991398dDaniel Dunbar# The compiler flags to use for optimized builds.
3141fce948ccbd67fff3fc7df954cd1c38f7991398dDaniel DunbarOPTIMIZE_OPTION := @OPTIMIZE_OPTION@
3151fce948ccbd67fff3fc7df954cd1c38f7991398dDaniel Dunbar
3167a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell# When ENABLE_PROFILING is enabled, the llvm source base is built with profile
3177a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell# information to allow gprof to be used to get execution frequencies.
3187a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell#ENABLE_PROFILING = 1
3197a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell
3209d9ae9fb59ee3897ffc21dfa3b7078478ac6d674Rafael Espindola# When ENABLE_DOCS is disabled, docs/ will not be built.
3219d9ae9fb59ee3897ffc21dfa3b7078478ac6d674Rafael EspindolaENABLE_DOCS = @ENABLE_DOCS@
3229d9ae9fb59ee3897ffc21dfa3b7078478ac6d674Rafael Espindola
323e1200219ec6f4d6ff7f54933ccad462c8dfdbb70Reid Spencer# When ENABLE_DOXYGEN is enabled, the doxygen documentation will be built
324e1200219ec6f4d6ff7f54933ccad462c8dfdbb70Reid SpencerENABLE_DOXYGEN = @ENABLE_DOXYGEN@
325e1200219ec6f4d6ff7f54933ccad462c8dfdbb70Reid Spencer
326b756c79d125c402931d0852f34c3444e947fcc8aReid Spencer# Do we want to enable threads?
32711486ffd5ad0d51d9ba338b9c0596d2164e41711Saleem AbdulrasoolENABLE_THREADS := @LLVM_ENABLE_THREADS@
328b756c79d125c402931d0852f34c3444e947fcc8aReid Spencer
329ee03c949b85036b68c261dcc27dca064ee7e525dAlexey Samsonov# Do we want to enable zlib?
330ee03c949b85036b68c261dcc27dca064ee7e525dAlexey SamsonovENABLE_ZLIB := @LLVM_ENABLE_ZLIB@
331ee03c949b85036b68c261dcc27dca064ee7e525dAlexey Samsonov
33289b0d995d26d9e70b9c8d7fab8b99f1e89ac11bbReid Spencer# Do we want to build with position independent code?
33389b0d995d26d9e70b9c8d7fab8b99f1e89ac11bbReid SpencerENABLE_PIC := @ENABLE_PIC@
33489b0d995d26d9e70b9c8d7fab8b99f1e89ac11bbReid Spencer
335c90171961d020d93e4ce548016d8ccb8aab00c57Jeffrey Yasskin# Do we want to build a shared library and link the tools with it?
336c90171961d020d93e4ce548016d8ccb8aab00c57Jeffrey YasskinENABLE_SHARED := @ENABLE_SHARED@
337c90171961d020d93e4ce548016d8ccb8aab00c57Jeffrey Yasskin
3388eac88621626e196db2cb76492dc60c71c7c7fbbNAKAMURA Takumi# Do we want to link the stdc++ into a shared library? (Cygming)
3398eac88621626e196db2cb76492dc60c71c7c7fbbNAKAMURA TakumiENABLE_EMBED_STDCXX := @ENABLE_EMBED_STDCXX@
3408eac88621626e196db2cb76492dc60c71c7c7fbbNAKAMURA Takumi
341ecfe67c21799891f27597455ed84c70de7769f36Daniel Dunbar# Use -fvisibility-inlines-hidden?
342ecfe67c21799891f27597455ed84c70de7769f36Daniel DunbarENABLE_VISIBILITY_INLINES_HIDDEN := @ENABLE_VISIBILITY_INLINES_HIDDEN@
343ecfe67c21799891f27597455ed84c70de7769f36Daniel Dunbar
344dd464df687faf544e83684d0c0e4da87c05f8bfeDaniel Dunbar# Do we want to allow timestamping information into builds?
345dd464df687faf544e83684d0c0e4da87c05f8bfeDaniel DunbarENABLE_TIMESTAMPS := @ENABLE_TIMESTAMPS@
346dd464df687faf544e83684d0c0e4da87c05f8bfeDaniel Dunbar
347e9676508acff14a88bd45ef15b024c9b98773a5eMisha Brukman# This option tells the Makefiles to produce verbose output.
3487a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell# It essentially prints the commands that make is executing
3497a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell#VERBOSE = 1
3507a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell
3517a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell# Enable JIT for this platform
352b195d9d365e5f960c93ddfdf10638d5d147d9f6fReid SpencerTARGET_HAS_JIT = @TARGET_HAS_JIT@
3537a73b80b9052136c8cd2234eb3433a07df7cf38eJohn Criswell
354e2cfe5d23225fa74febd5f170b919bba2c495308Reid Spencer# Shared library extension for host platform.
35588aeace3189c214115e5170bcedf1888235c4c08Brian GaekeSHLIBEXT = @SHLIBEXT@
35688aeace3189c214115e5170bcedf1888235c4c08Brian Gaeke
357e2cfe5d23225fa74febd5f170b919bba2c495308Reid Spencer# Executable file extension for host platform.
358e6d468f6f77b52e5ccc4592d1024829d8f5cf70bJohn CriswellEXEEXT = @EXEEXT@
359e6d468f6f77b52e5ccc4592d1024829d8f5cf70bJohn Criswell
360b2cb4861511692d8566b50fa34720eeb09ed617eReid Spencer# Things we just assume are "there"
361b2cb4861511692d8566b50fa34720eeb09ed617eReid SpencerECHO := echo
362a773bd54f32ceb55af08286fe00c6ec1b73e5b9aReid Spencer
363a773bd54f32ceb55af08286fe00c6ec1b73e5b9aReid Spencer# Get the options for causing archives to link all their content instead of
364a773bd54f32ceb55af08286fe00c6ec1b73e5b9aReid Spencer# just missing symbols, and the inverse of that. This is used for certain LLVM
365a773bd54f32ceb55af08286fe00c6ec1b73e5b9aReid Spencer# tools that permit loadable modules. It ensures that the LLVM symbols will be
366a773bd54f32ceb55af08286fe00c6ec1b73e5b9aReid Spencer# available to those loadable modules.
367a773bd54f32ceb55af08286fe00c6ec1b73e5b9aReid SpencerLINKALL := @LINKALL@
368a773bd54f32ceb55af08286fe00c6ec1b73e5b9aReid SpencerNOLINKALL := @NOLINKALL@
369b2ed0526ce53e6418ddf3aef42f7abeffd8d7346Reid Spencer
370b2ed0526ce53e6418ddf3aef42f7abeffd8d7346Reid Spencer# Get the value of HUGE_VAL_SANITY which will be either "yes" or "no" depending
371b2ed0526ce53e6418ddf3aef42f7abeffd8d7346Reid Spencer# on the check.
372b2ed0526ce53e6418ddf3aef42f7abeffd8d7346Reid SpencerHUGE_VAL_SANITY = @HUGE_VAL_SANITY@
3736530e9d8e6dfc8f16fe509701967e4ade99fae6cGordon Henriksen
3746530e9d8e6dfc8f16fe509701967e4ade99fae6cGordon Henriksen# Bindings that we should build
3751d4e0782ba9761e3c664de53b837b74c0c818ff1Gordon HenriksenBINDINGS_TO_BUILD := @BINDINGS_TO_BUILD@
3761d4e0782ba9761e3c664de53b837b74c0c818ff1Gordon HenriksenALL_BINDINGS      := @ALL_BINDINGS@
3771d4e0782ba9761e3c664de53b837b74c0c818ff1Gordon HenriksenOCAML_LIBDIR      := @OCAML_LIBDIR@
3786530e9d8e6dfc8f16fe509701967e4ade99fae6cGordon Henriksen
379163974de4763c21db3c312aec0ffb834f5203d13Chris Lattner# When compiling under Mingw/Cygwin, executables such as tblgen
380163974de4763c21db3c312aec0ffb834f5203d13Chris Lattner# expect Windows paths, whereas the build system uses Unix paths.
381163974de4763c21db3c312aec0ffb834f5203d13Chris Lattner# The function SYSPATH transforms Unix paths into Windows paths.
382163974de4763c21db3c312aec0ffb834f5203d13Chris Lattnerifneq (,$(findstring -mno-cygwin, $(CXX)))
383163974de4763c21db3c312aec0ffb834f5203d13Chris Lattner  SYSPATH = $(shell echo $(1) | cygpath -m -f -)
384163974de4763c21db3c312aec0ffb834f5203d13Chris Lattnerelse
385163974de4763c21db3c312aec0ffb834f5203d13Chris Lattner  SYSPATH = $(1)
386163974de4763c21db3c312aec0ffb834f5203d13Chris Lattnerendif
387e2be5d5fd8bd8d353567ad02d61bdf32b9dfa66cNick Lewycky
388e2be5d5fd8bd8d353567ad02d61bdf32b9dfa66cNick Lewycky# Location of the plugin header file for gold.
389e2be5d5fd8bd8d353567ad02d61bdf32b9dfa66cNick LewyckyBINUTILS_INCDIR := @BINUTILS_INCDIR@
3902373c99433b634b8cf9c4deb28d68d1be255a564Mikhail Glushenkov
3918039e03777b9db1d90fecfaf413945c45560b727Julien Lerouge# Optional flags supported by the compiler
3928039e03777b9db1d90fecfaf413945c45560b727Julien Lerouge# -Wno-missing-field-initializers
3938039e03777b9db1d90fecfaf413945c45560b727Julien LerougeNO_MISSING_FIELD_INITIALIZERS = @NO_MISSING_FIELD_INITIALIZERS@
3948039e03777b9db1d90fecfaf413945c45560b727Julien Lerouge# -Wno-variadic-macros
3958039e03777b9db1d90fecfaf413945c45560b727Julien LerougeNO_VARIADIC_MACROS = @NO_VARIADIC_MACROS@
3969993a3aebb27c5cac55429a23af2d2a0f129cb95Rafael Espindola# -Wcovered-switch-default
3979993a3aebb27c5cac55429a23af2d2a0f129cb95Rafael EspindolaCOVERED_SWITCH_DEFAULT = @COVERED_SWITCH_DEFAULT@
398d2f8216ba496b139815aee29052093c1b0d7a996David Greene# -Wno-uninitialized
399d2f8216ba496b139815aee29052093c1b0d7a996David GreeneNO_UNINITIALIZED = @NO_UNINITIALIZED@
400d2f8216ba496b139815aee29052093c1b0d7a996David Greene# -Wno-maybe-uninitialized
401d2f8216ba496b139815aee29052093c1b0d7a996David GreeneNO_MAYBE_UNINITIALIZED = @NO_MAYBE_UNINITIALIZED@
402e05f609b61c23846ee21a24a97631d2364f55078Dan Gohman
403baaadb2672e70916eb7e35b48b5ca34bec772fb8Tobias Grosser# Was polly found in tools/polly?
404baaadb2672e70916eb7e35b48b5ca34bec772fb8Tobias GrosserLLVM_HAS_POLLY = @LLVM_HAS_POLLY@
405e05f609b61c23846ee21a24a97631d2364f55078Dan Gohman# Flags supported by the linker.
406da612d62260220618af9be428aa827d5d04f344fDan Gohman# bfd ld / gold --version-script=file
407da612d62260220618af9be428aa827d5d04f344fDan GohmanHAVE_LINK_VERSION_SCRIPT = @HAVE_LINK_VERSION_SCRIPT@
40861b1851a205cb8dd29c1d3d4231efb8f8f7da283Eli Bendersky
40946e6bcf3aca5496e51993dff0d3be2c0b45e4a8fEric Christopher# Flags to control using libxml2
41046e6bcf3aca5496e51993dff0d3be2c0b45e4a8fEric ChristopherLIBXML2_LIBS := @LIBXML2_LIBS@
41146e6bcf3aca5496e51993dff0d3be2c0b45e4a8fEric ChristopherLIBXML2_INC  := @LIBXML2_INC@
41246e6bcf3aca5496e51993dff0d3be2c0b45e4a8fEric Christopher
41361b1851a205cb8dd29c1d3d4231efb8f8f7da283Eli Bendersky# Flags to control building support for Intel JIT Events API
41461b1851a205cb8dd29c1d3d4231efb8f8f7da283Eli BenderskyUSE_INTEL_JITEVENTS := @USE_INTEL_JITEVENTS@
41561b1851a205cb8dd29c1d3d4231efb8f8f7da283Eli BenderskyINTEL_JITEVENTS_INCDIR := @INTEL_JITEVENTS_INCDIR@
41661b1851a205cb8dd29c1d3d4231efb8f8f7da283Eli BenderskyINTEL_JITEVENTS_LIBDIR := @INTEL_JITEVENTS_LIBDIR@
41761b1851a205cb8dd29c1d3d4231efb8f8f7da283Eli Bendersky
41861b1851a205cb8dd29c1d3d4231efb8f8f7da283Eli Bendersky# Flags to control building support for OProfile JIT API
41961b1851a205cb8dd29c1d3d4231efb8f8f7da283Eli BenderskyUSE_OPROFILE := @USE_OPROFILE@
420754935418133ece1f51d1857a61d538797c34891Preston Gurd
421754935418133ece1f51d1857a61d538797c34891Preston Gurdifeq ($(USE_INTEL_JITEVENTS), 1)
422754935418133ece1f51d1857a61d538797c34891Preston Gurd  OPTIONAL_COMPONENTS += IntelJITEvents
423754935418133ece1f51d1857a61d538797c34891Preston Gurdendif
424754935418133ece1f51d1857a61d538797c34891Preston Gurdifeq ($(USE_OPROFILE), 1)
425754935418133ece1f51d1857a61d538797c34891Preston Gurd  OPTIONAL_COMPONENTS += OProfileJIT
426754935418133ece1f51d1857a61d538797c34891Preston Gurdendif
427