summaryrefslogtreecommitdiff
path: root/hadrian/src/Rules/Rts.hs
diff options
context:
space:
mode:
Diffstat (limited to 'hadrian/src/Rules/Rts.hs')
-rw-r--r--hadrian/src/Rules/Rts.hs9
1 files changed, 6 insertions, 3 deletions
diff --git a/hadrian/src/Rules/Rts.hs b/hadrian/src/Rules/Rts.hs
index e08c2a856f..adcc7f51cc 100644
--- a/hadrian/src/Rules/Rts.hs
+++ b/hadrian/src/Rules/Rts.hs
@@ -1,3 +1,5 @@
+{-# LANGUAGE MultiWayIf #-}
+
module Rules.Rts (rtsRules, needRtsLibffiTargets, needRtsSymLinks) where
import qualified Data.Set as Set
@@ -121,13 +123,14 @@ needRtsLibffiTargets :: Stage -> Action [FilePath]
needRtsLibffiTargets stage = do
rtsPath <- rtsBuildPath stage
useSystemFfi <- flag UseSystemFfi
+ jsTarget <- isJsTarget
-- Header files (in the rts build dir).
let headers = fmap ((rtsPath -/- "include") -/-) libffiHeaderFiles
- if useSystemFfi
- then return []
- else do
+ if | jsTarget -> return []
+ | useSystemFfi -> return []
+ | otherwise -> do
-- Need Libffi
-- This returns the dynamic library files (in the Libffi build dir).
needLibffi stage