update submodules for GHC.HetMet.GArrow -> Control.GArrow renaming
[ghc-hetmet.git] / mk / config.mk.in
index 32fb196..18e60e7 100644 (file)
@@ -97,15 +97,35 @@ GhcStage1HcOpts=
 GhcStage2HcOpts=-O2
 GhcStage3HcOpts=-O2
 
-GhcProfiled=NO
+# These options modify whether or not a built compiler for a bootstrap
+# stage defaults to using the new code generation path.  The new
+# code generation path is a bit slower, so for development just
+# GhcStage2DefaultNewCodegen=YES, but it's also a good idea to try
+# building all libraries and the stage2 compiler with the
+# new code generator, which involves GhcStage1DefaultNewCodegen=YES.
+GhcStage1DefaultNewCodegen=NO
+GhcStage2DefaultNewCodegen=NO
+GhcStage3DefaultNewCodegen=NO
+
 GhcDebugged=NO
-GhcLibProfiled=$(if $(filter p,$(GhcLibWays)),YES,NO)
+GhcDynamic=NO
+
+# GhcProfiled=YES means compile a profiled stage-2 compiler
+GhcProfiled=NO
 
 # Do we support shared libs?
-PlatformSupportsSharedLibs = $(if $(filter $(TARGETPLATFORM),i386-unknown-linux x86_64-unknown-linux),YES,NO)
+SharedLibsPlatformList = i386-unknown-linux x86_64-unknown-linux \
+       i386-unknown-freebsd x86_64-unknown-freebsd \
+       i386-unknown-openbsd x86_64-unknown-openbsd \
+       i386-unknown-mingw32 \
+       i386-apple-darwin powerpc-apple-darwin
+
+ifeq "$(SOLARIS_BROKEN_SHLD)" "NO"
+SharedLibsPlatformList += i386-unknown-solaris2
+endif
 
-# ToDo later:
-# BuildStaticLibs=@BuildStaticLibs@
+PlatformSupportsSharedLibs = $(if $(filter $(TARGETPLATFORM),\
+       $(SharedLibsPlatformList)),YES,NO)
 
 # Build a compiler that will build *unregisterised* libraries and
 # binaries by default.  Unregisterised code is supposed to compile and
