在包含子makefile之前更新子模块

时间:2018-11-07 18:41:21

标签: makefile git-submodules

我有一个包含另一个Makefile的Makefile。这在makefile中很早就发生了。像这样:

include $(SOME_SDK)/Makefile.defines

但是SOME_SDK是子模块。

我想先运行git submodule update --init --recursive,然后再进行包含。

理想情况下,这不应成为任何目标的一部分。

我该怎么做?

1 个答案:

答案 0 :(得分:1)

您不能将此命令作为某些目标的一部分,因为include指令在计算任何目标之前就已完成。

但是您可以在Makefile的任何位置甚至在include之前执行任何shell命令(或脚本)。

dummy := $(shell git submodule update --init --recursive)
include $(SOME_SDK)/Makefile.defines