Update code coverage filtering
Replaces old LOCAL_EMMA_COVERAGE_FILTER by new variables:
- LOCAL_JACK_COVERAGE_INCLUDE_FILTER for included classes
- LOCAL_JACK_COVERAGE_EXCLUDE_FILTER for excluded classes
Both variables can contain a comma-separated list of class names,
where * and ? are accepted wildcard (like foo.?ar.*).
When code coverage is enabled, we will use these variables to
pass code coverage filters on the Jack command-line.
Bug: 28014424
(cherry picked from commit 74ec3f49d199f538deca795f22e454638b4d7915)
Change-Id: Ie4253981c0e6a62422ab84dfd67ef5eebc0b0284
diff --git a/core/java.mk b/core/java.mk
index 760d1e1..2caf511 100644
--- a/core/java.mk
+++ b/core/java.mk
@@ -714,9 +714,11 @@
ifeq ($(LOCAL_EMMA_INSTRUMENT),true)
$(built_dex_intermediate): PRIVATE_JACK_COVERAGE_OPTIONS := \
- -D jack.coverage="true" \
+ -D jack.coverage=true \
-D jack.coverage.metadata.file=$(intermediates.COMMON)/coverage.em \
- -D jack.coverage.jacoco.package=$(JACOCO_PACKAGE_NAME)
+ -D jack.coverage.jacoco.package=$(JACOCO_PACKAGE_NAME) \
+ $(addprefix -D jack.coverage.jacoco.include=,$(LOCAL_JACK_COVERAGE_INCLUDE_FILTER)) \
+ $(addprefix -D jack.coverage.jacoco.exclude=,$(LOCAL_JACK_COVERAGE_EXCLUDE_FILTER))
else
$(built_dex_intermediate): PRIVATE_JACK_COVERAGE_OPTIONS :=
endif