Tweak mk/sub-makefile.mk
[ghc-hetmet.git] / mk / config.mk.in
index 43a54e3..800c32e 100644 (file)
 #
 #        If you don't have a build.mk file then you get defaults for everything.
 #        The defaults should provide a reasonable vanilla build.
-#
-# This is one of only two files that configure generates (the other is config.h)
-#
-
-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.
@@ -54,12 +45,6 @@ BootingFromUnregisterisedHc = @BootingFromUnregisterisedHc@
 NO_INCLUDE_DEPS = NO
 NO_INCLUDE_PKGDATA = NO
 
-#
-# Which ways should DocBook XML documents be built?
-# options are: dvi ps pdf html chm HxS
-#
-XMLDocWays=
-
 # Should we build latex docs?
 LATEX_DOCS = NO
 
@@ -561,43 +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_HSTAGS_DIR          = $(GHC_UTILS_DIR)/hasktags
-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
 #
@@ -606,7 +554,6 @@ GHC_SYSMAN_DIR          = $(GHC_RTS_DIR)/parallel
 
 GHC_UNLIT_PGM           = unlit$(exeext)
 GHC_HP2PS_PGM           = hp2ps$(exeext)
-GHC_HSTAGS_PGM          = hasktags$(exeext)
 GHC_GHCTAGS_PGM         = ghctags$(exeext)
 GHC_HSC2HS_PGM          = hsc2hs$(exeext)
 GHC_TOUCHY_PGM          = touchy$(exeext)
@@ -632,18 +579,12 @@ GHC_PERL          = $(PERL)
 endif
 
 HP2PS                  = $(GHC_HP2PS_DIR)/$(GHC_HP2PS_PGM)
-HSTAGS                 = $(GHC_HSTAGS_DIR)/$(GHC_HSTAGS_PGM)
 MANGLER                        = $(INPLACE_LIB)/$(GHC_MANGLER_PGM)
 SPLIT                  = $(INPLACE_LIB)/$(GHC_SPLIT_PGM)
 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)
@@ -715,7 +656,6 @@ GhcPatchLevel       = @GhcPatchLevel@
 GhcMajVersion  = @GhcMajVersion@
 GhcMinVersion  = @GhcMinVersion@
 
-ghc_ge_607 = @ghc_ge_607@
 ghc_ge_609 = @ghc_ge_609@
 
 # Canonicalised ghc version number, used for easy (integer) version
@@ -746,8 +686,9 @@ else
 endif
 endif
 
-# default C compiler flags
+# default C compiler and linker flags
 SRC_CC_OPTS = @SRC_CC_OPTS@
+SRC_LD_OPTS = @SRC_LD_OPTS@
 
 ifeq "$(TARGETPLATFORM)" "ia64-unknown-linux"
 SRC_CC_OPTS += -G0
@@ -822,7 +763,6 @@ PYTHON                      = @PythonCmd@
 PIC                    = pic
 PREPROCESSCMD          = $(CC) -E
 RANLIB                 = @RANLIB@
-RM                     = rm -f
 SED                    = @SedCmd@
 SHELL                  = /bin/sh
 
@@ -837,6 +777,16 @@ LD_X                       = @LdXFlag@
 # overflowing command-line length limits.
 LdIsGNULd              = @LdIsGNULd@
 
+# On MSYS, building with SplitObjs=YES fails with 
+#   ar: Bad file number
+# see #3201.  We need to specify a smaller max command-line size
+# to work around it.  32767 doesn't work; 30000 does.
+ifeq "$(Windows)" "YES"
+XARGS = xargs -s 30000
+else
+XARGS = xargs
+endif
+
 #
 # In emergency situations, REAL_SHELL is used to perform shell commands
 # from within the ghc driver script, by scribbling the command line to
@@ -898,10 +848,6 @@ BUILD_DOCBOOK_PDF = @BUILD_DOCBOOK_PDF@
 DBLATEX                = @DblatexCmd@
 XSLTPROC               = @XsltprocCmd@
 XMLLINT                        = @XmllintCmd@
-FOP                    = @FopCmd@
-XMLTEX                 = @XmltexCmd@
-PDFXMLTEX              = @PdfxmltexCmd@
-DVIPS                  = @DvipsCmd@
 
 DIR_DOCBOOK_XSL                = @DIR_DOCBOOK_XSL@
 
@@ -949,6 +895,8 @@ ALEX_VERSION                = @AlexVersion@
 #
 SRC_ALEX_OPTS          = -g
 
+HSTAGS = @HstagsCmd@
+
 # Should we build haddock docs?
 HADDOCK_DOCS = YES
 # And HsColour the sources?