From 71f2cb608d5cf9ed86ecbd194c03dbc356a1c4e7 Mon Sep 17 00:00:00 2001 From: Simon Marlow Date: Fri, 10 Mar 2006 11:04:09 +0000 Subject: [PATCH] fix the build with GHC 6.4 (not 6.4.1) --- ghc/lib/compat/Makefile | 5 +++++ ghc/lib/compat/cbits/unicode.c | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/ghc/lib/compat/Makefile b/ghc/lib/compat/Makefile index ae2f4ed..7637c94 100644 --- a/ghc/lib/compat/Makefile +++ b/ghc/lib/compat/Makefile @@ -43,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 += \ diff --git a/ghc/lib/compat/cbits/unicode.c b/ghc/lib/compat/cbits/unicode.c index 0e0d1c5..c744cc9 100644 --- a/ghc/lib/compat/cbits/unicode.c +++ b/ghc/lib/compat/cbits/unicode.c @@ -1,3 +1,3 @@ -#if __GLASGOW_HASKELL__ < 604 +#if __GLASGOW_HASKELL__ < 604 || (__GLASGOW_HASKELL__==604 && __GHC_PATCHLEVEL__==0) #include "WCsubst.c" #endif -- 1.7.10.4