Fix build failure when building unbundled apps

Bug: 186695448
Bug: 185828824
Test: tapas Calendar
      m -j60
Change-Id: I1c5365f6d2afb2f2d159e6f6ed004647ec6d2427
This commit is contained in:
Paul Duffin 2021-04-29 19:36:33 +01:00
parent 86477cfeb2
commit c027119e73

View file

@ -209,7 +209,17 @@ func (b *platformBootclasspathModule) generateHiddenAPIBuildActions(ctx android.
// Don't run any hiddenapi rules if UNSAFE_DISABLE_HIDDENAPI_FLAGS=true. This is a performance // Don't run any hiddenapi rules if UNSAFE_DISABLE_HIDDENAPI_FLAGS=true. This is a performance
// optimization that can be used to reduce the incremental build time but as its name suggests it // optimization that can be used to reduce the incremental build time but as its name suggests it
// can be unsafe to use, e.g. when the changes affect anything that goes on the bootclasspath. // can be unsafe to use, e.g. when the changes affect anything that goes on the bootclasspath.
if ctx.Config().IsEnvTrue("UNSAFE_DISABLE_HIDDENAPI_FLAGS") { // Instead create some rules to create fake hidden api files.
config := ctx.Config()
fakeHiddenApiRules := config.IsEnvTrue("UNSAFE_DISABLE_HIDDENAPI_FLAGS")
// Don't run them in an unbundled build either because the chances are that the modules needed
// are not available.
fakeHiddenApiRules = fakeHiddenApiRules || config.UnbundledBuild()
// Don't run them when always using prebuilts as they won't necessarily have the dex boot jars
// available.
if fakeHiddenApiRules {
paths := android.OutputPaths{b.hiddenAPIFlagsCSV, b.hiddenAPIIndexCSV, b.hiddenAPIMetadataCSV} paths := android.OutputPaths{b.hiddenAPIFlagsCSV, b.hiddenAPIIndexCSV, b.hiddenAPIMetadataCSV}
for _, path := range paths { for _, path := range paths {
ctx.Build(pctx, android.BuildParams{ ctx.Build(pctx, android.BuildParams{