From b07060688a298abe765bca4258de4c675b24a364 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Wed, 7 Dec 2016 16:09:38 +0100 Subject: Keep track of the exact build start/stop times --- src/libstore/build.cc | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/libstore/build.cc') diff --git a/src/libstore/build.cc b/src/libstore/build.cc index 2bc167fee5ca..8442f1f613b7 100644 --- a/src/libstore/build.cc +++ b/src/libstore/build.cc @@ -1347,6 +1347,7 @@ void DerivationGoal::tryToBuild() case rpAccept: /* Yes, it has started doing so. Wait until we get EOF from the hook. */ + result.startTime = time(0); // inexact state = &DerivationGoal::buildDone; return; case rpPostpone: @@ -1424,6 +1425,7 @@ void DerivationGoal::buildDone() debug(format("builder process for ‘%1%’ finished") % drvPath); result.timesBuilt++; + result.stopTime = time(0); /* So the child is gone now. */ worker.childTerminated(this); @@ -2108,6 +2110,8 @@ void DerivationGoal::startBuilder() /* Create a pipe to get the output of the builder. */ builderOut.create(); + result.startTime = time(0); + /* Fork a child to build the package. */ #if __linux__ if (useChroot) { -- cgit 1.4.1