[commit: ghc] wip/nfs-locking: Don't need make (fails on Windows). (ba74f58)

git at git.haskell.org git at git.haskell.org
Fri Oct 27 00:10:56 UTC 2017


Repository : ssh://git@git.haskell.org/ghc

On branch  : wip/nfs-locking
Link       : http://ghc.haskell.org/trac/ghc/changeset/ba74f58ab49363b488eef09e2b78c85302b61427/ghc

>---------------------------------------------------------------

commit ba74f58ab49363b488eef09e2b78c85302b61427
Author: Andrey Mokhov <andrey.mokhov at gmail.com>
Date:   Sat Jan 16 00:51:33 2016 +0000

    Don't need make (fails on Windows).
    
    See #167.


>---------------------------------------------------------------

ba74f58ab49363b488eef09e2b78c85302b61427
 src/Rules/Actions.hs         | 7 +++----
 src/Settings/Builders/Ghc.hs | 6 ++++--
 2 files changed, 7 insertions(+), 6 deletions(-)

diff --git a/src/Rules/Actions.hs b/src/Rules/Actions.hs
index 429f241..21d134f 100644
--- a/src/Rules/Actions.hs
+++ b/src/Rules/Actions.hs
@@ -110,16 +110,15 @@ runMake dir args = do
     path <- builderPath Make
 
     -- FIXME: temporary safety net for those who are not on GHC HEAD, see #167
+    -- TODO: add need [path] once lookupInPath is enabled on Windows
     fixPath <- if path == "@MakeCmd@" <.> exe
                then do
                    putColoured Red $ "You are behind GHC HEAD, make autodetection is disabled."
                    return "make"
-               else do
-                   needBuilder False Make
-                   return path
+               else return path
 
     let note = if null args then "" else " (" ++ intercalate ", " args ++ ")"
-    putBuild $ "| Run " ++ fixPath ++ " " ++ note ++ " in " ++ dir ++ "..."
+    putBuild $ "| Run " ++ fixPath ++ note ++ " in " ++ dir ++ "..."
     quietly $ cmd Shell (EchoStdout False) fixPath ["-C", dir] args
 
 applyPatch :: FilePath -> FilePath -> Action ()
diff --git a/src/Settings/Builders/Ghc.hs b/src/Settings/Builders/Ghc.hs
index 40b5a0f..2e40bcb 100644
--- a/src/Settings/Builders/Ghc.hs
+++ b/src/Settings/Builders/Ghc.hs
@@ -24,7 +24,8 @@ ghcBuilderArgs :: Args
 ghcBuilderArgs = stagedBuilder Ghc ? do
     output <- getOutput
     way    <- getWay
-    let buildObj = ("//*." ++ osuf way) ?== output || ("//*." ++ obootsuf way) ?== output
+    let buildObj = ("//*." ++  osuf way) ?== output || ("//*." ++  obootsuf way) ?== output
+        buildHi  = ("//*." ++ hisuf way) ?== output || ("//*." ++ hibootsuf way) ?== output
     libs    <- getPkgDataList DepExtraLibs
     gmpLibs <- lift $ readFileLines gmpLibNameCache
     libDirs <- getPkgDataList DepLibDirs
@@ -40,7 +41,8 @@ ghcBuilderArgs = stagedBuilder Ghc ? do
             , not buildObj ? append [ "-optl-L" ++ dir | dir <- libDirs ]
             , buildObj ? arg "-c"
             , append =<< getInputs
-            , arg "-o", arg =<< getOutput ]
+            , buildHi ? append ["-fno-code", "-fwrite-interface"]
+            , not buildHi ? mconcat [ arg "-o", arg =<< getOutput ] ]
 
 splitObjectsArgs :: Args
 splitObjectsArgs = splitObjects ? do



More information about the ghc-commits mailing list