使用 SCons 提取每个编译单元的编译时间

Extract compilation time per compilation unit using SCons

我正在使用 SCons 构建我的 C++ 应用程序。我想提取单独构建每个编译单元所需的时间,例如:

a.cpp -> a.o - took 2.4 seconds
main.cpp -> main.o - took 5.1 seconds

我想按编译单元将这些时间存储在数据库中。

问题是 SCons 内置了一个构建编译单元的 Object/Program 构建器,我不确定如何连接到这些构建器以添加 timing/database 保存代码。从某种意义上说,我可能希望包装已经存在的构建器。

实现此目标的好方法是什么?

在脚本中包装 scons,然后使用 scons --debug=time 并解析输出。