Makefile 常用函式說明

2021-09-29 10:19:06 字數 2287 閱讀 7355

$(function arguments)譯作: $(函式名 引數列表)

makefile字串函式

1. subst

說明:字元替換函式,將字串text中的from字元,完全替換成to。

語法:$(subst from,to,text)

示例:$(subst from ee,ee,feet on the street)

結果:feet on the street

2. patsubst

說明:字元替換函式,將字串text以空格為分格符,切分成單詞,將滿足匹配規則pattern的詞替換成replacement。匹配符為%,若pattern中包含的常量字元包含%,需要用到轉義字元 \

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

示例:$(patsubst %.c,%.o,main.c test.c)

結果:main.o test.o

3. strip

說明:去掉字串text中頭部和尾部的所有空字元,當text中,相鄰兩個字元間包含兩個及以上的空字元,將去掉多餘的空字元,只保留乙個。這個函式對於判斷包含空字元的字串是否是空串。

語法:$(strip text)

示例:$(strip a b c )

結果:a b c

4. findstring

說明:在in中查詢是否存在字串find,如果存在則返回find,否則返回空字元。

語法:$(findstring find,in)

示例:$(findstring a,a b c)

結果:a

5. filter

說明:返回字串text以空格為分隔符的滿足匹配規則pattern的字串列表。這裡面的pattern可以為多個。

語法:$(filter pattern…, text)

示例:sources=main.c test.m func.cpp

$(filter %.c %.m, $(sources))

結果:main.c test.m

6. filter-out

說明:是filter的相反操作,去掉text中不滿足匹配規則pattern的字串。

語法:$(filter-out pattern…, text)

示例:$(filter-out pattern,text)

sources=main.c test.m func.s

$(filter-out %.m %s,$(sources))

結果:main.c

7. sort

說明:將list中的字串進行排序,並去掉重複出現的字串。

語法:$(sort list)

示例:$(sort foo bar bar lose)

結果:bar foo lose

8. word

說明:返回text中的第n個字串。

語法:$(word n,text)

示例:$(word 2,foo bar lose)

結果:bar

9. wordlist

說明:返回text中從第s個字串到第e個字串之間的所有字串。

語法:$(wordlist s,e,text)

示例:$(wordlist 2,4,foo bar lose key)

結果:bar lose key

10. words

說明:返回text中的字串數量。

語法:$(words text)

示例:$(words foo bar lose)

結果:3

11. firstword

說明:返回names中的第乙個字串,names以空格進行分隔。

語法:$(firstword names…)

示例:$(firstword foo bar lose)

結果:foo

12. lastword

說明:返回names中的最後乙個字串,names以空格進行分隔。

語法:$(lastword names…)

示例:$(lastword foo bar lose)

結果:lose

makefile 引數說明

k引數 如果某個目標出錯,依賴這個目標的規則都不執行,其它規則執行。例 還是這個makefile檔案 r1 r2 r3 echo 1 r2 r21 echo 2 cat ew ew檔案不存在,故意讓這條指定出錯 r21 echo 21 r3 r31 echo 3 r31 echo 31 執行命令ma...

Arduino 常用函式說明

pinmode pin,mode 引數 pin 引腳號 mode input output digitalwrite pin,value 引數 pin 引腳號 value high low int digitalread pin 引數 pin 引腳號 返回值 int 1 0 int analogre...

php系統常用函式說明

常用字串函式 md5 string,raw raw 可選。規定十六進製制或二進位制輸出格式 true 原始 16 字元二進位制格式 false 預設。32 字元十六進製制數 str 123456 echo md5 md5 str qdgithub.com number format str 1234...