#
# The pathnames of the Flex and Bison programs, respectively.
#
-BISON = @YACC@
+YACC = @YACC@
+BISON = @BISON@
FLEX = @LEX@
#
# Paths to miscellaneous programs.
#
+RPWD = @RPWD@
SED = @SED@
RM = @RM@
ECHO = @ECHO@
-MKDIR = @abs_top_srcdir@/mkinstalldirs
+MKDIR = @abs_top_srcdir@/autoconf/mkinstalldirs
DATE = @DATE@
MV = @MV@
INSTALL = @INSTALL@
# object files.
#
#OBJ_ROOT = .
-OBJ_ROOT := @OBJROOT@
+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)
# information to allow gprof to be used to get execution frequencies.
#
#ENABLE_PROFILING = 1
-@ENABLE_PROFILING@
#
-# This open tells the Makefiles to produce verbose output.
+# This option tells the Makefiles to produce verbose output.
# It essentially prints the commands that make is executing
#
#VERBOSE = 1
#
@DISABLE_LLC_DIFFS@
+###########################################################################
+# 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 //,/,@abs_top_srcdir@/$(patsubst $(BUILD_OBJ_ROOT)%,%,$(BUILD_OBJ_DIR)))
+endif
+
+#
+# Set the source root directory.
+#
+ifndef BUILD_SRC_ROOT
+BUILD_SRC_ROOT := $(subst //,/,@abs_top_srcdir@)
+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 = @exec_prefix@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+bindir = @bindir@
+sbindir = @sbindir@
+libexecdir = @libexecdir@
+datadir = @datadir@
+sysconfdir = @sysconfdir@
+sharedstatedir = @sharedstatedir@
+localstatedir = @localstatedir@
+libdir = @libdir@
+includedir = @includedir@
+infodir = @infodir@
+mandir = @mandir@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_DATA = @INSTALL_DATA@
+