|
|
- CXX= clang++-8
- CXXFLAGS= --std=c++17 -O3 -pthread -DGP_TESTS -DFUZZ_STRENGTH=500 -pedantic -Werror \
- -Wno-unknown-attributes \
- -g -fprofile-instr-generate -fcoverage-mapping
- # -fsanitize=address -fno-omit-frame-pointer
- all: tests
-
- tests: bin/tests
- LLVM_PROFILE_FILE="./bin/tests.profraw" ASAN_SYMBOLIZER_PATH=/usr/bin/llvm-symbolizer ./bin/tests
- @llvm-profdata merge -sparse ./bin/tests.profraw -o ./bin/tests.profdata
- @llvm-cov report ./bin/tests -instr-profile=./bin/tests.profdata include/*.hpp include/gp/*.hpp include/gp/algorithm/*.hpp include/gp/allocator/*.hpp
- @llvm-cov report ./bin/tests -instr-profile=./bin/tests.profdata include/*.hpp include/gp/*.hpp include/gp/algorithm/*.hpp include/gp/allocator/*.hpp | tail -n 1 | tr -s " " | sed -e 's/ /,/g' -- | awk -F "," '{print $$9}' | sed -e 's/^/Untested lines: /g'
-
- bin/tests: tests.cpp $(wildcard tests/*.cpp) $(wildcard include/*.hpp) ./tests/test_scaffold.h
- @mkdir -p $(@D)
- $(CXX) $(CXXFLAGS) -Itests -Iinclude tests.cpp -o $@
-
- clean: ./bin
- @rm -rf $<
|