From 8691f3f75c3f64ba83ee0ac8f9ed6c07f47a2c4b Mon Sep 17 00:00:00 2001 From: Jeongik Cha Date: Mon, 9 Mar 2020 12:37:05 +0900 Subject: [PATCH] Apply EnforceRROExemptedTargets in Soong As PRODUCT_ENFORCE_RRO_EXEMPTED_TARGETS is defined in make, define it in soong accordingly Bug: 150820813 Test: m Change-Id: I309482b6ad439a7602127f68f2f7ffa856b9e192 Merged-In: I309482b6ad439a7602127f68f2f7ffa856b9e192 --- android/config.go | 7 +++++++ android/variable.go | 8 +++++--- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/android/config.go b/android/config.go index a0418d8dd..859e164b2 100644 --- a/android/config.go +++ b/android/config.go @@ -862,6 +862,13 @@ func (c *config) ArtUseReadBarrier() bool { func (c *config) EnforceRROForModule(name string) bool { enforceList := c.productVariables.EnforceRROTargets + // TODO(b/150820813) Some modules depend on static overlay, remove this after eliminating the dependency. + exemptedList := c.productVariables.EnforceRROExemptedTargets + if exemptedList != nil { + if InList(name, exemptedList) { + return false + } + } if enforceList != nil { if InList("*", enforceList) { return true diff --git a/android/variable.go b/android/variable.go index 4d1b5e425..118e10766 100644 --- a/android/variable.go +++ b/android/variable.go @@ -187,9 +187,11 @@ type productVariables struct { CrossHostArch *string `json:",omitempty"` CrossHostSecondaryArch *string `json:",omitempty"` - DeviceResourceOverlays []string `json:",omitempty"` - ProductResourceOverlays []string `json:",omitempty"` - EnforceRROTargets []string `json:",omitempty"` + DeviceResourceOverlays []string `json:",omitempty"` + ProductResourceOverlays []string `json:",omitempty"` + EnforceRROTargets []string `json:",omitempty"` + // TODO(b/150820813) Some modules depend on static overlay, remove this after eliminating the dependency. + EnforceRROExemptedTargets []string `json:",omitempty"` EnforceRROExcludedOverlays []string `json:",omitempty"` AAPTCharacteristics *string `json:",omitempty"`