summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Gamari <ben@smart-cactus.org>2020-03-30 17:02:23 -0400
committerMarge Bot <ben+marge-bot@smart-cactus.org>2020-04-09 16:17:21 -0400
commitce481361fc95405cfadcd8f930629381e80e7f84 (patch)
treea0378f3c19ea9944e233d22ffe1e0ad516e3c8cb
parent7802fa17a9a1a0f02fbf95170c13d7a9711a681e (diff)
downloadhaskell-ce481361fc95405cfadcd8f930629381e80e7f84.tar.gz
hadrian: Use --export-dynamic when linking iserv
As noticed in #17962, the make build system currently does this (see 3ce0e0ba) but the change was never ported to Hadrian.
-rw-r--r--hadrian/src/Settings/Packages.hs8
1 files changed, 8 insertions, 0 deletions
diff --git a/hadrian/src/Settings/Packages.hs b/hadrian/src/Settings/Packages.hs
index 160259002c..9337198b99 100644
--- a/hadrian/src/Settings/Packages.hs
+++ b/hadrian/src/Settings/Packages.hs
@@ -122,6 +122,14 @@ packageArgs = do
[ notStage0 ? builder (Cabal Flags) ? arg "ghci"
, cross ? stage0 ? builder (Cabal Flags) ? arg "ghci" ]
+ --------------------------------- iserv --------------------------------
+ -- Add -Wl,--export-dynamic enables GHCi to load dynamic objects that
+ -- refer to the RTS. This is harmless if you don't use it (adds a bit
+ -- of overhead to startup and increases the binary sizes) but if you
+ -- need it there's no alternative.
+ , package iserv ? mconcat
+ [ builder (Ghc LinkHs) ? arg "-optl-Wl,--export-dynamic" ]
+
-------------------------------- haddock -------------------------------
, package haddock ?
builder (Cabal Flags) ? arg "in-ghc-tree"