makefile中的$(if $(BUILD_DIR),$(BUILD_DIR),$(CURDIR))解释

$(if CONDITION,THEN-PART[,ELSE-PART]) 
 
¾  函数功能:第一个参数“CONDITION” ,在函数执行时忽略其前导和结尾空字
符,如果包含对其他变量或者函数的引用则进行展开。如果“CONDITION”的
展开结果非空,则条件为真,就将第二个参数“THEN_PATR”作为函数的计算
表达式;“CONDITION”的展开结果为空,将第三个参数“ELSE-PART”作为
函数的表达式,函数的返回结果为有效表达式的计算结果。 
¾  返回值:根据条件决定函数的返回值是第一个或者第二个参数表达式的计算结
果。当不存在第三个参数“ELSE-PART” ,并且“CONDITION”展开为空,函
数返回空。 
¾  函数说明:函数的条件表达式“CONDITION”决定了函数的返回值只能是
“THEN-PART”或者“ELSE-PART”两个之一的计算结果。 
¾  函数示例: 
 
SUBDIR += $(if $(SRC_DIR) $(SRC_DIR),/home/src) 
 
函数的结果是:如果“SRC_DIR”变量值不为空,则将变量“SRC_DIR”指定
的目录作为一个子目录;否则将目录“/home/src”作为一个子目录。 

猜你喜欢

转载自blog.csdn.net/tanjialiang_/article/details/79223385
今日推荐