From 55dbf24b98ad428dd32079363f1213ee3aa4c284 Mon Sep 17 00:00:00 2001 From: Hendrik Brucker Date: Thu, 8 Jul 2021 13:52:39 +0200 Subject: [PATCH] Add elapsed time print statement to build system (cherry picked from commit d07015909496be8eed7cbadc159ef0054565d5ef) --- SConstruct | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/SConstruct b/SConstruct index d138c7b250e..92bcb1d059a 100644 --- a/SConstruct +++ b/SConstruct @@ -3,10 +3,12 @@ EnsureSConsVersion(0, 98, 1) # System +import atexit import glob import os import pickle import sys +import time from collections import OrderedDict # Local @@ -25,6 +27,8 @@ active_platform_ids = [] platform_exporters = [] platform_apis = [] +time_at_start = time.time() + for x in sorted(glob.glob("platform/*")): if not os.path.isdir(x) or not os.path.exists(x + "/detect.py"): continue @@ -676,3 +680,12 @@ if "env" in locals(): # TODO: replace this with `env.Dump(format="json")` # once we start requiring SCons 4.0 as min version. methods.dump(env) + + +def print_elapsed_time(): + elapsed_time_sec = round(time.time() - time_at_start, 3) + time_ms = round((elapsed_time_sec % 1) * 1000) + print(f"[Time elapsed: {time.strftime('%H:%M:%S', time.gmtime(elapsed_time_sec))}.{time_ms:03}]") + + +atexit.register(print_elapsed_time)