Files
K1NG-Driver/includes/tomlc17-R260618/test/cpp/Makefile
T
2026-07-30 13:18:41 +02:00

50 lines
862 B
Makefile

CFLAGS = -std=c17 -fsanitize=address,undefined -Wmissing-declarations -Wall -Wextra -MMD
EXEC = test1
ifdef DEBUG
CFLAGS += -O0 -g
else
CFLAGS += -O3 -DNDEBUG
endif
CXXFLAGS = $(subst -std=c17,-std=c++20,$(CFLAGS))
# Test for C++20 support
CXX20_SUPPORT := $(shell echo "int main(){}" | $(CXX) -std=c++20 -x c++ -c - -o /dev/null 2>/dev/null && echo yes || echo no)
ifeq ($(CXX20_SUPPORT),yes)
all: $(EXEC)
test1: test1.cpp
$(CXX) $(CXXFLAGS) -o $@ $@.cpp -L../../src -ltomlc17
test: all
@echo
@echo =========================
@echo == cpp test
@echo =========================
./test1
else
all:
@echo "Skipped because C++20 not available"
test:
@echo "Skipped because C++20 not available"
endif
-include test1.d
clean:
rm -f *.o *.d $(EXEC)
distclean: clean
format:
clang-format -i *.cpp
.PHONY: all clean distclean format test