on 4e6e979 help sign in
stackage/Stackage/Build.hs
30 lines 929 B history raw
1module Stackage.Build
2 ( build
3 ) where
5import Control.Monad (unless)
6import Stackage.CheckPlan
7import Stackage.InstallInfo
8import Stackage.Test
9import Stackage.Util
10import System.Exit (ExitCode (ExitSuccess), exitWith)
11import System.IO (IOMode (WriteMode), withBinaryFile)
12import System.Process (runProcess, waitForProcess)
14build :: IO ()
15build = do
16 ii <- getInstallInfo
17 checkPlan ii
19 rm_r "cabal-dev"
21 putStrLn "No mismatches, good to go!"
23 ph <- withBinaryFile "build.log" WriteMode $ \handle ->
24 runProcess "cabal-dev" ("install":"-fnetwork23":iiPackageList ii) Nothing Nothing Nothing (Just handle) (Just handle)
25 ec <- waitForProcess ph
26 unless (ec == ExitSuccess) $ exitWith ec
28 putStrLn "Environment built, beginning individual test suites"
30 runTestSuites ii