diff --git a/java/androidmk.go b/java/androidmk.go index 65c44a329..2efadb072 100644 --- a/java/androidmk.go +++ b/java/androidmk.go @@ -556,9 +556,6 @@ func (dstubs *Droidstubs) AndroidMkEntries() []android.AndroidMkEntries { if dstubs.annotationsZip != nil { entries.SetPath("LOCAL_DROIDDOC_ANNOTATIONS_ZIP", dstubs.annotationsZip) } - if dstubs.jdiffDocZip != nil { - entries.SetPath("LOCAL_DROIDDOC_JDIFF_DOC_ZIP", dstubs.jdiffDocZip) - } if dstubs.metadataZip != nil { entries.SetPath("LOCAL_DROIDDOC_METADATA_ZIP", dstubs.metadataZip) } diff --git a/java/droiddoc.go b/java/droiddoc.go index b3bb5ab2b..923a263a2 100644 --- a/java/droiddoc.go +++ b/java/droiddoc.go @@ -274,10 +274,6 @@ type DroidstubsProperties struct { // if set to true, collect the values used by the Dev tools and // write them in files packaged with the SDK. Defaults to false. Write_sdk_values *bool - - // If set to true, .xml based public API file will be also generated, and - // JDiff tool will be invoked to genreate javadoc files. Defaults to false. - Jdiff_enabled *bool } // @@ -586,9 +582,8 @@ func (j *Javadoc) collectDeps(ctx android.ModuleContext) deps { srcFiles = filterByPackage(srcFiles, j.properties.Filter_packages) // While metalava needs package html files, it does not need them to be explicit on the command - // line. More importantly, the metalava rsp file is also used by the subsequent jdiff action if - // jdiff_enabled=true. javadoc complains if it receives html files on the command line. The filter - // below excludes html files from the rsp file for both metalava and jdiff. Note that the html + // line. javadoc complains if it receives html files on the command line. The filter + // below excludes html files from the rsp file metalava. Note that the html // files are still included as implicit inputs for successful remote execution and correct // incremental builds. filterHtml := func(srcs []android.Path) []android.Path { @@ -1023,9 +1018,6 @@ type Droidstubs struct { apiFilePath android.Path - jdiffDocZip android.WritablePath - jdiffStubsSrcJar android.WritablePath - metadataZip android.WritablePath metadataDir android.WritablePath } @@ -1258,26 +1250,6 @@ 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) && d.apiFile != nil { - if d.apiFile.String() == "" { - ctx.ModuleErrorf("API signature file has to be specified in Metalava when jdiff is enabled.") - } - - d.apiXmlFile = android.PathForModuleOut(ctx, ctx.ModuleName()+"_api.xml") - cmd.FlagWithOutput("--api-xml ", d.apiXmlFile) - - if String(d.properties.Check_api.Last_released.Api_file) == "" { - ctx.PropertyErrorf("check_api.last_released.api_file", - "has to be non-empty if jdiff was enabled!") - } - - lastReleasedApi := android.PathForModuleSrc(ctx, String(d.properties.Check_api.Last_released.Api_file)) - d.lastReleasedApiXmlFile = android.PathForModuleOut(ctx, ctx.ModuleName()+"_last_released_api.xml") - cmd.FlagWithInput("--convert-to-jdiff ", lastReleasedApi).Output(d.lastReleasedApiXmlFile) - } -} - func metalavaCmd(ctx android.ModuleContext, rule *android.RuleBuilder, javaVersion javaVersion, srcs android.Paths, srcJarList android.Path, bootclasspath, classpath classpath, sourcepaths android.Paths, implicitsRsp android.WritablePath, sandbox bool) *android.RuleBuilderCommand { // Metalava uses lots of memory, restrict the number of metalava jobs that can run in parallel. @@ -1386,7 +1358,6 @@ func (d *Droidstubs) GenerateAndroidBuildActions(ctx android.ModuleContext) { d.annotationsFlags(ctx, cmd) d.inclusionAnnotationsFlags(ctx, cmd) d.apiLevelsAnnotationsFlags(ctx, cmd) - d.apiToXmlFlags(ctx, cmd) if android.InList("--generate-documentation", d.Javadoc.args) { // Currently Metalava have the ability to invoke Javadoc in a seperate process. @@ -1663,74 +1634,6 @@ func (d *Droidstubs) GenerateAndroidBuildActions(ctx android.ModuleContext) { rule.Build(pctx, ctx, "nullabilityWarningsCheck", "nullability warnings check") } - - if Bool(d.properties.Jdiff_enabled) { - if len(d.Javadoc.properties.Out) > 0 { - ctx.PropertyErrorf("out", "out property may not be combined with jdiff") - } - - outDir := android.PathForModuleOut(ctx, "jdiff-out") - srcJarDir := android.PathForModuleOut(ctx, "jdiff-srcjars") - stubsDir := android.PathForModuleOut(ctx, "jdiff-stubsDir") - - rule := android.NewRuleBuilder() - - // Please sync with android-api-council@ before making any changes for the name of jdiffDocZip below - // since there's cron job downstream that fetch this .zip file periodically. - // See b/116221385 for reference. - d.jdiffDocZip = android.PathForModuleOut(ctx, ctx.ModuleName()+"-"+"jdiff-docs.zip") - d.jdiffStubsSrcJar = android.PathForModuleOut(ctx, ctx.ModuleName()+"-"+"jdiff-stubs.srcjar") - - jdiff := android.PathForOutput(ctx, "host", ctx.Config().PrebuiltOS(), "framework", "jdiff.jar") - - rule.Command().Text("rm -rf").Text(outDir.String()).Text(stubsDir.String()) - rule.Command().Text("mkdir -p").Text(outDir.String()).Text(stubsDir.String()) - - srcJarList := zipSyncCmd(ctx, rule, srcJarDir, d.Javadoc.srcJars) - - cmd := javadocBootclasspathCmd(ctx, rule, d.Javadoc.srcFiles, outDir, srcJarDir, srcJarList, - deps.bootClasspath, deps.classpath, d.sourcepaths) - - cmd.Flag("-J-Xmx1600m"). - Flag("-XDignore.symbol.file"). - FlagWithArg("-doclet ", "jdiff.JDiff"). - FlagWithInput("-docletpath ", jdiff). - 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"). - Flag("-write_if_changed"). - Flag("-d"). - FlagWithOutput("-o ", d.jdiffDocZip). - FlagWithArg("-C ", outDir.String()). - FlagWithArg("-D ", outDir.String()) - - rule.Command(). - BuiltTool(ctx, "soong_zip"). - Flag("-write_if_changed"). - Flag("-jar"). - FlagWithOutput("-o ", d.jdiffStubsSrcJar). - FlagWithArg("-C ", stubsDir.String()). - FlagWithArg("-D ", stubsDir.String()) - - rule.Restat() - - zipSyncCleanupCmd(rule, srcJarDir) - - rule.Build(pctx, ctx, "jdiff", "jdiff") - } } //