patsubst函數是GNU Make中用于替換字符串的函數之一。其語法如下:
$(patsubst pattern,replacement,text)
其中,pattern表示要匹配的模式,replacement表示用來替換的字符串,text表示要進行替換操作的原始字符串。
patsubst函數會將text字符串中所有匹配pattern的部分替換為replacement,并返回替換后的字符串。如果text中有多個匹配的部分,所有匹配的部分都會被替換。
例如,假設有如下代碼:
VAR := foo.txt bar.txt baz.txt
NEW_VAR := $(patsubst %.txt, %.dat, $(VAR))
在此示例中,patsubst函數會將VAR中以".txt"結尾的部分替換為".dat",所以NEW_VAR的值將會是"foo.dat bar.dat baz.dat"。