summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSylvain Henry <sylvain@haskus.fr>2021-07-26 12:18:34 +0200
committerMarge Bot <ben+marge-bot@smart-cactus.org>2021-07-28 06:16:58 -0400
commit323473e86d40988883062e5aeaef97bee943b901 (patch)
tree22aee4fca3ec0bc7e1d82c4116214fd7c01697c8
parentcddafcf6a968f454aebc4dd65aa64bf42870b6e9 (diff)
downloadhaskell-323473e86d40988883062e5aeaef97bee943b901.tar.gz
Hadrian: disable profiled RTS with no_profiled_libs flavour transformer
Hadrian uses the RTS ways to determine which iserv programs to embed into bindist. But profiled iserv program (and any other code) can't be built without profiling libs and Hadrian fails. So we disable the profiling RTS way with the no_profiled_libs flavour transformer.
-rw-r--r--hadrian/src/Flavour.hs4
1 files changed, 3 insertions, 1 deletions
diff --git a/hadrian/src/Flavour.hs b/hadrian/src/Flavour.hs
index aa31de83fa..bacc6b3ed2 100644
--- a/hadrian/src/Flavour.hs
+++ b/hadrian/src/Flavour.hs
@@ -178,7 +178,9 @@ disableDynamicGhcPrograms flavour = flavour { dynamicGhcPrograms = pure False }
-- | Don't build libraries in profiled 'Way's.
disableProfiledLibs :: Flavour -> Flavour
disableProfiledLibs flavour =
- flavour { libraryWays = filter (not . wayUnit Profiling) <$> libraryWays flavour }
+ flavour { libraryWays = filter (not . wayUnit Profiling) <$> libraryWays flavour
+ , rtsWays = filter (not . wayUnit Profiling) <$> rtsWays flavour
+ }
-- | Build stage2 compiler with -fomit-interface-pragmas to reduce
-- recompilation.