all: | |
scons | |
clean: | |
scons -c | |
coverage: | |
rm -rf build coverage | |
# LCOV does not like the newer gcov format | |
scons CC=gcc-4.6 CXX=gcc-4.6 | |
# We are only interested in pb_encode.o and pb_decode.o | |
find build -name '*.gcda' -and \! \( -name '*pb_encode*' -or -name '*pb_decode*' \) -exec rm '{}' \; | |
# Collect the data | |
mkdir build/coverage | |
lcov --base-directory . --directory build/ --gcov-tool gcov-4.6 -c -o build/coverage/nanopb.info | |
# Generate HTML | |
genhtml -o build/coverage build/coverage/nanopb.info |