diff options
Diffstat (limited to 'libbuild2/adhoc-rule-buildscript.hxx')
-rw-r--r-- | libbuild2/adhoc-rule-buildscript.hxx | 27 |
1 files changed, 22 insertions, 5 deletions
diff --git a/libbuild2/adhoc-rule-buildscript.hxx b/libbuild2/adhoc-rule-buildscript.hxx index 2334cdd..336dceb 100644 --- a/libbuild2/adhoc-rule-buildscript.hxx +++ b/libbuild2/adhoc-rule-buildscript.hxx @@ -36,16 +36,17 @@ namespace build2 const optional<timestamp>&) const override; target_state - perform_update_file (action, const target&) const; + perform_update_file_or_group (action, const target&) const; struct match_data; struct match_data_byproduct; target_state - perform_update_file_dyndep (action, const target&, match_data&) const; + perform_update_file_or_group_dyndep ( + action, const target&, match_data&) const; target_state - perform_update_file_dyndep_byproduct ( + perform_update_file_or_group_dyndep_byproduct ( action, const target&, match_data_byproduct&) const; optional<target_state> @@ -58,9 +59,19 @@ namespace build2 build::script::default_runner&, bool deferred_failure = false) const; + bool + execute_update_group (const scope&, + action a, const group&, + build::script::environment&, + build::script::default_runner&, + bool deferred_failure = false) const; + static target_state perform_clean_file (action, const target&); + static target_state + perform_clean_group (action, const target&); + target_state default_action (action, const target&, const optional<timestamp>&) const; @@ -79,12 +90,18 @@ namespace build2 virtual void dump_text (ostream&, string&) const override; + void + print_custom_diag (const scope&, names&&, const location&) const; + public: using script_type = build::script::script; - // The prerequisite_target::include bit that indicates update=unmatch. + // The prerequisite_target::include bits that indicate update=unmatch and + // an ad hoc version of that. // - static const uintptr_t include_unmatch = 0x100; + static const uintptr_t include_unmatch = 0x100; + static const uintptr_t include_unmatch_adhoc = 0x200; + script_type script; string checksum; // Script text hash. |