Makefile模板

来自:
  • yfkiss
  • (夜风)

 



C/C++ code


    
    
    
    
###################################################################### # makefile 模版 # ###################################################################### ###################项目路径和程序名称################################# DIR = $(shell pwd) BIN_DIR = $(DIR) / bin LIB_DIR = $(DIR) / lib SRC_DIR = $(DIR) / src INCLUDE_DIR = $(DIR) / include OBJ_DIR = $(DIR) / obj DEPS_DIR = $(DIR) / deps #PROGRAM = $(BIN_DIR) / test PROGRAM = $(BIN_DIR) / test ###################OBJ文件及路径############################################ EXTENSION = cpp OBJS = $(patsubst $(SRC_DIR) /% .$(EXTENSION), $(OBJ_DIR) /% .o,$(wildcard $(SRC_DIR) /* .$(EXTENSION))) DEPS=$(patsubst $(OBJ_DIR)/%.o, $(DEPS_DIR)/%.d, $(OBJS)) ###################include头文件路径################################## INCLUDE=\ -I$(INCLUDE_DIR) ###################lib文件及路径###################################### ###################编译选项及编译器################################### CC=g++ CFLAGS=-Wall -W -g LDFLAGS= ###################编译目标########################################### .PHONY: all clean rebuild all:$(OBJS) @echo $(DEPS_DIR) $(CC) -o $(PROGRAM) $(OBJS) $(LDFLAGS) $(DEPS_DIR)/%.d: $(SRC_DIR)/%.$(EXTENSION) $(CC) -MM $(INCLUDE) $(CFLAGS) $< | sed -e 1's,^,$(OBJ_DIR)/,' > $@ sinclude $(DEPS) $(OBJ_DIR)/%.o:$(SRC_DIR)/%.$(EXTENSION) $(CC) $< -o $@ -c $(CFLAGS) $(INCLUDE) rebuild: clean all clean: rm -rf $(OBJS) $(PROGRAM)

你可能感兴趣的:(shell,include,makefile,extension,编译器,wildcard)