在GNU Make中强制变量扩展

时间:2011-10-11 10:42:45

标签: makefile gnu-make

如何强制GNU Make变量立即评估?请考虑以下示例:

TARGET:=fred
wilma:
    mkdir -p $(TARGET)
TARGET:=barney
betty:
    mkdir -p $(TARGET)
all: one two
.PHONY: one two all

使用make all,Make只会创建“barney”,因为只有在读取了makefile并分配了最终值(“barney”)后才会计算配方字符串。

在这种情况下我需要创建“fred”和“barney”。

1 个答案:

答案 0 :(得分:7)

wilma: TARGET:=fred
betty: TARGET:=barney
wilma betty:
     mkdir -p $(TARGET)