在make文件中,正常分配与使用导出

时间:2017-09-05 12:14:43

标签: linux shell makefile

在Makefile中分配导出和不导出之间有什么区别。 例如:

export PROTOCOMPILER_RETIMING=1
FILELIST = ../src/haps_pcie_sa_test.lst

任何人都可以详细解释

1 个答案:

答案 0 :(得分:1)

export会将变量导出到 sub-makes ,这是make的递归调用。例如:

<强>生成文件

VARIABLE = Hello
all:
    $(MAKE) -C foo  # runs make in subdirectory foo

<强>富/生成文件

all:
    echo $(VARIABLE)

这将不打印任何内容,因为VARIABLE未导出到子目录foo的子生成运行。但是,如果我们将export VARIABLE添加到顶级Makefile,我们会将Hello打印到控制台。

更多信息:GNU make手册中的Variables/Recursion