webserver/Makefile
2025-04-28 20:47:53 +08:00

37 lines
712 B
Makefile

CXX := g++
CPP_STD := 17
CPP = c++
PRJ_NAME = run
PRJ_HEADERS_DIR := $(CURDIR)/headers
SRC_DIR := $(CURDIR)/src
CXX_FLAGS := -Wall -I$(PRJ_HEADERS_DIR) -std=$(CPP)$(CPP_STD) -g
LDFLAGS =
OUTPUT_DIR := $(CURDIR)/output
BUILD_DIR := $(CURDIR)/build
SRCS := $(wildcard $(SRC_DIR)/*.cc)
OBJS := $(patsubst $(SRC_DIR)/%.cc, $(BUILD_DIR)/%.o, $(wildcard $(SRC_DIR)/*.cc))
TARGET = $(OUTPUT_DIR)/$(PRJ_NAME)
all: $(TARGET)
$(TARGET): $(OBJS)
$(CXX) -o $@ $^ $(LDFLAGS)
$(BUILD_DIR)/%.o: $(SRC_DIR)/%.cc
$(CXX) $(CXX_FLAGS) -c $< -o $@
run: all
@echo "----start exec project------"
@$(TARGET)
clean:
@rm -f $(OBJS) $(TARGET)
full_clean:
@rm -rf $(BUILD_DIR)/* && rm -rf $(OUTPUT_DIR)/*
.PHONY: all clean