notdir : 去除路径
patsubst :替换通配符
实例:
在当前目录下,建立a.c、b.c、c.c、d.c 4个文件,在ddr目录下,建立ddra.c、ddrb.c、ddrc.c、ddrd.c 4个文件.
一个简单的makefile如下:
src=$(wildcard *.c ./ddr/*.c)
dir=$(notdir $(src))
obj=$(patsubst %.c,%.o,$(dir) )
all:
@echo $(src)
@echo $(dir)
@echo $(obj)
@echo "end"
文中用到了wildcard关键字,不明白的看以下博文
https://blog.csdn.net/wwwlyj123321/article/details/107537165
ref: