将变量传达给子 make
make
通过明确的请求可以将顶层 make 的变量值传递给子 make 的环境。这些变量在子 make 中被定义为默认值。你不能重写被子 make 的 Makefile 所使用的变量(除非你执行的时候使用-e
开关)。
为了传递或导出变量,make
会将该变量和它的值添加到每个运行命令的环境中。而子 make 会顺序的根据环境来初始化它的变量表。
特殊变量 SHELL 和 MAKEFLAGS 总是被导出(除非你明确的阻止)。只要设置了 MAKEFILES 的内容,它就会被导出。
如果您想要将指定变量导出到子 make 中,请使用 export 指令,如图所示 -
export variable ...
如果您想阻止变量被导出,请使用 unexport 指令,如图所示 -
unexport variable ...