File: Configure.hs

package info (click to toggle)
github-backup 1.20140831
  • links: PTS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 356 kB
  • ctags: 4
  • sloc: haskell: 3,384; makefile: 29; sh: 10
file content (30 lines) | stat: -rw-r--r-- 680 bytes parent folder | download
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
28
29
30
{- 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 Build.Version
import Git.Version

tests :: [TestCase]
tests =
	[ TestCase "version" getVersion
	, TestCase "git" $ requireCmd "git" "git --version >/dev/null"
	, TestCase "git version" getGitVersion
	]

getGitVersion :: Test
getGitVersion = Config "gitversion" . StringConfig . show
	<$> Git.Version.installed

run :: [TestCase] -> IO ()
run ts = do
	args <- getArgs
	config <- runTests ts
	writeSysConfig config
	whenM (isReleaseBuild) $
		cabalSetup "github-backup.cabal"