diff options
Diffstat (limited to 'Build/TestConfig.hs')
-rw-r--r-- | Build/TestConfig.hs | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/Build/TestConfig.hs b/Build/TestConfig.hs index 0cc2019cf..03d87cd8b 100644 --- a/Build/TestConfig.hs +++ b/Build/TestConfig.hs @@ -5,6 +5,7 @@ module Build.TestConfig where import System.IO import System.Cmd import System.Exit +import System.Directory type ConfigKey = String data ConfigValue = @@ -36,8 +37,14 @@ instance Show Config where valuetype (MaybeBoolConfig _) = "Maybe Bool" writeSysConfig :: [Config] -> IO () -writeSysConfig config = writeFile "Build/SysConfig.hs" body +writeSysConfig config = do + e <- doesFileExist dest + old <- if e then readFile dest else return [] + if (old /= body) + then writeFile dest body + else return () where + dest = "Build/SysConfig.hs" body = unlines $ header ++ map show config ++ footer header = [ "{- Automatically generated. -}" |