From 397858e2648824c5d71b3ddd365be8c5129cddc7 Mon Sep 17 00:00:00 2001
From: simonmar <unknown>
Date: Mon, 17 Jul 2000 11:15:08 +0000
Subject: [PATCH] [project @ 2000-07-17 11:15:07 by simonmar] Pass flags -agc
 to $(HAPPY) if the $(HAPPY_VERSION) is >= 1.8 (previous versions weren't
 reliable enough with these settings).

---
 ghc/compiler/Makefile | 10 ++++------
 mk/config.mk.in       | 12 ++++++++++--
 2 files changed, 14 insertions(+), 8 deletions(-)

diff --git a/ghc/compiler/Makefile b/ghc/compiler/Makefile
index 724cbbcddbb8..f74ed8b2822d 100644
--- a/ghc/compiler/Makefile
+++ b/ghc/compiler/Makefile
@@ -1,5 +1,5 @@
 # -----------------------------------------------------------------------------
-# $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
@@ -147,10 +147,8 @@ parser/Lex_HC_OPTS		= -fvia-C -K2m -H16m
 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_HAPPY_OPTS    	+= -g
 
 ifeq "$(TARGETPLATFORM)" "hppa1.1-hp-hpux9"
 rename/RnMonad_HC_OPTS 		=  -O2 -O2-for-C
@@ -235,16 +233,16 @@ parser/hschooks.o : parser/hschooks.c
 
 
 # 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
-	$(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
-	$(HAPPY) $(HAPPY_OPTS) -g parser/Parser.y
+	$(HAPPY) $(HAPPY_OPTS) parser/Parser.y
 	@chmod 444 parser/Parser.hs
 
 #-----------------------------------------------------------------------------
diff --git a/mk/config.mk.in b/mk/config.mk.in
index 0eec930b4aea..29b77dfdeab0 100644
--- a/mk/config.mk.in
+++ b/mk/config.mk.in
@@ -681,13 +681,21 @@ ETAGS			= $(ETAGS_PREFIX)etags
 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
 
+#
+# 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
 #
-- 
GitLab