在多个 Makefile 中包含 Makefile 和 Echo 变量

Include Makefile and Echo Variables Inside Multiple Makefiles

在我最近不得不看的 Makefile 中,它包括这个 include $(MAKERULES)

现在对我来说,我会认为在 makefile 顶部的某处它有 MAKERULES = xyz 但它没有。所以我打印出 MAKERULES

test:

    @echo "Rules: $(MAKERULES)"

然后我做测试。它运行并打印出另一个 Makefile 位置,Makefile2。

X/Y/Z/Makefile2 路径。我进入这个 Makefile 并尝试写出一些 echo 语句,以便我可以看到正在打印的内容,但没有打印出来。

是否可以从我的本地生成文件 (Makefile) 引用的另一个生成文件 (Makefile2) 打印出变量?

是的,这是可能的。您没有向我们展示您尝试显示这些变量的尝试,因此我们无法告诉您为什么它不起作用。 (好吧,不能。)

这是我的做法:

$(info the variable FOO contains $(FOO))

如果您想对多个变量执行此操作:

$(foreach X, FOO BAR BAZ, $(info $(X) is $($(X))))

并且所有当前定义的全局变量的列表是.VARIABLES,因此您可以使用“$(.VARIABLES)”代替"FOO BAR BAZ"来打印所有这些。