X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=mk%2Fconfig.mk.in;h=774d6375e02c24d969a3f43a603922cb7492d307;hp=23162f936312b3465d14010d6b1b808cbe27184d;hb=0065d5ab628975892cea1ec7303f968c3338cbe1;hpb=28a464a75e14cece5db40f2765a29348273ff2d2 diff --git a/mk/config.mk.in b/mk/config.mk.in index 23162f9..774d637 100644 --- a/mk/config.mk.in +++ b/mk/config.mk.in @@ -25,12 +25,6 @@ # # This is one of only two files that configure generates (the other is config.h) # -# There is a section below for each project within the fptools suite -# -# PLUS -# -# a section corresponding to each of the main .mk files -# included by boilerplate.mk (see boilerplate.mk for a list). ifneq "$(findstring 3.7, $(MAKE_VERSION))" "" ifeq "$(findstring 3.79.1, $(MAKE_VERSION))" "" @@ -40,7 +34,34 @@ endif ################################################################################ # -# Project-wide platform variables +# GHC Version +# + +# ProjectVersion is treated as a *string* +# ProjectVersionInt is treated as an *integer* (for cpp defines) + +# Versioning scheme: A.B.C +# A: major version, decimal, any number of digits +# B: minor version, decimal, any number of digits +# C: patchlevel, one digit, omitted if zero. +# +# ProjectVersionInt does *not* contain the patchlevel (rationale: this +# figure is used for conditional compilations, and library interfaces +# etc. are not supposed to change between patchlevels). +# +# The ProjectVersionInt is included in interface files, and GHC +# checks that it's reading interface generated by the same ProjectVersion +# as itself. It does this even though interface file syntax may not +# change between versions. Rationale: calling conventions or other +# random .o-file stuff might change even if the .hi syntax doesn't + +ProjectVersion = @ProjectVersion@ +ProjectVersionInt = @ProjectVersionInt@ +ProjectPatchLevel = @ProjectPatchLevel@ + +################################################################################ +# +# Platform variables # ################################################################################ @@ -127,6 +148,12 @@ BuildVendor_CPP = @BuildVendor_CPP@ @TargetVendor_CPP@_TARGET_VENDOR = 1 @BuildVendor_CPP@_BUILD_VENDOR = 1 +################################################################################ +# +# Global configuration options +# +################################################################################ + # Leading underscores on symbol names in object files # Valid options: YES/NO # @@ -142,14 +169,6 @@ else Windows=NO endif -################################################################################ -# -# project-wide flags -# -# Set of options applicable to all fptools projects -# -################################################################################ - # BootingFromHc - build GHC and the libraries from .hc files? BootingFromHc = @BootingFromHc@ @@ -157,39 +176,6 @@ BootingFromHc = @BootingFromHc@ # rather than registerised code, i.e., disable the mangler? BootingFromUnregisterisedHc = @BootingFromUnregisterisedHc@ -# Build Order: we build Happy, Haddock and Alex before GHC if they are -# in this source tree, just in case our GHC build depends on these -# local builds rather than installed versions of the tools. -# -# Build the libs first if we're bootstrapping from .hc files. -ifeq "$(BootingFromHc)" "YES" -AllProjects = glafp-utils happy alex haddock libraries hslibs ghc greencard hdirect hood nofib docs -else -AllProjects = glafp-utils happy alex haddock ghc libraries hslibs greencard hdirect hood nofib docs -endif - -# -# (OPTIONAL) set ProjectsToBuild to a list of projects to be built. If this -# list is empty, then all projects present in the source tree will be built. -# -ProjectsToBuild = - -# -# set ProjectsDontInstall to a list of projects which are normally built but -# not installed. -# -ProjectsDontInstall = glafp-utils nofib - -# -# Should the various project tests directories be built? -# -IncludeTestDirsInBuild=NO - -# -# Should the various project example directories be built? -# -IncludeExampleDirsInBuild=NO - # # Which ways should DocBook XML documents be built? # options are: dvi ps pdf html chm HxS @@ -198,18 +184,9 @@ XMLDocWays= ################################################################################ # -# GHC project -# -# Set of (configurable) options needed by the ghc tree -# plus their default options (if any). -# -################################################################################ - -#--------------------------------------------------------------- -# # Variables that control how the compiler itself is built # -#--------------------------------------------------------------- +################################################################################ # The compiler used to build GHC is $(GHC). To change the actual compiler # used, re-configure with --with-ghc=. @@ -219,7 +196,7 @@ XMLDocWays= GhcCompilerWays= # Extra option flags to pass to the compiler that compiles the compiler -# (Ones that are essential are wired into ghc/compiler/Makefile) +# (Ones that are essential are wired into compiler/Makefile) # Typical options to use here: # # -DDEBUG include debugging code and assertions (will make the @@ -297,6 +274,25 @@ endif BuildingParallel=$(subst mp,YES,$(filter mp,$(WAYS))) BuildingGranSim=$(subst mg,YES,$(filter mg,$(WAYS))) +# Interface file version (hi-boot files only) +# +# A GHC built with HscIfaceFileVersion=n will look for +# M.hi-boot-n, and only then for +# M.hi-boot. +# (It'll be happy with the latter if the former doesn't exist.) +# +# +# This variable is used ONLY for hi-boot files. Its only purpose is +# to allow you to have a single directory with multiple .hi-boot files +# for the same module, each corresponding to a different version of +# GHC. +# +# HscIfaceFileVersion is propagated to hsc via +# compiler/main/Config.hs, which is automatically generated by +# compiler/Makefile. + +HscIfaceFileVersion=6 + #------------------------------------------------------------------------------ # Options for Libraries @@ -380,23 +376,6 @@ ifeq "$(TargetArch_CPP)" "ia64" SplitObjs=NO endif -# ---------------------------------------------------------------------------- -# Options for GHC's RTS - -# For an optimised RTS (you probably don't want to change these; we build -# a debugging RTS by default now. Use -debug to get it). -GhcRtsHcOpts=-optc-O2 -GhcRtsCcOpts=-fomit-frame-pointer - -# Include the front panel code? Needs GTK+. -GhcRtsWithFrontPanel = NO - -################################################################################ -# -# libraries project -# -################################################################################ - # Build the Haskell Readline bindings? # GhcLibsWithReadline=@GhcLibsWithReadline@ @@ -424,41 +403,20 @@ DotnetSupport=@DotnetSupport@ # GhcLibsWithUnix=@GhcLibsWithUnix@ -################################################################################ -# -# happy project -# -# Happy specific options -# -################################################################################ - -# The compiler you'd like to use to compile Happy -WithHappyHc = @WithHc@ - -# HappyHcOpts gives the flags to pass to the Haskell compiler used -# to compile the Happy sources with. -# -HappyHcOpts = -O +# ---------------------------------------------------------------------------- +# Options for GHC's RTS -################################################################################ -# -# haggis project -# -# Haggis specific options -# -################################################################################ +# For an optimised RTS (you probably don't want to change these; we build +# a debugging RTS by default now. Use -debug to get it). +GhcRtsHcOpts=-optc-O2 +GhcRtsCcOpts=-fomit-frame-pointer -################################################################################ -# -# greencard project -# -# GreenCard specific options -# -################################################################################ +# Include the front panel code? Needs GTK+. +GhcRtsWithFrontPanel = NO ################################################################################ # -# nofib project +# nofib # # nofib specific options # @@ -488,14 +446,6 @@ NoFibHcOpts = -O # Number of times to run each program NoFibRuns = 5 -# ============================================================================== -# -# END OF PROJECT-SPECIFIC STUFF -# -# Now come the generic configuration options -# -# ============================================================================== - ################################################################################ # # Paths (see paths.mk) @@ -553,11 +503,11 @@ libdir = $(prefix) else # -# Unix: override libdir and datadir to put project-specific stuff in +# Unix: override libdir and datadir to put ghc-specific stuff in # a subdirectory with the version number included. # -libdir = $(if $(ProjectNameShort),$(libdir0)/$(ProjectNameShort)-$(ProjectVersion),$(libdir0)) -datadir = $(if $(ProjectNameShort),$(datadir0)/$(ProjectNameShort)-$(ProjectVersion),$(datadir0)) +libdir = $(libdir0)/ghc-$(ProjectVersion) +datadir = $(datadir0)/ghc-$(ProjectVersion) endif # Windows @@ -658,50 +608,141 @@ GC_CPP_OPTS += -P -E -x c -traditional -D__GLASGOW_HASKELL__ ################################################################################ # -# Utilities programs: where to find them +# Layout of the source tree # ################################################################################ -#----------------------------------------------------------------------------- -# FPtools Utility locations - -# By default, the various utils needed to be build ghc and chums -# is set up to point to the utils/ directory. Define here the -# path prefix for the utilities. Notice that it's a prefix with -# a trailing slash, so that it can be concatenated directly on -# front of a program name; if it's not set then we just look -# along the shell's $(PATH) -# -# If instead you want to use installed or your own versions of these, -# override the various *_PREFIX in build.mk, i.e., having the following -# in build.mk: -# -# MKDEPENDC_PREFIX= -# -# will force `make' to rummage around in your PATH to find `mkdependC' (not -# sure it would need it in the first place, but still). -# -GLAFP_UTILS = $(FPTOOLS_TOP)/glafp-utils +# 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_REL) +# indicates a directory relative to the top of the source tree, whereas +# $(GHC_FOO_DIR) is a directory relative to the current directory. +# $(GHC_FOO_DIR_ABS) is the absolute path to the directory. + +GHC_UTILS_DIR_REL = utils +GHC_INCLUDE_DIR_REL = includes +GHC_COMPILER_DIR_REL = compiler +GHC_RTS_DIR_REL = rts +GHC_UTILS_DIR_REL = utils +GHC_DRIVER_DIR_REL = driver +GHC_COMPAT_DIR_REL = compat + +GHC_MKDEPENDC_DIR_REL = $(GHC_UTILS_DIR_REL)/mkdependC +GHC_LTX_DIR_REL = $(GHC_UTILS_DIR_REL)/ltx +GHC_RUNTEST_DIR_REL = $(GHC_UTILS_DIR_REL)/runstdtest +GHC_LNDIR_DIR_REL = $(GHC_UTILS_DIR_REL)/lndir +GHC_MKDIRHIER_DIR_REL = $(GHC_UTILS_DIR_REL)/mkdirhier +GHC_DOCBOOK_DIR_REL = $(GHC_UTILS_DIR_REL)/docbook +GHC_UNLIT_DIR_REL = $(GHC_UTILS_DIR_REL)/unlit +GHC_HP2PS_DIR_REL = $(GHC_UTILS_DIR_REL)/hp2ps +GHC_HSTAGS_DIR_REL = $(GHC_UTILS_DIR_REL)/hasktags +GHC_HSC2HS_DIR_REL = $(GHC_UTILS_DIR_REL)/hsc2hs +GHC_TOUCHY_DIR_REL = $(GHC_UTILS_DIR_REL)/touchy +GHC_PKG_DIR_REL = $(GHC_UTILS_DIR_REL)/ghc-pkg +GHC_GENPRIMOP_DIR_REL = $(GHC_UTILS_DIR_REL)/genprimopcode +GHC_GENAPPLY_DIR_REL = $(GHC_UTILS_DIR_REL)/genapply + +GHC_MANGLER_DIR_REL = $(GHC_DRIVER_DIR_REL)/mangler +GHC_SPLIT_DIR_REL = $(GHC_DRIVER_DIR_REL)/split +GHC_SYSMAN_DIR_REL = $(GHC_RTS_DIR_REL)/parallel + +GHC_UTILS_DIR = $(FPTOOLS_TOP)/$(GHC_UTILS_DIR_REL) +GHC_INCLUDE_DIR = $(FPTOOLS_TOP)/$(GHC_INCLUDE_DIR_REL) +GHC_COMPILER_DIR = $(FPTOOLS_TOP)/$(GHC_COMPILER_DIR_REL) +GHC_RTS_DIR = $(FPTOOLS_TOP)/$(GHC_RTS_DIR_REL) +GHC_UTILS_DIR = $(FPTOOLS_TOP)/$(GHC_UTILS_DIR_REL) +GHC_DRIVER_DIR = $(FPTOOLS_TOP)/$(GHC_DRIVER_DIR_REL) +GHC_COMPAT_DIR = $(FPTOOLS_TOP)/$(GHC_COMPAT_DIR_REL) + +GHC_MKDEPENDC_DIR = $(FPTOOLS_TOP)/$(GHC_MKDEPENDC_DIR_REL) +GHC_LTX_DIR = $(FPTOOLS_TOP)/$(GHC_LTX_DIR_REL) +GHC_RUNTEST_DIR = $(FPTOOLS_TOP)/$(GHC_RUNTEST_DIR_REL) +GHC_LNDIR_DIR = $(FPTOOLS_TOP)/$(GHC_LNDIR_DIR_REL) +GHC_MKDIRHIER_DIR = $(FPTOOLS_TOP)/$(GHC_MKDIRHIER_DIR_REL) +GHC_DOCBOOK_DIR = $(FPTOOLS_TOP)/$(GHC_DOCBOOK_DIR_REL) +GHC_UNLIT_DIR = $(FPTOOLS_TOP)/$(GHC_UNLIT_DIR_REL) +GHC_HP2PS_DIR = $(FPTOOLS_TOP)/$(GHC_HP2PS_DIR_REL) +GHC_HSTAGS_DIR = $(FPTOOLS_TOP)/$(GHC_HSTAGS_DIR_REL) +GHC_HSC2HS_DIR = $(FPTOOLS_TOP)/$(GHC_HSC2HS_DIR_REL) +GHC_TOUCHY_DIR = $(FPTOOLS_TOP)/$(GHC_TOUCHY_DIR_REL) +GHC_PKG_DIR = $(FPTOOLS_TOP)/$(GHC_PKG_DIR_REL) +GHC_GENPRIMOP_DIR = $(FPTOOLS_TOP)/$(GHC_GENPRIMOP_DIR_REL) +GHC_GENAPPLY_DIR = $(FPTOOLS_TOP)/$(GHC_GENAPPLY_DIR_REL) + +GHC_MANGLER_DIR = $(FPTOOLS_TOP)/$(GHC_MANGLER_DIR_REL) +GHC_SPLIT_DIR = $(FPTOOLS_TOP)/$(GHC_SPLIT_DIR_REL) +GHC_SYSMAN_DIR = $(FPTOOLS_TOP)/$(GHC_SYSMAN_DIR_REL) + +GHC_UTILS_DIR_ABS = $(FPTOOLS_TOP_ABS)/$(GHC_UTILS_DIR_REL) +GHC_INCLUDE_DIR_ABS = $(FPTOOLS_TOP_ABS)/$(GHC_INCLUDE_DIR_REL) +GHC_COMPILER_DIR_ABS = $(FPTOOLS_TOP_ABS)/$(GHC_COMPILER_DIR_REL) +GHC_RTS_DIR_ABS = $(FPTOOLS_TOP_ABS)/$(GHC_RTS_DIR_REL) +GHC_UTILS_DIR_ABS = $(FPTOOLS_TOP_ABS)/$(GHC_UTILS_DIR_REL) +GHC_DRIVER_DIR_ABS = $(FPTOOLS_TOP_ABS)/$(GHC_DRIVER_DIR_REL) +GHC_COMPAT_DIR_ABS = $(FPTOOLS_TOP_ABS)/$(GHC_COMPAT_DIR_REL) + +GHC_MKDEPENDC_DIR_ABS = $(FPTOOLS_TOP_ABS)/$(GHC_MKDEPENDC_DIR_REL) +GHC_LTX_DIR_ABS = $(FPTOOLS_TOP_ABS)/$(GHC_LTX_DIR_REL) +GHC_RUNTEST_DIR_ABS = $(FPTOOLS_TOP_ABS)/$(GHC_RUNTEST_DIR_REL) +GHC_LNDIR_DIR_ABS = $(FPTOOLS_TOP_ABS)/$(GHC_LNDIR_DIR_REL) +GHC_MKDIRHIER_DIR_ABS = $(FPTOOLS_TOP_ABS)/$(GHC_MKDIRHIER_DIR_REL) +GHC_DOCBOOK_DIR_ABS = $(FPTOOLS_TOP_ABS)/$(GHC_DOCBOOK_DIR_REL) +GHC_UNLIT_DIR = $(FPTOOLS_TOP_ABS)/$(GHC_UNLIT_DIR_REL) +GHC_HP2PS_DIR_ABS = $(FPTOOLS_TOP_ABS)/$(GHC_HP2PS_DIR_REL) +GHC_HSTAGS_DIR_ABS = $(FPTOOLS_TOP_ABS)/$(GHC_HSTAGS_DIR_REL) +GHC_HSC2HS_DIR_ABS = $(FPTOOLS_TOP_ABS)/$(GHC_HSC2HS_DIR_REL) +GHC_TOUCHY_DIR_ABS = $(FPTOOLS_TOP_ABS)/$(GHC_TOUCHY_DIR_REL) +GHC_PKG_DIR_ABS = $(FPTOOLS_TOP_ABS)/$(GHC_PKG_DIR_REL) +GHC_GENPRIMOP_DIR_ABS = $(FPTOOLS_TOP_ABS)/$(GHC_GENPRIMOP_DIR_REL) +GHC_GENAPPLY_DIR_ABS = $(FPTOOLS_TOP_ABS)/$(GHC_GENAPPLY_DIR_REL) + +GHC_MANGLER_DIR_ABS = $(FPTOOLS_TOP_ABS)/$(GHC_MANGLER_DIR_REL) +GHC_SYSMAN_DIR_ABS = $(FPTOOLS_TOP_ABS)/$(GHC_SYSMAN_DIR_REL) +GHC_SPLIT_DIR_ABS = $(FPTOOLS_TOP_ABS)/$(GHC_SPLIT_DIR_REL) -SCRIPT_PREFIX = $(GLAFP_UTILS)/scripts/ -MKDEPENDC_PREFIX = $(GLAFP_UTILS)/mkdependC/ -LTX_PREFIX = $(GLAFP_UTILS)/ltx/ -RUNTEST_PREFIX = $(GLAFP_UTILS)/runstdtest/ -VERBATIM_PREFIX = $(GLAFP_UTILS)/verbatim/ -SGMLVERB_PREFIX = $(GLAFP_UTILS)/sgmlverb/ -ETAGS_PREFIX = $(GLAFP_UTILS)/etags/ -LNDIR_PREFIX = $(GLAFP_UTILS)/lndir/ -MKDIRHIER_PREFIX = $(GLAFP_UTILS)/mkdirhier/ -DOCBOOK_PREFIX = $(GLAFP_UTILS)/docbook/ - -HADDOCK_PREFIX = $(FPTOOLS_TOP)/haddock/ +# ----------------------------------------------------------------------------- +# Names of programs in the GHC tree +# +# xxx_PGM the name of an executable, without the path +# xxx the executable relative to the current dir + +GHC_UNLIT_PGM = unlit$(exeext) +GHC_HSTAGS_PGM = hasktags +GHC_HSC2HS_INPLACE_PGM = hsc2hs-inplace +GHC_TOUCHY_PGM = touchy$(exeext) +GHC_MANGLER_PGM = ghc-asm +GHC_SPLIT_PGM = ghc-split +GHC_SYSMAN_PGM = SysMan +GHC_PKG_INPLACE_PGM = ghc-pkg-inplace +GHC_GENPRIMOP_PGM = genprimopcode +GHC_GENAPPLY_PGM = genapply +GHC_MKDEPENDC_PGM = mkdependC +GHC_LTX_PGM = ltx +GHC_MKDIRHIER_PGM = mkdirhier +GHC_LNDIR_PGM = lndir +GHC_RUNTEST_PGM = runstdtest -LITERATE_PREFIX = $(FPTOOLS_TOP)/literate/ +ifeq "$(TARGETPLATFORM)" "i386-unknown-mingw32" +GHC_CP = "xcopy /y" +GHC_PERL = perl +else +GHC_CP = $(CP) +GHC_PERL = $(PERL) +endif -UNLIT_PREFIX = $(FPTOOLS_TOP)/ghc/utils/unlit/ -HP2PS_PREFIX = $(FPTOOLS_TOP)/ghc/utils/hp2ps/ -HSTAGS_PREFIX = $(FPTOOLS_TOP)/ghc/utils/hasktags/ -HSC2HS_PREFIX = $(FPTOOLS_TOP)/ghc/utils/hsc2hs/ +UNLIT = $(GHC_UNLIT_DIR)/$(GHC_UNLIT_PGM) +HSTAGS = $(GHC_HSTAGS_DIR)/$(GHC_HSTAGS_PGM) +HSC2HS_INPLACE = $(GHC_HSC2HS_DIR)/$(GHC_HSC2HS_INPLACE_PGM) +MANGLER = $(GHC_MANGLER_DIR)/$(GHC_MANGLER_PGM) +SPLIT = $(GHC_SPLIT_DIR)/$(GHC_SPLIT_PGM) +SYSMAN = $(GHC_SYSMAN_DIR)/$(GHC_SYSMAN_PGM) +GHC_PKG_INPLACE = $(GHC_PKG_DIR)/$(GHC_PKG_INPLACE_PGM) +GENPRIMOP = $(GHC_GENPRIMOP_DIR)/$(GHC_GENPRIMOP_PGM) +GENAPPLY = $(GHC_GENAPPLY_DIR)/$(GHC_GENAPPLY_PGM) +MKDEPENDC = $(GHC_MKDEPENDC_DIR)/$(GHC_MKDEPENDC_PGM) +LTX = $(GHC_LTX_DIR)/$(GHC_LTX_PGM) +MKDIRHIER = $(GHC_MKDIRHIER_DIR)/$(GHC_MKDIRHIER_PGM) +LNDIR = $(GHC_LNDIR_DIR)/$(GHC_LNDIR_PGM) +RUNTEST = $(GHC_RUNTEST_DIR)/$(GHC_RUNTEST_PGM) #----------------------------------------------------------------------------- # Haskell compilers and mkdependHS @@ -722,6 +763,9 @@ GhcMajVersion = @GhcMajVersion@ GhcMinVersion = @GhcMinVersion@ GhcPatchLevel = @GhcPatchLevel@ +# Set to YES if $(GHC) has the readline package installed +GhcHasReadline = @GhcHasReadline@ + # Canonicalised ghc version number, used for easy (integer) version # comparisons. We must expand $(GhcMinVersion) to two digits by # adding a leading zero if necessary: @@ -734,17 +778,45 @@ endif HBC = @HBC@ NHC = @NHC@ +# Setting UseStage1=YES forces use of the stage1 compiler to compile +# Haskell code, rather than the installed compiler. +ifeq "$(UseStage1)" "YES" +HC =$(GHC_STAGE1) +MKDEPENDHS =$(GHC_STAGE1) +else HC = @WithHc@ MKDEPENDHS = $(GHC) +endif # Sometimes we want to invoke ghc from the build tree in different -# projects (eg. it's handy to have a nofib & a ghc build in the same +# 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): -GHC_INPLACE = $(FPTOOLS_TOP)/ghc/compiler/ghc-inplace -GHC_STAGE1 = $(FPTOOLS_TOP)/ghc/compiler/stage1/ghc-inplace -GHC_STAGE2 = $(FPTOOLS_TOP)/ghc/compiler/stage2/ghc-inplace -GHC_STAGE3 = $(FPTOOLS_TOP)/ghc/compiler/stage3/ghc-inplace +GHC_INPLACE = $(GHC_COMPILER_DIR)/ghc-inplace +GHC_STAGE1 = $(GHC_COMPILER_DIR)/stage1/ghc-inplace +GHC_STAGE2 = $(GHC_COMPILER_DIR)/stage2/ghc-inplace +GHC_STAGE3 = $(GHC_COMPILER_DIR)/stage3/ghc-inplace + +# Some useful GHC version predicates: + +ifeq "$(UseStage1)" "YES" +ghc_ge_504 = YES +ghc_ge_601 = YES +ghc_ge_602 = YES +ghc_ge_603 = YES +else +ifeq "$(BootingFromHc)" "YES" +ghc_ge_504 = YES +ghc_ge_601 = YES +ghc_ge_602 = YES +ghc_ge_603 = YES +else +ghc_ge_504 = $(shell if (test $(GhcCanonVersion) -ge 504); then echo YES; else echo NO; fi) +ghc_ge_601 = $(shell if (test $(GhcCanonVersion) -ge 601); then echo YES; else echo NO; fi) +ghc_ge_602 = $(shell if (test $(GhcCanonVersion) -ge 602); then echo YES; else echo NO; fi) +ghc_ge_603 = $(shell if (test $(GhcCanonVersion) -ge 603); then echo YES; else echo NO; fi) +endif +endif #----------------------------------------------------------------------------- # C compiler @@ -859,7 +931,7 @@ LdIsGNULd = @LdIsGNULd@ # The reason for having to do this is that overly long command lines # cause unnecessary trouble with some shells (e.g., /bin/sh on Solaris # 2.5.1), which is why this backdoor is provided. The situation of overly -# long command lines is either encountered while doing `make boot' in ghc/compiler, +# long command lines is either encountered while doing `make boot' in compiler/, # or when linking the compiler binary (`hsc'). # # We do not use SHELL to execute long commands, as `make' will more than likely @@ -893,6 +965,9 @@ TIME = @TimeCmd@ TROFF = troff UNAME = uname +# GTK+ +GTK_CONFIG = @GTK_CONFIG@ + #----------------------------------------------------------------------------- # DocBook XML stuff @@ -912,16 +987,6 @@ XSLTPROC_LABEL_OPTS = --stringparam toc.section.depth 3 \ #----------------------------------------------------------------------------- # FPtools support software -# Stuff from fptools/glafp-utils -MKDEPENDC = $(MKDEPENDC_PREFIX)mkdependC -LTX = $(LTX_PREFIX)ltx -MKDIRHIER = $(MKDIRHIER_PREFIX)mkdirhier -LNDIR = $(LNDIR_PREFIX)lndir -ETAGS = $(ETAGS_PREFIX)etags -VERBATIM = $(VERBATIM_PREFIX)verbatim -SGMLVERB = $(SGMLVERB_PREFIX)sgmlverb -RUNTEST = $(RUNTEST_PREFIX)runstdtest - BLD_DLL = dllwrap # @@ -969,31 +1034,9 @@ GHC_ALEX_OPTS = -g # Haddock # HADDOCK = @HaddockCmd@ -HADDOCK_INPLACE = $(HADDOCK_PREFIX)/src/haddock-inplace - -# -# Stuff from fptools/literate -# -LIT2PGM = $(LITERATE_PREFIX)lit2pgm -LIT2HTML = $(LITERATE_PREFIX)lit2html -LIT2LATEX = $(LITERATE_PREFIX)lit2latex -MKDEPENDLIT = $(LITERATE_PREFIX)mkdependlit -LIT2CHANGELOG = $(LITERATE_PREFIX)lit2changelog -LIT2TEXT = $(LITERATE_PREFIX)lit2text - -# -# Stuff from fptools/ghc/utils -# -UNLIT = $(UNLIT_PREFIX)unlit$(exeext) -HP2PS = $(HP2PS_PREFIX)hp2ps$(exeext) -HSTAGS = $(HSTAGS_PREFIX)hasktags -HSC2HS = $(HSC2HS_PREFIX)hsc2hs-inplace # -# Options for the compiling different `ways'. Various projects within -# the glorious fptools tree support building in various user-configured -# ways. For instance, you could set up one `way' such that the prelude -# libraries all were built with the option -ffoldr-build-on. +# Options for compiling in different `ways'. # # To configure up your own way, have a look at some of the standard ways # such as profiling, and create your own set of WAY_*_OPTS defs below. @@ -1003,15 +1046,6 @@ HSC2HS = $(HSC2HS_PREFIX)hsc2hs-inplace # # -# IMPORTANT! The WAYS variable configures the different `ways' -# you want to build a project (or maybe just parts of it, as is -# the case for ghc/). This variable is intended set inside the -# project mk setup, enforcing a global fptools WAYS is a bit too -# much (do you *really* want to build glafp-utils the profiled-concurrent -# way?) -# - -# # Definitions of the different ways: # # * their name: @@ -1032,7 +1066,7 @@ USER_WAYS=a b c d e f g h j k l m n o A B # The following ways currently have treated specially, p u t mg, # as the driver script treats these guys specially and needs to carefully be told # about the options for these. Hence, we hide the required command line options -# for these in the ghc/driver, as this is the only place they are needed. +# for these in the driver, as this is the only place they are needed. # # If you want to add to these default options, fill in the variables below: