使用Makefile获取C项目的构建时间

时间:2019-06-13 07:59:20

标签: c makefile

我有一个基于C语言的大型项目,并且我希望获得相同的构建时间。问题是如果我使用

time -p make 

它确实给了我整个项目的构建时间。但是,我也需要子目录构建级别的构建数据。意思是,我正在处理大约1000多个Makefile。

有什么方法可以获取此子目录级别的构建时间?

强力方式,我是这样想的。但是,目前还不确定如何实现这一目标。

在机器上将每个“ make”替换为“ time make”。有办法吗?

任何其他解决问题的方法也将受到赞赏。预先感谢。

1 个答案:

答案 0 :(得分:0)

解决此问题的一种方法是将所有构建命令提取到文件中,例如:

make clean
make --dry-run > build-commands.txt

然后,您可以按源文件路径过滤build-commands.txt,执行命令并测量时间。

要使其正常工作,您的递归Makefile必须使用${MAKE}而不是普通的make来调用其他makefile。