From cf347cc5a43c33a5ed6b180e07233c68b2291380 Mon Sep 17 00:00:00 2001 From: Dan Albert Date: Sat, 24 Jan 2015 13:40:42 -0800 Subject: [PATCH] Add `acov --clean` and `acov --prep`. The --clean flag clears ANDROID_PRODUCT_OUT and ANDROID_HOST_OUT of all coverage files. If a source file that had a coverage notes file (a .gcno) generated for it is renamed or removed, the build system will not clean the old file, which means the coverage tool will still try to find coverage data. The --prep flag clears just coverage data files. This should be done before any coverage run, as you don't want old coverage data affecting your results. Change-Id: Id68395d19369eba4589daff90461a10cf7aef66d --- scripts/acov | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/scripts/acov b/scripts/acov index ef7c86a95..8c6b1d6e4 100755 --- a/scripts/acov +++ b/scripts/acov @@ -30,6 +30,18 @@ # it in your browser). # +if [ "$1" = "--clean" ]; then + find $ANDROID_HOST_OUT \( -name '*.gcda' -o -name '*.gcno' \) -delete + find $ANDROID_PRODUCT_OUT \( -name '*.gcda' -o -name '*.gcno' \) -delete + exit 0 +fi + +if [ "$1" = "--prep" ]; then + find $ANDROID_HOST_OUT -name '*.gcda' -delete + find $ANDROID_PRODUCT_OUT -name '*.gcda' -delete + exit 0 +fi + which lcov >/dev/null 2>/dev/null if [ $? -ne 0 ]; then echo 'lcov not found: running `sudo apt-get install lcov`'