Merge changes from topic "revert-2929615-JHGJGJFRRX" into main am: dc2b51f2ba
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2989230 Change-Id: I9bf6b80eb908a98617bfbd32357874bf48b9b897 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -242,18 +242,16 @@ type stubsCommandParams struct {
|
||||
stubConfig stubsCommandConfigParams
|
||||
}
|
||||
type stubsCommandConfigParams struct {
|
||||
stubsType StubsType
|
||||
javaVersion javaVersion
|
||||
deps deps
|
||||
checkApi bool
|
||||
generateStubs bool
|
||||
doApiLint bool
|
||||
doCheckReleased bool
|
||||
writeSdkValues bool
|
||||
migratingNullability bool
|
||||
validatingNullability bool
|
||||
annotationsEnabled bool
|
||||
apiLevelsAnnotationsEnabled bool
|
||||
stubsType StubsType
|
||||
javaVersion javaVersion
|
||||
deps deps
|
||||
checkApi bool
|
||||
generateStubs bool
|
||||
doApiLint bool
|
||||
doCheckReleased bool
|
||||
writeSdkValues bool
|
||||
migratingNullability bool
|
||||
validatingNullability bool
|
||||
}
|
||||
|
||||
// droidstubs passes sources files through Metalava to generate stub .java files that only contain the API to be
|
||||
@@ -523,28 +521,30 @@ func (d *Droidstubs) stubsFlags(ctx android.ModuleContext, cmd *android.RuleBuil
|
||||
}
|
||||
|
||||
func (d *Droidstubs) annotationsFlags(ctx android.ModuleContext, cmd *android.RuleBuilderCommand, params annotationFlagsParams) {
|
||||
cmd.Flag(config.MetalavaAnnotationsFlags)
|
||||
if Bool(d.properties.Annotations_enabled) {
|
||||
cmd.Flag(config.MetalavaAnnotationsFlags)
|
||||
|
||||
if params.migratingNullability {
|
||||
previousApi := android.PathForModuleSrc(ctx, String(d.properties.Previous_api))
|
||||
cmd.FlagWithInput("--migrate-nullness ", previousApi)
|
||||
if params.migratingNullability {
|
||||
previousApi := android.PathForModuleSrc(ctx, String(d.properties.Previous_api))
|
||||
cmd.FlagWithInput("--migrate-nullness ", previousApi)
|
||||
}
|
||||
|
||||
if s := String(d.properties.Validate_nullability_from_list); s != "" {
|
||||
cmd.FlagWithInput("--validate-nullability-from-list ", android.PathForModuleSrc(ctx, s))
|
||||
}
|
||||
|
||||
if params.validatingNullability {
|
||||
cmd.FlagWithOutput("--nullability-warnings-txt ", params.nullabilityWarningsFile)
|
||||
}
|
||||
|
||||
cmd.FlagWithOutput("--extract-annotations ", params.annotationsZip)
|
||||
|
||||
if len(d.properties.Merge_annotations_dirs) != 0 {
|
||||
d.mergeAnnoDirFlags(ctx, cmd)
|
||||
}
|
||||
|
||||
cmd.Flag(config.MetalavaAnnotationsWarningsFlags)
|
||||
}
|
||||
|
||||
if s := String(d.properties.Validate_nullability_from_list); s != "" {
|
||||
cmd.FlagWithInput("--validate-nullability-from-list ", android.PathForModuleSrc(ctx, s))
|
||||
}
|
||||
|
||||
if params.validatingNullability {
|
||||
cmd.FlagWithOutput("--nullability-warnings-txt ", params.nullabilityWarningsFile)
|
||||
}
|
||||
|
||||
cmd.FlagWithOutput("--extract-annotations ", params.annotationsZip)
|
||||
|
||||
if len(d.properties.Merge_annotations_dirs) != 0 {
|
||||
d.mergeAnnoDirFlags(ctx, cmd)
|
||||
}
|
||||
|
||||
cmd.Flag(config.MetalavaAnnotationsWarningsFlags)
|
||||
}
|
||||
|
||||
func (d *Droidstubs) mergeAnnoDirFlags(ctx android.ModuleContext, cmd *android.RuleBuilderCommand) {
|
||||
@@ -569,11 +569,9 @@ func (d *Droidstubs) inclusionAnnotationsFlags(ctx android.ModuleContext, cmd *a
|
||||
})
|
||||
}
|
||||
|
||||
func (d *Droidstubs) apiLevelsAnnotationsFlags(ctx android.ModuleContext, cmd *android.RuleBuilderCommand, params stubsCommandParams) {
|
||||
func (d *Droidstubs) apiLevelsAnnotationsFlags(ctx android.ModuleContext, cmd *android.RuleBuilderCommand, stubsType StubsType, apiVersionsXml android.WritablePath) {
|
||||
var apiVersions android.Path
|
||||
stubsType := params.stubConfig.stubsType
|
||||
apiVersionsXml := params.apiVersionsXml
|
||||
if params.stubConfig.apiLevelsAnnotationsEnabled {
|
||||
if proptools.Bool(d.properties.Api_levels_annotations_enabled) {
|
||||
d.apiLevelsGenerationFlags(ctx, cmd, stubsType, apiVersionsXml)
|
||||
apiVersions = apiVersionsXml
|
||||
} else {
|
||||
@@ -822,11 +820,9 @@ func (d *Droidstubs) commonMetalavaStubCmd(ctx android.ModuleContext, rule *andr
|
||||
annotationsZip: params.annotationsZip,
|
||||
}
|
||||
|
||||
if params.stubConfig.annotationsEnabled {
|
||||
d.annotationsFlags(ctx, cmd, annotationParams)
|
||||
}
|
||||
d.annotationsFlags(ctx, cmd, annotationParams)
|
||||
d.inclusionAnnotationsFlags(ctx, cmd)
|
||||
d.apiLevelsAnnotationsFlags(ctx, cmd, params)
|
||||
d.apiLevelsAnnotationsFlags(ctx, cmd, params.stubConfig.stubsType, params.apiVersionsXml)
|
||||
|
||||
d.expandArgs(ctx, cmd)
|
||||
|
||||
@@ -856,13 +852,13 @@ func (d *Droidstubs) everythingStubCmd(ctx android.ModuleContext, params stubsCo
|
||||
d.everythingArtifacts.metadataZip = android.PathForModuleOut(ctx, Everything.String(), ctx.ModuleName()+"-metadata.zip")
|
||||
}
|
||||
|
||||
if params.annotationsEnabled {
|
||||
if Bool(d.properties.Annotations_enabled) {
|
||||
if params.validatingNullability {
|
||||
d.everythingArtifacts.nullabilityWarningsFile = android.PathForModuleOut(ctx, Everything.String(), ctx.ModuleName()+"_nullability_warnings.txt")
|
||||
}
|
||||
d.everythingArtifacts.annotationsZip = android.PathForModuleOut(ctx, Everything.String(), ctx.ModuleName()+"_annotations.zip")
|
||||
}
|
||||
if params.apiLevelsAnnotationsEnabled {
|
||||
if Bool(d.properties.Api_levels_annotations_enabled) {
|
||||
d.everythingArtifacts.apiVersionsXml = android.PathForModuleOut(ctx, Everything.String(), "api-versions.xml")
|
||||
}
|
||||
|
||||
@@ -1040,7 +1036,7 @@ func (d *Droidstubs) exportableStubCmd(ctx android.ModuleContext, params stubsCo
|
||||
optionalCmdParams.metadataDir = d.exportableArtifacts.metadataDir
|
||||
}
|
||||
|
||||
if params.annotationsEnabled {
|
||||
if Bool(d.properties.Annotations_enabled) {
|
||||
if params.validatingNullability {
|
||||
d.exportableArtifacts.nullabilityWarningsFile = android.PathForModuleOut(ctx, params.stubsType.String(), ctx.ModuleName()+"_nullability_warnings.txt")
|
||||
optionalCmdParams.nullabilityWarningsFile = d.exportableArtifacts.nullabilityWarningsFile
|
||||
@@ -1048,7 +1044,7 @@ func (d *Droidstubs) exportableStubCmd(ctx android.ModuleContext, params stubsCo
|
||||
d.exportableArtifacts.annotationsZip = android.PathForModuleOut(ctx, params.stubsType.String(), ctx.ModuleName()+"_annotations.zip")
|
||||
optionalCmdParams.annotationsZip = d.exportableArtifacts.annotationsZip
|
||||
}
|
||||
if params.apiLevelsAnnotationsEnabled {
|
||||
if Bool(d.properties.Api_levels_annotations_enabled) {
|
||||
d.exportableArtifacts.apiVersionsXml = android.PathForModuleOut(ctx, params.stubsType.String(), "api-versions.xml")
|
||||
optionalCmdParams.apiVersionsXml = d.exportableArtifacts.apiVersionsXml
|
||||
}
|
||||
@@ -1144,20 +1140,16 @@ func (d *Droidstubs) GenerateAndroidBuildActions(ctx android.ModuleContext) {
|
||||
checkApi := apiCheckEnabled(ctx, d.properties.Check_api.Current, "current") ||
|
||||
apiCheckEnabled(ctx, d.properties.Check_api.Last_released, "last_released")
|
||||
|
||||
apiLevelsAnnotationsEnabled := proptools.Bool(d.properties.Api_levels_annotations_enabled)
|
||||
|
||||
stubCmdParams := stubsCommandConfigParams{
|
||||
javaVersion: javaVersion,
|
||||
deps: deps,
|
||||
checkApi: checkApi,
|
||||
generateStubs: generateStubs,
|
||||
doApiLint: doApiLint,
|
||||
doCheckReleased: doCheckReleased,
|
||||
writeSdkValues: writeSdkValues,
|
||||
migratingNullability: migratingNullability,
|
||||
validatingNullability: validatingNullability,
|
||||
annotationsEnabled: annotationsEnabled,
|
||||
apiLevelsAnnotationsEnabled: apiLevelsAnnotationsEnabled,
|
||||
javaVersion: javaVersion,
|
||||
deps: deps,
|
||||
checkApi: checkApi,
|
||||
generateStubs: generateStubs,
|
||||
doApiLint: doApiLint,
|
||||
doCheckReleased: doCheckReleased,
|
||||
writeSdkValues: writeSdkValues,
|
||||
migratingNullability: migratingNullability,
|
||||
validatingNullability: validatingNullability,
|
||||
}
|
||||
stubCmdParams.stubsType = Everything
|
||||
// Create default (i.e. "everything" stubs) rule for metalava
|
||||
|
Reference in New Issue
Block a user