Files
frameworks_base/api/Android.bp
Andrei Onea faa271aa5e Replace source based system server stubs
Use the stubs obtained by merging the system server stubs from
non updatable code in the system server, and the system server apis
exposed by mainline modules in SYSTEMSERVERCLASSPATH.

Test: builds
Bug: 177640454
Change-Id: I3687aeb0a4905418d07c819f1091266aaf708558
2021-04-23 16:23:16 +01:00

371 lines
13 KiB
Plaintext

// Copyright (C) 2020 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package {
default_visibility: ["//visibility:private"],
// See: http://go/android-license-faq
// A large-scale-change added 'default_applicable_licenses' to import
// all of the 'license_kinds' from "frameworks_base_license"
// to get the below license kinds:
// SPDX-license-identifier-Apache-2.0
// SPDX-license-identifier-MIT
// SPDX-license-identifier-Unicode-DFS
default_applicable_licenses: ["frameworks_base_license"],
}
genrule {
name: "current-api-xml",
tools: ["metalava"],
srcs: [":frameworks-base-api-current.txt"],
out: ["current.api"],
cmd: "$(location metalava) --no-banner -convert2xmlnostrip $(in) $(out)",
visibility: ["//visibility:public"],
}
genrule {
name: "frameworks-base-api-current.txt",
srcs: [
":android.net.ipsec.ike{.public.api.txt}",
":art.module.public.api{.public.api.txt}",
":conscrypt.module.public.api{.public.api.txt}",
":framework-connectivity{.public.api.txt}",
":framework-media{.public.api.txt}",
":framework-mediaprovider{.public.api.txt}",
":framework-permission{.public.api.txt}",
":framework-sdkextensions{.public.api.txt}",
":framework-statsd{.public.api.txt}",
":framework-tethering{.public.api.txt}",
":framework-wifi{.public.api.txt}",
":i18n.module.public.api{.public.api.txt}",
":non-updatable-current.txt",
],
out: ["current.txt"],
tools: ["metalava"],
cmd: "$(location metalava) --no-banner --format=v2 $(in) --api $(out)",
dists: [
{
targets: ["droidcore"],
dir: "api",
dest: "current.txt",
},
{
targets: ["sdk", "win_sdk"],
dir: "apistubs/android/public/api",
dest: "android.txt",
},
],
visibility: ["//visibility:public"],
}
genrule {
name: "frameworks-base-api-current-compat",
srcs: [
":android.api.public.latest",
":android-incompatibilities.api.public.latest",
":frameworks-base-api-current.txt",
],
out: ["stdout.txt"],
tools: ["metalava"],
cmd: "$(location metalava) --no-banner --format=v2 " +
"--check-compatibility:api:released $(location :android.api.public.latest) " +
"--baseline:compatibility:released $(location :android-incompatibilities.api.public.latest) " +
"$(location :frameworks-base-api-current.txt) " +
"> $(genDir)/stdout.txt",
}
genrule {
name: "frameworks-base-api-current.srcjar",
srcs: [
":android.net.ipsec.ike{.public.stubs.source}",
":api-stubs-docs-non-updatable",
":art.module.public.api{.public.stubs.source}",
":conscrypt.module.public.api{.public.stubs.source}",
":framework-connectivity{.public.stubs.source}",
":framework-media{.public.stubs.source}",
":framework-mediaprovider{.public.stubs.source}",
":framework-permission{.public.stubs.source}",
":framework-sdkextensions{.public.stubs.source}",
":framework-statsd{.public.stubs.source}",
":framework-tethering{.public.stubs.source}",
":framework-wifi{.public.stubs.source}",
":i18n.module.public.api{.public.stubs.source}",
],
out: ["current.srcjar"],
tools: ["merge_zips"],
cmd: "$(location merge_zips) $(out) $(in)",
visibility: ["//visibility:private"], // Used by make module in //development, mind.
}
genrule {
name: "frameworks-base-api-removed.txt",
srcs: [
":android.net.ipsec.ike{.public.removed-api.txt}",
":art.module.public.api{.public.removed-api.txt}",
":conscrypt.module.public.api{.public.removed-api.txt}",
":framework-connectivity{.public.removed-api.txt}",
":framework-media{.public.removed-api.txt}",
":framework-mediaprovider{.public.removed-api.txt}",
":framework-permission{.public.removed-api.txt}",
":framework-sdkextensions{.public.removed-api.txt}",
":framework-statsd{.public.removed-api.txt}",
":framework-tethering{.public.removed-api.txt}",
":framework-wifi{.public.removed-api.txt}",
":i18n.module.public.api{.public.removed-api.txt}",
":non-updatable-removed.txt",
],
out: ["removed.txt"],
tools: ["metalava"],
cmd: "$(location metalava) --no-banner --format=v2 $(in) --api $(out)",
dists: [
{
targets: ["droidcore"],
dir: "api",
dest: "removed.txt",
},
{
targets: ["sdk", "win_sdk"],
dir: "apistubs/android/public/api",
dest: "removed.txt",
},
],
}
genrule {
name: "frameworks-base-api-system-current.txt",
srcs: [
":android.net.ipsec.ike{.system.api.txt}",
":framework-connectivity{.system.api.txt}",
":framework-media{.system.api.txt}",
":framework-mediaprovider{.system.api.txt}",
":framework-permission{.system.api.txt}",
":framework-sdkextensions{.system.api.txt}",
":framework-statsd{.system.api.txt}",
":framework-tethering{.system.api.txt}",
":framework-wifi{.system.api.txt}",
":non-updatable-system-current.txt",
],
out: ["system-current.txt"],
tools: ["metalava"],
cmd: "$(location metalava) --no-banner --format=v2 $(in) --api $(out)",
dists: [
{
targets: ["droidcore"],
dir: "api",
dest: "system-current.txt",
},
{
targets: ["sdk", "win_sdk"],
dir: "apistubs/android/system/api",
dest: "android.txt",
},
],
visibility: ["//visibility:public"],
}
genrule {
name: "frameworks-base-api-system-current-compat",
srcs: [
":android.api.system.latest",
":android-incompatibilities.api.system.latest",
":frameworks-base-api-current.txt",
":frameworks-base-api-system-current.txt",
],
out: ["stdout.txt"],
tools: ["metalava"],
cmd: "$(location metalava) --no-banner --format=v2 " +
"--check-compatibility:api:released $(location :android.api.system.latest) " +
"--check-compatibility:base $(location :frameworks-base-api-current.txt) " +
"--baseline:compatibility:released $(location :android-incompatibilities.api.system.latest) " +
"$(location :frameworks-base-api-system-current.txt) " +
"> $(genDir)/stdout.txt",
}
genrule {
name: "frameworks-base-api-system-removed.txt",
srcs: [
":android.net.ipsec.ike{.system.removed-api.txt}",
":framework-connectivity{.system.removed-api.txt}",
":framework-media{.system.removed-api.txt}",
":framework-mediaprovider{.system.removed-api.txt}",
":framework-permission{.system.removed-api.txt}",
":framework-sdkextensions{.system.removed-api.txt}",
":framework-statsd{.system.removed-api.txt}",
":framework-tethering{.system.removed-api.txt}",
":framework-wifi{.system.removed-api.txt}",
":non-updatable-system-removed.txt",
],
out: ["system-removed.txt"],
tools: ["metalava"],
cmd: "$(location metalava) --no-banner --format=v2 $(in) --api $(out)",
dists: [
{
targets: ["droidcore"],
dir: "api",
dest: "system-removed.txt",
},
{
targets: ["sdk", "win_sdk"],
dir: "apistubs/android/system/api",
dest: "removed.txt",
},
],
visibility: ["//visibility:public"],
}
genrule {
name: "frameworks-base-api-module-lib-current.txt",
srcs: [
":android.net.ipsec.ike{.module-lib.api.txt}",
":framework-connectivity{.module-lib.api.txt}",
":framework-media{.module-lib.api.txt}",
":framework-mediaprovider{.module-lib.api.txt}",
":framework-permission{.module-lib.api.txt}",
":framework-sdkextensions{.module-lib.api.txt}",
":framework-statsd{.module-lib.api.txt}",
":framework-tethering{.module-lib.api.txt}",
":framework-wifi{.module-lib.api.txt}",
":non-updatable-module-lib-current.txt",
],
out: ["module-lib-current.txt"],
tools: ["metalava"],
cmd: "$(location metalava) --no-banner --format=v2 $(in) --api $(out)",
dists: [
{
targets: ["droidcore"],
dir: "api",
dest: "module-lib-current.txt",
},
{
targets: ["sdk", "win_sdk"],
dir: "apistubs/android/module-lib/api",
dest: "android.txt",
},
],
}
genrule {
name: "frameworks-base-api-module-lib-current-compat",
srcs: [
":android.api.module-lib.latest",
":android-incompatibilities.api.module-lib.latest",
":frameworks-base-api-current.txt",
":frameworks-base-api-module-lib-current.txt",
],
out: ["stdout.txt"],
tools: ["metalava"],
cmd: "$(location metalava) --no-banner --format=v2 " +
"--check-compatibility:api:released $(location :android.api.module-lib.latest) " +
// Note: having "public" be the base of module-lib is not perfect -- it should
// ideally be a merged public+system), but this will help when migrating from
// MODULE_LIBS -> public.
"--check-compatibility:base $(location :frameworks-base-api-current.txt) " +
"--baseline:compatibility:released $(location :android-incompatibilities.api.module-lib.latest) " +
"$(location :frameworks-base-api-module-lib-current.txt) " +
"> $(genDir)/stdout.txt",
}
genrule {
name: "frameworks-base-api-module-lib-removed.txt",
srcs: [
":android.net.ipsec.ike{.module-lib.removed-api.txt}",
":framework-connectivity{.module-lib.removed-api.txt}",
":framework-media{.module-lib.removed-api.txt}",
":framework-mediaprovider{.module-lib.removed-api.txt}",
":framework-permission{.module-lib.removed-api.txt}",
":framework-sdkextensions{.module-lib.removed-api.txt}",
":framework-statsd{.module-lib.removed-api.txt}",
":framework-tethering{.module-lib.removed-api.txt}",
":framework-wifi{.module-lib.removed-api.txt}",
":non-updatable-module-lib-removed.txt",
],
out: ["module-lib-removed.txt"],
tools: ["metalava"],
cmd: "$(location metalava) --no-banner --format=v2 $(in) --api $(out)",
dists: [
{
targets: ["droidcore"],
dir: "api",
dest: "module-lib-removed.txt",
},
{
targets: ["sdk", "win_sdk"],
dir: "apistubs/android/module-lib/api",
dest: "removed.txt",
},
],
}
genrule {
name: "combined-removed-dex",
visibility: [
"//frameworks/base/boot",
],
srcs: [
":frameworks-base-api-removed.txt",
":frameworks-base-api-system-removed.txt",
":android.car-stubs-docs{.removed-api.txt}",
":android.car-system-stubs-docs{.removed-api.txt}",
],
tool_files: ["gen_combined_removed_dex.sh"],
tools: ["metalava"],
out: ["combined-removed-dex.txt"],
cmd: "$(location gen_combined_removed_dex.sh) $(location metalava) $(genDir) $(in) > $(out)",
}
genrule {
name: "services-system-server-current.txt",
srcs: [
":service-permission{.system-server.api.txt}",
":non-updatable-system-server-current.txt",
],
out: ["system-server-current.txt"],
tools: ["metalava"],
cmd: "$(location metalava) --no-banner --format=v2 $(in) --api $(out)",
dists: [
{
targets: ["droidcore"],
dir: "api",
dest: "system-server-current.txt",
},
{
targets: ["sdk", "win_sdk"],
dir: "apistubs/android/system-server/api",
dest: "android.txt",
},
],
}
genrule {
name: "services-system-server-removed.txt",
srcs: [
":service-permission{.system-server.removed-api.txt}",
":non-updatable-system-server-removed.txt",
],
out: ["system-server-removed.txt"],
tools: ["metalava"],
cmd: "$(location metalava) --no-banner --format=v2 $(in) --api $(out)",
dists: [
{
targets: ["droidcore"],
dir: "api",
dest: "system-server-removed.txt",
},
{
targets: ["sdk", "win_sdk"],
dir: "apistubs/android/system-server/api",
dest: "removed.txt",
},
],
}