28 lines
504 B
Makefile
28 lines
504 B
Makefile
|
|
MAKEFLAGS += -j16
|
|
|
|
CXXFLAGS := -std=c++23 -Wall -Wextra -pedantic-errors -fsanitize=address,undefined
|
|
LDFLAGS :=
|
|
|
|
build_dir = build
|
|
obj_dir = $(build_dir)/obj
|
|
|
|
sources := $(shell find src/ -name *.cpp)
|
|
|
|
all: $(build_dir)/vc5
|
|
|
|
$(build_dir)/vc5: $(sources:%.cpp=$(obj_dir)/%.o)
|
|
@mkdir -p $(dir $@)
|
|
g++ $^ -o $@ $(CXXFLAGS) $(LDFLAGS)
|
|
|
|
$(obj_dir)/%.o: %.cpp
|
|
@mkdir -p $(dir $@)
|
|
g++ $< -c -o $@ -MMD -MP $(CXXFLAGS)
|
|
|
|
.PHONY: clean
|
|
clean:
|
|
rm -rf $(build_dir)
|
|
|
|
-include $(sources:%.cpp=$(obj_dir)/%.d)
|
|
|