Merge "Split android-non-updatable-stubs-defaults in two" am: 70ab0685cf

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1958860

Change-Id: I89ea760ec38328347a7946d17f352438ac3341c9
This commit is contained in:
Anton Hansson
2022-01-24 17:30:28 +00:00
committed by Automerger Merge Worker
3 changed files with 49 additions and 18 deletions

View File

@@ -503,7 +503,9 @@ filegroup {
visibility: ["//visibility:private"],
}
// These defaults are used for both the jar stubs and the doc stubs.
// Defaults for all stubs that include the non-updatable framework. These defaults do not include
// module symbols, so will not compile correctly on their own. Users must add module APIs to the
// classpath (or sources) somehow.
stubs_defaults {
name: "android-non-updatable-stubs-defaults",
srcs: [":android-non-updatable-stub-sources"],
@@ -511,17 +513,14 @@ stubs_defaults {
system_modules: "none",
java_version: "1.8",
arg_files: ["core/res/AndroidManifest.xml"],
// TODO(b/147699819): remove below aidl includes.
aidl: {
local_include_dirs: [
"apex/media/aidl/stable",
"media/aidl",
"telephony/java",
],
include_dirs: [
"frameworks/av/aidl",
"frameworks/native/libs/permission/aidl",
"packages/modules/Connectivity/framework/aidl-export",
],
},
// These are libs from framework-internal-utils that are required (i.e. being referenced)
@@ -543,15 +542,6 @@ stubs_defaults {
"android.hardware.usb.gadget-V1.0-java",
"android.hardware.vibrator-V1.3-java",
"framework-protos",
"art.module.public.api",
"sdk_module-lib_current_framework-tethering",
// 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",
],
filter_packages: packages_to_document,
high_mem: true, // Lots of sources => high memory use, see b/170701554
@@ -563,6 +553,32 @@ stubs_defaults {
visibility: ["//frameworks/base/api"],
}
// Defaults with module APIs in the classpath (mostly from prebuilts).
// Suitable for compiling android-non-updatable.
stubs_defaults {
name: "module-classpath-stubs-defaults",
aidl: {
local_include_dirs: [
"apex/media/aidl/stable",
],
include_dirs: [
"packages/modules/Connectivity/framework/aidl-export",
],
},
libs: [
"art.module.public.api",
"sdk_module-lib_current_framework-tethering",
// 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",
],
defaults_visibility: ["//visibility:private"],
}
build = [
"StubLibraries.bp",
"ApiDocs.bp",

View File

@@ -57,7 +57,10 @@ framework_docs_only_libs = [
stubs_defaults {
name: "android-non-updatable-doc-stubs-defaults",
defaults: ["android-non-updatable-stubs-defaults"],
defaults: [
"android-non-updatable-stubs-defaults",
"module-classpath-stubs-defaults",
],
srcs: [
// No longer part of the stubs, but are included in the docs.
":android-test-base-sources",

View File

@@ -29,7 +29,10 @@
droidstubs {
name: "api-stubs-docs-non-updatable",
defaults: ["android-non-updatable-stubs-defaults"],
defaults: [
"android-non-updatable-stubs-defaults",
"module-classpath-stubs-defaults",
],
args: metalava_framework_docs_args,
check_api: {
current: {
@@ -78,7 +81,10 @@ module_libs = " --show-annotation android.annotation.SystemApi\\(" +
droidstubs {
name: "system-api-stubs-docs-non-updatable",
defaults: ["android-non-updatable-stubs-defaults"],
defaults: [
"android-non-updatable-stubs-defaults",
"module-classpath-stubs-defaults",
],
args: metalava_framework_docs_args + priv_apps,
check_api: {
current: {
@@ -114,7 +120,10 @@ droidstubs {
droidstubs {
name: "test-api-stubs-docs-non-updatable",
defaults: ["android-non-updatable-stubs-defaults"],
defaults: [
"android-non-updatable-stubs-defaults",
"module-classpath-stubs-defaults",
],
args: metalava_framework_docs_args + test + priv_apps_in_stubs,
check_api: {
current: {
@@ -156,7 +165,10 @@ droidstubs {
droidstubs {
name: "module-lib-api-stubs-docs-non-updatable",
defaults: ["android-non-updatable-stubs-defaults"],
defaults: [
"android-non-updatable-stubs-defaults",
"module-classpath-stubs-defaults",
],
args: metalava_framework_docs_args + priv_apps_in_stubs + module_libs,
check_api: {
current: {