Recently I've played with libvirt coverage/gcov/lcov support. The
libvirt specific way to enable it is:
./configure --enable-test-coverage
make check
make cov
firefox coverage/index.html
However it looks like gnulib provides an automagic way to get similar
output. The process is:
make coverage
firefox doc/coverage/index.html
'make coverage' is composed of these 3 additional commands:
make init-coverage # clear lcov counters
make build-coverage # 'make check' with coverage flags, generate
# lcov metadata
make gen-coverage # generate the html report
It seems like we can just drop our custom coverage implementation.
* Less code for us
* The gnulib implementation is more flexible with the split commands
* libvirt impl needs an explicit directory list. right now gnulib output
reports info for the tools/ dir but libvirt's doesn't
* gnulib impl doesn't require a reconfigure
* seems like libvirt impl never calls lcov --zerocounters which AFAICT
means that every 'make check' run adds to the coverage stats. so if
you wanted to check for coverage changes across commits we require a
make clean in between to zero out the stats for testing. gnulib
init-coverage takes care of that.
Anyone know a reason not to rip this out? If not I'll send a patch
Thanks,
Cole
Show replies by date