Introduce system_modules property to java_api_library

System_modules property provides the jars passed as bootclasspath when
compiling the stubs in the java_api_library where its creating
java_sdk_library's sdk_version is none, as the jars will not be provided
from the full_surface_stub_libs but compiled by itself in the child
change.

The jar provided by the system_modules will also be passed to metalava
to resolve hierarchy coming from outer dependencies.

Test: m --build-from-text-stub
Bug: 288624417
Change-Id: I8f3b89efa24bceb070d7a37fae3c7334dd7f0868
This commit is contained in:
Jihoon Kang
2023-10-05 17:26:09 +00:00
parent b0f3ff43e5
commit 4ec24870e0
3 changed files with 67 additions and 8 deletions

View File

@@ -1837,6 +1837,7 @@ func (module *SdkLibrary) createApiLibrary(mctx android.DefaultableHookContext,
Libs []string
Static_libs []string
Full_api_surface_stub *string
System_modules *string
}{}
props.Name = proptools.StringPtr(module.apiLibraryModuleName(apiScope))
@@ -1875,6 +1876,8 @@ func (module *SdkLibrary) createApiLibrary(mctx android.DefaultableHookContext,
props.Full_api_surface_stub = proptools.StringPtr(apiScope.kind.DefaultJavaLibraryName() + "_full.from-text")
}
props.System_modules = module.deviceProperties.System_modules
mctx.CreateModule(ApiLibraryFactory, &props)
}