General Purpose library for Freestanding C++ and POSIX systems
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

16 lines
663 B

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