|
CXX= clang++-8
|
|
CXXFLAGS= --std=c++17 -fprofile-instr-generate -fcoverage-mapping
|
|
|
|
all: tests
|
|
|
|
tests: bin/tests
|
|
LLVM_PROFILE_FILE="./bin/tests.profraw" ./bin/tests
|
|
@llvm-profdata merge -sparse ./bin/tests.profraw -o ./bin/tests.profdata
|
|
@llvm-cov report ./bin/tests -instr-profile=./bin/tests.profdata $(wildcard ./tests/*.cpp) include/*.hpp
|
|
@llvm-cov report ./bin/tests -instr-profile=./bin/tests.profdata $(wildcard ./tests/*.cpp) include/*.hpp | tail -n 1 | tr -s "\t" | awk '{print "$8" }'
|
|
|
|
bin/tests: tests.cpp $(wildcard tests/*.cpp) ./tests/test_scaffold.h
|
|
@mkdir -p $(@D)
|
|
$(CXX) $(CXXFLAGS) -Itests -Iinclude tests.cpp -o $@
|
|
|
|
clean: ./bin
|
|
@rm -rf $<
|