diff options
author | Ben Gamari <ben@smart-cactus.org> | 2021-07-12 17:26:47 -0400 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2021-07-27 04:47:51 -0400 |
commit | 2ce48fe9d1334dadf6fa1411238e52d65b66ba41 (patch) | |
tree | 1f48a9e2e2ae3350c3802875bef128327afdf593 /hadrian/src/Oracles/Flag.hs | |
parent | 246f08ac032392f808c7aa53dd78a96d9b43e63f (diff) | |
download | haskell-2ce48fe9d1334dadf6fa1411238e52d65b66ba41.tar.gz |
rts: Break up adjustor logic
Diffstat (limited to 'hadrian/src/Oracles/Flag.hs')
-rw-r--r-- | hadrian/src/Oracles/Flag.hs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/hadrian/src/Oracles/Flag.hs b/hadrian/src/Oracles/Flag.hs index 1b3aff693e..5b41698be1 100644 --- a/hadrian/src/Oracles/Flag.hs +++ b/hadrian/src/Oracles/Flag.hs @@ -2,7 +2,7 @@ module Oracles.Flag ( Flag (..), flag, getFlag, platformSupportsSharedLibs, - targetSupportsSMP + targetSupportsSMP, useLibffiForAdjustors ) where import Hadrian.Oracles.TextFile @@ -26,6 +26,7 @@ data Flag = ArSupportsAtFile | UseSystemFfi | BootstrapThreadedRts | SystemDistroMINGW + | UseLibffiForAdjustors -- Note, if a flag is set to empty string we treat it as set to NO. This seems -- fragile, but some flags do behave like this. @@ -47,6 +48,7 @@ flag f = do UseSystemFfi -> "use-system-ffi" BootstrapThreadedRts -> "bootstrap-threaded-rts" SystemDistroMINGW -> "system-use-distro-mingw" + UseLibffiForAdjustors -> "use-libffi-for-adjustors" value <- lookupValueOrError configFile key when (value `notElem` ["YES", "NO", ""]) . error $ "Configuration flag " ++ quote (key ++ " = " ++ value) ++ " cannot be parsed." @@ -88,3 +90,6 @@ targetSupportsSMP = do , ver < ARMv7 -> return False | goodArch -> return True | otherwise -> return False + +useLibffiForAdjustors :: Action Bool +useLibffiForAdjustors = flag UseLibffiForAdjustors |