一:
case = case1
all:${case}
#test wildcard ,patsubst
#source := $(wildcard *.c) $(wildcard *.cc)
source := $(wildcard *.c)
#objs := $(patsubst %.c,%.o,$(patsubst %.cc %.o,$(source)))
objs := $(patsubst %.c,%.o,$(source))
kobjs := $(filter k%.o,$(objs))
mobjs := $(filter m%.o,$(objs))
case1:$(objs)
cc -o mdis $(mobjs)
cc -o kdis $(kobjs)
rm *.o
$(objs):%.o:%.c
$(CC) -c $(CFLAGS) $< -o $@
二:
case = case1
all:${case}
#test wildcard ,patsubst
#source := $(wildcard *.c) $(wildcard *.cc)
source := $(wildcard *.c)
#objs := $(patsubst %.c,%.o,$(patsubst %.cc %.o,$(source)))
objs := $(patsubst %.c,%.o,$(source))
case1:$(objs)
cc -o dis $(objs)
rm *.o
$(objs):%.o:%.c
$(CC) -c $(CFLAGS) $< -o $@
Makefile技巧详解
本文详细介绍了一种使用Makefile进行文件构建的方法,通过wildcard和patsubst函数组合使用来匹配源文件,并生成对应的对象文件。同时展示了如何根据不同类型的源文件(如.c和.cc)进行对象文件的构建,并提供了具体的编译指令。
267

被折叠的 条评论
为什么被折叠?



