2013-09-13 19:32:43 +00:00
|
|
|
#!/bin/sh
|
|
|
|
|
|
|
|
# Run from Skia trunk something like this:
|
|
|
|
# $ tools/coverage.sh tests
|
|
|
|
# or
|
|
|
|
# $ tools/coverage.sh gm
|
|
|
|
|
|
|
|
set -x
|
|
|
|
set -e
|
|
|
|
|
|
|
|
COMMAND=$@
|
|
|
|
GCOV=$(realpath tools/gcov_shim)
|
|
|
|
|
|
|
|
QUIET=-q
|
|
|
|
|
|
|
|
# Build all of Skia.
|
|
|
|
./gyp_skia
|
|
|
|
ninja -C out/Coverage
|
|
|
|
|
|
|
|
# Generate a zero-baseline so files not covered by $COMMAND will still show up in the report.
|
|
|
|
# This reads the .gcno files that are created at compile time.
|
|
|
|
lcov $QUIET --gcov-tool=$GCOV -c -b out/Coverage -d out/Coverage -o /tmp/baseline -i
|
|
|
|
|
|
|
|
# Running the binary generates the real coverage information, the .gcda files.
|
|
|
|
out/Coverage/$COMMAND
|
|
|
|
lcov $QUIET --gcov-tool=$GCOV -c -b out/Coverage -d out/Coverage -o /tmp/coverage
|
|
|
|
|
|
|
|
lcov $QUIET -a /tmp/baseline -a /tmp/coverage -o /tmp/merged
|
|
|
|
|
2013-11-14 16:53:22 +00:00
|
|
|
genhtml $QUIET /tmp/merged --legend -o out/Coverage/report
|
2013-09-13 19:32:43 +00:00
|
|
|
xdg-open out/Coverage/report/index.html
|