summaryrefslogtreecommitdiff
path: root/ghc
diff options
context:
space:
mode:
authorTravis Whitaker <pi.boy.travis@gmail.com>2020-05-06 04:14:47 +0000
committerBen Gamari <ben@smart-cactus.org>2020-07-22 22:57:10 -0400
commit55fac76881ceb849d0e03d98965981ffcb9acb87 (patch)
tree32a4ab9b7775e5ae996f298f85c204ed8bea5108 /ghc
parentb7c216cbd8ce4056bee4a460d9f731d4311a72f5 (diff)
downloadhaskell-55fac76881ceb849d0e03d98965981ffcb9acb87.tar.gz
Build a threaded stage 1 if the bootstrapping GHC supports it.
(cherry picked from commit 67738db10010fd28a8e997b5c8f83ea591b88a0e) (cherry picked from commit a228d0a83db06fbe81b1c74fe3b1aea3133cee50)
Diffstat (limited to 'ghc')
-rw-r--r--ghc/ghc.mk9
1 files changed, 9 insertions, 0 deletions
diff --git a/ghc/ghc.mk b/ghc/ghc.mk
index 8c112a054f..c0ba8c5a81 100644
--- a/ghc/ghc.mk
+++ b/ghc/ghc.mk
@@ -69,6 +69,15 @@ endif
# Stage-0 compiler isn't guaranteed to have a threaded RTS.
ghc_stage1_CONFIGURE_OPTS += -f-threaded
+# If stage 0 supplies a threaded RTS, we can use it for stage 1.
+# See Note [Linking ghc-bin against threaded stage0 RTS] in
+# hadrian/src/Settings/Packages.hs for details.
+ifeq "$(GhcThreadedRts)" "YES"
+ghc_stage1_MORE_HC_OPTS += -threaded
+else
+ghc_stage1_CONFIGURE_OPTS += -f-threaded
+endif
+
ifeq "$(GhcProfiled)" "YES"
ghc_stage2_PROGRAM_WAY = p
endif