1.makefile中支持条件判断语句

  • 可以根据条件的值来决定make的执行
  • 可以比较两个不同变量或者变量和常量值

2. 注意事项

  • 条件判断语句只能用于控制make实际执行的语句;但是,不能控制规则中命令的执行过程

8.支持条件判断语句

3.条件判断关键字

关键字 功能
ifeq 判断参数是否相等,相等为true,否则为false
ifneq 判断参数是不否相等,不相等为true,否则为false
ifdef 判断参数是否有值有值为true,否则为false
ifndef 判断参数是否没有值,没有值为true,否则为false

4.工程经验

  •  条件判断语句之前可以有空格,但不能有Tab字符( '\t' )
  • 在条件语句中不要使用自动变量([email protected], $^, $<)
  • 一条完整的条件语句必须位于同一个makefile中
  • 条件判断类似于C语言中的宏,预处理阶段有效执行阶段无效
  • make在加载makefile时

                 首先计算表达式的值(赋值方式不同计算方式不同)

                 根据判断语句的表达式决定执行的内容

 小结:

  • 条件判断根据条件的值来决定make的执行
  • 条件判断可以比较两个不同变量或者变量和常量值
  • 条件判断在预处理阶段有效,执行阶段无效
  • 条件判断不能控制规则中命令的执行过程

相关文章: