aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSpandan Das <spandandas@google.com>2024-03-22 02:32:45 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2024-03-22 02:32:45 +0000
commit73d566156e950628f051a77739059d0552a88264 (patch)
treedd9a1fcef1f071b3497f573729de837531769610
parent2703b42ccb6242b6ab9f1616ec443b8915688629 (diff)
parentaa1b7c912407cb4ce10979b6a31f443c32191ade (diff)
downloadsoong-73d566156e950628f051a77739059d0552a88264.tar.gz
Merge "Convert BuildIgnoreApexContritbutions variable to a boolean" into main
-rw-r--r--android/apex_contributions.go24
-rw-r--r--android/config.go2
-rw-r--r--android/variable.go2
3 files changed, 15 insertions, 13 deletions
diff --git a/android/apex_contributions.go b/android/apex_contributions.go
index c76d9c235..dd09fbf44 100644
--- a/android/apex_contributions.go
+++ b/android/apex_contributions.go
@@ -115,10 +115,6 @@ func (a *allApexContributions) DepsMutator(ctx BottomUpMutatorContext) {
func (a *allApexContributions) SetPrebuiltSelectionInfoProvider(ctx BaseModuleContext) {
addContentsToProvider := func(p *PrebuiltSelectionInfoMap, m *apexContributions) {
for _, content := range m.Contents() {
- // Skip any apexes that have been added to the product specific ignore list
- if InList(content, ctx.Config().BuildIgnoreApexContributionContents()) {
- continue
- }
// Coverage builds for TARGET_RELEASE=foo should always build from source,
// even if TARGET_RELEASE=foo uses prebuilt mainline modules.
// This is necessary because the checked-in prebuilts were generated with
@@ -141,13 +137,19 @@ func (a *allApexContributions) SetPrebuiltSelectionInfoProvider(ctx BaseModuleCo
}
p := PrebuiltSelectionInfoMap{}
- ctx.VisitDirectDepsWithTag(acDepTag, func(child Module) {
- if m, ok := child.(*apexContributions); ok {
- addContentsToProvider(&p, m)
- } else {
- ctx.ModuleErrorf("%s is not an apex_contributions module\n", child.Name())
- }
- })
+ // Skip apex_contributions if BuildApexContributionContents is true
+ // This product config var allows some products in the same family to use mainline modules from source
+ // (e.g. shiba and shiba_fullmte)
+ // Eventually these product variants will have their own release config maps.
+ if !proptools.Bool(ctx.Config().BuildIgnoreApexContributionContents()) {
+ ctx.VisitDirectDepsWithTag(acDepTag, func(child Module) {
+ if m, ok := child.(*apexContributions); ok {
+ addContentsToProvider(&p, m)
+ } else {
+ ctx.ModuleErrorf("%s is not an apex_contributions module\n", child.Name())
+ }
+ })
+ }
SetProvider(ctx, PrebuiltSelectionInfoProvider, p)
}
diff --git a/android/config.go b/android/config.go
index 10c30d4df..95e823309 100644
--- a/android/config.go
+++ b/android/config.go
@@ -2083,6 +2083,6 @@ func (c *config) AllApexContributions() []string {
return ret
}
-func (c *config) BuildIgnoreApexContributionContents() []string {
+func (c *config) BuildIgnoreApexContributionContents() *bool {
return c.productVariables.BuildIgnoreApexContributionContents
}
diff --git a/android/variable.go b/android/variable.go
index 73f5bfd1f..7a49a6838 100644
--- a/android/variable.go
+++ b/android/variable.go
@@ -495,7 +495,7 @@ type ProductVariables struct {
BuildFromSourceStub *bool `json:",omitempty"`
- BuildIgnoreApexContributionContents []string `json:",omitempty"`
+ BuildIgnoreApexContributionContents *bool `json:",omitempty"`
HiddenapiExportableStubs *bool `json:",omitempty"`