Pass flags -agc to $(HAPPY) if the $(HAPPY_VERSION) is >= 1.8
(previous versions weren't reliable enough with these settings).
# -----------------------------------------------------------------------------
# -----------------------------------------------------------------------------
-# $Id: Makefile,v 1.83 2000/07/14 08:17:36 simonpj Exp $
+# $Id: Makefile,v 1.84 2000/07/17 11:15:08 simonmar Exp $
TOP = ..
include $(TOP)/mk/boilerplate.mk
TOP = ..
include $(TOP)/mk/boilerplate.mk
parser/Ctype_HC_OPTS = -K2m -fvia-C
rename/ParseIface_HC_OPTS += -Onot -H45m -K2m -fno-warn-incomplete-patterns
parser/Ctype_HC_OPTS = -K2m -fvia-C
rename/ParseIface_HC_OPTS += -Onot -H45m -K2m -fno-warn-incomplete-patterns
-rename/ParseIface_HAPPY_OPTS += -g
parser/Parser_HC_OPTS += -Onot -H80m -optCrts-M80m -K2m -fno-warn-incomplete-patterns
parser/Parser_HC_OPTS += -Onot -H80m -optCrts-M80m -K2m -fno-warn-incomplete-patterns
-parser/Parser_HAPPY_OPTS += -g
ifeq "$(TARGETPLATFORM)" "hppa1.1-hp-hpux9"
rename/RnMonad_HC_OPTS = -O2 -O2-for-C
ifeq "$(TARGETPLATFORM)" "hppa1.1-hp-hpux9"
rename/RnMonad_HC_OPTS = -O2 -O2-for-C
# Interface-file parser uses Happy
# Interface-file parser uses Happy
-SRC_HAPPY_OPTS += +RTS -K2m -H16m -RTS
+SRC_HAPPY_OPTS += +RTS -K2m -H16m -RTS $(GHC_HAPPY_OPTS)
rename/ParseIface.hs : rename/ParseIface.y
@$(RM) rename/ParseIface.hs rename/ParseIface.hinfo
rename/ParseIface.hs : rename/ParseIface.y
@$(RM) rename/ParseIface.hs rename/ParseIface.hinfo
- $(HAPPY) $(HAPPY_OPTS) -g rename/ParseIface.y
+ $(HAPPY) $(HAPPY_OPTS) rename/ParseIface.y
@chmod 444 rename/ParseIface.hs
parser/Parser.hs : parser/Parser.y
@$(RM) parser/Parser.hs parser/ParseIface.hinfo
@chmod 444 rename/ParseIface.hs
parser/Parser.hs : parser/Parser.y
@$(RM) parser/Parser.hs parser/ParseIface.hinfo
- $(HAPPY) $(HAPPY_OPTS) -g parser/Parser.y
+ $(HAPPY) $(HAPPY_OPTS) parser/Parser.y
@chmod 444 parser/Parser.hs
#-----------------------------------------------------------------------------
@chmod 444 parser/Parser.hs
#-----------------------------------------------------------------------------
VERBATIM = $(VERBATIM_PREFIX)verbatim
SGMLVERB = $(SGMLVERB_PREFIX)sgmlverb
RUNTEST = $(RUNTEST_PREFIX)runstdtest
VERBATIM = $(VERBATIM_PREFIX)verbatim
SGMLVERB = $(SGMLVERB_PREFIX)sgmlverb
RUNTEST = $(RUNTEST_PREFIX)runstdtest
-HAPPY = @HappyCmd@
-HAPPY_VERSION = @HappyVersion@
LX = @LxCmd@
GREENCARD = $(FPTOOLS_TOP)/green-card/src/green-card
BLD_DLL = dllwrap
#
LX = @LxCmd@
GREENCARD = $(FPTOOLS_TOP)/green-card/src/green-card
BLD_DLL = dllwrap
#
+# Happy
+#
+HAPPY = @HappyCmd@
+HAPPY_VERSION = @HappyVersion@
+#
+# Options to pass to Happy when we're going to compile the output with GHC
+#
+GHC_HAPPY_OPTS = $(shell if expr $(HAPPY_VERSION) \< "1.8" >/dev/null; then echo -g; else echo -agc; fi)
+
+#
# Stuff from fptools/literate
#
LIT2PGM = $(LITERATE_PREFIX)lit2pgm
# Stuff from fptools/literate
#
LIT2PGM = $(LITERATE_PREFIX)lit2pgm