aboutsummaryrefslogtreecommitdiff
path: root/build/target
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2015-07-20 17:35:47 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2015-07-20 17:35:47 +0200
commitcb8399da1f0b1c5f28e443c98bfc3cb4e12b8cbf (patch)
tree434f2137e8ccac53bf6ec8a62bab501363d898f4 /build/target
parentf0aca8db08518ab7f66a8c86200616fed8bcc8d4 (diff)
Implement pre/post operation support
Also, extend execution mode/postponed logic to propagate the postponed target state. At the top, we now re-try postponed targets. This results in the expected behavior when, for example, cleaning two targets with one depending on the other.
Diffstat (limited to 'build/target')
-rw-r--r--build/target6
1 files changed, 3 insertions, 3 deletions
diff --git a/build/target b/build/target
index ee61c7b..d164f72 100644
--- a/build/target
+++ b/build/target
@@ -306,10 +306,10 @@ namespace build
typedef build::recipe recipe_type;
const recipe_type&
- recipe (action_id a) const {return action_ == a ? recipe_ : empty_recipe;}
+ recipe (action a) const {return action_ == a ? recipe_ : empty_recipe;}
void
- recipe (action_id a, recipe_type r)
+ recipe (action a, recipe_type r)
{
assert (action_ != a || !recipe_);
action_ = a;
@@ -348,7 +348,7 @@ namespace build
static const target_type static_type;
private:
- action_id action_ {0}; // Action id of this recipe.
+ action action_; // Action this recipe is for.
recipe_type recipe_;
};