From 10269f1da9b99d682d1a86484b821344d7164bca Mon Sep 17 00:00:00 2001 From: Paul Duffin Date: Fri, 19 Jun 2020 18:39:55 +0100 Subject: [PATCH] Fix build breakages when WITHOUT_CHECK_API=true Bug: 158578354 Test: export WITHOUT_CHECK_API=true m checkbuild Change-Id: I7b5fff40b870c9d754f779ff1c3314bac7e42440 Merged-In: I7b5fff40b870c9d754f779ff1c3314bac7e42440 --- java/droiddoc.go | 22 ++++++++++++++-------- java/sdk_library.go | 8 ++++++-- 2 files changed, 20 insertions(+), 10 deletions(-) diff --git a/java/droiddoc.go b/java/droiddoc.go index d6bff95c5..a24d44b10 100644 --- a/java/droiddoc.go +++ b/java/droiddoc.go @@ -1414,7 +1414,7 @@ func (d *Droidstubs) apiLevelsAnnotationsFlags(ctx android.ModuleContext, cmd *a } func (d *Droidstubs) apiToXmlFlags(ctx android.ModuleContext, cmd *android.RuleBuilderCommand) { - if Bool(d.properties.Jdiff_enabled) && !ctx.Config().IsPdkBuild() { + if Bool(d.properties.Jdiff_enabled) && !ctx.Config().IsPdkBuild() && d.apiFile != nil { if d.apiFile.String() == "" { ctx.ModuleErrorf("API signature file has to be specified in Metalava when jdiff is enabled.") } @@ -1835,13 +1835,19 @@ func (d *Droidstubs) GenerateAndroidBuildActions(ctx android.ModuleContext) { Flag("-XDignore.symbol.file"). FlagWithArg("-doclet ", "jdiff.JDiff"). FlagWithInput("-docletpath ", jdiff). - Flag("-quiet"). - FlagWithArg("-newapi ", strings.TrimSuffix(d.apiXmlFile.Base(), d.apiXmlFile.Ext())). - FlagWithArg("-newapidir ", filepath.Dir(d.apiXmlFile.String())). - Implicit(d.apiXmlFile). - FlagWithArg("-oldapi ", strings.TrimSuffix(d.lastReleasedApiXmlFile.Base(), d.lastReleasedApiXmlFile.Ext())). - FlagWithArg("-oldapidir ", filepath.Dir(d.lastReleasedApiXmlFile.String())). - Implicit(d.lastReleasedApiXmlFile) + Flag("-quiet") + + if d.apiXmlFile != nil { + cmd.FlagWithArg("-newapi ", strings.TrimSuffix(d.apiXmlFile.Base(), d.apiXmlFile.Ext())). + FlagWithArg("-newapidir ", filepath.Dir(d.apiXmlFile.String())). + Implicit(d.apiXmlFile) + } + + if d.lastReleasedApiXmlFile != nil { + cmd.FlagWithArg("-oldapi ", strings.TrimSuffix(d.lastReleasedApiXmlFile.Base(), d.lastReleasedApiXmlFile.Ext())). + FlagWithArg("-oldapidir ", filepath.Dir(d.lastReleasedApiXmlFile.String())). + Implicit(d.lastReleasedApiXmlFile) + } rule.Command(). BuiltTool(ctx, "soong_zip"). diff --git a/java/sdk_library.go b/java/sdk_library.go index 7ce0912e9..26bd6702f 100644 --- a/java/sdk_library.go +++ b/java/sdk_library.go @@ -2188,8 +2188,12 @@ func (s *sdkLibrarySdkMemberProperties) PopulateFromVariant(ctx android.SdkMembe properties.Jars = jars properties.SdkVersion = sdk.sdkVersionForStubsLibrary(ctx.SdkModuleContext(), apiScope) properties.StubsSrcJar = paths.stubsSrcJar.Path() - properties.CurrentApiFile = paths.currentApiFilePath.Path() - properties.RemovedApiFile = paths.removedApiFilePath.Path() + if paths.currentApiFilePath.Valid() { + properties.CurrentApiFile = paths.currentApiFilePath.Path() + } + if paths.removedApiFilePath.Valid() { + properties.RemovedApiFile = paths.removedApiFilePath.Path() + } s.Scopes[apiScope] = properties } }