diff options
author | Evan Martin <martine@danga.com> | 2010-12-14 16:37:48 (GMT) |
---|---|---|
committer | Evan Martin <martine@danga.com> | 2010-12-14 16:37:48 (GMT) |
commit | a4b90fa428f6b1836854c089754c912f72c7bfb2 (patch) | |
tree | 00f84971f1c82b8dae9e8abc3e3fe90bc2e8c0fb /src/build.cc | |
parent | bad6337f7cd39c557c392b19f8ac89e8ce190e2a (diff) | |
download | Ninja-a4b90fa428f6b1836854c089754c912f72c7bfb2.zip Ninja-a4b90fa428f6b1836854c089754c912f72c7bfb2.tar.gz Ninja-a4b90fa428f6b1836854c089754c912f72c7bfb2.tar.bz2 |
verbosity tristate
Diffstat (limited to 'src/build.cc')
-rw-r--r-- | src/build.cc | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/src/build.cc b/src/build.cc index c160dc3..dc1fcab 100644 --- a/src/build.cc +++ b/src/build.cc @@ -13,12 +13,13 @@ struct BuildStatusLog { time_t last_update_; int finished_edges_, total_edges_; - bool verbose_; + + BuildConfig::Verbosity verbosity_; }; BuildStatusLog::BuildStatusLog() : last_update_(time(NULL)), finished_edges_(0), total_edges_(0), - verbose_(false) {} + verbosity_(BuildConfig::NORMAL) {} void BuildStatusLog::PlanHasTotalEdges(int total) { total_edges_ = total; @@ -26,10 +27,12 @@ void BuildStatusLog::PlanHasTotalEdges(int total) { void BuildStatusLog::BuildEdgeStarted(Edge* edge) { string desc = edge->GetDescription(); - if (!verbose_ && !desc.empty()) - printf("%s\n", desc.c_str()); - else - printf("%s\n", edge->EvaluateCommand().c_str()); + if (verbosity_ != BuildConfig::QUIET) { + if (verbosity_ != BuildConfig::VERBOSE && !desc.empty()) + printf("%s\n", desc.c_str()); + else + printf("%s\n", edge->EvaluateCommand().c_str()); + } } void BuildStatusLog::BuildEdgeFinished(Edge* edge) { @@ -243,7 +246,7 @@ Builder::Builder(State* state, const BuildConfig& config) else command_runner_ = new RealCommandRunner; log_ = new BuildStatusLog; - log_->verbose_ = config.verbose; + log_->verbosity_ = config.verbosity; } Node* Builder::AddTarget(const string& name, string* err) { |