diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2023-10-27 07:22:00 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2023-10-27 07:22:00 +0200 |
commit | a5418d62f79f7d59f6b0a7efc88dcd7e99c8248a (patch) | |
tree | 84686c37b666eae4a52b0fda763afeeefca3461f /libbuild2/install/rule.hxx | |
parent | 152f83d22861129dba48404632b61b3f00f18715 (diff) |
WIP: install: file_rule::reapply_impl()
Diffstat (limited to 'libbuild2/install/rule.hxx')
-rw-r--r-- | libbuild2/install/rule.hxx | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/libbuild2/install/rule.hxx b/libbuild2/install/rule.hxx index 2ddacc6..4a35503 100644 --- a/libbuild2/install/rule.hxx +++ b/libbuild2/install/rule.hxx @@ -167,8 +167,20 @@ namespace build2 // Implementation of apply() that returns empty_recipe (i.e., NULL) if // the target is not installable. // + // If the implementation may call reapply_impl(), then the reapply + // argument to apply_impl() must be true. Note that in this case, the + // *_impl() functions use the prerequisite_target::data member for own + // housekeeping. + // recipe - apply_impl (action, target&, match_extra&) const; + apply_impl (action, target&, match_extra&, bool reapply = false) const; + + // Implementation of reapply() that re-tries prerequisites that have + // been filtered out during the reapply() call. Note that currently not + // supported for update, only for install/uninstall. + // + void + reapply_impl (action, target&, match_extra&) const; static target_state perform_update (action, const target&); |