# -----------------------------------------------------------------------------
# Haskell compilations
-SRC_HC_OPTS += \
- -cpp -fglasgow-exts -fno-generics -Rghc-timing \
- -I. -Iparser -Iutil
+SRC_HC_OPTS += -cpp -fglasgow-exts -Rghc-timing -I. -Iparser -Iutil
+
+ifeq "$(ghc_ge_609)" "NO"
+SRC_HC_OPTS += -fno-generics
+else
+SRC_HC_OPTS += -XNoGenerics
+endif
# Omitted: -I$(GHC_INCLUDE_DIR)
# We should have -I$(GHC_INCLUDE_DIR) in SRC_HC_OPTS,
PKG_DEPENDS += Win32
endif
else
-ifeq "$(bootstrapped) $(ghc_ge_601)" "NO NO"
-SRC_HC_OPTS += -package posix
-else
SRC_HC_OPTS += -package unix
PKG_DEPENDS += unix
endif
-endif
-# We use the Cabal package in stages 2/3 only; in stage 1 we're using
-# the libcompat library which provides the Cabal modules.
-ifneq "$(stage)" "1"
SRC_HC_OPTS += -package Cabal
PKG_DEPENDS += Cabal
-endif
# Ignore lang, to avoid potential clash with the Generics module if
# lang happens to be a dependency of some exposed package in the local
rename/RnMonad_HC_OPTS = -O2 -O2-for-C
endif
-utils/Digraph_HC_OPTS = -fglasgow-exts
-
# basicTypes/SrcLoc_HC_OPTS = -funbox-strict-fields
# We always optimise some low-level modules, otherwise performance of
# prototype via a global option instead of a myriad of per-file OPTIONS
SRC_HC_OPTS += '-\#include "cutils.h"'
+ifeq "$(ghc_ge_605)" "NO"
+utils/LazyUniqFM_HC_OPTS += -fallow-undecidable-instances
+endif
+
# ----------------------------------------------------------------------------
# Generate supporting stuff for prelude/PrimOp.lhs
# from prelude/primops.txt