aboutsummaryrefslogtreecommitdiff
path: root/build/rule.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'build/rule.cxx')
-rw-r--r--build/rule.cxx6
1 files changed, 5 insertions, 1 deletions
diff --git a/build/rule.cxx b/build/rule.cxx
index f53d9d9..f9b9a3c 100644
--- a/build/rule.cxx
+++ b/build/rule.cxx
@@ -228,10 +228,14 @@ namespace build
rmdir_status rs (rmdir (t.dir, t));
target_state ts (target_state::unchanged);
-
if (t.has_prerequisites ())
+ {
ts = reverse_execute_prerequisites (a, t);
+ if (ts == target_state::postponed)
+ return ts;
+ }
+
// If we couldn't remove the directory, return postponed meaning
// that the operation could not be performed at this time.
//