makefile–简单函数
函数
makefile中的函数都会有一个返回值,通常是需要用到这个返回值的。
函数格式
函数名 参数1,参数2,参赛n
wildcare函数
获取目录下的文件函数,返回目录下的文件名,每个文件名以空格隔开
格式:wildcare 传入文件
wildcare 目录下的文件
例子:wildcare ./*.c #当前目录下的全部.c文件
下面两个句子等价
obj=main.o f1.o f2.o
src=$(wildcare ./*.c)
patsubst函数
格式:patsubst 需要匹配的参数 ,被匹配的参数 ,传入文件
src=$(wildcare ./*.c)
obj=$(patsubst ./%.o, ./%.c, $(src))#这里匹配用%,而不是*,把传入src中的所以的.c替换成.o
删除操作
clean:后面是没有依赖的,也不是用来生成目标的,make生成clean这个目标才执行命令。只需要使用命令make clean就会执行clean下面的命令
格式:clean:
命令
clean:
rm $(obj)
伪目标
使用.PHONY:伪目标名称,这样就不会报错。
结合clean
.PHONY:clean
clean:
rm $(obj)