如何强制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”。
答案 0 :(得分:7)
wilma: TARGET:=fred
betty: TARGET:=barney
wilma betty:
mkdir -p $(TARGET)