summaryrefslogtreecommitdiffstats
path: root/src/build.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/build.cc')
-rw-r--r--src/build.cc13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/build.cc b/src/build.cc
index 7792016..b806fb5 100644
--- a/src/build.cc
+++ b/src/build.cc
@@ -110,11 +110,6 @@ void BuildStatus::BuildEdgeFinished(Edge* edge,
int* end_time) {
int64_t now = GetTimeMillis();
- if (finished_edges_ == 0) {
- overall_rate_.Restart();
- current_rate_.Restart();
- }
-
++finished_edges_;
RunningEdgeMap::iterator i = running_edges_.find(edge);
@@ -164,6 +159,11 @@ void BuildStatus::BuildEdgeFinished(Edge* edge,
}
}
+void BuildStatus::BuildStarted() {
+ overall_rate_.Restart();
+ current_rate_.Restart();
+}
+
void BuildStatus::BuildFinished() {
printer_.SetConsoleLocked(false);
printer_.PrintOnNewLine("");
@@ -650,6 +650,9 @@ bool Builder::Build(string* err) {
command_runner_.reset(new RealCommandRunner(config_));
}
+ // We are about to start the build process.
+ status_->BuildStarted();
+
// This main loop runs the entire build process.
// It is structured like this:
// First, we attempt to start as many commands as allowed by the