diff options
Diffstat (limited to 'hadrian/src/Rules/Configure.hs')
-rw-r--r-- | hadrian/src/Rules/Configure.hs | 84 |
1 files changed, 0 insertions, 84 deletions
diff --git a/hadrian/src/Rules/Configure.hs b/hadrian/src/Rules/Configure.hs deleted file mode 100644 index 6787bacf04..0000000000 --- a/hadrian/src/Rules/Configure.hs +++ /dev/null @@ -1,84 +0,0 @@ -module Rules.Configure (configureRules) where - -import Base -import Builder -import CommandLine -import Context -import Packages -import Target -import Utilities - -import qualified System.Info.Extra as System - --- | Files generated by running the @configure@ script. -configureResults :: [FilePath] -configureResults = - [ configFile - , configH - , "compiler/ghc.cabal" - , "rts/rts.cabal" - , "ghc/ghc-bin.cabal" - , "utils/iserv/iserv.cabal" - , "utils/iserv-proxy/iserv-proxy.cabal" - , "utils/remote-iserv/remote-iserv.cabal" - , "utils/ghc-pkg/ghc-pkg.cabal" - , "utils/runghc/runghc.cabal" - , "utils/gen-dll/gen-dll.cabal" - , "libraries/ghc-boot/ghc-boot.cabal" - , "libraries/ghc-boot-th/ghc-boot-th.cabal" - , "libraries/ghci/ghci.cabal" - , "libraries/ghc-heap/ghc-heap.cabal" - , "libraries/libiserv/libiserv.cabal" - , "libraries/template-haskell/template-haskell.cabal" - , "docs/users_guide/ghc_config.py" - , "docs/index.html" - , "libraries/prologue.txt" - , "distrib/configure.ac" - ] - -configureRules :: Rules () -configureRules = do - configureResults &%> \outs -> do - -- Do not cache the results. The true dependencies of the configure - -- script are not tracked. This includes e.g. the ghc source path. - historyDisable - - skip <- not <$> cmdConfigure - if skip - then unlessM (doesFileExist configFile) $ - error $ "Configuration file " ++ configFile ++ " is missing.\n" - ++ "Run the configure script manually or let Hadrian run it " - ++ "automatically by passing the flag --configure." - else do - -- We cannot use windowsHost here due to a cyclic dependency. - when windowsHost $ do - putBuild "| Checking for Windows tarballs..." - pythonPath <- builderPath Python - quietly $ cmd [pythonPath, "mk/get-win32-tarballs.py", "download", System.arch] - let srcs = map (<.> "in") outs - context = vanillaContext Stage0 compiler - need srcs - build $ target context (Configure ".") srcs outs - -- TODO: This is fragile: we should remove this from behind the - -- @--configure@ flag and add a proper dependency tracking. - -- We need to copy the directory with unpacked Windows tarball to - -- the build directory, so that the built GHC has access to it. - -- See https://github.com/snowleopard/hadrian/issues/564. - when windowsHost $ do - root <- buildRoot - copyDirectory "inplace/mingw" (root -/- "mingw") - mingwFiles <- liftIO $ getDirectoryFilesIO "." [root -/- "mingw/**"] - produces mingwFiles - - ["configure", configH <.> "in"] &%> \_ -> do - skip <- not <$> cmdConfigure - if skip - then unlessM (doesFileExist "configure") $ - error $ "The configure script is missing.\nRun the boot script " - ++ "manually let Hadrian run it automatically by passing the " - ++ "flag --configure." - else do - need ["configure.ac"] - putBuild "| Running boot..." - verbosity <- getVerbosity - quietly $ cmd [EchoStdout (verbosity >= Loud)] "python3 boot --hadrian" |