[project @ 2000-11-03 17:09:00 by simonmar]
[ghc-hetmet.git] / mk / config.mk.in
index fc7908c..b83135e 100644 (file)
@@ -141,22 +141,8 @@ IncludeTestDirsInBuild=NO
 #
 #---------------------------------------------------------------
 
-# Specify the Haskell compiler to be used to compile the compiler itself
-#
-#   WithGhcHc     Path name of the compiler to use
-#
-#   WithGhcHcType  What "type" of compiler is being used
-#                 Valid options:
-#                           HC_CHALMERS_HBC
-#                           HC_GLASGOW_GHC
-#                           HC_ROJEMO_NHC
-#                           HC_UNSPECIFIED
-
-WithGhcHc = @WithHc@
-
-# Variable which is set to the version number of the $(WithGhcHc) we're using.
-# Not currently used, but might come in handy sometime soon.
-#WithGhcHcVersion = $(shell echo `if ( $(WithGhcHc) --version 2>/dev/null >/dev/null ) then $(WithGhcHc) --version 2>&1 | @SedCmd@ -e 's/^.*version [^0-9]*\([.0-9]*\).*/\1/;s/\.//'; else echo unknown; fi; ` )
+# 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)
@@ -178,16 +164,23 @@ GhcHcOpts=-O
 # GhcWithHscBuiltViaC - build GHC compiler proper (\`hsc') from .hc files?
 GhcWithHscBuiltViaC=@BootingFromHc@
 
-# Build a registerised version of hsc and runtime
-# (unregisterised used for Hugs at the moment)
-GhcWithRegisterised=YES
-
 # Build a compiler with a native code generator backend
 # (as well as a C backend)
 #
 # Target platforms supported:
 #   i386, alpha & sparc
-GhcWithNativeCodeGen=$(shell if (test x$(findstring $(HostArch_CPP),i386 alpha sparc) = x); then echo NO; else echo YES; fi)
+ifneq "$(findstring $(HostArch_CPP), i386 alpha sparc)" ""
+GhcWithNativeCodeGen=YES
+else
+GhcWithNativeCodeGen=NO
+endif
+
+# Include GHCi in the compiler
+ifneq "$(findstring $(HostOS_CPP), linux solaris freebsd netbsd openbsd)" ""
+GhcWithInterpreter=YES
+else 
+GhcWithInterpreter=NO
+endif
 
 #
 # Building various ways?
@@ -370,9 +363,9 @@ NoFibHcOpts = -O
 # to somewhere with more space.  (TMPDIR=. is a good choice).
 
 # DEFAULT_TMPDIR isn't called TMPDIR because GNU make tends to
-# override the environment variable with the value of the make
-# variable when executing sub-processes, so setting the TMPDIR env var
-# would have no effect in the build tree.
+# 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
 
@@ -514,8 +507,11 @@ HSTAGS_PREFIX           = $(FPTOOLS_TOP)/ghc/utils/hstags/
 #
 # $(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            = @GHC@
+GHC            = @WithGhc@
 GhcVersion     = @GhcVersion@
 GhcMajVersion  = @GhcMajVersion@
 GhcMinVersion  = @GhcMinVersion@
@@ -529,11 +525,9 @@ MKDEPENDHS = $(HC)
 
 # 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
-# tree).  We can refer to "this ghc" as $(GHC_INPLACE).
-# The addition to PATH makes the inplace GHC pick up the right
-# DLLs under Windows; it won't have any effect on other platforms.
+# tree).  We can refer to "this ghc" as $(GHC_INPLACE):
 
-GHC_INPLACE    = PATH=$(FPTOOLS_TOP)/dll:$$PATH $(FPTOOLS_TOP)/ghc/driver/ghc-inplace
+GHC_INPLACE    = $(FPTOOLS_TOP)/ghc/compiler/ghc-inplace
 
 #-----------------------------------------------------------------------------
 # C compiler