blob: 0c6245d683815ea671074c1d8617a066b05c0a32 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
{- Checks system configuration and generates SysConfig.hs. -}
module Build.Configure where
import System.Environment
import Control.Applicative
import Control.Monad.IfElse
import Build.TestConfig
import Git.Version
tests :: [TestCase]
tests =
[ TestCase "git" $ requireCmd "git" "git --version >/dev/null"
, TestCase "git version" getGitVersion
, TestCase "nice" $ testCmd "nice" "nice true >/dev/null"
]
getGitVersion :: Test
getGitVersion = Config "gitversion" . StringConfig . show
<$> Git.Version.installed
run :: [TestCase] -> IO ()
run ts = do
args <- getArgs
config <- runTests ts
writeSysConfig config
|