| Index: tools/coverage.sh
|
| diff --git a/tools/coverage.sh b/tools/coverage.sh
|
| new file mode 100755
|
| index 0000000000000000000000000000000000000000..3e34806843f33d86d76a2dfd67a40dd1321154bb
|
| --- /dev/null
|
| +++ b/tools/coverage.sh
|
| @@ -0,0 +1,31 @@
|
| +#!/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
|
| +
|
| +genhtml $QUIET /tmp/merged -o out/Coverage/report
|
| +xdg-open out/Coverage/report/index.html
|
|
|