diff options
author | Nico Weber <nicolasweber@gmx.de> | 2015-03-12 16:06:50 (GMT) |
---|---|---|
committer | Nico Weber <nicolasweber@gmx.de> | 2015-03-12 16:06:50 (GMT) |
commit | 157a71f39b19d4fac43c814211c2093de205adab (patch) | |
tree | 99160d1b33ed65cb3c98f5062ead5af5ee4b0654 /src/graph.cc | |
parent | 8bab23be060ef6c79e35daa8e6deca18d00341f6 (diff) | |
download | Ninja-157a71f39b19d4fac43c814211c2093de205adab.zip Ninja-157a71f39b19d4fac43c814211c2093de205adab.tar.gz Ninja-157a71f39b19d4fac43c814211c2093de205adab.tar.bz2 |
On unexpected output in a .d file, rebuild instead erroring.
Fixes #417.
Diffstat (limited to 'src/graph.cc')
-rw-r--r-- | src/graph.cc | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/graph.cc b/src/graph.cc index cbf7921..76c4e9a 100644 --- a/src/graph.cc +++ b/src/graph.cc @@ -390,12 +390,13 @@ bool ImplicitDepLoader::LoadDepFile(Edge* edge, const string& path, &depfile.out_.len_, &unused, err)) return false; - // Check that this depfile matches the edge's output. + // Check that this depfile matches the edge's output, if not return false to + // mark the edge as dirty. Node* first_output = edge->outputs_[0]; StringPiece opath = StringPiece(first_output->path()); if (opath != depfile.out_) { - *err = "expected depfile '" + path + "' to mention '" + - first_output->path() + "', got '" + depfile.out_.AsString() + "'"; + EXPLAIN("expected depfile '%s' to mention '%s', got '%s'", path.c_str(), + first_output->path().c_str(), depfile.out_.AsString().c_str()); return false; } |