我想在GNU make文件的if
循环中检查多个条件。以下是一个示例:
ifeq ($(TEST_FLAG),TRUE && ($(DEBUG_FLAG),FALSE))
true statement
else
false statement
endif
怎么做是正确的方式?
我想在GNU make文件的if
循环中检查多个条件。以下是一个示例:
ifeq ($(TEST_FLAG),TRUE && ($(DEBUG_FLAG),FALSE))
true statement
else
false statement
endif
怎么做是正确的方式?
ifeq ($(TEST_FLAG),TRUE)
ifeq ($(DEBUG_FLAG),FALSE)
# Stuff
endif
endif
ifeq() ... ifeq()...endif else ... ifeq()...endif ... endif
。我收到了“extraneous 'else'”错误。 - NickSoft你可以使用ifeq
与您的值的连接,例如:
ifeq ($(TEST_FLAG)$(DEBUG_FLAG),TRUEFALSE)
do something
endif
也可以使用条件函数,这些函数在循环中更有用(因为 ifeq
在循环中可能不会按照预期执行,它只会测试一次)。
TRUEFALSE
之前的前导空格会_破坏_检查,因为ifeq
对于前导空格非常敏感,所以它永远不会起作用。你能否检查一下,如果我是正确的,请编辑你的答案? - Peter VARGAmake TEST_FLAG=TR DEBUG_FLAG=UEFALSE
,make DEBUG_FLAG=TRUEFALSE
。 - xtoflifeq ($(TEST_FLAG),TRUE)
ifeq ($(DEBUG_FLAG),FALSE)
true statement
endif
endif
false statement
$(and ...)
的函数可以提供帮助。 - MadScientist