summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Pickering <matthewtpickering@gmail.com>2019-07-07 10:17:51 +0100
committerAlp Mestanogullari <alp@well-typed.com>2019-07-12 13:11:21 -0400
commit768b62157443c1b944308303f674e1d6ea6f90d6 (patch)
tree09c3fdec085a23230ac22d4e22570e2a44ec8900
parentde3935a6ccc26ec063e13d2739dd098c7616fde2 (diff)
downloadhaskell-wip/hadrian-rts-debug.tar.gz
hadrian: Build debug rts with -O0 -g3 and disable rts strippingwip/hadrian-rts-debug
Fixes #16920
-rw-r--r--hadrian/src/Settings/Builders/Cabal.hs4
-rw-r--r--hadrian/src/Settings/Packages.hs3
2 files changed, 6 insertions, 1 deletions
diff --git a/hadrian/src/Settings/Builders/Cabal.hs b/hadrian/src/Settings/Builders/Cabal.hs
index 759c0fde58..bf6322f14f 100644
--- a/hadrian/src/Settings/Builders/Cabal.hs
+++ b/hadrian/src/Settings/Builders/Cabal.hs
@@ -8,6 +8,7 @@ import Context
import Flavour
import Packages
import Settings.Builders.Common
+import qualified Settings.Builders.Common as S
cabalBuilderArgs :: Args
cabalBuilderArgs = builder (Cabal Setup) ? do
@@ -26,6 +27,9 @@ cabalBuilderArgs = builder (Cabal Setup) ? do
-- TODO: See https://github.com/snowleopard/hadrian/issues/549.
, flag CrossCompiling ? pure [ "--disable-executable-stripping"
, "--disable-library-stripping" ]
+ -- We don't want to strip the debug RTS
+ , S.package rts ? pure [ "--disable-executable-stripping"
+ , "--disable-library-stripping" ]
, arg "--cabal-file"
, arg $ pkgCabalFile pkg
, arg "--distdir"
diff --git a/hadrian/src/Settings/Packages.hs b/hadrian/src/Settings/Packages.hs
index 4c5407186c..9a5986e6c4 100644
--- a/hadrian/src/Settings/Packages.hs
+++ b/hadrian/src/Settings/Packages.hs
@@ -220,7 +220,8 @@ rtsPackageArgs = package rts ? do
, Debug `wayUnit` way ? pure [ "-DDEBUG"
, "-fno-omit-frame-pointer"
- , "-g" ]
+ , "-g3"
+ , "-O0" ]
, way `elem` [debug, debugDynamic] ? arg "-DTICKY_TICKY"
, Profiling `wayUnit` way ? arg "-DPROFILING"
, Threaded `wayUnit` way ? arg "-DTHREADED_RTS"