Makefile字符串处理函数详解
需积分: 33 170 浏览量
更新于2024-09-21
收藏 43KB DOC 举报
"Makefile常用函数表"
在Makefile中,函数是用于处理文本和控制构建过程的关键元素。以下是对给定的Makefile常用函数的详细说明:
1. **$(subst FROM,TO,TEXT)**
- **函数名称**:字符串替换函数—`subst`
- **函数功能**:这个函数在文本`TEXT`中查找所有出现的`FROM`子字符串,并将其替换为`TO`。
- **返回值**:替换操作后的新的字符串。
- **示例**:`$(subst old,new,text_with_old)`会将`text_with_old`中的所有`old`替换为`new`。
2. **$(patsubst PATTERN,REPLACEMENT,TEXT)**
- **函数名称**:模式替换函数—`patsubst`
- **函数功能**:此函数根据模式`PATTERN`在`TEXT`中搜索单词,将匹配的模式替换为`REPLACEMENT`。`%`字符可以作为通配符,代表任意数量的字符。
- **返回值**:经过模式替换后的新字符串。
- **示例**:`$(patsubst %.c,%.o,srcs)`将`srcs`中所有以`.c`结尾的单词替换为`.o`。
3. **$(strip STRINT)**
- **函数名称**:去空格函数—`strip`
- **函数功能**:该函数移除字符串`STRINT`首尾的空格和制表符,并合并连续的空格或制表符为单个空格。
- **返回值**:处理后的字符串,没有前导或尾随空格,且内部的连续空格被压缩为单个空格。
- **示例**:`$(strip whitespace string )`将返回`whitespace string`,移除了首尾和连续的空格。
4. **$(findstring FIND,IN)**
- **函数名称**:查找字符串函数—`findstring`
- **函数功能**:在字符串`IN`中查找`FIND`,如果找到,返回`FIND`;否则返回空字符串。
- **返回值**:如果`FIND`在`IN`中,返回`FIND`,否则返回空。
- **示例**:`$(findstring hello,world hello)`将返回`hello`,因为它在`world hello`中找到了`hello`。
5. **$(filter PATTERN…,TEXT)**
- **函数名称**:过滤函数—`filter`
- **函数功能**:这个函数在`TEXT`中查找所有与`PATTERN`匹配的单词,返回这些匹配的单词。`PATTERN`通常包含通配符`%`,并且可以接受多个模式。
- **返回值**:一个由`TEXT`中匹配`PATTERN`的单词组成的空格分隔的字符串。
- **示例**:`$(filter %.cpp %.cc,sources)`将返回`sources`中所有以`.cpp`或`.cc`结尾的单词。
这些函数在Makefile中用于处理文本、筛选文件列表、生成目标文件名等任务,极大地增强了Makefile的灵活性和实用性。正确理解和使用这些函数,可以使Makefile更加高效地管理项目构建。
197 浏览量
238 浏览量
227 浏览量
669 浏览量
2015-01-06 上传
点击了解资源详情
225 浏览量
zoubenteng
- 粉丝: 0
- 资源: 17
最新资源
- Addison.Wesley.RailsSpace.Building.a.Social.Networking.Website.with.Ruby.on.Rails
- sqlserver2005
- 自己搜集的资料 很不错
- 自己搜集的学习资料 很不错
- Struts快速学习指南
- JSP2_0.pdf
- 数据库工程师考试选择题
- jsp环境搭建全套资料清单
- C语言超经典技术,技巧。难得!
- 比较完整的VHDL语言学习
- Verilog HDL入门教程
- 2006年哈工大计算机复试试题
- c语言宝典,有关C语言的技术
- IDL编程技术PDF
- 数字图像的边缘检测算法的综合研究资料
- 在 Linux x86 上安装 Oracle 数据库 10g