summaryrefslogtreecommitdiff
path: root/hadrian/src/Flavour.hs
diff options
context:
space:
mode:
authorBen Gamari <ben@smart-cactus.org>2021-01-12 14:26:37 -0500
committerMarge Bot <ben+marge-bot@smart-cactus.org>2021-01-17 05:58:48 -0500
commit98e0d08f12e88a3aa7de914732b80ca35dbde131 (patch)
treea6ea6bec0417dd74cc4e80c20890bc6a4b91eca1 /hadrian/src/Flavour.hs
parent2ac28e4cbaee482d71182fe831cd30d36226c57a (diff)
downloadhaskell-98e0d08f12e88a3aa7de914732b80ca35dbde131.tar.gz
hadrian: Introduce no_profiled_libs flavour transformer
Per request of @AndreasK.
Diffstat (limited to 'hadrian/src/Flavour.hs')
-rw-r--r--hadrian/src/Flavour.hs7
1 files changed, 7 insertions, 0 deletions
diff --git a/hadrian/src/Flavour.hs b/hadrian/src/Flavour.hs
index ec9bfa2c5b..7339eb6fb1 100644
--- a/hadrian/src/Flavour.hs
+++ b/hadrian/src/Flavour.hs
@@ -11,6 +11,7 @@ module Flavour
, viaLlvmBackend
, enableProfiledGhc
, disableDynamicGhcPrograms
+ , disableProfiledLibs
) where
import Expression
@@ -90,6 +91,7 @@ flavourTransformers = M.fromList
, "llvm" =: viaLlvmBackend
, "profiled_ghc" =: enableProfiledGhc
, "no_dynamic_ghc" =: disableDynamicGhcPrograms
+ , "no_profiled_libs" =: disableProfiledLibs
]
where (=:) = (,)
@@ -212,3 +214,8 @@ enableProfiledGhc flavour = flavour { ghcProfiled = True }
-- | Disable 'dynamicGhcPrograms'.
disableDynamicGhcPrograms :: Flavour -> Flavour
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 }