diff --git a/api/Android.bp b/api/Android.bp index d2e0849ed9465ce8958fb62c81bdfe14fa350d64..15b10a6a596662b412b3a18d9f6736a646ea36e8 100644 --- a/api/Android.bp +++ b/api/Android.bp @@ -350,6 +350,16 @@ stubs_defaults { visibility: ["//frameworks/base/api"], } +// We resolve dependencies on APIs in modules by depending on a prebuilt of the whole +// platform (sdk_system_current_android). That prebuilt does not include module-lib APIs, +// so use the prebuilt module-lib stubs for modules that export module-lib stubs that the +// non-updatable part depends on. +non_updatable_api_deps_on_modules = [ + "sdk_module-lib_current_framework-tethering", + "sdk_module-lib_current_framework-connectivity-t", + "sdk_system_current_android", +] + // Defaults with module APIs in the classpath (mostly from prebuilts). // Suitable for compiling android-non-updatable. stubs_defaults { @@ -361,19 +371,7 @@ stubs_defaults { "packages/modules/Media/apex/aidl/stable", ], }, - libs: [ - "art.module.public.api", - "sdk_module-lib_current_framework-tethering", - "sdk_module-lib_current_framework-connectivity-t", - "sdk_public_current_framework-bluetooth", - // There are a few classes from modules used by the core that - // need to be resolved by metalava. We use a prebuilt stub of the - // full sdk to ensure we can resolve them. If a new class gets added, - // the prebuilts/sdk/current needs to be updated. - "sdk_system_current_android", - // NOTE: The below can be removed once the prebuilt stub contains IKE. - "sdk_system_current_android.net.ipsec.ike", - ], + libs: non_updatable_api_deps_on_modules, } // Defaults for the java_sdk_libraries of unbundled jars from framework. diff --git a/api/StubLibraries.bp b/api/StubLibraries.bp index 5688b968db870b5d3fbacf29d6d0fc9a74628789..f6f69291ce0ec69d99489127eb6765ef4d936e4c 100644 --- a/api/StubLibraries.bp +++ b/api/StubLibraries.bp @@ -351,17 +351,7 @@ java_library { "android-non-updatable_from_source_defaults", ], srcs: [":module-lib-api-stubs-docs-non-updatable"], - libs: [ - // We cannot depend on all-modules-module-lib-stubs, because the module-lib stubs - // depend on this stub. We resolve dependencies on APIs in modules by depending - // on a prebuilt of the whole platform (sdk_system_current_android). - // That prebuilt does not include module-lib APIs, so use the prebuilt module-lib - // stubs for modules that export module-lib stubs that the non-updatable part - // depends on. - "sdk_module-lib_current_framework-tethering", - "sdk_module-lib_current_framework-connectivity-t", - "sdk_system_current_android", - ], + libs: non_updatable_api_deps_on_modules, dist: { dir: "apistubs/android/module-lib", },