diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2023-11-01 09:42:57 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2023-11-01 10:36:28 +0200 |
commit | ae9baf01f2a9627b7f1f2dc9db349d89c992f740 (patch) | |
tree | 15acf856697d604b3df4e8f80dd09d938dff3295 /libbuild2/target.hxx | |
parent | 50f9844b8a97aa06edf09b6d8a538721a0cd24ea (diff) |
Add support for adjusting match options of post hoc prerequisites
Diffstat (limited to 'libbuild2/target.hxx')
-rw-r--r-- | libbuild2/target.hxx | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/libbuild2/target.hxx b/libbuild2/target.hxx index f537d59..83e6994 100644 --- a/libbuild2/target.hxx +++ b/libbuild2/target.hxx @@ -269,6 +269,15 @@ namespace build2 static constexpr uint64_t all_options = ~uint64_t (0); + // The list of post hoc prerequisite targets for this target. Only not + // NULL in rule::apply_posthoc() and rule::reapply() functions and only if + // there are post hoc prerequisites. Primarily useful for adjusting match + // options for post hoc prerequisites (but can also be used to blank some + // of them out). + // + vector<context::posthoc_target::prerequisite_target>* + posthoc_prerequisite_targets; + // Auxiliary data storage. // // A rule (whether matches or not) may use this pad to pass data between @@ -340,7 +349,8 @@ namespace build2 explicit match_extra (bool l = true, bool f = false) : locked (l), fallback (f), - cur_options (all_options), new_options (0) {} + cur_options (all_options), new_options (0), + posthoc_prerequisite_targets (nullptr) {} void reinit (bool fallback); |