aboutsummaryrefslogtreecommitdiff
path: root/libbuild2/rule.hxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2022-03-03 12:48:07 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2022-03-07 13:58:48 +0200
commit8475c82a2ca186f4ca987e50b4249bb8eb32ba01 (patch)
tree20c782983f70f7e45ab71ce347ffba3d53650e25 /libbuild2/rule.hxx
parentd28553772a3010fb545eae09967fa54adbe63bdb (diff)
Add support for update=unmatch|match to ad hoc recipes
Diffstat (limited to 'libbuild2/rule.hxx')
-rw-r--r--libbuild2/rule.hxx15
1 files changed, 12 insertions, 3 deletions
diff --git a/libbuild2/rule.hxx b/libbuild2/rule.hxx
index 364e3ff..73492fe 100644
--- a/libbuild2/rule.hxx
+++ b/libbuild2/rule.hxx
@@ -275,10 +275,19 @@ namespace build2
match (action, target&, const string&, match_extra&) const = 0;
virtual void
- apply_adhoc_members (action, target&, match_extra&) const = 0;
-
+ apply_adhoc_members (action, target&,
+ const scope& base,
+ match_extra&) const = 0;
+
+ // The implementation should append pattern prerequisites to
+ // t.prerequisite_targets[a] but not match. It should set bit 2 in
+ // prerequisite_target::include to indicate update=match and bit 3
+ // to indicate update=unmatch.
+ //
virtual void
- apply_prerequisites (action, target&, match_extra&) const = 0;
+ apply_prerequisites (action, target&,
+ const scope& base,
+ match_extra&) const = 0;
// Dump support.
//