Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

789 lines (653 sloc) 25.907 kb
# -*-makefile-*-
# @configure_input@
#
################################################################################
#
# config.mk.in
#
# This file supplies defaults for many tweakable build configuration
# options. Some of the defaults are filled in by the autoconf-generated
# configure script.
#
# DO NOT EDIT THIS FILE!
#
# - config.mk is auto-generated from config.mk.in by configure.
# If you edit config.mk your changes will be spammed.
#
# - Settings in this file may be overriden by giving replacement
# definitions in build.mk. See build.mk.sample for a good
# starting point for a build.mk file.
#
# If you don't have a build.mk file then you get defaults for everything.
# The defaults should provide a reasonable vanilla build.
# TOP: the top of the fptools hierarchy, absolute path.
# On Windows this is a c:/foo/bar style path.
TOP = @hardtop@
include $(TOP)/mk/project.mk
################################################################################
#
# Global configuration options
#
################################################################################
# BootingFromHc - build GHC and the libraries from .hc files?
# (unregisterised only)
BootingFromHc = @BootingFromHc@
NO_INCLUDE_DEPS = NO
NO_INCLUDE_PKGDATA = NO
# Should we build latex docs?
LATEX_DOCS = NO
# Mac OS X deployment target (to cross-compile for older OS versions)
#
MACOSX_DEPLOYMENT_VERSION = @MACOSX_DEPLOYMENT_VERSION@
MACOSX_DEPLOYMENT_SDK = @MACOSX_DEPLOYMENT_SDK@
ifneq "$(MACOSX_DEPLOYMENT_VERSION)" ""
MACOSX_DEPLOYMENT_CC_OPTS = -mmacosx-version-min=$(MACOSX_DEPLOYMENT_VERSION) \
-isysroot $(MACOSX_DEPLOYMENT_SDK) \
--no-builtin-fprintf
MACOSX_DEPLOYMENT_LD_OPTS = -mmacosx-version-min=$(MACOSX_DEPLOYMENT_VERSION) \
-Wl,-syslibroot,$(MACOSX_DEPLOYMENT_SDK)
# We don't extend SRC_CC_OPTS and friends here directly, as (a) they may get
# overwritten in build.mk and (b) we must not use the deployment options in
# stage 1 or we get a linker error if the bootstrap compiler is for a more
# recent OS version.
#
# We need --no-builtin-fprintf, as the use of the builtin function optimisation
# for fprintf together with #include "PosixSource" in the RTS leads to the
# use of fwrite$UNIX2003 (with GCC 4.0.1 on Mac OS X 10.5.2).
endif
################################################################################
#
# 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=<path-to-ghc>.
# Extra ways in which to build the compiler (for example, you might want to
# build a profiled compiler so you can see where it spends its time)
GhcCompilerWays=
# Extra option flags to pass to the compiler that compiles the compiler
# (Ones that are essential are wired into compiler/Makefile)
# Typical options to use here:
#
# -DDEBUG include debugging code and assertions (will make the
# compiler slower and produce debugging output, but useful
# for development)
#
# -dcore-lint check the types after every pass of the compiler;
# a pretty strong internal check of the compiler being
# used to compile GHC. Useful when bootstrapping.
GhcHcOpts=-Rghc-timing
# Extra options added to specific stages of the compiler bootstrap.
# These are placed later on the command line, and may therefore
# override options from $(GhcHcOpts).
GhcStage1HcOpts=
GhcStage2HcOpts=-O2
GhcStage3HcOpts=-O2
GhcProfiled=NO
GhcDebugged=NO
GhcLibProfiled=$(if $(filter p,$(GhcLibWays)),YES,NO)
# Do we support shared libs?
PlatformSupportsSharedLibs = $(if $(filter $(TARGETPLATFORM),i386-unknown-linux x86_64-unknown-linux),YES,NO)
# ToDo later:
# BuildStaticLibs=@BuildStaticLibs@
# Build a compiler that will build *unregisterised* libraries and
# binaries by default. Unregisterised code is supposed to compile and
# run without any support for architecture-specific assembly mangling,
# register assignment or tail-calls, and is therefore a good way to get
# started when porting GHC to new architectures.
#
# If this is set to NO, you can still use the unregisterised way
# (way 'u') to get unregisterised code, but the default way will be
# registerised.
#
# NOTE: the stage1 compiler will be a registerised binary (assuming
# the compiler you build with is generating registerised binaries), but
# the stage2 compiler will be an unregisterised binary.
#
ifneq "$(findstring $(HostArch_CPP), alpha hppa)" ""
GhcUnregisterised=YES
else
GhcUnregisterised=NO
endif
# Build a compiler with a native code generator backend
# (as well as a C backend)
#
# Target platforms supported:
# i386, powerpc
# AIX is not supported
ArchSupportsNCG=$(strip $(patsubst $(HostArch_CPP), YES, $(findstring $(HostArch_CPP), i386 x86_64 powerpc sparc)))
OsSupportsNCG=$(strip $(patsubst $(HostOS_CPP), YES, $(patsubst aix,,$(HostOS_CPP))))
# lazy test, because $(GhcUnregisterised) might be set in build.mk later.
GhcWithNativeCodeGen=$(strip\
$(if $(filter YESYESNO,\
$(OsSupportsNCG)$(ArchSupportsNCG)$(GhcUnregisterised)),YES,NO))
HaveLibDL = @HaveLibDL@
# ArchSupportsSMP should be set iff there is support for that arch in
# includes/stg/SMP.h
ArchSupportsSMP=$(strip $(patsubst $(HostArch_CPP), YES, $(findstring $(HostArch_CPP), i386 x86_64 sparc powerpc)))
# lazy test, because $(GhcUnregisterised) might be set in build.mk later.
GhcWithSMP=$(strip $(if $(filter YESNO, $(ArchSupportsSMP)$(GhcUnregisterised)),YES,NO))
# 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 dragonfly netbsd openbsd darwin)))
ArchSupportsGHCi=$(strip $(patsubst $(HostArch_CPP), YES, $(findstring $(HostArch_CPP), i386 x86_64 powerpc sparc sparc64)))
ifeq "$(OsSupportsGHCi)$(ArchSupportsGHCi)" "YESYES"
GhcWithInterpreter=YES
else
GhcWithInterpreter=NO
endif
# GhcEnableTablesNextToCode tells us whether the target architecture
# supports placing info tables directly before the entry code
# (see TABLES_NEXT_TO_CODE in the RTS). Whether we actually compile for
# TABLES_NEXT_TO_CODE depends on whether we're building unregisterised
# code or not, which may be decided by options to the compiler later.
ifneq "$(findstring $(TargetArch_CPP)X, ia64X powerpc64X)" ""
GhcEnableTablesNextToCode=NO
else
GhcEnableTablesNextToCode=YES
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))
ifeq "$(ArchHasAdjustorSupport)" "YES"
UseLibFFIForAdjustors=NO
else
UseLibFFIForAdjustors=YES
endif
# On Windows we normally want to make a relocatable bindist, to we
# ignore flags like libdir
ifeq "$(Windows)" "YES"
RelocatableBuild = YES
else
RelocatableBuild = NO
endif
# needs to be after $(RelocatableBuild) is set above
include $(TOP)/mk/install.mk
# When building bindists we set this to yes so that the binaries are as
# portable as possible.
BeConservative = NO
#
# Building various ways?
# (right now, empty if not).
BuildingParallel=$(subst mp,YES,$(filter mp,$(WAYS)))
BuildingGranSim=$(subst mg,YES,$(filter mg,$(WAYS)))
#------------------------------------------------------------------------------
# Options for Libraries
# Which directory (in libraries/) contains the integer library?
INTEGER_LIBRARY=integer-gmp
# We build the libraries at least the "vanilla" way (way "v")
GhcLibWays = v
# In addition to the normal sequential way, the default is to also build
# profiled prelude libraries unless we are booting from .hc files
ifneq "$(BootingFromHc)" "YES"
GhcLibWays += p
endif
ifeq "$(PlatformSupportsSharedLibs)" "YES"
GhcLibWays += dyn
endif
# Handy way to test whether we're building shared libs or not.
BuildSharedLibs=$(strip $(if $(findstring dyn,$(GhcLibWays)),YES,NO))
# In addition, the RTS is built in some further variations. Ways that
# make sense here:
#
# thr : threaded
# thr_p : threaded profiled
# debug : debugging (compile with -g for the C compiler, and -DDEBUG)
# debug_p : debugging profiled
# thr_debug : debugging threaded
# thr_debug_p : debugging threaded profiled
# l : event logging
# thr_l : threaded and event logging
#
GhcRTSWays=l
# Usually want the debug version
ifeq "$(BootingFromHc)" "NO"
GhcRTSWays += debug
endif
# Want the threaded versions unless we're unregisterised
# Defer the check until later by using $(if..), because GhcUnregisterised might
# be set in build.mk, which hasn't been read yet.
GhcRTSWays += $(if $(findstring NO, $(GhcUnregisterised)),thr thr_debug thr_l,)
GhcRTSWays += $(if $(findstring p, $(GhcLibWays)),$(if $(findstring NO, $(GhcUnregisterised)),thr_p,),)
GhcRTSWays += $(if $(findstring dyn, $(GhcLibWays)), dyn debug_dyn $(if $(findstring NO, $(GhcUnregisterised)),thr_dyn thr_debug_dyn),)
# We can only build GHCi threaded if we have a threaded RTS:
GhcThreaded = $(if $(findstring thr,$(GhcRTSWays)),YES,NO)
# Option flags to pass to GHC when it's compiling modules in
# fptools/libraries. Typically these are things like -O or
# -dcore-lint or -H32m. The ones that are *essential* are wired into
# the build system.
#
# -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
# Strip local symbols from libraries? This can make the libraries smaller,
# but makes debugging somewhat more difficult. Doesn't work with all ld's.
#
StripLibraries=NO
# These are the URL patterns that Haddock uses to generate the "Source
# File" links on each page.
PackageSourceURL = http://darcs.haskell.org/packages/$(PACKAGE)/%{FILE}
# ----------------------------------------------------------------------------
# Object-file splitting
#
# Set SplitObjs=YES or NO in your build.mk
#
# Don't use -split-objs in in GhcLibHcOpts, because the build
# system needs to do other special magic if you are
# doing object-file splitting
ArchSupportsSplitObjs=$(strip $(if $(filter $(TargetArch_CPP),i386 x86_64 powerpc sparc),YES,NO))
# 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))
# By default, enable SplitObjs for the libraries if this build supports it
SplitObjs=$(SupportsSplitObjs)
# Math library
LIBM=@LIBM@
# .NET interop support?
#
DotnetSupport=NO
# Build unix package?
#
GhcLibsWithUnix=@GhcLibsWithUnix@
CHECK_PACKAGES = NO
# ----------------------------------------------------------------------------
# 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
# Include support for CPU performance counters via the PAPI library in the RTS?
# (PAPI: http://icl.cs.utk.edu/papi/)
GhcRtsWithPapi = NO
PapiLibDir=
PapiIncludeDir=
################################################################################
#
# Paths (see paths.mk)
#
################################################################################
# Directory used by GHC (and possibly other tools) for storing
# temporary files. If your TMPDIR isn't big enough, either override
# this in build.mk or set your environment variable "TMPDIR" to point
# to somewhere with more space. (TMPDIR=. is a good choice).
# DEFAULT_TMPDIR isn't called TMPDIR because GNU make tends to
# override an environment variable with the value of the make variable
# of the same name (if it exists) when executing sub-processes, so
# setting the TMPDIR env var would have no effect in the build tree.
DEFAULT_TMPDIR = /tmp
ifeq "$(TARGETPLATFORM)" "i386-unknown-cygwin32"
DEFAULT_TMPDIR = /C/TEMP
endif
ifeq "$(TARGETPLATFORM)" "i386-unknown-mingw32"
DEFAULT_TMPDIR = /C/TEMP
endif
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)
# -----------------------------------------------------------------------------
# Utilities programs: flags
# If you want to give any standard flags to pretty much any utility
# (see utils.mk for a complete list), by adding a line here
#
# SRC_P_OPTS += ...
#
# where P is the utility. For example, to add -O to all Haskell
# compilations,
#
# SRC_HC_OPTS += -O
SRC_HC_OPTS += -H32m -O
# These flags make flex 8-bit
SRC_FLEX_OPTS += -8
# Default fptools options for dllwrap.
SRC_BLD_DLL_OPTS += --target=i386-mingw32
# Flags for CPP when running GreenCard on .pgc files
GC_CPP_OPTS += -P -E -x c -traditional -D__GLASGOW_HASKELL__
# -----------------------------------------------------------------------------
# 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_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"
GHC_PERL = perl
else
GHC_CP = $(CP)
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)
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
# $(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).
#
# NOTE: Don't override $(GHC) in build.mk, use configure --with-ghc instead
# (because the version numbers have to be calculated).
GHC := @WithGhc@
# If we have a make dependency on c:/ghc/ghc, and the file is actually
# called c:/ghc/ghc.exe, then make will think that ghc doesn't exist
# and that it doesn't know how to create it.
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):
GHC_INPLACE = $(GHC_STAGE1)
GHC_STAGE0_ABS = $(GHC)
GHC_STAGE1_ABS = $(TOP)/$(INPLACE_BIN)/ghc-stage1$(exeext)
GHC_STAGE2_ABS = $(TOP)/$(INPLACE_BIN)/ghc-stage2$(exeext)
GHC_STAGE3_ABS = $(TOP)/$(INPLACE_BIN)/ghc-stage3$(exeext)
GHC_STAGE0 = $(GHC)
GHC_STAGE1 = $(INPLACE_BIN)/ghc-stage1$(exeext)
GHC_STAGE2 = $(INPLACE_BIN)/ghc-stage2$(exeext)
GHC_STAGE3 = $(INPLACE_BIN)/ghc-stage3$(exeext)
# Install stage 2 by default, can be changed to 3
INSTALL_GHC_STAGE=2
BOOTSTRAPPING_CONF = libraries/bootstrapping.conf
INPLACE_PACKAGE_CONF = $(INPLACE_LIB)/package.conf.d
GhcVersion = @GhcVersion@
GhcPatchLevel = @GhcPatchLevel@
GhcMajVersion = @GhcMajVersion@
GhcMinVersion = @GhcMinVersion@
ghc_ge_609 = @ghc_ge_609@
ghc_ge_6102 = @ghc_ge_6102@
ghc_ge_611 = @ghc_ge_611@
# Canonicalised ghc version number, used for easy (integer) version
# comparisons. We must expand $(GhcMinVersion) to two digits by
# adding a leading zero if necessary:
ifneq "$(findstring $(GhcMinVersion), 0 1 2 3 4 5 6 7 8 9)" ""
GhcCanonVersion = $(GhcMajVersion)0$(GhcMinVersion)
else
GhcCanonVersion = $(GhcMajVersion)$(GhcMinVersion)
endif
#-----------------------------------------------------------------------------
# C compiler
#
# NB. Don't override $(WhatGccIsCalled) using build.mk, re-configure using
# 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
# 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@
ifeq "$(TARGETPLATFORM)" "ia64-unknown-linux"
CONF_CC_OPTS += -G0
endif
SRC_HSC2HS_OPTS += $(addprefix --cflag=,$(filter-out -O,$(SRC_CC_OPTS) $(CONF_CC_OPTS)))
SRC_HSC2HS_OPTS += $(foreach d,$(GMP_INCLUDE_DIRS),-I$(d))
#-----------------------------------------------------------------------------
# Mingwex Library
#
HaveLibMingwEx = @HaveLibMingwEx@
#-----------------------------------------------------------------------------
# Flex (currently unused, could be moved to glafp-utils)
# FLEX = @LEX@
# Don't bother with -lfl, we define our own yywrap()s anyway.
# FLEX_LIB =
#WAS:FLEX_LIB = @LEXLIB@
#-----------------------------------------------------------------------------
# Other standard (ha!) Unix utilities
AR = @ArCmd@
AR_OPTS = @ArArgs@
ArSupportsInput = @ArSupportsInput@
# Yuckage: for ghc/utils/parallel -- todo: nuke this dependency!!
BASH = /usr/local/bin/bash
CONTEXT_DIFF = @ContextDiffCmd@
CP = cp
CPP = @CPP@ @CPPFLAGS@
CTAGS = $(ETAGS)
#
# RAWCPP_FLAGS are the flags to give to cpp (viz, gcc -E) to persuade it to
# behave plausibly on Haskell sources.
#
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 := $(subst .././install-sh,$(TOP)/install-sh,$(INSTALL))
LATEX = latex
HEVEA = hevea
HACHA = hacha
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@
SHELL = /bin/sh
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 ""
# respectively.
LD_X = @LdXFlag@
# GNU ld supports input via a linker script, which is useful to avoid
# 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.
XARGS = xargs
ifeq "$(Windows)" "YES"
XARGS_OPTS = -s 30000
endif
#
# In emergency situations, REAL_SHELL is used to perform shell commands
# from within the ghc driver script, by scribbling the command line to
# a temp file and then having $(REAL_SHELL) execute it.
#
# 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 compiler/,
# or when linking the compiler binary (`hsc').
#
# We do not use SHELL to execute long commands, as `make' will more than likely
# override whatever setting you have in your environment while executing.
# By default, REAL_SHELL is set equal to SHELL, which is not really a smart move
# as it is SHELL that will show up the bogosity in the first place, but setting
# it to anything else isn't really portable.
#
# ====> If long command lines cause you trouble, invoke `ghc' (via `make' or otherwise)
# 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
HSCOLOUR = @HSCOLOUR@
#
# 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
TIME = @TimeCmd@
TROFF = troff
UNAME = uname
# GTK+
GTK_CONFIG = @GTK_CONFIG@
# Set this if you want to use Inno Setup to build a Windows installer
# when you make a bindist
ISCC =
#-----------------------------------------------------------------------------
# DocBook XML stuff
BUILD_DOCBOOK_HTML = @BUILD_DOCBOOK_HTML@
BUILD_DOCBOOK_PS = @BUILD_DOCBOOK_PS@
BUILD_DOCBOOK_PDF = @BUILD_DOCBOOK_PDF@
DBLATEX = @DblatexCmd@
XSLTPROC = @XsltprocCmd@
XMLLINT = @XmllintCmd@
HAVE_DOCBOOK_XSL = @HAVE_DOCBOOK_XSL@
XSLTPROC_HTML_STYLESHEET = http://docbook.sourceforge.net/release/xsl/current/html/chunk.xsl
XSLTPROC_LABEL_OPTS = --stringparam toc.section.depth 3 \
--stringparam section.autolabel 1 \
--stringparam section.label.includes.component.label 1
#-----------------------------------------------------------------------------
# FPtools support software
BLD_DLL = dllwrap
#
# ghc-pkg
#
GHC_PKG = @GhcPkgCmd@
#
# GreenCard
#
GREENCARD = @GreenCardCmd@
GREENCARD_VERSION = @GreenCardVersion@
#
# Happy
#
HAPPY = @HappyCmd@
HAPPY_VERSION = @HappyVersion@
#
# Options to pass to Happy when we're going to compile the output with GHC
#
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
#
ALEX = @AlexCmd@
ALEX_VERSION = @AlexVersion@
#
# Options to pass to Happy when we're going to compile the output with GHC
#
SRC_ALEX_OPTS = -g
HSTAGS = @HstagsCmd@
# Should we build haddock docs?
HADDOCK_DOCS = $(GhcWithInterpreter)
# And HsColour the sources?
ifeq "$(HSCOLOUR)" ""
HSCOLOUR_SRCS = NO
else
HSCOLOUR_SRCS = YES
endif
################################################################################
#
# 31-bit-Int Core files
#
################################################################################
#
# It is possible to configure the compiler and prelude to support 31-bit
# integers, suitable for a back-end and RTS using a tag bit on a 32-bit
# architecture. Currently the only useful output from this option is external Core
# files. The following additions to your build.mk will produce the
# 31-bit core output. Note that this is *not* just a library "way"; the
# compiler must be built a special way too.
# GhcCppOpts +=-DWORD_SIZE_IN_BITS=31
# GhcLibHcOpts +=-fext-core -fno-code -DWORD_SIZE_IN_BITS=31
# GhcLibCppOpts += -DWORD_SIZE_IN_BITS=31
# SplitObjs=NO
################################################################################
#
# Library configure arguments
#
################################################################################
CONFIGURE_ARGS = @CONFIGURE_ARGS@
################################################################################
#
# To be passed to sub-builds
#
################################################################################
ICONV_INCLUDE_DIRS = @ICONV_INCLUDE_DIRS@
ICONV_LIB_DIRS = @ICONV_LIB_DIRS@
################################################################################
#
# Bindist testing directory
#
################################################################################
BIN_DIST_INST_SUBDIR = "install dir"
BIN_DIST_INST_DIR = $(TOP)/bindisttest/$(BIN_DIST_INST_SUBDIR)
Jump to Line
Something went wrong with that request. Please try again.