@@ -153,7 +173,7 @@ GhcWithSMP=$(strip $(if $(filter YESNO, $(ArchSupportsSMP)$(GhcUnregisterised)),
 # Whether to include GHCi in the compiler.  Depends on whether the RTS linker
 # has support for this OS/ARCH combination.
 
-OsSupportsGHCi=$(strip $(patsubst $(HostOS_CPP), YES, $(findstring $(HostOS_CPP), mingw32 cygwin32 linux solaris2 freebsd netbsd openbsd darwin)))
+OsSupportsGHCi=$(strip $(patsubst $(HostOS_CPP), YES, $(findstring $(HostOS_CPP), mingw32 cygwin32 linux solaris2 freebsd dragonfly netbsd openbsd darwin)))
 ArchSupportsGHCi=$(strip $(patsubst $(HostArch_CPP), YES, $(findstring $(HostArch_CPP), i386 x86_64 powerpc sparc sparc64)))
 
 ifeq "$(OsSupportsGHCi)$(ArchSupportsGHCi)" "YESYES"
@@ -176,7 +196,7 @@ endif
 # Whether to use libffi for adjustors (foreign import "wrapper") or
 # not.  If we have built-in support (rts/Adjustor.c) then we use that,
 # otherwise we fall back on libffi, which is slightly slower.
-ArchHasAdjustorSupport=$(strip $(if $(findstring $(HostArch_CPP),i386 x86_64 alpha powerpc ia64,),YES,NO))
+ArchHasAdjustorSupport = $(if $(findstring $(HostArch_CPP),i386 x86_64),YES,NO)
 ifeq "$(ArchHasAdjustorSupport)" "YES"
 UseLibFFIForAdjustors=NO
 else
@@ -235,8 +255,6 @@ BuildSharedLibs=$(strip $(if $(findstring dyn,$(GhcLibWays)),YES,NO))
 #   debug_p     : debugging profiled
 #   thr_debug   : debugging threaded
 #   thr_debug_p : debugging threaded profiled
-#   t          : ticky-ticky profiling
-#   debug_t    : debugging ticky-ticky profiling
 #   l           : event logging
 #   thr_l       : threaded and event logging
 #
@@ -264,16 +282,8 @@ GhcThreaded = $(if $(findstring thr,$(GhcRTSWays)),YES,NO)
 #
 #      -O(2) is pretty desirable, otherwise no inlining of prelude
 #              things (incl "+") happens when compiling with this compiler
-#
-#      -XGenerics switches on generation of support code for 
-#              derivable type classes.  This is now off by default,
-#              but we switch it on for the libraries so that we generate
-#              the code in case someone importing wants it
-
-GhcLibHcOpts=-O2 -XGenerics
 
-# Win32 only: Enable the RTS and libraries to be built as DLLs
-DLLized=@EnableWin32DLLs@
+GhcLibHcOpts=-O2
 
 # Strip local symbols from libraries?  This can make the libraries smaller,
 # but makes debugging somewhat more difficult.  Doesn't work with all ld's.
@@ -294,30 +304,31 @@ PackageSourceURL = http://darcs.haskell.org/packages/$(PACKAGE)/%{FILE}
 #              doing object-file splitting
 
 ArchSupportsSplitObjs=$(strip $(if $(filter $(TargetArch_CPP),i386 x86_64 powerpc sparc),YES,NO))
+OsSupportsSplitObjs=$(strip $(if $(filter $(TargetOS_CPP),mingw32 cygwin32 linux darwin solaris2 freebsd dragonfly netbsd openbsd),YES,NO))
+SplitObjsBroken = @SplitObjsBroken@
 
 # lazy test, so that $(GhcUnregisterised) can be set in build.mk
-SupportsSplitObjs=$(strip $(if $(filter YES,$(ArchSupportsSplitObjs)),\
-                   $(if $(filter NO,$(BootingFromHc)),\
-                     $(if $(filter NO,$(GhcUnregisterised)),\
-                       YES,\
-                       NO),\
-                      NO),\
-                    NO))
+SupportsSplitObjs=$(strip \
+                    $(if $(and $(filter YES,$(ArchSupportsSplitObjs)),\
+                               $(filter YES,$(OsSupportsSplitObjs)),\
+                               $(filter NO,$(SplitObjsBroken)),\
+                               $(filter NO,$(BootingFromHc)),\
+                               $(filter NO,$(GhcUnregisterised))),\
+                          YES,NO))
 
 # By default, enable SplitObjs for the libraries if this build supports it
 SplitObjs=$(SupportsSplitObjs)
 
-# Math library
-LIBM=@LIBM@
+# ----------------------------------------------------------------------------
+# Package-related things
 
-# .NET interop support?
-#
-DotnetSupport=NO
+# Extra packages to add to the build, in dependency order
+EXTRA_PACKAGES =
 
-# Build unix package?
-#
-GhcLibsWithUnix=@GhcLibsWithUnix@
+# Whether to install $(EXTRA_PACKAGES)
+InstallExtraPackages = NO
 
+# Run "ghc-pkg check" on each package
 CHECK_PACKAGES = NO
 
 # ----------------------------------------------------------------------------
@@ -361,12 +372,12 @@ ifeq "$(TARGETPLATFORM)" "i386-unknown-mingw32"
 DEFAULT_TMPDIR         = /C/TEMP
 endif
 
-BIN_DIST_DIR=bindistprep/$(BIN_DIST_NAME)
-
-BIN_DIST_NAME=ghc-$(ProjectVersion)
-BIN_DIST_TAR=$(TOP)/bindistprep/$(BIN_DIST_NAME)-$(TARGETPLATFORM).tar
-BIN_DIST_TAR_BZ2=$(BIN_DIST_TAR).bz2
-BIN_DIST_LIST=$(TOP)/bindist-list
+BIN_DIST_NAME         = ghc-$(ProjectVersion)
+BIN_DIST_PREP_DIR     = bindistprep/$(BIN_DIST_NAME)
+BIN_DIST_PREP_TAR     = bindistprep/$(BIN_DIST_NAME)-$(TARGETPLATFORM).tar
+BIN_DIST_PREP_TAR_BZ2 = $(BIN_DIST_PREP_TAR).bz2
+BIN_DIST_TAR_BZ2      = $(BIN_DIST_NAME)-$(TARGETPLATFORM).tar.bz2
+BIN_DIST_LIST         = bindist-list
 
 WINDOWS_INSTALLER_BASE = ghc-$(ProjectVersion)-i386-windows
 WINDOWS_INSTALLER = $(WINDOWS_INSTALLER_BASE)$(exeext)
@@ -384,6 +395,23 @@ WINDOWS_INSTALLER = $(WINDOWS_INSTALLER_BASE)$(exeext)
 #
 #      SRC_HC_OPTS += -O
 
+
+# SRC_HC_OPTS includes flags to be added to *every* Haskell
+# compilation.  Setting SRC_HC_OPTS is a good way to set the default
+# optimisation level (-O) and heap size (-H<size>).
+# 
+# SRC_HC_OPTS is *not* for adding flags that are required to make your
+# build work.  Examples:
+#
+#  - instead of using -pgmc/-pgma-/-pgml, use the --with-gcc option to configure
+#
+#  - if you need -optc, -opta, or -optl flags, the CONF_CC_* and CONF_LD_*
+#    variables are more appropriate (set via configure)
+#
+# Note that SRC_HC_OPTS are added to every Haskell compilation,
+# including when using the bootstrapping compiler (stage 0), So don't
+# put options here that are only supported by very recent GHCs.
+#
 SRC_HC_OPTS += -H32m -O
 
 # These flags make flex 8-bit
@@ -407,18 +435,15 @@ GHC_HP2PS_PGM           = hp2ps$(exeext)
 GHC_GHCTAGS_PGM         = ghctags$(exeext)
 GHC_HSC2HS_PGM          = hsc2hs$(exeext)
 GHC_TOUCHY_PGM          = touchy$(exeext)
-GHC_MANGLER_PGM         = ghc-asm
 GHC_SPLIT_PGM           = ghc-split
 GHC_SYSMAN_PGM          = SysMan
 GHC_GENPRIMOP_PGM       = genprimopcode$(exeext)
 GHC_GENAPPLY_PGM        = genapply$(exeext)
 GHC_CABAL_PGM           = ghc-cabal$(exeext)
 GHC_PKG_PGM             = ghc-pkg$(exeext)
-GHC_MKDEPENDC_PGM       = mkdependC
 GHC_LTX_PGM             = ltx$(exeext)
 GHC_MKDIRHIER_PGM       = mkdirhier
 GHC_LNDIR_PGM           = lndir
-GHC_DUMMY_GHC_PGM       = dummy-ghc$(exeext)
 
 ifeq "$(TARGETPLATFORM)" "i386-unknown-mingw32"
 GHC_CP                 = "xcopy /y"
@@ -429,7 +454,6 @@ GHC_PERL            = $(PERL)
 endif
 
 HP2PS                  = $(GHC_HP2PS_DIR)/$(GHC_HP2PS_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)
@@ -438,26 +462,20 @@ LNDIR                     = $(GHC_LNDIR_DIR)/$(GHC_LNDIR_PGM)
 UNLIT                  = $(INPLACE_LIB)/$(GHC_UNLIT_PGM)
 TOUCHY                  = $(INPLACE_LIB)/$(GHC_TOUCHY_PGM)
 MKDIRHIER              = $(INPLACE_BIN)/$(GHC_MKDIRHIER_PGM)
-MKDEPENDC              = $(INPLACE_BIN)/$(GHC_MKDEPENDC_PGM)
 GHC_CABAL_INPLACE      = $(INPLACE_BIN)/$(GHC_CABAL_PGM)
 GENAPPLY_INPLACE       = $(INPLACE_BIN)/$(GHC_GENAPPLY_PGM)
 GHC_PKG_INPLACE                = $(INPLACE_BIN)/$(GHC_PKG_PGM)
 GHCTAGS_INPLACE                = $(INPLACE_BIN)/$(GHC_GHCTAGS_PGM)
 HSC2HS_INPLACE         = $(INPLACE_BIN)/$(GHC_HSC2HS_PGM)
 GENPRIMOP_INPLACE      = $(INPLACE_BIN)/$(GHC_GENPRIMOP_PGM)
-DUMMY_GHC_INPLACE      = $(INPLACE_BIN)/$(GHC_DUMMY_GHC_PGM)
 
 GENERATED_FILE  = chmod a-w
 EXECUTABLE_FILE = chmod +x
 
 #-----------------------------------------------------------------------------
-# Haskell compilers and mkdependHS
+# Installed GHC
 
-# $(GHC), $(HBC) and $(NHC) point to installed versions of the relevant
-# compilers, if available.
-#
-# $(HC) is a generic Haskell 98 compiler, set to $(GHC) by default.
-# $(MKDEPENDHS) is the Haskell dependency generator (ghc -M).
+# $(GHC) points to installed version of the compiler.
 #
 # NOTE: Don't override $(GHC) in build.mk, use configure --with-ghc instead
 # (because the version numbers have to be calculated).
@@ -470,14 +488,6 @@ ifneq "$(wildcard $(GHC).exe)" ""
 GHC := $(GHC).exe
 endif
 
-GhcDir          = $(dir $(GHC))
-
-# Set to YES if $(GHC) has the editline package installed
-GhcHasEditline = @GhcHasEditline@
-
-HBC            = @HBC@
-NHC            = @NHC@
-
 # Sometimes we want to invoke ghc from the build tree in different
 # places (eg. it's handy to have a nofib & a ghc build in the same
 # tree).  We can refer to "this ghc" as $(GHC_INPLACE):
@@ -506,9 +516,8 @@ GhcPatchLevel       = @GhcPatchLevel@
 GhcMajVersion  = @GhcMajVersion@
 GhcMinVersion  = @GhcMinVersion@
 
-ghc_ge_609 = @ghc_ge_609@
-ghc_ge_6102 = @ghc_ge_6102@
-ghc_ge_611 = @ghc_ge_611@
+# Keep this in sync with the variables in package-config.mk
+ghc_ge_613 = @ghc_ge_613@
 
 # Canonicalised ghc version number, used for easy (integer) version
 # comparisons.  We must expand $(GhcMinVersion) to two digits by
@@ -526,35 +535,54 @@ endif
 # the flag --with-gcc=<blah> instead.  The reason is that the configure script
 # needs to know which gcc you're using in order to perform its tests.
 
-HaveGcc        = @HaveGcc@
-UseGcc         = YES
 WhatGccIsCalled = @WhatGccIsCalled@
 GccVersion      = @GccVersion@
-GccLT34                = @GccLT34@
-ifeq "$(strip $(HaveGcc))" "YES"
-ifneq "$(strip $(UseGcc))"  "YES"
-  CC   = cc
-else
-  CC   = $(WhatGccIsCalled)
-endif
-endif
+GccLT34         = @GccLT34@
+CC              = $(WhatGccIsCalled)
+CC_STAGE0       = @CC_STAGE0@
+CC_STAGE1       = $(CC)
+CC_STAGE2       = $(CC)
+CC_STAGE3       = $(CC)
+AS              = $(WhatGccIsCalled)
+AS_STAGE0       = @CC_STAGE0@
+AS_STAGE1       = $(AS)
+AS_STAGE2       = $(AS)
+AS_STAGE3       = $(AS)
 
 # C compiler and linker flags from configure (e.g. -m<blah> to select
-# correct C compiler backend).
-CONF_CC_OPTS = @CONF_CC_OPTS@
-CONF_LD_OPTS = @CONF_LD_OPTS@
+# correct C compiler backend). The stage number is the stage of GHC
+# that is being used to compile with.
+CONF_CC_OPTS_STAGE0 = @CONF_CC_OPTS_STAGE0@
+CONF_CC_OPTS_STAGE1 = @CONF_CC_OPTS_STAGE1@
+CONF_CC_OPTS_STAGE2 = @CONF_CC_OPTS_STAGE2@
+CONF_GCC_LINKER_OPTS_STAGE0 = @CONF_GCC_LINKER_OPTS_STAGE0@
+CONF_GCC_LINKER_OPTS_STAGE1 = @CONF_GCC_LINKER_OPTS_STAGE1@
+CONF_GCC_LINKER_OPTS_STAGE2 = @CONF_GCC_LINKER_OPTS_STAGE2@
+CONF_LD_LINKER_OPTS_STAGE0 = @CONF_LD_LINKER_OPTS_STAGE0@
+CONF_LD_LINKER_OPTS_STAGE1 = @CONF_LD_LINKER_OPTS_STAGE1@
+CONF_LD_LINKER_OPTS_STAGE2 = @CONF_LD_LINKER_OPTS_STAGE2@
+CONF_CPP_OPTS_STAGE0 = @CONF_CPP_OPTS_STAGE0@
+CONF_CPP_OPTS_STAGE1 = @CONF_CPP_OPTS_STAGE1@
+CONF_CPP_OPTS_STAGE2 = @CONF_CPP_OPTS_STAGE2@
 
 ifeq "$(TARGETPLATFORM)" "ia64-unknown-linux"
 CONF_CC_OPTS += -G0
 endif
 
-SRC_HSC2HS_OPTS += $(addprefix --cflag=,$(filter-out -O,$(SRC_CC_OPTS) $(CONF_CC_OPTS)))
+# The .hsc files aren't currently safe for cross-compilation on Windows:
+#     libraries\haskeline\.\System\Console\Haskeline\Backend\Win32.hsc:160
+#     directive "let" is not safe for cross-compilation
+ifneq "$(Windows)" "YES"
+SRC_HSC2HS_OPTS += --cross-safe
+endif
+SRC_HSC2HS_OPTS += $(addprefix --cflag=,$(filter-out -O,$(SRC_CC_OPTS) $(CONF_CC_OPTS_STAGE0)))
 SRC_HSC2HS_OPTS += $(foreach d,$(GMP_INCLUDE_DIRS),-I$(d))
 
 #-----------------------------------------------------------------------------
 # Mingwex Library
 #
 HaveLibMingwEx = @HaveLibMingwEx@
+DLLTOOL                        = inplace/mingw/bin/dlltool.exe
 
 #-----------------------------------------------------------------------------
 # Flex (currently unused, could be moved to glafp-utils)
@@ -568,12 +596,30 @@ HaveLibMingwEx    = @HaveLibMingwEx@
 # Other standard (ha!) Unix utilities
 
 AR                     = @ArCmd@
-ArSupportsInput                = @ArSupportsInput@
-# Yuckage: for ghc/utils/parallel -- todo: nuke this dependency!!
-BASH                    = /usr/local/bin/bash
+AR_OPTS                        = @ArArgs@
+ArSupportsAtFile = @ArSupportsAtFile@
+
+AR_STAGE0 = @AR_STAGE0@
+AR_STAGE1 = $(AR)
+AR_STAGE2 = $(AR)
+AR_STAGE3 = $(AR)
+AR_OPTS_STAGE0 = @AR_OPTS_STAGE0@
+AR_OPTS_STAGE1 = $(AR_OPTS)
+AR_OPTS_STAGE2 = $(AR_OPTS)
+AR_OPTS_STAGE3 = $(AR_OPTS)
+EXTRA_AR_ARGS_STAGE0 = $(EXTRA_AR_ARGS)
+EXTRA_AR_ARGS_STAGE1 = $(EXTRA_AR_ARGS)
+EXTRA_AR_ARGS_STAGE2 = $(EXTRA_AR_ARGS)
+EXTRA_AR_ARGS_STAGE3 = $(EXTRA_AR_ARGS)
+ArSupportsAtFile_STAGE0 = @ArSupportsAtFile_STAGE0@
+ArSupportsAtFile_STAGE1 = $(ArSupportsAtFile)
+ArSupportsAtFile_STAGE2 = $(ArSupportsAtFile)
+ArSupportsAtFile_STAGE3 = $(ArSupportsAtFile)
 
 CONTEXT_DIFF           = @ContextDiffCmd@
 CP                     = cp
+# It's not easy to separate the CPP program from its flags, as
+# AC_PROG_CPP defines CPP as "/usr/bin/gcc -E"
 CPP                    = @CPP@ @CPPFLAGS@
 CTAGS                  = $(ETAGS)
 #
@@ -583,30 +629,35 @@ CTAGS                     = $(ETAGS)
 RAWCPP_FLAGS            = -undef -traditional
 FIND                   = @FindCmd@
 SORT                   = @SortCmd@
-INSTALL                        = @INSTALL@
+
 #
 # Sigh - the autoconf macro for INSTALL will subst a relative path to the fallback
 # install-sh script (if chosen). This not terribly useful to us, so we convert
 # it into an abs. path.
 # 
+INSTALL                        = @INSTALL@
 INSTALL                        := $(subst .././install-sh,$(TOP)/install-sh,$(INSTALL))
+
 LATEX                  = latex
-HEVEA                  = hevea
-HACHA                  = hacha
+PDFLATEX                = pdflatex
+BIBTEX                  = bibtex
 LN_S                   = @LN_S@
-MANMACROS              = -man
-MSMACROS               = -ms
 MV                     = mv
 NROFF                  = nroff
 PERL                   = @PerlCmd@
 PYTHON                 = @PythonCmd@
 PIC                    = pic
-PREPROCESSCMD          = $(CC) -E
 RANLIB                 = @RANLIB@
 SED                    = @SedCmd@
+TR                     = tr
 SHELL                  = /bin/sh
 
-LD                     = @LdCmd@
+HaveDtrace             = @HaveDtrace@
+USE_DTRACE = $(HaveDtrace)
+DTRACE                 = @DtraceCmd@
+
+LD = @LdCmd@
+NM = @NmCmd@
 
 # Some ld's support the -x flag and some don't, so the configure
 # script detects which we have and sets LdXFlag to "-x" or ""
@@ -617,14 +668,19 @@ LD_X                      = @LdXFlag@
 # overflowing command-line length limits.
 LdIsGNULd              = @LdIsGNULd@
 
+# Set to YES if ld has the --build-id flag.  Sometimes we need to
+# disable it with --build-id=none.
+LdHasBuildId           = @LdHasBuildId@
+
 # 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
+# to work around it.  32767 doesn't work; 30000 does, but says
+#     xargs: value for -s option should be < 28153
+# so we now use 20000 to be comfortably below this bound
 XARGS = xargs
+ifeq "$(Windows)" "YES"
+XARGS_OPTS = -s 20000
 endif
 
 #
@@ -649,35 +705,24 @@ endif
 # with REAL_SHELL set to something else than /bin/sh, for instance, your favourite
 # command shell.
 #
-REAL_SHELL=$(SHELL)
-SIZE                   = size
-STRIP                  = strip
-PATCH                  = @PatchCmd@
-TAR                    = @TarCmd@
-ZIP                    = zip
+REAL_SHELL     = $(SHELL)
 
-HSCOLOUR = @HSCOLOUR@
+STRIP_CMD      = strip
+PATCH_CMD      = @PatchCmd@
+TAR_CMD        = @TarCmd@
+BZIP2_CMD      = bzip2
+GZIP_CMD       = gzip
 
-#
-# This is special to literate/, ToDo: add literate-specific
-# configure setup to literate/.
-#
-TBL                    = tbl
-TEX                    = tex
-TGRIND                         = tgrind
-TGRIND_HELPER          = /usr/local/lib/tgrind/tfontedpr # XXX
-TIB                    = tib
+HSCOLOUR_CMD   = @HSCOLOUR@
 
-TIME                   = @TimeCmd@
-TROFF                  = troff
-UNAME                  = uname
+TIME_CMD       = @TimeCmd@
 
 # GTK+
-GTK_CONFIG = @GTK_CONFIG@
+GTK_CONFIG_CMD = @GTK_CONFIG@
 
 # Set this if you want to use Inno Setup to build a Windows installer
 # when you make a bindist
-ISCC                    =
+ISCC_CMD       =
 
 #-----------------------------------------------------------------------------
 # DocBook XML stuff
@@ -705,12 +750,6 @@ BLD_DLL                    = dllwrap
 GHC_PKG                        = @GhcPkgCmd@
 
 #
-# GreenCard
-#
-GREENCARD              = @GreenCardCmd@
-GREENCARD_VERSION      = @GreenCardVersion@            
-
-#
 # Happy
 #
 HAPPY                  = @HappyCmd@
@@ -720,10 +759,6 @@ HAPPY_VERSION              = @HappyVersion@
 #
 SRC_HAPPY_OPTS         = -agc --strict
 
-# Temp. to work around performance problems in the HEAD around 8/12/2003,
-# A Happy compiled with this compiler needs more stack.
-SRC_HAPPY_OPTS         += +RTS -K2m -RTS
-
 #
 # Alex
 #
@@ -734,12 +769,10 @@ ALEX_VERSION              = @AlexVersion@
 #
 SRC_ALEX_OPTS          = -g
 
-HSTAGS = @HstagsCmd@
-
 # Should we build haddock docs?
-HADDOCK_DOCS = $(GhcWithInterpreter)
+HADDOCK_DOCS = YES
 # And HsColour the sources?
-ifeq "$(HSCOLOUR)" ""
+ifeq "$(HSCOLOUR_CMD)" ""
 HSCOLOUR_SRCS = NO
 else
 HSCOLOUR_SRCS = YES
@@ -781,18 +814,5 @@ CONFIGURE_ARGS = @CONFIGURE_ARGS@
 ICONV_INCLUDE_DIRS = @ICONV_INCLUDE_DIRS@
 ICONV_LIB_DIRS = @ICONV_LIB_DIRS@
 
-################################################################################
-#
-#    Bindist testing directory
-#
-################################################################################
-
-ifeq "$(Windows)" "YES"
-BIN_DIST_INST_SUBDIR = "install dir"
-else
-# I very much doubt that paths with spaces will work on Unix
-BIN_DIST_INST_SUBDIR = installed
-endif
-
-BIN_DIST_INST_DIR = $(TOP)/bindisttest/$(BIN_DIST_INST_SUBDIR)
-
+GMP_INCLUDE_DIRS = @GMP_INCLUDE_DIRS@
+GMP_LIB_DIRS = @GMP_LIB_DIRS@