summaryrefslogtreecommitdiffstats
path: root/src/build.cc
diff options
context:
space:
mode:
authorEvan Martin <martine@danga.com>2010-12-13 20:16:55 (GMT)
committerEvan Martin <martine@danga.com>2010-12-13 20:16:55 (GMT)
commitbad6337f7cd39c557c392b19f8ac89e8ce190e2a (patch)
treef7fe75d1e15f2f6aecf586f4ad2b06598a8b4654 /src/build.cc
parent07171dd9d7aaa28580827b40203364862c2c0968 (diff)
downloadNinja-bad6337f7cd39c557c392b19f8ac89e8ce190e2a.zip
Ninja-bad6337f7cd39c557c392b19f8ac89e8ce190e2a.tar.gz
Ninja-bad6337f7cd39c557c392b19f8ac89e8ce190e2a.tar.bz2
use separate config object
Diffstat (limited to 'src/build.cc')
-rw-r--r--src/build.cc17
1 files changed, 6 insertions, 11 deletions
diff --git a/src/build.cc b/src/build.cc
index 0666f8e..c160dc3 100644
--- a/src/build.cc
+++ b/src/build.cc
@@ -235,20 +235,15 @@ struct DryRunCommandRunner : public CommandRunner {
queue<Edge*> finished_;
};
-Builder::Builder(State* state)
+Builder::Builder(State* state, const BuildConfig& config)
: state_(state) {
disk_interface_ = new RealDiskInterface;
- command_runner_ = new RealCommandRunner;
- log_ = new BuildStatusLog;
-}
-
-void Builder::SetVerbose(bool verbose) {
- log_->verbose_ = verbose;
-}
-
-void Builder::SetDryRun(bool on) {
- if (on)
+ if (config.dry_run)
command_runner_ = new DryRunCommandRunner;
+ else
+ command_runner_ = new RealCommandRunner;
+ log_ = new BuildStatusLog;
+ log_->verbose_ = config.verbose;
}
Node* Builder::AddTarget(const string& name, string* err) {