Makefile之条件判断
Make之条件判断语句
Makefile条件判断即使make能像编程语言一样,使用条件判断类似if这种语句来选择执行的分支
- 语法规则如下
1
2
3<conditional-directive>
<text-if-true>
endif
或者1
2
3
4
5<conditional-directive>
<text-if-true>
else
<text-if-false>
endif
此处的conditional-directive代表了条件判断语句,下面的text-if-true代表条件成立情况下要执行的分支。
条件判断语句有四种,分别是:ifeq,ifneq,ifdef,ifndef
- ifeq:有两个参数,值相等条件为真
- ifneq:值不相等条件为假
- ifdef:如果变量定义且不为空条件为真
- ifndef:如果变量未定义或者为空则为真
很好理解的东西,下边看一个具体的示例:1
2
3
4
5
6
7
8
9flag=True
ifeq ($(flag),True)
var=flag is True
else
var=flag is False
endif
tar:
@echo $(var)
结果:1
flag is True