diff options
-rw-r--r-- | hadrian/src/Rules/Test.hs | 4 | ||||
-rw-r--r-- | hadrian/src/Settings/Packages.hs | 1 | ||||
-rw-r--r-- | rts/rts.cabal.in | 9 |
3 files changed, 8 insertions, 6 deletions
diff --git a/hadrian/src/Rules/Test.hs b/hadrian/src/Rules/Test.hs index 9a314dc25b..b72c1b964b 100644 --- a/hadrian/src/Rules/Test.hs +++ b/hadrian/src/Rules/Test.hs @@ -26,13 +26,13 @@ testRules :: Rules () testRules = do root <- buildRootRules - -- | Using program shipped with testsuite to generate ghcconfig file. + -- Using program shipped with testsuite to generate ghcconfig file. root -/- ghcConfigProgPath ~> do ghc <- builderPath $ Ghc CompileHs Stage0 createDirectory $ takeDirectory (root -/- ghcConfigProgPath) cmd ghc [ghcConfigHsPath, "-o" , root -/- ghcConfigProgPath] - -- | TODO : Use input test compiler and not just stage2 compiler. + -- TODO : Use input test compiler and not just stage2 compiler. root -/- ghcConfigPath ~> do ghcPath <- needFile Stage1 ghc need [root -/- ghcConfigProgPath] diff --git a/hadrian/src/Settings/Packages.hs b/hadrian/src/Settings/Packages.hs index 51a980ca8b..8963c76a13 100644 --- a/hadrian/src/Settings/Packages.hs +++ b/hadrian/src/Settings/Packages.hs @@ -286,6 +286,7 @@ rtsPackageArgs = package rts ? do , any (wayUnit Debug) rtsWays ? arg "debug" , any (wayUnit Logging) rtsWays ? arg "logging" , any (wayUnit Dynamic) rtsWays ? arg "dynamic" + , Debug `wayUnit` way ? arg "find-ptr" ] , builder (Cc FindCDependencies) ? cArgs , builder (Ghc CompileCWithGhc) ? map ("-optc" ++) <$> cArgs diff --git a/rts/rts.cabal.in b/rts/rts.cabal.in index e9cc7d1b6f..a3f74bebac 100644 --- a/rts/rts.cabal.in +++ b/rts/rts.cabal.in @@ -28,6 +28,8 @@ flag leading-underscore default: @CabalLeadingUnderscore@ flag smp default: True +flag find-ptr + default: False -- Some cabal flags used to control the flavours we want to produce -- for libHSrts in hadrian. By default, we just produce vanilla and -- threaded. The flags "compose": if you enable debug and profiling, @@ -268,9 +270,8 @@ library "-Wl,-u,_hs_atomicwrite8" "-Wl,-u,_hs_atomicwrite16" "-Wl,-u,_hs_atomicwrite32" - "-Wl,-u,_findPtr" - if flag(debug) + if flag(find-ptr) -- This symbol is useful in gdb, but not referred to anywhere, -- so we need to force it to be included in the binary. ld-options: "-Wl,-u,_findPtr" @@ -346,10 +347,10 @@ library "-Wl,-u,hs_atomicwrite16" "-Wl,-u,hs_atomicwrite32" - if flag(debug) + if flag(find-ptr) -- This symbol is useful in gdb, but not referred to anywhere, -- so we need to force it to be included in the binary. - ld-options: "-Wl,-u,_findPtr" + ld-options: "-Wl,-u,findPtr" if os(osx) ld-options: "-Wl,-search_paths_first" |