summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Pickering <matthewtpickering@gmail.com>2019-07-07 10:17:51 +0100
committerMarge Bot <ben+marge-bot@smart-cactus.org>2019-07-14 01:19:58 -0400
commitf9b00038696ce40aed68ee561c501184b34a1cf3 (patch)
treeb75105afab96d2bb877c0ad2953d375ab35f1d2b
parentff04eb5973b69fcc60e7d0945a74becd068c1888 (diff)
downloadhaskell-f9b00038696ce40aed68ee561c501184b34a1cf3.tar.gz
hadrian: Build debug rts with -O0 -g3 and disable rts stripping
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 e120e7993c..804aeb0ebc 100644
--- a/hadrian/src/Settings/Packages.hs
+++ b/hadrian/src/Settings/Packages.hs
@@ -225,7 +225,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"