11

我有一个相当大的由 autotools 驱动的项目,它位于一个目录树中,该目录树由许多带有子目录的目录组成。它有一个执行大量自动化测试的目标check(在每个子目录以及主目录中)。check目标是递归构建的。

并行构建和测试(通过-jmake 选项)适用于大多数目录。然而,有一个目录包含在并行执行时不起作用的测试(时序敏感性),但在串行运行时通过。

问题是:有没有办法强制 makecheck在这个子目录中串行构建目标,同时并行构建其他所有内容?

4

2 回答 2

24

添加到您的Makefile

.NOTPARALLEL:

在此处查看 GNU make 的文档。

于 2015-01-04T20:40:44.727 回答
5

如果我理解正确,那么当您运行构建check目标的递归 make 时,您可以-j1专门传递,以确保它连续运行:

check: ; $(MAKE) -j1 ...
于 2013-06-18T19:25:28.590 回答