Better flags serialization

This commit is contained in:
Michael Snoyman 2014-12-07 12:45:49 +02:00
parent 69f3a1b8e7
commit 78e48025c4
2 changed files with 10 additions and 6 deletions

View File

@ -260,6 +260,7 @@ mkPackageBuild gpd = do
let overrides = packageFlags name ++ defaultGlobalFlags
getFlag MkFlag {..} =
(flagName, fromMaybe flagDefault $ lookup flagName overrides)
flags = mapFromList $ map getFlag $ genPackageFlags gpd
desc <- getFlattenedComponent
CheckCond
{ ccPackageName = name
@ -267,7 +268,7 @@ mkPackageBuild gpd = do
, ccArch = Distribution.System.X86_64
, ccCompilerFlavor = Distribution.Compiler.GHC
, ccCompilerVersion = ghcVerCabal
, ccFlags = mapFromList $ map getFlag $ genPackageFlags gpd
, ccFlags = flags
}
(tryBuildTest name)
(tryBuildBenchmark name)
@ -277,7 +278,7 @@ mkPackageBuild gpd = do
, pbMaintainer = fmap snd $ lookup name $ pcPackages defaultPackageConstraints
, pbGithubPings = getGithubPings gpd
, pbUsers = mempty -- must be filled in later
, pbFlags = packageFlags name
, pbFlags = flags
, pbTestState =
case () of
()

View File

@ -38,9 +38,10 @@ checkDeps allPackages (user, pb) =
(dep, Just version)
errMap
where
errMap = singletonMap user range
errMap = singletonMap (user, pbVersion pb) range
newtype BadBuildPlan = BadBuildPlan (Map (PackageName, Maybe Version) (Map PackageName VersionRange)) -- FIXME add maintainer and Github ping info
newtype BadBuildPlan =
BadBuildPlan (Map (PackageName, Maybe Version) (Map (PackageName, Version) VersionRange)) -- FIXME add maintainer and Github ping info
deriving Typeable
instance Exception BadBuildPlan
instance Show BadBuildPlan where
@ -60,10 +61,12 @@ instance Show BadBuildPlan where
, " depended on by:"
]
showUser :: (PackageName, VersionRange) -> String
showUser (user, range) = concat
showUser :: ((PackageName, Version), VersionRange) -> String
showUser ((user, version), range) = concat
[ "- "
, display user
, "-"
, display version
, " ("
, display range
, ")"