请相信我:我进行了很多搜索和测试...但是在这里我没有发现错误:
VERSION := 123
all:
ifndef VERSION
$(error VERSION not set)
else
$(info Start deploy $(VERSION))
endif
输出VERSION not set
我真正想要的是像VERSION=1.2.3 make
那样调用make,但是甚至没有在Makefile中设置变量起作用
我想念什么?
答案 0 :(得分:0)
对我来说,它输出Start deploy 123
。
请注意,ifndef
和$(error)
和$(info)
是makefile语法的一部分,而不是属于all
目标的配方语法。因此,您的代码等效于:
VERSION := 123
ifndef VERSION
$(error VERSION not set)
else
$(info Start deploy $(VERSION))
endif