#===-- Makefile.config - Local configuration for LLVM ------*- makefile -*--====
#
# This file is included by Makefile.common.  It defines paths and other
# values specific to a particular installation of LLVM.
#
#===-----------------------------------------------------------------------====

# Target operating system for which LLVM will be compiled.
OS=Linux

# Target hardware architecture
ARCH=x86

# Endian-ness of the target
ENDIAN=little

# Path to the C++ compiler to use.  This is an optional setting, which defaults
# to whatever your gmake defaults to.
#
# Under Linux, for some reason the compiler driver wants to search the PATH to
# find the system assembler, which breaks if the LLVM assembler is in our path.
# Hack it to use the assembler in /usr/bin directly.
CXX = /usr/bin/g++

# We have the same problem with the CC binary, which use used by testcases for
# native builds.
CC := /usr/bin/gcc

# Linker flags.
LDFLAGS+=

# Libraries needed by tools
TOOLLINKOPTS=-ldl 

# Path to the library archiver program.
AR_PATH = ar

# The pathnames of the Flex and Bison programs, respectively.
YACC     = bison -y
BISON    = bison
FLEX     = flex

# Paths to miscellaneous programs.
RPWD    = pwd
SED     = sed
RM      = rm
ECHO    = echo
MKDIR   = /home/llvm/llvm/autoconf/mkinstalldirs
DATE    = date
MV      = mv
INSTALL = /usr/bin/install -c
DOT     = true dot
ETAGS   = /usr/bin/etags
ETAGSFLAGS = -l c++

# Determine the target for which LLVM should generate code.
LLVMGCCARCH := i686-pc-linux-gnu/3.4-llvm

# Full pathnames of LLVM C/C++ front-end 'cc1' and 'cc1plus' binaries:
LCC1 = /home/llvm/cfrontend/install/libexec/gcc/i686-pc-linux-gnu/3.4-llvm/cc1
LCC1XX = /home/llvm/cfrontend/install/libexec/gcc/i686-pc-linux-gnu/3.4-llvm/cc1plus

# Path to directory where object files should be stored during a build.
# Set OBJ_ROOT to "." if you do not want to use a separate place for
# object files.
OBJ_ROOT := .

# Path to location for LLVM front-end this should only be specified here if you
# want to override the value set in Makefile.$(uname)
LLVMGCCDIR := /home/llvm/cfrontend/install/

# When this variable is set to 1, programs in the llvm/test/Programs hierarchy
# are not recompiled from source code.  Instead, the bytecode for the file is
# pulled from the BYTECODE_REPOSITORY directory.  This can be useful when disk
# space is limited or when you just don't want to spend time running the C
# frontend.
#USE_PRECOMPILED_BYTECODE := 1


# This path specifies the cannonical location of bytecode files for compiled
# versions of the test/Programs/* programs.  This is used as the bytecode source
# when USE_PRECOMPILED_BYTECODE is specified or when source code is not
# available for the program (such as SPEC).
BYTECODE_REPOSITORY := /home/vadve/lattner/LLVMPrograms

# SPEC benchmarks:
#	If these are set then run the SPEC benchmarks.
#	You must provide the SPEC benchmarks on your own.

USE_SPEC95=1

# Path to the SPEC benchmarks.
SPEC2000_ROOT := 
SPEC95_ROOT := /Fast-System/spec95/INTEGER/

# Path to the Povray source code.

POVRAY_ROOT := 

# Path to the PAPI code.  This is used by the reoptimizer only.
#PAPIDIR := /home/vadve/shared/papi-2.3.4.1
PAPIDIR := /home/vadve/shared/Sparc/papi-2.3.4.1

# These are options that can either be enabled here, or can be enabled on the
# make command line (ie, make ENABLE_PROFILING=1):

# When ENABLE_OPTIMIZED is enabled, Release builds of all of the LLVM code are
# turned on, and Debug builds are turned off.
#ENABLE_OPTIMIZED = 1


# When ENABLE_PROFILING is enabled, the llvm source base is built with profile
# information to allow gprof to be used to get execution frequencies.
#ENABLE_PROFILING = 1

# This option tells the Makefiles to produce verbose output.
# It essentially prints the commands that make is executing
#VERBOSE = 1

# Enable JIT for this platform
TARGET_HAS_JIT=1

# Disable LLC diffs for testing.


# Shared library extension for this platform.
SHLIBEXT = .so

###########################################################################
# Directory Configuration
#	This section of the Makefile determines what is where.  To be
#	specific, there are several locations that need to be defined:
#
#	o LLVM_SRC_ROOT  : The root directory of the LLVM source code.
#	o LLVM_OBJ_ROOT  : The root directory containing the built LLVM code.
#
#	o BUILD_SRC_DIR  : The directory containing the code to build.
#	o BUILD_SRC_ROOT : The root directory of the code to build.
#
#	o BUILD_OBJ_DIR  : The directory in which compiled code will be placed.
#	o BUILD_OBJ_ROOT : The root directory in which compiled code is placed.
#
###########################################################################

# Set the object build directory.  By default, it is the current directory.
ifndef BUILD_OBJ_DIR
BUILD_OBJ_DIR := $(subst //,/,$(shell $(RPWD)))
endif

# Set the root of the object directory.
ifndef BUILD_OBJ_ROOT
BUILD_OBJ_ROOT := $(subst //,/,$(shell cd $(BUILD_OBJ_DIR)/$(LEVEL); $(RPWD)))
endif

# Set the source build directory.  That is almost always the current directory.
ifndef BUILD_SRC_DIR
BUILD_SRC_DIR := $(subst //,/,/home/llvm/llvm/$(patsubst $(BUILD_OBJ_ROOT)%,%,$(BUILD_OBJ_DIR)))
endif

# Set the source root directory.
ifndef BUILD_SRC_ROOT
BUILD_SRC_ROOT := $(subst //,/,/home/llvm/llvm)
endif

# Set the LLVM object directory.
ifndef LLVM_OBJ_ROOT
ifdef LLVM_SRC_ROOT
LLVM_OBJ_ROOT := $(shell cd $(LLVM_SRC_ROOT); $(RPWD))
else
LLVM_OBJ_ROOT := $(BUILD_OBJ_ROOT)
endif
endif

# Set the LLVM source directory.
# It is typically the root directory of what we're compiling now.
ifndef LLVM_SRC_ROOT
LLVM_SRC_ROOT := $(BUILD_SRC_ROOT)
endif

# Set SourceDir for backwards compatbility.
ifndef SourceDir
SourceDir=$(BUILD_SRC_DIR)
endif

# Installation directories, as provided by the configure script.
exec_prefix = ${prefix}
prefix = /usr/local
program_transform_name = s,x,x,
bindir = ${exec_prefix}/bin
sbindir = ${exec_prefix}/sbin
libexecdir = ${exec_prefix}/libexec
datadir = ${prefix}/share
sysconfdir = ${prefix}/etc
sharedstatedir = ${prefix}/com 
localstatedir = ${prefix}/var
libdir = ${exec_prefix}/lib
bytecode_libdir = $(LLVMGCCDIR)/bytecode-libs
includedir = ${prefix}/include
infodir = ${prefix}/info
mandir = ${prefix}/man
INSTALL_PROGRAM = ${INSTALL}
INSTALL_SCRIPT = ${INSTALL}
INSTALL_DATA = ${INSTALL} -m 644

