diff --git a/android/config.go b/android/config.go index 572e006a1..f00e79958 100644 --- a/android/config.go +++ b/android/config.go @@ -2075,11 +2075,17 @@ func (c *config) JavaCoverageEnabled() bool { return c.IsEnvTrue("EMMA_INSTRUMENT") || c.IsEnvTrue("EMMA_INSTRUMENT_STATIC") || c.IsEnvTrue("EMMA_INSTRUMENT_FRAMEWORK") } +func (c *deviceConfig) BuildFromSourceStub() bool { + return Bool(c.config.productVariables.BuildFromSourceStub) +} + func (c *config) BuildFromTextStub() bool { // TODO: b/302320354 - Remove the coverage build specific logic once the // robust solution for handling native properties in from-text stub build // is implemented. - return !c.buildFromSourceStub && !c.JavaCoverageEnabled() && !c.IsEnvTrue("BUILD_FROM_SOURCE_STUB") + return !c.buildFromSourceStub && + !c.JavaCoverageEnabled() && + !c.deviceConfig.BuildFromSourceStub() } func (c *config) SetBuildFromTextStub(b bool) { diff --git a/android/variable.go b/android/variable.go index 648e4cf18..fe3a6d790 100644 --- a/android/variable.go +++ b/android/variable.go @@ -494,6 +494,8 @@ type ProductVariables struct { Release_expose_flagged_api *bool `json:",omitempty"` BuildFlags map[string]string `json:",omitempty"` + + BuildFromSourceStub *bool `json:",omitempty"` } type PartitionQualifiedVariablesType struct {