Refactor merged annotations creation
It's clearer to define the module in Android.bp, and keep our custom Go code to the minimal. The only thing the go code really needs to do is create a "all module annotations" module. This matches the pattern of the other modules here (the pattern was invented after sdk-annotations.zip was first migrated). Bug: 235140934 Test: m sdk-annotations.zip before/after (no diffs) Change-Id: Iae246081bcf4e5177d1da98c2e01c702fb349a22
This commit is contained in:
@@ -188,6 +188,23 @@ genrule {
|
||||
"$(location :frameworks-base-api-module-lib-current.txt)",
|
||||
}
|
||||
|
||||
// This produces the same annotations.zip as framework-doc-stubs, but by using
|
||||
// outputs from individual modules instead of all the source code.
|
||||
genrule {
|
||||
name: "sdk-annotations.zip",
|
||||
srcs: [
|
||||
":android-non-updatable-doc-stubs{.annotations.zip}",
|
||||
":all-modules-public-annotations",
|
||||
],
|
||||
out: ["annotations.zip"],
|
||||
tools: [
|
||||
"merge_annotation_zips",
|
||||
"soong_zip",
|
||||
],
|
||||
cmd: "$(location merge_annotation_zips) $(genDir)/out $(in) && " +
|
||||
"$(location soong_zip) -o $(out) -C $(genDir)/out -D $(genDir)/out",
|
||||
}
|
||||
|
||||
genrule {
|
||||
name: "combined-removed-dex",
|
||||
visibility: [
|
||||
|
||||
18
api/api.go
18
api/api.go
@@ -148,17 +148,11 @@ func createMergedStubsSrcjar(ctx android.LoadHookContext, modules []string) {
|
||||
ctx.CreateModule(genrule.GenRuleFactory, &props)
|
||||
}
|
||||
|
||||
// This produces the same annotations.zip as framework-doc-stubs, but by using
|
||||
// outputs from individual modules instead of all the source code.
|
||||
func createMergedAnnotations(ctx android.LoadHookContext, modules []string) {
|
||||
props := genruleProps{}
|
||||
props.Name = proptools.StringPtr("sdk-annotations.zip")
|
||||
props.Tools = []string{"merge_annotation_zips", "soong_zip"}
|
||||
props.Out = []string{"annotations.zip"}
|
||||
props.Cmd = proptools.StringPtr("$(location merge_annotation_zips) $(genDir)/out $(in) && " +
|
||||
"$(location soong_zip) -o $(out) -C $(genDir)/out -D $(genDir)/out")
|
||||
props.Srcs = append([]string{":android-non-updatable-doc-stubs{.annotations.zip}"}, createSrcs(modules, "{.public.annotations.zip}")...)
|
||||
ctx.CreateModule(genrule.GenRuleFactory, &props)
|
||||
func createMergedPublicAnnotationsFilegroup(ctx android.LoadHookContext, modules []string) {
|
||||
props := fgProps{}
|
||||
props.Name = proptools.StringPtr("all-modules-public-annotations")
|
||||
props.Srcs = createSrcs(modules, "{.public.annotations.zip}")
|
||||
ctx.CreateModule(android.FileGroupFactory, &props)
|
||||
}
|
||||
|
||||
func createFilteredApiVersions(ctx android.LoadHookContext, modules []string) {
|
||||
@@ -299,7 +293,7 @@ func (a *CombinedApis) createInternalModules(ctx android.LoadHookContext) {
|
||||
createMergedFrameworkModuleLibStubs(ctx, bootclasspath)
|
||||
createMergedFrameworkImpl(ctx, bootclasspath)
|
||||
|
||||
createMergedAnnotations(ctx, bootclasspath)
|
||||
createMergedPublicAnnotationsFilegroup(ctx, bootclasspath)
|
||||
|
||||
createFilteredApiVersions(ctx, bootclasspath)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user