Commit 6793a033 authored by Ian Lynagh's avatar Ian Lynagh

Move the fixed paths out of config.mk, so cleaning works without configuring

parent 89296ce3
......@@ -134,6 +134,8 @@ show:
# -----------------------------------------------------------------------------
# Include subsidiary build-system bits
include mk/tree.mk
ifeq "$(findstring clean,$(MAKECMDGOALS))" ""
include mk/config.mk
ifeq "$(ProjectVersion)" ""
......
......@@ -23,12 +23,6 @@
# If you don't have a build.mk file then you get defaults for everything.
# The defaults should provide a reasonable vanilla build.
ifneq "$(findstring 3.7, $(MAKE_VERSION))" ""
ifeq "$(findstring 3.79.1, $(MAKE_VERSION))" ""
$(error GNU make version 3.79.1 or later is required.)
endif
endif
# TOP: the top of the fptools hierarchy, absolute path.
# On Windows this is a c:/foo/bar style path.
TOP = @hardtop@
......@@ -552,42 +546,6 @@ SRC_BLD_DLL_OPTS += --target=i386-mingw32
GC_CPP_OPTS += -P -E -x c -traditional -D__GLASGOW_HASKELL__
################################################################################
#
# Layout of the source tree
#
################################################################################
# Here we provide defines for the various directories in the source tree,
# so we can move things around more easily. A define $(GHC_FOO_DIR)
# indicates a directory relative to the top of the source tree.
GHC_UTILS_DIR = utils
GHC_INCLUDE_DIR = includes
GHC_COMPILER_DIR = compiler
GHC_PROG_DIR = ghc
GHC_RTS_DIR = rts
GHC_DRIVER_DIR = driver
GHC_COMPAT_DIR = compat
GHC_MKDEPENDC_DIR = $(GHC_UTILS_DIR)/mkdependC
GHC_LTX_DIR = $(GHC_UTILS_DIR)/ltx
GHC_LNDIR_DIR = $(GHC_UTILS_DIR)/lndir
GHC_MKDIRHIER_DIR = $(GHC_UTILS_DIR)/mkdirhier
GHC_DOCBOOK_DIR = $(GHC_UTILS_DIR)/docbook
GHC_UNLIT_DIR = $(GHC_UTILS_DIR)/unlit
GHC_HP2PS_DIR = $(GHC_UTILS_DIR)/hp2ps
GHC_GHCTAGS_DIR = $(GHC_UTILS_DIR)/ghctags
GHC_HSC2HS_DIR = $(GHC_UTILS_DIR)/hsc2hs
GHC_TOUCHY_DIR = $(GHC_UTILS_DIR)/touchy
GHC_PKG_DIR = $(GHC_UTILS_DIR)/ghc-pkg
GHC_GENPRIMOP_DIR = $(GHC_UTILS_DIR)/genprimopcode
GHC_GENAPPLY_DIR = $(GHC_UTILS_DIR)/genapply
GHC_CABAL_DIR = $(GHC_UTILS_DIR)/ghc-cabal
GHC_MANGLER_DIR = $(GHC_DRIVER_DIR)/mangler
GHC_SPLIT_DIR = $(GHC_DRIVER_DIR)/split
GHC_SYSMAN_DIR = $(GHC_RTS_DIR)/parallel
# -----------------------------------------------------------------------------
# Names of programs in the GHC tree
#
......@@ -627,11 +585,6 @@ SYSMAN = $(GHC_SYSMAN_DIR)/$(GHC_SYSMAN_PGM)
LTX = $(GHC_LTX_DIR)/$(GHC_LTX_PGM)
LNDIR = $(GHC_LNDIR_DIR)/$(GHC_LNDIR_PGM)
INPLACE = inplace
INPLACE_BIN = $(INPLACE)/bin
INPLACE_LIB = $(INPLACE)/lib
INPLACE_MINGW = $(INPLACE)/mingw
UNLIT = $(INPLACE_LIB)/$(GHC_UNLIT_PGM)
TOUCHY = $(INPLACE_LIB)/$(GHC_TOUCHY_PGM)
MKDIRHIER = $(INPLACE_BIN)/$(GHC_MKDIRHIER_PGM)
......@@ -810,7 +763,6 @@ PYTHON = @PythonCmd@
PIC = pic
PREPROCESSCMD = $(CC) -E
RANLIB = @RANLIB@
RM = rm -f
SED = @SedCmd@
SHELL = /bin/sh
......
ifneq "$(findstring 3.7, $(MAKE_VERSION))" ""
ifeq "$(findstring 3.79.1, $(MAKE_VERSION))" ""
$(error GNU make version 3.79.1 or later is required.)
endif
endif
################################################################################
#
# Layout of the source tree
#
################################################################################
# Here we provide defines for the various directories in the source tree,
# so we can move things around more easily. A define $(GHC_FOO_DIR)
# indicates a directory relative to the top of the source tree.
GHC_UTILS_DIR = utils
GHC_INCLUDE_DIR = includes
GHC_COMPILER_DIR = compiler
GHC_PROG_DIR = ghc
GHC_RTS_DIR = rts
GHC_DRIVER_DIR = driver
GHC_COMPAT_DIR = compat
GHC_MKDEPENDC_DIR = $(GHC_UTILS_DIR)/mkdependC
GHC_LTX_DIR = $(GHC_UTILS_DIR)/ltx
GHC_LNDIR_DIR = $(GHC_UTILS_DIR)/lndir
GHC_MKDIRHIER_DIR = $(GHC_UTILS_DIR)/mkdirhier
GHC_DOCBOOK_DIR = $(GHC_UTILS_DIR)/docbook
GHC_UNLIT_DIR = $(GHC_UTILS_DIR)/unlit
GHC_HP2PS_DIR = $(GHC_UTILS_DIR)/hp2ps
GHC_GHCTAGS_DIR = $(GHC_UTILS_DIR)/ghctags
GHC_HSC2HS_DIR = $(GHC_UTILS_DIR)/hsc2hs
GHC_TOUCHY_DIR = $(GHC_UTILS_DIR)/touchy
GHC_PKG_DIR = $(GHC_UTILS_DIR)/ghc-pkg
GHC_GENPRIMOP_DIR = $(GHC_UTILS_DIR)/genprimopcode
GHC_GENAPPLY_DIR = $(GHC_UTILS_DIR)/genapply
GHC_CABAL_DIR = $(GHC_UTILS_DIR)/ghc-cabal
GHC_MANGLER_DIR = $(GHC_DRIVER_DIR)/mangler
GHC_SPLIT_DIR = $(GHC_DRIVER_DIR)/split
GHC_SYSMAN_DIR = $(GHC_RTS_DIR)/parallel
INPLACE = inplace
INPLACE_BIN = $(INPLACE)/bin
INPLACE_LIB = $(INPLACE)/lib
INPLACE_MINGW = $(INPLACE)/mingw
RM = rm -f
......@@ -24,9 +24,11 @@ define build-prog
# $2 = distdir
# $3 = GHC stage to use (0 == bootstrapping compiler)
ifneq "$$(CLEANING)" "YES"
ifeq "$$($1_$2_PROG)" ""
$$(error $1_$2_PROG is not set)
endif
endif
ifeq "$$(findstring $3,0 1 2)" ""
$$(error $1/$2: stage argument to build-prog should be 0, 1, or 2)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment