在递归运行make之后更新时间戳

时间:2018-04-27 13:54:22

标签: makefile

我的项目依赖于子文件夹中的其他项目。我想以递归方式调用make来一次性构建所有内容。

我的第一次尝试是这样的:

.PHONY: all make_recursion

all: program

program: submake1/lib submake2/lib

submake1/lib: make_recursion

submake2/lib: make_recursion

make_recursion:
    make -C submake1
    make -C submake2

这不按预期工作。如果在这些项目中更改了文件,则执行每次运行make两个子映射。对于submake2,如果更新了submake2 / lib,我的程序也会被重建。如果只更新了submake1 / lib,我必须再次运行第二次更新程序。

这样做的原因是make在make_recursion之前获取submake1 / lib的时间戳,但之后不会更新它。我怎样才能改善这个?

0 个答案:

没有答案