Parameterize scopes with additional droidstubs args

Added droidstubsArgs field to the apiscope structure to avoid
switching on api scope type.

Bug: 153443117
Test: m nothing
Change-Id: I96f0eb033d44c6a74787ba7f1523799b05a58092
This commit is contained in:
Paul Duffin 2020-04-07 18:50:10 +01:00
parent 6d0886e279
commit 1fb487df17

View file

@ -86,6 +86,9 @@ type apiScope struct {
// *current. Older stubs library built with a numbered SDK version is created from
// the prebuilt jar.
sdkVersion string
// Extra arguments to pass to droidstubs for this scope.
droidstubsArgs []string
}
// Initialize a scope, creating and adding appropriate dependency tags
@ -131,6 +134,7 @@ var (
moduleSuffix: sdkSystemApiSuffix,
apiFileMakeVariableSuffix: "_SYSTEM",
sdkVersion: "system_current",
droidstubsArgs: []string{"-showAnnotation android.annotation.SystemApi"},
})
apiScopeTest = initApiScope(&apiScope{
name: "test",
@ -138,6 +142,7 @@ var (
moduleSuffix: sdkTestApiSuffix,
apiFileMakeVariableSuffix: "_TEST",
sdkVersion: "test_current",
droidstubsArgs: []string{"-showAnnotation android.annotation.TestApi"},
})
allApiScopes = apiScopes{
apiScopePublic,
@ -538,12 +543,8 @@ func (module *SdkLibrary) createStubsSources(mctx android.LoadHookContext, apiSc
}
droidstubsArgs = append(droidstubsArgs, android.JoinWithPrefix(disabledWarnings, "--hide "))
switch apiScope {
case apiScopeSystem:
droiddocArgs = append(droiddocArgs, "-showAnnotation android.annotation.SystemApi")
case apiScopeTest:
droiddocArgs = append(droiddocArgs, " -showAnnotation android.annotation.TestApi")
}
// Add in scope specific arguments.
droidstubsArgs = append(droidstubsArgs, apiScope.droidstubsArgs...)
props.Arg_files = module.sdkLibraryProperties.Droiddoc_option_files
props.Args = proptools.StringPtr(strings.Join(droidstubsArgs, " "))