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檔案