diff --git a/t/coverage.sh b/t/coverage.sh
index 5dabb13955277df4f73627a72b14eb87ed1b1455..a689b571156166dc7a90bb972d7817153d23a4d9 100755 (executable)
--- a/t/coverage.sh
+++ b/t/coverage.sh
cp -a "$srcdir"/.git .
# reset all files which are not part of the tarball
cp -a "$srcdir"/.git .
# reset all files which are not part of the tarball
- git checkout HEAD .gitignore .travis.yml
+ git checkout HEAD .gitignore .travis.yml t/cibuild.sh
fi
fi
-./configure --enable-gcov --disable-shared CFLAGS="-O0 -g"
+# rebuild build system to refresh version number, etc.
+rm -f version
+touch configure.ac && make configure
+
+./configure --enable-gcov CFLAGS="-O0 -g"
make
lcov --base-directory src --directory src --zerocount
make
lcov --base-directory src --directory src --zerocount
-make test
+make 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 \
lcov --base-directory src --directory src --no-external \
- --capture -o sysdb_coverage.info
+ --capture -o sysdb_coverage.info \
+ || lcov --base-directory src --directory src \
+ --capture -o sysdb_coverage.info
+for pattern in '*.y' '*.l'; do
+ lcov --remove sysdb_coverage.info "$pattern" -o sysdb_coverage.info
+done
V=$( ./version-gen.sh )
genhtml -o "$srcdir"/t/coverage \
V=$( ./version-gen.sh )
genhtml -o "$srcdir"/t/coverage \