gnu make,`include`指令的include路径

时间:2018-07-14 22:16:47

标签: makefile include include-path

除了make用于定位由include指令加载的文件的标准目录之外,还有什么方法可以在makefile本身内指定其他包含路径?我知道-I命令行GNU make选项,但是我想知道是否有任何make变量来指定相同的变量。

1 个答案:

答案 0 :(得分:1)

我建议使用.INCLUDE_DIRS变量,但是正如下面的注释所指出的那样,该变量是只读的。

我唯一想到的另一种方法是让顶级文件调用实际的makefile,并让顶级文件更新MAKEFLAGS

# Top level -- Call it GNUmakefile?
INCLUDE_DIRS := first second third
MAKEFLAGS += $(foreach dir,$(INCLUDE_DIRS),--include-dir=$(dir))
.DEFAULT all:;$(MAKE) -f Makefile $(MAKECMDGOALS)

然后用Makefile中的三个目录调用真实的.INCLUDE_DIRS