summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorNico Weber <nicolasweber@gmx.de>2016-02-03 21:11:28 (GMT)
committerNico Weber <nicolasweber@gmx.de>2016-02-03 21:11:28 (GMT)
commitca5fc795f38c77e42657e9d276f1dfc5127a8243 (patch)
treec644cbf415675ac7650c9b442980e1d5149b2724 /src
parentf38a52c8393f5c850e378e8e6ad97ba589c253db (diff)
parent33b3480d82057a01de8f8de5671046c26c88db4b (diff)
downloadNinja-ca5fc795f38c77e42657e9d276f1dfc5127a8243.zip
Ninja-ca5fc795f38c77e42657e9d276f1dfc5127a8243.tar.gz
Ninja-ca5fc795f38c77e42657e9d276f1dfc5127a8243.tar.bz2
Merge pull request #1033 from colincross/failed
Print output file on failure
Diffstat (limited to 'src')
-rw-r--r--src/build.cc11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/build.cc b/src/build.cc
index 45d3f32..e33a007 100644
--- a/src/build.cc
+++ b/src/build.cc
@@ -126,8 +126,15 @@ void BuildStatus::BuildEdgeFinished(Edge* edge,
PrintStatus(edge);
// Print the command that is spewing before printing its output.
- if (!success)
- printer_.PrintOnNewLine("FAILED: " + edge->EvaluateCommand() + "\n");
+ if (!success) {
+ string outputs;
+ for (vector<Node*>::const_iterator o = edge->outputs_.begin();
+ o != edge->outputs_.end(); ++o)
+ outputs += (*o)->path() + " ";
+
+ printer_.PrintOnNewLine("FAILED: " + outputs + "\n");
+ printer_.PrintOnNewLine(edge->EvaluateCommand() + "\n");
+ }
if (!output.empty()) {
// ninja sets stdout and stderr of subprocesses to a pipe, to be able to