fix the build with GHC 6.4 (not 6.4.1)
[ghc-hetmet.git] / ghc / lib / compat / Makefile
index 9cc0395..7637c94 100644 (file)
@@ -17,6 +17,9 @@ LIBRARY = libghccompat.a
 # We don't want this installed
 NO_INSTALL_LIBRARY = YES
 
+# Avoid building the GHCi lib, since we don't need it
+GhcWithInterpreter = NO
+
 # Needed so that the libraries can #include relative to this directory.
 INCLUDE_DIRS=-I. -Iinclude
 
@@ -40,6 +43,11 @@ UseGhcForCc = YES
 # compiling with (e.g. 6.2.1). Hence the filter-out.
 SRC_HC_OPTS += $(filter-out -D%, $(GhcHcOpts)) 
 
+# GHC 6.4 didn't have WCsubst.c, but 6.4.1 did, and we need to know
+# this in cbits/unicode.c The patchlevel isn't normally exposed as a
+# CPP symbol, so we have to do it by hand:
+SRC_CC_OPTS += -D__GHC_PATCHLEVEL__=$(GhcPatchLevel)
+
 ifeq "$(ghc_ge_603)" "YES"
 # These modules are provided in GHC 6.3+
 EXCLUDED_SRCS += \
@@ -65,6 +73,9 @@ Distribution/ParseUtils.$(way_)o :  $(FPTOOLS_TOP)/libraries/Cabal/Distribution/
 Distribution/Compiler.$(way_)o :  $(FPTOOLS_TOP)/libraries/Cabal/Distribution/Compiler.hs
 Distribution/Version.$(way_)o :  $(FPTOOLS_TOP)/libraries/Cabal/Distribution/Version.hs
 Language/Haskell/Extension.$(way_)o :  $(FPTOOLS_TOP)/libraries/Cabal/Language/Haskell/Extension.hs
+cbits/unicode.o : $(FPTOOLS_TOP)/libraries/base/cbits/WCsubst.c $(FPTOOLS_TOP)/libraries/base/include/WCsubst.h
+
+SRC_CC_OPTS += -I$(FPTOOLS_TOP)/libraries/base/cbits -I$(FPTOOLS_TOP)/libraries/base/include
 
 # Make the #includes in the stubs independent of the current location
 SRC_HC_OPTS += -I$(FPTOOLS_TOP)/libraries