diff --git a/Makefile b/Makefile deleted file mode 100644 index 7bda9b92bcf78998f8014876a499d1281762630b..0000000000000000000000000000000000000000 --- a/Makefile +++ /dev/null @@ -1,51 +0,0 @@ -CC := g++ - -#注意每行后面不要有空格,否则会算到目录名里面,导致问题 -SRC_DIR = ./ -BUILD_DIR = tmp -OBJ_DIR = $(BUILD_DIR)/obj -DEPS_DIR = $(BUILD_DIR)/deps - -#这里添加其他头文件路径 -INC_DIR = \ - -I./include \ - -I./src \ - -#这里添加编译参数 -CC_FLAGS := $(INC_DIR) -g -std=c++11 -LNK_FLAGS := \ - -L/usr/local/lib - -#这里递归遍历3级子目录 -DIRS := $(shell find $(SRC_DIR) -maxdepth 3 -type d) - -#将每个子目录添加到搜索路径 -VPATH = $(DIRS) - -#查找src_dir下面包含子目录的所有cpp文件 -#SOURCES = $(foreach dir, $(DIRS), $(wildcard $(dir)/*.cpp)) -SOURCES = BinTree.cpp -OBJS = $(addprefix $(OBJ_DIR)/,$(patsubst %.cpp,%.o,$(notdir $(SOURCES)))) -DEPS = $(addprefix $(DEPS_DIR)/, $(patsubst %.cpp,%.d,$(notdir $(SOURCES)))) -TARGET := $(patsubst %.cpp, %, $(SOURCES)) - - -$(TARGET):$(OBJS) - $(CC) $^ $(LNK_FLAGS) -o $@ -#编译之前要创建OBJ目录,确保目录存在 -$(OBJ_DIR)/%.o:%.cpp - if [ ! -d $(OBJ_DIR) ]; then mkdir -p $(OBJ_DIR); fi;\ - $(CC) -c $(CC_FLAGS) -o $@ $< -#编译之前要创建DEPS目录,确保目录存在 -#前面加@表示隐藏命令的执行打印 -$(DEPS_DIR)/%.d:%.cpp - @if [ ! -d $(DEPS_DIR) ]; then mkdir -p $(DEPS_DIR); fi;\ - set -e; rm -f $@;\ - $(CC) -MM $(CC_FLAGS) $< > $@.$$$$;\ - sed 's,\($*\)\.o[ :]*,$(OBJ_DIR)/\1.o $@ : ,g' < $@.$$$$ > $@;\ - rm -f $@.$$$$ -#前面加-表示忽略错误 --include $(DEPS) -.PHONY : clean -clean: - rm -rf $(BUILD_DIR) $(TARGET)