diff --git a/t/coverage.sh b/t/coverage.sh
index bb766427234e5c53513b5fd0d434cebfcd3b1b4a..d6f00bebfb6458180aab5e6b28f2978f3dd7166d 100755 (executable)
--- a/t/coverage.sh
+++ b/t/coverage.sh
make
lcov --base-directory src --directory src --zerocount
-make test
+make -j25 test || (status=$?; cat t/test-suite.log 2> /dev/null; exit $status)
+
# old versions of lcov don't support --no-external
lcov --base-directory src --directory src --no-external \
--capture -o sysdb_coverage.info \
|| lcov --base-directory src --directory src \
--capture -o sysdb_coverage.info
-for pattern in '*.y' '*.l'; do
+for pattern in '*.y' '*.l' \
+ 'sysdb/scanner.c' 'frontend/scanner.c' 'liboconfig/scanner.c' \
+ 'parser/scanner.c' 'frontend/grammar.c' 'parser/grammar.c' \
+ 'liboconfig/parser.c'
+do
lcov --remove sysdb_coverage.info "$pattern" -o sysdb_coverage.info
done