summaryrefslogtreecommitdiffstats
path: root/src/build.h
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2018-10-08 13:14:58 (GMT)
committerBrad King <brad.king@kitware.com>2018-11-19 15:23:51 (GMT)
commit8a9edb110354d5468ab42685cfece6a073146f27 (patch)
treeffe78231c4bdc8ad7e3a277a2b6b4f1822f5de0a /src/build.h
parent4a4f9d40e178a9a9e88f4cd502d2be49bf7938d8 (diff)
downloadNinja-8a9edb110354d5468ab42685cfece6a073146f27.zip
Ninja-8a9edb110354d5468ab42685cfece6a073146f27.tar.gz
Ninja-8a9edb110354d5468ab42685cfece6a073146f27.tar.bz2
Restore depfile toleration of multiple output paths on distinct lines
Prior to introduction of depfile parser handling of multiple rules, ninja silently accepted a depfile of the form: out: in1 in2 in3 other: otherIn1 otherIn2 otherIn3 and incorrectly treated `other` and `otherIn*` as additional inputs to `out`. Now we prefer to reject this just as we already do for a depfile specifying multiple outputs on one line. However, this can break existing cases where such a depfile was silently tolerated. Add a `-w depfilemulti={err,warn}` option to control this behavior, and make it just a warning by default.
Diffstat (limited to 'src/build.h')
-rw-r--r--src/build.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/build.h b/src/build.h
index 9b90e8a..a42b8d4 100644
--- a/src/build.h
+++ b/src/build.h
@@ -23,6 +23,7 @@
#include <string>
#include <vector>
+#include "depfile_parser.h"
#include "graph.h" // XXX needed for DependencyScan; should rearrange.
#include "exit_status.h"
#include "line_printer.h"
@@ -151,6 +152,7 @@ struct BuildConfig {
/// The maximum load average we must not exceed. A negative value
/// means that we do not have any limit.
double max_load_average;
+ DepfileParserOptions depfile_parser_options;
};
/// Builder wraps the build process: starting commands, updating status.