- 论坛徽章:
- 0
|
#设置编译器
CC = gcc
#设置编译选项
CFLAGS = -O2
#设置连接选项
LDFLAGS = -lpcap
#设置可执行文件名
EXE = a.out
#设置源文件目录
SRCDIRS = .
#设置文件后缀
SRCEXTS = .c
#设置清理命令
RM = rm -f
#设置编译选项
SHELL = /bin/shSOURCES = $(foreach d, $(SRCDIRS), $(wildcard $(addprefix $(d)/*, $(SRCEXTS))))
OBJS = $(foreach x, $(SRCEXTS), $(patsubst %$(x), %.o, $(filter %$(x), $(SOURCES))))
DEPS = $(patsubst %.o, %.d, $(OBJS))
#设置假想目标
.PHONY: all objs clean cleanall rebuild
all : $(EXE)
%.d : %.c
@$(CC) -MM -MD $(CFLAGS)
objs: $(OBJS)
%.o:%.c
$(CC) -c $(CFLAGS)
$(EXE):$(OBJS)
$(CC) -o $(EXE) $(OBJS) $(LDFLAGS)
-include $(DEPS)
rebuild : clean all
clean:
@$(RM) *.o *.d
cleanall: clean
@$(RM) $(EXE)
[[i] 本帖最后由 hackersea 于 2008-7-9 21:35 编辑 [/i]] |
|