diff options
| author | 2024-03-05 23:38:51 +0000 | |
|---|---|---|
| committer | 2024-03-05 23:38:51 +0000 | |
| commit | b51fb7c159f3873dba83a242420a5e4895acb10b (patch) | |
| tree | 26b0c0a15cec2abfc9739e6470718eb7b32dfc24 /java/droidstubs.go | |
| parent | 05b152f271a10fbbcf3bbe20e7e4326bfbdb8be6 (diff) | |
| parent | dc2b51f2baf6fdc45f2a34e17eebfe93f739cada (diff) | |
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>
Diffstat (limited to 'java/droidstubs.go')
| -rw-r--r-- | java/droidstubs.go | 98 | 
1 files changed, 45 insertions, 53 deletions
| diff --git a/java/droidstubs.go b/java/droidstubs.go index e506ee6d1..76c8d8890 100644 --- a/java/droidstubs.go +++ b/java/droidstubs.go @@ -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 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) -	} +		if params.validatingNullability { +			cmd.FlagWithOutput("--nullability-warnings-txt ", params.nullabilityWarningsFile) +		} -	cmd.FlagWithOutput("--extract-annotations ", params.annotationsZip) +		cmd.FlagWithOutput("--extract-annotations ", params.annotationsZip) -	if len(d.properties.Merge_annotations_dirs) != 0 { -		d.mergeAnnoDirFlags(ctx, cmd) -	} +		if len(d.properties.Merge_annotations_dirs) != 0 { +			d.mergeAnnoDirFlags(ctx, cmd) +		} -	cmd.Flag(config.MetalavaAnnotationsWarningsFlags) +		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 |