-- Generates a Cabal file for rainbow-tests using the Cartel package. -- -- Written for Cartel version 0.10.0.2. import qualified Cartel as A import CabalCommon rainbow :: A.Package rainbow = A.exactly "rainbow" versionInts quickcheck :: A.Package quickcheck = A.closedOpen "QuickCheck" [2,7,5] [2,8] properties :: A.Properties properties = sharedProperties { A.prName = "rainbow-tests" , A.prSynopsis = "Tests and QuickCheck generators to accompany rainbow." , A.prDescription = [ "These are packaged separately so other packages may depend" , "on them." ] , A.prExtraSourceFiles = [ "README.md" , "changelog" , "current-versions.txt" , "minimum-versions.txt" , "genCabal.hs" , "sunlight-test.hs" ] } library :: [String] -- ^ Library modules -> A.Library library ms = A.Library [ A.LibExposedModules ms , A.defaultLanguage A.Haskell2010 , A.ghcOptions ["-Wall"] , A.hsSourceDirs ["lib"] , A.buildDepends [ base , terminfo , text , rainbow , quickcheck ] ] cabal :: [String] -- ^ Library modules -> A.Cabal cabal ms = A.empty { A.cProperties = properties , A.cRepositories = [repo] , A.cLibrary = Just $ library ms } main :: IO () main = do ms <- A.modules "lib" A.render "genCabal.hs" $ cabal ms