| 12345678910111213141516171819202122232425262728 |
- CXX := clang++
- CXX_FLAGS := -std=c++20 -isystem include/ -DJVALIDATE_USE_EXCEPTIONS
- TEST_DIR := tests/
- INCLUDE_DIR := include/
- HEADERS := $(shell find $(INCLUDE_DIR) -name *.h)
- TEST_HEADERS := $(wildcard $(TEST_DIR)*.h)
- TEST_SOURCES := $(wildcard $(TEST_DIR)*.cxx)
- TEST_OBJECTS := $(patsubst %.cxx, .build/%.o, $(TEST_SOURCES))
- all: .build/bin/selfvalidate
- debug: CXX_FLAGS := $(CXX_FLAGS) -g
- debug: all
- clean:
- @ rm -rf .build
- .build/tests/%.o: tests/%.cxx $(HEADERS) $(TEST_HEADERS)
- @ mkdir -p .build/tests
- $(CXX) $(CXX_FLAGS) -c $< -o $@
- .build/bin/selfvalidate: .build/tests/selfvalidate_test.o
- @ mkdir -p .build/bin/tests
- $(CXX) $< -o $@ -L/opt/local/lib -ljsoncpp -lgmock -lgtest
|