在Abort makefile if variable not set处接收到建议我试图使用ifndef
,但它不起作用。Makefile - 如果变量未设置,则发生错误
的Makefile:
foo:
ifndef BAR
$(error "Must set BAR")
endif
但make foo BAR=quux
不起作用:
Makfile:2: *** "Must set BAR". Stop.
是怎么回事?它是否是空白问题?或者我完全误解了?
(我使用GNU MAKE)
我也试过:
foo:
ifndef BAR
$(error "Must set BAR")
endif
echo $(BAR)
这似乎排序的工作,但还是引起了,如果要调用的ifndef
一个目标在Makefile进一步下跌(不需要设置变量)被调用。