CXXFLAGS += -Wshadow -Wall -Wpedantic -Wextra -Wno-unused-parameter CXXFLAGS += -g3 -std=c++20 ifeq ($(DEBUG), 1) CXXFLAGS += -DDEBUG -O0 else CXXFLAGS += -DNDEBUG -O3 endif .PHONY: clean %.o: %.cpp c++ $(CXXFLAGS) -c $< {PROJECT}: {PROJECT}.o c++ -o {PROJECT} {PROJECT}.o clean: rm -f {PROJECT}.o {PROJECT}