summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/graph.cc8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/graph.cc b/src/graph.cc
index fcfeba0..355285c 100644
--- a/src/graph.cc
+++ b/src/graph.cc
@@ -55,6 +55,7 @@ bool DependencyScan::RecomputeDirty(Edge* edge, string* err) {
if (!err->empty())
return false;
// Failed to load dependency info: rebuild to regenerate it.
+ // LoadDeps() did EXPLAIN() already, no need to do it here.
dirty = edge->deps_missing_ = true;
}
@@ -142,7 +143,12 @@ bool DependencyScan::RecomputeOutputDirty(Edge* edge,
if (edge->is_phony()) {
// Phony edges don't write any output. Outputs are only dirty if
// there are no inputs and we're missing the output.
- return edge->inputs_.empty() && !output->exists();
+ if (edge->inputs_.empty() && !output->exists()) {
+ EXPLAIN("output %s of phony edge with no inputs doesn't exist",
+ output->path().c_str());
+ return true;
+ }
+ return false;
}
BuildLog::LogEntry* entry = 0;