diff options
author | 2024-09-06 00:49:31 +0000 | |
---|---|---|
committer | 2024-09-06 05:10:29 +0000 | |
commit | 1679192d7d1a71633823d92bd7480e2f553e556b (patch) | |
tree | 53d3f651899a1acf17e47f37881cd35cb7b47388 /java/bootclasspath_fragment.go | |
parent | c540beef74e30cf30a4a1cc3f250b2ddbe45ad42 (diff) |
Skip `contents` validation of source bootclasspath fragments
... if prebuilts are selected.
This is a special case of b/361771739 where a apex starts contributing a
jar to the BCP. `disableSourceApexVariant` uses
`PrebuiltSelectionInfoProvider` and this gets populated via the
following dep chain
```
source --> prebuilt --> all_apex_contributions
```
This runs into issues if a prebuilt bootclasspath_fragment does not
exist.
This CL creates a dependency edge between the source module and
all_apex_contributions singleton module so that
`PrebuiltSelectionInfoProvider` is available for
`disableSourceApexVariant`
Bug: 361771739
Test: lunch cf_x86_64-next-userdebug
Test: m nothing with ag/28851886
Change-Id: I92d88199a27579d3c9879d40fd354653370efcce
Diffstat (limited to 'java/bootclasspath_fragment.go')
-rw-r--r-- | java/bootclasspath_fragment.go | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/java/bootclasspath_fragment.go b/java/bootclasspath_fragment.go index bef3b58c8..fe4cc7685 100644 --- a/java/bootclasspath_fragment.go +++ b/java/bootclasspath_fragment.go @@ -463,6 +463,12 @@ func (b *BootclasspathFragmentModule) DepsMutator(ctx android.BottomUpMutatorCon // Add a dependency onto the dex2oat tool which is needed for creating the boot image. The // path is retrieved from the dependency by GetGlobalSoongConfig(ctx). dexpreopt.RegisterToolDeps(ctx) + + // Add a dependency to `all_apex_contributions` to determine if prebuilts are active. + // If prebuilts are active, `contents` validation on the source bootclasspath fragment should be disabled. + if _, isPrebuiltModule := ctx.Module().(*PrebuiltBootclasspathFragmentModule); !isPrebuiltModule { + ctx.AddDependency(b, android.AcDepTag, "all_apex_contributions") + } } func (b *BootclasspathFragmentModule) BootclasspathDepsMutator(ctx android.BottomUpMutatorContext) { |