简单的makefile示例(不使用shell系统命令的版本)

简单的makefile示例
没有使用系统命令
所以平台通用
但是需要手动调整添加新增的目录

1
2
3
4
5
6
7
8
9
10
11
12
TARGET = mk
DIR = a b .
OBJS = $(foreach dir,$(DIR), $(patsubst %.cpp,%.o,$(wildcard $(dir)/*.cpp)))

$(TARGET) : $(OBJS)
$(CXX) -o $@ $^

$(OBJS) : %.o : %.cpp
$(CXX) -o $@ -c $<

clean:
-$(RM) $(TARGET) $(OBJS)