run_tests.sh 906 B

12345678910111213141516171819202122232425262728293031323334353637
  1. set -e
  2. python prebuild.py
  3. # Run static analysis checks
  4. echo "Running static analysis checks..."
  5. python scripts/check_binding_retval.py || { echo "Binding return value check failed"; exit 1; }
  6. SRC=$(find src/ -name "*.c")
  7. clang -std=c11 --coverage -O1 -Wfatal-errors -o main src2/main.c $SRC -Iinclude -DPK_ENABLE_OS=1 -lm -ldl -DNDEBUG
  8. python scripts/run_tests.py
  9. # if prev error exit
  10. if [ $? -ne 0 ]; then
  11. exit 1
  12. fi
  13. rm -rf .coverage
  14. mkdir .coverage
  15. UNITS=$(find ./ -name "*.gcno")
  16. llvm-cov-17 gcov ${UNITS} -r -s include/ -r -s src/ >> .coverage/coverage.txt
  17. mv *.gcov .coverage
  18. rm *.gcda
  19. rm *.gcno
  20. # remove .gcno files if the 1st line contains "Source:src/debugger/"
  21. find .coverage/ -type f -name "*.gcov" | while read -r file; do
  22. first_line=$(head -n 1 "$file")
  23. if [[ "$first_line" == *"Source:src/debugger/"* ]]; then
  24. echo "Removing: $file"
  25. rm "$file"
  26. fi
  27. done