From e0f3f5f3d0f70a5c128343ac16b815e73f1c1827 Mon Sep 17 00:00:00 2001
From: Ian Lynagh <igloo@earth.li>
Date: Fri, 19 Sep 2008 11:58:31 +0000
Subject: [PATCH] Don't require Parser.y in a source dist

---
 compiler/Makefile | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/compiler/Makefile b/compiler/Makefile
index 69b290340c55..d64732aeb076 100644
--- a/compiler/Makefile
+++ b/compiler/Makefile
@@ -189,7 +189,13 @@ CONFIGURE_FLAGS_STAGE1 += $(USE_BOOT_CONFIGURE_FLAGS)
 CONFIGURE_FLAGS_STAGE2 += $(USE_STAGE1_CONFIGURE_FLAGS)
 CONFIGURE_FLAGS_STAGE3 += $(USE_STAGE2_CONFIGURE_FLAGS)
 
-boot.stage.%: $(PRIMOP_BITS) $(CONFIG_HS) parser/Parser.y
+# In a source dist we don't need to worry about Parser.y(.pp) as we have
+# the .hs file pre-generated
+ifneq "$(wildcard parser/Parser.y.pp)" ""
+PARSER_Y = parser/Parser.y
+endif
+
+boot.stage.%: $(PRIMOP_BITS) $(CONFIG_HS) $(PARSER_Y)
 	test -f $(STAGE3_PACKAGE_CONF) || echo "[]" > $(STAGE3_PACKAGE_CONF)
 	$(CABAL) configure --distpref dist-stage$* \
 	                   $(CONFIGURE_FLAGS_STAGE$*) \
-- 
GitLab