Use java_sdk_library in bootclasspath_fragment contents as stubs
A java_sdk_library specified in the bootclasspath_fragment contents
must be providing APIs for the bootclasspath_fragment and so must be
treated as if they were specified in the stub_libs. This avoids having
to specify them in both contents and stub_libs.
Bug: 179354495
Test: m nothing
Change-Id: I535065ee1a79b439e2676f35e06a75d4626adcaf
diff --git a/java/bootclasspath_fragment.go b/java/bootclasspath_fragment.go
index ec61e70..6d7ab4a 100644
--- a/java/bootclasspath_fragment.go
+++ b/java/bootclasspath_fragment.go
@@ -91,6 +91,9 @@
type BootclasspathFragmentCoverageAffectedProperties struct {
// The contents of this bootclasspath_fragment, could be either java_library, or java_sdk_library.
//
+ // A java_sdk_library specified here will also be treated as if it was specified on the stub_libs
+ // property.
+ //
// The order of this list matters as it is the order that is used in the bootclasspath.
Contents []string
@@ -453,7 +456,7 @@
func (b *BootclasspathFragmentModule) generateHiddenAPIBuildActions(ctx android.ModuleContext, contents []android.Module) {
// Convert the kind specific lists of modules into kind specific lists of jars.
- stubJarsByKind := hiddenAPIGatherStubLibDexJarPaths(ctx)
+ stubJarsByKind := hiddenAPIGatherStubLibDexJarPaths(ctx, contents)
// Store the information for use by other modules.
bootclasspathApiInfo := bootclasspathApiInfo{stubJarsByKind: stubJarsByKind}