From: Ryan Campbell Date: Mon, 27 Feb 2017 17:09:16 +0000 (-0800) Subject: Support path exclusion for native coverage. X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=b55ff74713ca41765be925a70cff088592096c0e;p=android-x86%2Fbuild.git Support path exclusion for native coverage. Specify list of paths to exclude from coverage instrumentation. Test: make NATIVE_COVERAGE=true COVERAGE_PATHS=hardware/interfaces COVERAGE_EXCLUDE_PATHS=hardware/interfaces/graphics Bug: 35769817 Change-Id: I3747fdddb381101b9ebf51909b9686e820148aad --- diff --git a/core/binary.mk b/core/binary.mk index 44f0e9546..05ee0cd9d 100644 --- a/core/binary.mk +++ b/core/binary.mk @@ -61,10 +61,14 @@ my_export_c_include_deps := $(LOCAL_EXPORT_C_INCLUDE_DEPS) my_arflags := ifneq (,$(strip $(foreach dir,$(subst $(comma),$(space),$(COVERAGE_PATHS)),$(filter $(dir)%,$(LOCAL_PATH))))) +ifeq (,$(strip $(foreach dir,$(subst $(comma),$(space),$(COVERAGE_EXCLUDE_PATHS)),$(filter $(dir)%,$(LOCAL_PATH))))) my_native_coverage := true else my_native_coverage := false endif +else + my_native_coverage := false +endif my_allow_undefined_symbols := $(strip $(LOCAL_ALLOW_UNDEFINED_SYMBOLS)) ifdef SANITIZE_HOST diff --git a/core/soong_config.mk b/core/soong_config.mk index c038a3225..b1e36e4d3 100644 --- a/core/soong_config.mk +++ b/core/soong_config.mk @@ -45,6 +45,7 @@ $(SOONG_VARIABLES): FORCE echo ''; \ echo ' "NativeCoverage": $(if $(filter true,$(NATIVE_COVERAGE)),true,false),'; \ echo ' "CoveragePaths": [$(if $(COVERAGE_PATHS),"$(subst $(space),"$(comma)",$(subst $(comma),$(space),$(COVERAGE_PATHS)))")],'; \ + echo ' "CoverageExcludePaths": [$(if $(COVERAGE_EXCLUDE_PATHS),"$(subst $(space),"$(comma)",$(subst $(comma),$(space),$(COVERAGE_EXCLUDE_PATHS)))")],'; \ echo ''; \ echo ' "DeviceName": "$(TARGET_DEVICE)",'; \ echo ' "DeviceArch": "$(TARGET_ARCH)",'; \