diff options
author | 2021-07-16 14:00:37 +0100 | |
---|---|---|
committer | 2021-07-16 17:03:17 +0100 | |
commit | 3bc8e218f97339b1c9106596960f5b27e8d1f89d (patch) | |
tree | 41a72fc8d244f43bc2902c18ef8ea2ff6bb68263 /java/platform_bootclasspath.go | |
parent | f87aae535687604e102bb9da30f5da2080271ba5 (diff) |
Avoid permitted_packages related build failures in unbundled builds
Unbundled builds cause AlwaysUsePrebuiltSdks() to return true which
causes java_sdk_library_import modules to be preferred instead of their
corresponding java_sdk_library module. That causes the
platform-bootclasspath module to depend on prebuilt versions of modules
like framework-statsd which currently do not specify
permitted_packages and so cause a failure.
This is a temporary hack to prevent an unbundled build from checking
for permitted_packages. It can be removed once the prebuilts have been
updated to include the permitted_packages.
Bug: 193095050
Bug: 193889859
Test: m TARGET_BUILD_APPS=Calendar apps_only
- before the change it failed in Soong.
- after the change it started failing, later in Make, so the
Soong problem has been worked around.
- I reverted all the recent changes to permitted_packages and
ran this and it still failed so that failure is unrelated to
these changes.
Change-Id: I213d35437d76d61cf616d1f16dae213b311c6c8e
Diffstat (limited to 'java/platform_bootclasspath.go')
-rw-r--r-- | java/platform_bootclasspath.go | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/java/platform_bootclasspath.go b/java/platform_bootclasspath.go index c1e14b21e..8bed3e9e5 100644 --- a/java/platform_bootclasspath.go +++ b/java/platform_bootclasspath.go @@ -423,8 +423,13 @@ func (b *platformBootclasspathModule) generateBootImageBuildActions(ctx android. // Generate the framework profile rule bootFrameworkProfileRule(ctx, imageConfig) - // Generate the updatable bootclasspath packages rule. - generateUpdatableBcpPackagesRule(ctx, imageConfig, updatableModules) + // If always using prebuilt sdks then do not generate the updatable-bcp-packages.txt file as it + // will break because the prebuilts do not yet specify a permitted_packages property. + // TODO(b/193889859): Remove when the prebuilts have been updated. + if !ctx.Config().AlwaysUsePrebuiltSdks() { + // Generate the updatable bootclasspath packages rule. + generateUpdatableBcpPackagesRule(ctx, imageConfig, updatableModules) + } // Copy non-updatable module dex jars to their predefined locations. nonUpdatableBootDexJarsByModule := extractEncodedDexJarsFromModules(ctx, nonUpdatableModules) |