Modify build to put dumpcoverage agent into /system/lib

This location allows the agent to be attached to arbitrary processes.

It only makes sense to include libdumpcoverage.so on coverage builds,
as these are the only builds that have any information to be dumped.

Bug: 148178774
Test: manual, used examples in README (see other CL) to test whether
it works on a userdebug_coverage build on cuttlefish

Change-Id: Ib2fece1b41a3b5d16c8a2a444c5486137e475fda
Merged-In: Ib2fece1b41a3b5d16c8a2a444c5486137e475fda
(cherry picked from commit 7185f8cc2d)
This commit is contained in:
Kavi Gupta 2019-06-11 10:27:47 -07:00 committed by Oliver Nguyen
parent a21e8527a5
commit 3ed9021f87
3 changed files with 15 additions and 0 deletions

View File

@ -345,6 +345,15 @@ ifneq (,$(filter debug,$(tags_to_install)))
endif
endif
## java coverage ##
# Install additional tools on java coverage builds
ifeq (true,$(EMMA_INSTRUMENT))
ifneq (,$(filter debug,$(tags_to_install)))
tags_to_install += java_coverage
endif
endif
## sdk ##
ifdef is_sdk_build
@ -1139,6 +1148,7 @@ define product-installed-files
$(if $(filter debug,$(tags_to_install)),$(PRODUCTS.$(_mk).PRODUCT_PACKAGES_DEBUG)) \
$(if $(filter tests,$(tags_to_install)),$(PRODUCTS.$(_mk).PRODUCT_PACKAGES_TESTS)) \
$(if $(filter asan,$(tags_to_install)),$(PRODUCTS.$(_mk).PRODUCT_PACKAGES_DEBUG_ASAN)) \
$(if $(filter java_coverage,$(tags_to_install)),$(PRODUCTS.$(_mk).PRODUCT_PACKAGES_DEBUG_JAVA_COVERAGE)) \
$(call auto-included-modules) \
) \
$(eval ### Filter out the overridden packages and executables before doing expansion) \

View File

@ -119,6 +119,8 @@ _product_var_list += PRODUCT_HOST_PACKAGES
_product_var_list += PRODUCT_PACKAGES
_product_var_list += PRODUCT_PACKAGES_DEBUG
_product_var_list += PRODUCT_PACKAGES_DEBUG_ASAN
# Packages included only for eng/userdebug builds, when building with EMMA_INSTRUMENT=true
_product_var_list += PRODUCT_PACKAGES_DEBUG_JAVA_COVERAGE
_product_var_list += PRODUCT_PACKAGES_ENG
_product_var_list += PRODUCT_PACKAGES_TESTS

View File

@ -382,6 +382,9 @@ PRODUCT_PACKAGES_DEBUG_ASAN := \
fuzz \
honggfuzz
PRODUCT_PACKAGES_DEBUG_JAVA_COVERAGE := \
libdumpcoverage
PRODUCT_COPY_FILES += $(call add-to-product-copy-files-if-exists,\
frameworks/base/config/preloaded-classes:system/etc/preloaded-classes)