Skip to content

Commit 6ed7441

Browse files
committed
Add build. constraint.
1 parent c520482 commit 6ed7441

File tree

1 file changed

+5
-0
lines changed

1 file changed

+5
-0
lines changed

cabal-install/src/Distribution/Client/Targets.hs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -618,6 +618,8 @@ data UserConstraintScope
618618
UserQualified UserQualifier PackageName
619619
| -- | Scope that applies to the package when it has a setup qualifier.
620620
UserAnySetupQualifier PackageName
621+
| -- | Scope that applies to all build packages only.
622+
UserAnyBuildDepQualifier PackageName
621623
| -- | Scope that applies to the package when it has any qualifier.
622624
UserAnyQualifier PackageName
623625
deriving (Eq, Show, Generic)
@@ -634,6 +636,7 @@ fromUserConstraintScope :: UserConstraintScope -> ConstraintScope
634636
fromUserConstraintScope (UserQualified q pn) =
635637
ScopeQualified (fromUserQualifier q) pn
636638
fromUserConstraintScope (UserAnySetupQualifier pn) = ScopeAnySetupQualifier pn
639+
fromUserConstraintScope (UserAnyBuildDepQualifier pn) = ScopeAnyBuildDepQualifier pn
637640
fromUserConstraintScope (UserAnyQualifier pn) = ScopeAnyQualifier pn
638641

639642
-- | Version of 'PackageConstraint' that the user can specify on
@@ -650,6 +653,7 @@ userConstraintPackageName (UserConstraint scope _) = scopePN scope
650653
where
651654
scopePN (UserQualified _ pn) = pn
652655
scopePN (UserAnyQualifier pn) = pn
656+
scopePN (UserAnyBuildDepQualifier pn) = pn
653657
scopePN (UserAnySetupQualifier pn) = pn
654658

655659
userToPackageConstraint :: UserConstraint -> PackageConstraint
@@ -698,6 +702,7 @@ instance Parsec UserConstraint where
698702
withDot :: PackageName -> m UserConstraintScope
699703
withDot pn
700704
| pn == mkPackageName "any" = UserAnyQualifier <$> parsec
705+
| pn == mkPackageName "build" = UserAnyBuildDepQualifier <$> parsec
701706
| pn == mkPackageName "setup" = UserAnySetupQualifier <$> parsec
702707
| otherwise = P.unexpected $ "constraint scope: " ++ unPackageName pn
703708

0 commit comments

Comments
 (0)