1、該目錄下所有的文件都單獨爲可執行程序:
CC := g++
CFLAGS := \
-m32 -ggdb3 -pipe -Wall -fPIC -MMD -MP -D_REENTRANT -D_GNU_SOURCE -pthread
INC = -L./
LIB = -lm\
-lpthread
SRCS := $(wildcard *.cpp)
OBJS := $(patsubst %.cpp,%,$(SRCS))
.PHONY:all clean
all:$(OBJS)
%:%.cpp
@echo "正在編譯:" $<"---->"$@
$(CC) -o $@ $(CFLAGS) $< $(INC) $(LIB)
clean:
rm -rf $(OBJS) *.d *.o
2、該目錄下所有文件一起編譯爲一個可執行程序:
CC := g++
CFLAGS := -g
TARGET := micro_httpd
SRCS := $(wildcard *.cpp)
OBJS := $(patsubst %cpp,%o,$(SRCS))
all:$(TARGET)
%.o:%.cpp
$(CC) $(CFLAGS) -c $<
$(TARGET):$(OBJS)
$(CC) $(CFLAGS) -o $@ $^
clean:
rm -rf $(TARGET) *.o