Linux:Makefile条件判断ifeq、ifneq、ifdef、ifndef的含义
一、ifeq
1、举例
根据 $(CC) 取值不同,执行不同的处理逻辑
libs_for_gcc = -lgnu
normal_libs =foo: $(objects)
ifeq ($(CC),gcc)
$(CC) -o foo $(objects) $(libs_for_gcc)
else
$(CC) -o foo $(objects) $(normal_libs)
endif
- ifeq:表示条件语句的开始,并指定一个条件表达式。表达式包含两个参数,以逗号分隔,表达式以圆括号括起,表示判断表达式与某个值是否相等
- else:表示条件表达式为假的情况
- endif:表示一个条件语句的结束,任何一个条件表达式都应该以endif结束
2、条件表达式的语法
// 表示条件关键字,如“ifeq”
<conditional-directive>;
<text-if-true>;
else
<text-if-false>;
endif
二、ifneq(与 ifeq 相反)
举例:
比较参数“arg1”和“arg2”的值是否相同。如果不同,则为真
ifneq (<arg1>;, <arg2>;)
三、ifdef
举例:
如果变量 variable-name; 的值 非空,表达式为真。否则,表达式为假。当然,variable-name; 同样可以是一个函数的返回值。注意,ifdef只是测试一个变量是否有值,其并不会把变量扩展到当前位置
ifdef <variable-name>;
四、ifndef(与 ifdef 相反)
举例:
ifndef <variable-name>;
Linux:Makefile条件判断ifeq、ifneq、ifdef、ifndef的含义相关推荐
- 【Scripts系列】之Makefile中条件分支ifeq/else/endif/else ifeq/ifneq/ifdef/ifndef用法详解
DATE: 2019-2-22 前言 条件分支的用法在任何编程语言和脚本以及逻辑中都广泛使用.前文讲述过C语言中预处理的条件编译#ifdef/#if/#elif/#else/#endif用 ...
- ifeq makefile 或语句_makefile中的 ifeq ifneq ifdef ifndef条件判断
feq ifneq ifdef ifndef 条件语句中使用到了三个关键字:"ifeq"."else"和"endif".其中: 1. ...
- Makefile 条件判断(多条件,或条件)
多条件 Makefile 使用 ifeq/ifneq 进行多条件判断如下 condition=CONDITION1 #condition=CONDITION2ifeq ($(condition), C ...
- linux脚本条件判断或,Shell脚本IF条件判断和判断条件总结
前言: 无论什么编程语言都离不开条件判断.SHELL也不例外. if list then do something here elif list then do another thing ...
- linux常见条件判断
linux条件判断:eq.ne.gt.lt.ge.le.-n.-z -eq: 测试两个整数是否相等:比如 $A -eq $B -ne: 测试两个整数是否不等:不等,为真:相等,为假: -gt: 测试一 ...
- makefile条件判断语句和函数
1.makefile中支持条件判断语句 可以根据条件的值来决定make的执行 可以比较两个不同变量或者变量和常量值 ifxxx(arg1,arg2)elseendif 注意事项:条件判断语句只能用于控 ...
- Linux shell条件判断if中的-a到-z的意思
[ -a FILE ] 如果 FILE 存在则为真. [ -b FILE ] 如果 FILE 存在且是一个块特殊文件则为真. [ -c FILE ] 如果 FILE 存在且是一个字特殊文 ...
- Linux shell 条件判断if
-a到-z的意思 [ -a FILE ] 如果 FILE 存在则为真. [ -b FILE ] 如果 FILE 存在且是一个块特殊文件则为真. [ -c FILE ] 如果 FILE 存在且是一个字特 ...
- Makefile中条件判断ifeq、ifneq、ifdef、ifndef的含义
一.ifeq 1.举例 根据 $(CC) 取值不同,执行不同的处理逻辑 libs_for_gcc = -lgnu normal_libs = foo: $(objects) ifeq ($(CC),g ...
最新文章
- ++和+的运算优先级和++i和i++混合用法解析
- VIT自适应语音转文本可预测长度和内容(ocr也可)
- Numpy生成二项分布随机数
- 计算机vb选择题题题库,2013计算机二级VB真考选择题题库(4
- 「 每日一练,快乐水题 」693. 交替位二进制数
- LINQ体验(6)——LINQ语句之Join和Order By
- 一个列表包揽所有你需要的Windows应用
- 数据库中的超码、候选码、主码
- java学习笔记14-多态
- 薅羊毛!如何让趣头条自动阅读挣钱
- 简单的新闻分类算法(流程图描述)
- 普通定时器输出互补PWM带死区
- 什么软件可以测试自己有没有近视,微信APP中怎么测试自己的视力
- (三)CSS前端开发面试会问到的问题有哪些?
- 语法俱乐部3:动词时态
- LeetCode题解(1425):带限制的子序列和(Python)
- 坑爹的hiredis API使用
- 读彬彬有礼压缩感知相关论文笔记3——沙威程序解读
- MySQL将表中的价格全部加五_MySQL浅见(五)修改表
- 泛函分析笔记(十三) 傅里叶级数、紧自伴算子
热门文章
- Pb (数据存储单位)
- 不仅仅是营收170亿这么简单 腾讯云已经成为一切业务的基础
- intValue()的用法,以及与parseInt()和valueOf 的区别
- java 灰度直方图_【数字图像处理】灰度直方图、直方图均衡化、直方图规定化...
- 记录贴/阴阳师式神培养core loop
- MySQL:8.0 运行在 1G 内存服务上的内存配置
- python绘制花色分形树
- 最伤害眼睛的7大恶习
- 【分享日记】藏趣云浏览器网络收藏夹书签,多浏览器办公神器提高浏览器切换便捷性
- Flutter下载图片和视频