温馨提示×

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

小亿
133
2024-01-02 17:13:28
栏目: 编程语言

patsubst和wildcard是Makefile中常用的两个函数,下面是它们的使用小结:

  1. patsubst函数:用于替换模式匹配字符串。

语法:$(patsubst pattern,replacement,text)

  • pattern:要匹配的模式,可以包含“%”通配符来表示任意字符。
  • replacement:要替换的字符串,可以引用通配符的值。
  • text:要进行模式匹配和替换的字符串。

示例:

files := src/main.c src/utils.c src/test.c
objects := $(patsubst src/%.c,obj/%.o,$(files))

# 上述代码中,将src目录下的.c文件替换为obj目录下的.o文件
# 结果为:objects = obj/main.o obj/utils.o obj/test.o
  1. wildcard函数:用于获取满足通配符模式的文件列表。

语法:$(wildcard pattern)

  • pattern:要匹配的通配符模式。

示例:

files := $(wildcard src/*.c)

# 上述代码中,获取src目录下所有的.c文件列表
# 结果为:files = src/main.c src/utils.c src/test.c

总结:patsubst和wildcard函数是Makefile中常用的字符串处理函数。patsubst函数用于替换模式匹配字符串,可以将指定模式的字符串替换为指定的字符串;wildcard函数用于获取满足通配符模式的文件列表。在Makefile中,这两个函数可以帮助我们简化文件路径的处理和文件列表的获取。

0