summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--configure.hs18
1 files changed, 13 insertions, 5 deletions
diff --git a/configure.hs b/configure.hs
index d9ce60a14..b9ea2344f 100644
--- a/configure.hs
+++ b/configure.hs
@@ -49,9 +49,9 @@ testEnd :: Bool -> IO ()
testEnd r = putStrLn $ " " ++ (show r)
writeSysConfig :: [Config] -> IO ()
-writeSysConfig config = do
- writeFile "SysConfig.hs" $ unlines $ header ++ map show config ++ footer
+writeSysConfig config = writeFile "SysConfig.hs" body
where
+ body = unlines $ header ++ map show config ++ footer
header = [
"{- Automatically generated by configure. -}"
, "module SysConfig where"
@@ -68,10 +68,18 @@ runTests ((TestDesc tname key t):ts) = do
rest <- runTests ts
return $ (Config key val):rest
-main :: IO ()
-main = do
+setup :: IO ()
+setup = do
createDirectoryIfMissing True tmpDir
writeFile testFile "test file contents"
- config <- runTests tests
+
+cleanup :: IO ()
+cleanup = do
removeDirectoryRecursive tmpDir
+
+main :: IO ()
+main = do
+ setup
+ config <- runTests tests
writeSysConfig config
+ cleanup