From cf6b3e34b59ad120111e0c1ead779bbb3a70c38d Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Thu, 12 Mar 2015 15:43:17 +0200 Subject: Implement clean operation --- build/rule | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'build/rule') diff --git a/build/rule b/build/rule index 2e11191..7501f7d 100644 --- a/build/rule +++ b/build/rule @@ -35,7 +35,8 @@ namespace build extern operation_rule_map rules; extern const target_rule_map* current_rules; // Rules for current operation. - // Fallback rule that check that the path exists. + // Fallback rule that on update verifies that the path exists and is + // not older than any of its prerequisites. // class path_rule: public rule { @@ -47,7 +48,7 @@ namespace build apply (action, target&, void*) const; static target_state - update (action, target&); + perform_update (action, target&); }; class dir_rule: public rule @@ -58,9 +59,6 @@ namespace build virtual recipe apply (action, target&, void*) const; - - static target_state - update (action, target&); }; class fsdir_rule: public rule @@ -73,7 +71,10 @@ namespace build apply (action, target&, void*) const; static target_state - update (action, target&); + perform_update (action, target&); + + static target_state + perform_clean (action, target&); }; } -- cgit v1.1