From 15d621f7a93242d26d40bafb7ef000cf38f49285 Mon Sep 17 00:00:00 2001
From: sof <unknown>
Date: Thu, 16 Apr 1998 12:14:17 +0000
Subject: [PATCH] [project @ 1998-04-16 12:14:13 by sof] Added --enable-hc-boot
 flag for setting up a .hc build tree

---
 configure.in    | 28 +++++++++++++++++-----------
 mk/config.mk.in |  9 ++++-----
 2 files changed, 21 insertions(+), 16 deletions(-)

diff --git a/configure.in b/configure.in
index 4b5713ff2ddd..cc4160f4f4dc 100644
--- a/configure.in
+++ b/configure.in
@@ -281,6 +281,19 @@ dnl AC_SUBST(TargetVendor_CPP)
 
 AC_SUBST(exeext)
 
+dnl * Booting from .hc files?
+#--------------------------------------------------------------
+AC_ARG_ENABLE(hc-boot,
+   [
+Boot the Glasgow Haskell Compiler from intermediate .hc files.
+(This option is mostly of interest for porters.)
+   ],
+
+   BootingFromHc=YES,
+   BootingFromHc=NO
+)
+AC_SUBST(BootingFromHc)
+
 # -------------------------------------------------------------------------
 dnl
 dnl * _GENERAL_ CONFIGURATION CHECKS
@@ -399,19 +412,12 @@ fi
 AC_SUBST(CompressCmd)
 AC_SUBST(CompressSuffix)
 
-#
+dnl
 dnl ** check for installed happy binary + version
-#
+dnl    (don't do it if we're booting from .hc files though.)
+if (test "$BootingFromHc" = "NO"); then
 AC_HAPPY
-
-if test x"$HappyCmd" != x; then
-   if expr $HappyVersion \< "1.3" >/dev/null; then
-	echo "   Happy Version 1.3 or later is required to compile GHC."
-	echo "   Using the Happy sources in the tree.";
-	HappyCmd=""
-   fi
-fi
-
+fi;
 #
 #
 dnl ** check for installed lx binary
diff --git a/mk/config.mk.in b/mk/config.mk.in
index 7bd91062fe60..d0e0ce11b86c 100644
--- a/mk/config.mk.in
+++ b/mk/config.mk.in
@@ -192,7 +192,7 @@ GhcCompilerWays=
 GhcHcOpts=
 
 # GhcWithHscBuiltViaC - build GHC compiler proper (\`hsc') from .hc files?
-GhcWithHscBuiltViaC=NO
+GhcWithHscBuiltViaC=@BootingFromHc@
 
 # Build hsc with -O and turn optimising flag on when compiling
 # the intermediate C file
@@ -249,11 +249,10 @@ else
 ifeq "$(strip $(way))" "mr"
 GhcLibHcOpts= -O
 else
-ifeq "$(GhcWithHscBuiltViaC)" "NO"
-GhcLibHcOpts= -O -split-objs -odir $*
+ifeq "$(GhcWithHscBuiltViaC)" "YES"
+GhcLibHcOpts=-O
 else
-#NB: .hc files need to distributed in *unsplit* form.
-GhcLibHcOpts= -O
+GhcLibHcOpts=-O -split-objs -odir $*
 endif
 endif
 endif
-- 
GitLab