[commit: ghc] wip/nfs-locking: Drop alwaysRerun from setup rules. (b3e25ee)
git at git.haskell.org
git at git.haskell.org
Fri Oct 27 00:01:14 UTC 2017
Repository : ssh://git@git.haskell.org/ghc
On branch : wip/nfs-locking
Link : http://ghc.haskell.org/trac/ghc/changeset/b3e25ee579ad44a35b4cbf243b05728c4f63c5d1/ghc
>---------------------------------------------------------------
commit b3e25ee579ad44a35b4cbf243b05728c4f63c5d1
Author: Andrey Mokhov <andrey.mokhov at gmail.com>
Date: Wed Feb 10 12:42:54 2016 +0000
Drop alwaysRerun from setup rules.
>---------------------------------------------------------------
b3e25ee579ad44a35b4cbf243b05728c4f63c5d1
src/Rules/Setup.hs | 27 ++++++++++++++++++---------
1 file changed, 18 insertions(+), 9 deletions(-)
diff --git a/src/Rules/Setup.hs b/src/Rules/Setup.hs
index c99c8be..a17fb59 100644
--- a/src/Rules/Setup.hs
+++ b/src/Rules/Setup.hs
@@ -9,13 +9,10 @@ import Rules.Generators.GhcAutoconfH
setupRules :: Rules ()
setupRules = do
- -- We always rerun the configure script in this mode, because the flags
- -- passed to it can affect the contents of system.config file.
[configFile, "settings", configH] &%> \[cfg, settings, cfgH] -> do
- alwaysRerun
+ need [ settings <.> "in", cfgH <.> "in", "configure" ]
case cmdSetup of
RunSetup configureArgs -> do
- need [ settings <.> "in", cfgH <.> "in" ]
-- We cannot use windowsHost here due to a cyclic dependency
when (System.Info.os == "mingw32") $ do
putBuild "| Checking for Windows tarballs..."
@@ -24,11 +21,23 @@ setupRules = do
, "download"
, System.Info.arch ]
runConfigure "." [] [configureArgs]
- SkipSetup -> unlessM (doesFileExist cfg) $
- putError $ "Configuration file " ++ cfg ++ " is missing.\n"
- ++ "Run the configure script either manually or via the "
+ SkipSetup -> do
+ cfgExists <- doesFileExist cfg
+ if cfgExists
+ then putError $ "Configuration file " ++ cfg ++ " is out-of-date."
+ ++ "\nRerun the configure script either manually or via the "
+ ++ "build system by passing --setup[=CONFIGURE_ARGS] flag."
+ else putError $ "Configuration file " ++ cfg ++ " is missing."
+ ++ "\nRun the configure script either manually or via the "
++ "build system by passing --setup[=CONFIGURE_ARGS] flag."
["configure", configH <.> "in"] &%> \_ -> do
- putBuild "| Running boot..."
- quietly $ cmd (EchoStdout False) "perl boot"
+ need ["configure.ac"]
+ case cmdSetup of
+ RunSetup _ -> do
+ putBuild "| Running boot..."
+ quietly $ cmd (EchoStdout False) "perl boot"
+ SkipSetup -> do
+ putError $ "The configure script is out-of-date."
+ ++ "\nRun the boot script either manually or via the "
+ ++ "build system by passing --setup[=CONFIGURE_ARGS] flag."
More information about the ghc-commits
mailing list