From f8ea3729ca864474861f7b809a9f8c5ed13f39fc Mon Sep 17 00:00:00 2001 From: Anton Hansson Date: Thu, 16 Sep 2021 14:24:13 +0100 Subject: [PATCH] Add back the api_srcs argument This arg provides the ability to pass sources to the metalava invocations that are part of a java_sdk_library without affecting the runtime library. This is useful in various scenarios, e.g.: when javadoc in some source files affects the metalava behavior. For example, the javadoc-generation javadoc tags @paramDoc, @returnDoc etc. Passing these as a library does not work because class files do not contain javadoc. Bug: 186197911 Test: manually inspect module stub src for doc enhancements Merged-In: I2ce98f891283514e1896c52d9335550c1f5435fb Change-Id: I2ce98f891283514e1896c52d9335550c1f5435fb --- java/sdk_library.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/java/sdk_library.go b/java/sdk_library.go index ce8f179af..b00a0f2db 100644 --- a/java/sdk_library.go +++ b/java/sdk_library.go @@ -376,6 +376,9 @@ type ApiScopeProperties struct { } type sdkLibraryProperties struct { + // List of source files that are needed to compile the API, but are not part of runtime library. + Api_srcs []string `android:"arch_variant"` + // Visibility for impl library module. If not specified then defaults to the // visibility property. Impl_library_visibility []string @@ -1438,6 +1441,7 @@ func (module *SdkLibrary) createStubsSourcesAndApi(mctx android.DefaultableHookC props.Name = proptools.StringPtr(name) props.Visibility = childModuleVisibility(module.sdkLibraryProperties.Stubs_source_visibility) props.Srcs = append(props.Srcs, module.properties.Srcs...) + props.Srcs = append(props.Srcs, module.sdkLibraryProperties.Api_srcs...) props.Sdk_version = module.deviceProperties.Sdk_version props.System_modules = module.deviceProperties.System_modules props.Installable = proptools.BoolPtr(false)