1. 程式人生 > >Makefile中常用函式

Makefile中常用函式

Makefile常用函式總結

1、realpath  返回一個絕對路徑

例:ROOT  = $(realpath ./)  返回當前路徑的絕對地址,賦值給ROOT

2、wildcard 萬用字元函式,類似於linux中的 “*”

命令格式:

$(wildcard pattern)

例子 :SRCS = $(wildcard *.c)  得到當前目錄下的所有.c檔案

3、patsubst 字串替換函式,是pattern substitute的縮寫

命令格式

$(patsubst pattern, replacement, text)

例: OBJS = $(patsubst %.o %.c SRCS) SRCS是上面的當前目錄的.c檔案,將當前目錄的.c檔案替換為.o檔案,賦值給OBJS

4、addprefix 加字首函式

命令格式

$(addprefix prefix, name..)

例子:

file = a.c b.c 

dir_file = $(addprefix src/,$(file))

在a.c b.c檔案前面加入資料夾名稱src/

5、filter函式

命令格式:

$(filter patern...,text)

例子:

SOURCE = foo.c foo.o foo.h main.c main.o boot.s

SOURCE :=$(filter %.c %.s,$(SOURCE) )

從SOURCE當中抽取.c .s檔案

6、filter-out函式

剔除某些字串

$(filter-out patern...,text)

例子:

SOURCE = foo.c foo.o foo.h main.c main.o boot.s

SOURCE :=$(filter %.c %.s,$(SOURCE) )

從SOURCE當中剔除.c .s檔案