【makefile笔记】patsubst和wildcard函数使用小结

1559
2023/10/4 7:20:34
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

patsubst函数是GNU make中的一个内置函数,用于对指定的字符串进行模式替换。它的语法如下:

$(patsubst pattern,replacement,text)

其中,pattern是要匹配的模式,replacement是用于替换的字符串,text是要进行替换的文本。

patsubst函数会在text中查找与pattern匹配的部分,并将其替换为replacement。它可以用于对文件名、路径名等进行模式替换。

以下是patsubst函数的使用示例:

# 将src目录下的所有.c文件替换为.o文件
OBJS = $(patsubst src/%.c,obj/%.o,$(wildcard src/*.c))
# 将所有的.c文件替换为.o文件
OBJS = $(patsubst %.c,%.o,$(wildcard *.c))

wildcard函数也是GNU make中的一个内置函数,用于查找文件。它的语法如下:

$(wildcard pattern)

其中,pattern是要查找的文件模式。

wildcard函数会在当前目录下查找与pattern匹配的文件,并返回匹配到的文件列表。它可以用于获取指定目录下的文件列表,或者根据文件模式来进行操作。

以下是wildcard函数的使用示例:

# 获取当前目录下所有的.c文件
SRCS = $(wildcard *.c)
# 获取src目录下的所有的.c文件
SRCS = $(wildcard src/*.c)

patsubst函数和wildcard函数常常一起使用,可以方便地进行文件名、路径名的模式替换和查找操作。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: Linux自动化构建工具make和Makefile怎么使用