qfedu-cpp-level/day5/d3/Makefile

39 lines
739 B
Makefile
Raw Normal View History

2023-08-14 17:20:39 +08:00
# 定义路径变量
SRC_DIR = ./
OBJ_DIR = ./
BIN_DIR = ./
# 定义编译器
CC = g++
STD = -std=c++11
# 定义目标文件
TARGET = $(BIN_DIR)/a.out
# 定义源文件
SRCS = $(wildcard $(SRC_DIR)/*.cpp)
# OBJS = $(OBJ_DIR)/lrc.o $(OBJ_DIR)/console.o $(OBJ_DIR)/start_mplayer.o $(OBJ_DIR)/time_delay.o $(OBJ_DIR)/main.o
OBJS = $(patsubst $(SRC_DIR)/%.cpp, $(OBJ_DIR)/%.o, $(SRCS))
# 编译规则
$(OBJ_DIR)/%.o: $(SRC_DIR)/%.cpp
$(CC) -c $< -o $@ $(STD)
# 链接规则
$(TARGET): $(OBJS)
$(CC) $^ -o $@ $(STD)
# 默认构建目标
all: $(TARGET)
# 创建目录
$(shell mkdir -p $(OBJ_DIR) $(BIN_DIR))
# 运行测试
run: $(TARGET)
$(TARGET)
# 清理规则
clean:
rm -rf $(OBJ_DIR)/*.o $(TARGET)
# 伪目标
.PHONY: all clean