Makfile笔记——patsubst函数、foreacch函数、wildcard函数
patsubst函数:
功能:查找text中的单词(单词以“空格”、“Tab”或“回车”“换行”分隔)是否符合模式pattern,如果匹配的话,则以replacement替换。
这里,pattern可以包括通配符“%”,表示任意长度的字串。如果replacement中也包含“%”,那么,replacement中的这个“%”将是pattern中的那个“%”所代表的字串。(可以用“\”来转义,以“%”来表示真实含义的“%”字符)。
例如:INCDIRS := imx6ul bsp/clk bsp/led bsp/delay
INCLUDE := $(patsubst %, -I %, $(INCDIRS))
效果:INCDIRS :=-I imx6ul -I bsp/clk -I bsp/led -I bsp/delay
wildcard函数:
功能:$(wildcard PATTERN),获取匹配 PATTERN 的所有对象,返回值为当前目录下匹配PATTERN条件的使用空格作为间隔的列表。
例如:SRC = $(wildcard *.c),获取当前目录下的.c文件并以空格为间隔。
foreach函数:
功能:Makefile常用循环函数,函数常用格式: $(foreach var, list, text),该函数从list参数中逐一取出var参数中,然后执行text表达式,每次返回一个字符串,最后返回值为以空格为间隔的之前单次循环的所有字符串集合。
例如:SRCDIRS := project bsp/clk bsp/led bsp/delay
SFILES := $(foreach dir, $(SRCDIRS), $(wildcard $(dir)/*.S))
效果:将SRCDIRS中的元素逐一读出到dir,然后执行$(wildcard $(dir)/*.S)),最终效果就是将SRCDIRS中的所有.S文件读出并以空格间隔
Makfile笔记——patsubst函数、foreacch函数、wildcard函数相关推荐
- linux_makefile文件编写,基本规则、工作原理、模式规则,wildcard函数、patsubst函数
接上一篇:linux_GDB调试学习(调试运行.多文件设置断点)_C/C++程序调试 本次来分享linux下的makefile文件的编写,开始上菜: 目录 1.makefile文件的命名规则 2.用途 ...
- 【makefile笔记】patsubst和wildcard函数使用小结
0x00 前言 文章中的文字可能存在语法错误以及标点错误,请谅解: 如果在文章中发现代码错误或其它问题请告知,感谢! 0x01 makefile函数调用语法 makefile函数调用原型: $(< ...
- wildcard函数
在Makefile规则中,通配符会被自动展开.但在变量的定义和函数引用时,通配符将失效.这种情况下如果需要通配符有效,就需要使用函数"wildcard",它的用法是:$(wildc ...
- OpenCV学习笔记(三十六)——Kalman滤波做运动目标跟踪 OpenCV学习笔记(三十七)——实用函数、系统函数、宏core OpenCV学习笔记(三十八)——显示当前FPS OpenC
OpenCV学习笔记(三十六)--Kalman滤波做运动目标跟踪 kalman滤波大家都很熟悉,其基本思想就是先不考虑输入信号和观测噪声的影响,得到状态变量和输出信号的估计值,再用输出信号的估计误差加 ...
- OpenCV学习笔记(二十一)——绘图函数core OpenCV学习笔记(二十二)——粒子滤波跟踪方法 OpenCV学习笔记(二十三)——OpenCV的GUI之凤凰涅槃Qt OpenCV学习笔记(二十
OpenCV学习笔记(二十一)--绘图函数core 在图像中,我们经常想要在图像中做一些标识记号,这就需要绘图函数.OpenCV虽然没有太优秀的GUI,但在绘图方面还是做得很完整的.这里就介绍一下相关 ...
- 子类重写父类虚函数_C/C++编程笔记:关于C++的虚函数和多态,你真的了解吗?...
前言 本章节主要针对于C++中的虚函数和多态做一个详细介绍. 虚函数 虚函数的长相其实很简单,在C++类型用virtual修饰的函数就是虚函数,如下代码: 虚函数对于本类的影响:存在虚函数类的内存会多 ...
- Python学习笔记__4.1章 高阶函数
# 这是学习廖雪峰老师python教程的学习笔记 1.概览 我们知道Python内置的求绝对值的函数是abs() # 调用abs()函数可以获得一个值 >>> abs(-10) 10 ...
- Linux学习笔记-Makefile中的变量及函数
Makefile中的变量 此处的变量不是C/C++,Java等中的变量(认为他是一个字符串就阔以了) 一般变量名用大写字母来写,如下所属: SUBDIR = src xml SUBDIR += osa ...
- MYSQL学习笔记三:日期和时间函数
MYSQL学习笔记三:日期和时间函数 1. 获取当前日期的函数和获取当前时间的函数 /*获取当前日期的函数和获取当前时间的函数.将日期以'YYYY-MM-DD'或者'YYYYMMDD'格式返回 */ ...
最新文章
- 卷积神经网络(CNN)新手指南
- ios开发判断字符串为空_【开发常识】这个问题,直接导致年终奖没了……(惨兮兮)...
- oracle中类似indexof用法_instr函数
- 【MongoDB系列】:MongoDB 集群,副本集模式(二)
- Match Points
- 2018-2019 20165227《信息安全系统设计基础》第三周学习总结
- php 循环多条件,怎么循环带条件的数组
- ntlm java_深讨Java SE 6 在 HTTP 方面的新特性(NTLM)
- Python学习笔记之用户输入
- 0-10不断循环的js
- android蓝牙设置特征属性,Android BLE蓝牙详细解读(二)
- 20172328《程序设计与数据结构》第三周学习总结
- 崩溃中!我终于看明白了,什么是财富自由的底层逻辑!思维导图+笔记精华
- android 焦点移动,Android TV 焦点上下左右移动
- 数字黑洞java,java解决数字黑洞问题
- 语音识别 特征提取(一)
- Catlike Coding Unity教程系列 中文翻译 Basics篇(一)Game Objects and Scripts
- 【Flutter 问题系列第 15 篇】如何给 Flutter 中的图片设置透明度
- XSS短字符短域名绕过,XSS相关的知识
- 品管七大手法-6鱼骨图(转载)