在我的Makefile中我有一些目标,直接调用:
all:
@$(MAKE) clean
@$(MAKE) resources
@$(MAKE)
但是,当将自定义makefile名称传递给make时,这不起作用,如
make -f MyMakefile
-f选项不会传递给子制作。如何判断主要品牌是否将其传递给子品牌? 对于我们有$(MAKECMDGOALS)的目标,它包含传递给主makefile的目标 是否有类似的东西,包含Makefile的名称,使用,与-f一起传递?喜欢
make $(MAKEUSEDMAKEFILE)
答案 0 :(得分:1)
您可以使用MAKEFILE_LIST
:
THIS_MAKEFILE := $(lastword $(MAKEFILE_LIST))
all:
@$(MAKE) -f $(THIS_MAKEFILE) clean
@$(MAKE) -f $(THIS_MAKEFILE) resources
@$(MAKE) -f $(THIS_MAKEFILE)
请注意,在包含任何其他makefile之前,必须先设置THIS_MAKEFILE
,否则其值将是错误的。