blob: 8a15758f87eec160502cbb66605e4cbb221abf04 [file] [log] [blame]
Jiyong Park7fb4b182019-12-20 14:35:43 +09001// Copyright (C) 2019 The Android Open Source Project
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15// How stubs are generated:
16//
17// raw source files --(metalava)--> stub source files --(javac)--> stub jar files
18//
Anton Hansson2feb3f12020-11-13 11:44:32 +000019// - The metalava conversion is done by droidstub modules
20// - The javac compilation is done by java_library modules
21//
Jiyong Park7fb4b182019-12-20 14:35:43 +090022// The metalava conversion is also responsible for creating API signature files
Anton Hansson2feb3f12020-11-13 11:44:32 +000023// and comparing them against the checked in API signature, and also checking compatibility
24// with the latest frozen API signature.
Jiyong Park7fb4b182019-12-20 14:35:43 +090025
Neha Pattan403eb572021-12-14 02:58:57 +000026// TODO(b/21090328): Remove filter after we are ready to.
27soong_config_module_type_import {
28 from: "frameworks/base/Android.bp",
29 module_types: [
30 "java_library_with_nonpublic_deps",
31 ],
32}
33
Jiyong Park7fb4b182019-12-20 14:35:43 +090034/////////////////////////////////////////////////////////////////////
Anton Hansson51861e72020-11-13 09:55:29 +000035// These modules provide source files for the stub libraries
Jiyong Park7fb4b182019-12-20 14:35:43 +090036/////////////////////////////////////////////////////////////////////
37
Anton Hansson76d3db42020-04-09 14:16:37 +010038droidstubs {
39 name: "api-stubs-docs-non-updatable",
Anton Hansson9dce8322022-01-24 14:14:33 +000040 defaults: [
41 "android-non-updatable-stubs-defaults",
42 "module-classpath-stubs-defaults",
43 ],
Anton Hansson76d3db42020-04-09 14:16:37 +010044 args: metalava_framework_docs_args,
45 check_api: {
46 current: {
Anton Hansson6cbaff22020-10-29 15:28:19 +000047 api_file: "core/api/current.txt",
48 removed_api_file: "core/api/removed.txt",
Anton Hansson76d3db42020-04-09 14:16:37 +010049 },
Anton Hansson37e102e2020-10-05 16:42:40 +010050 last_released: {
51 api_file: ":android-non-updatable.api.public.latest",
52 removed_api_file: ":android-non-updatable-removed.api.public.latest",
Anton Hansson7f3393d2021-04-12 11:56:53 +010053 baseline_file: ":android-non-updatable-incompatibilities.api.public.latest",
Anton Hansson37e102e2020-10-05 16:42:40 +010054 },
Anton Hansson76d3db42020-04-09 14:16:37 +010055 api_lint: {
56 enabled: true,
Anton Hansson4f90aa52021-06-04 22:23:59 +010057 new_since: ":android.api.public.latest",
Anton Hansson76d3db42020-04-09 14:16:37 +010058 },
59 },
Anton Hansson85785fe2021-01-20 20:23:34 +000060 dists: [
61 {
Anton Hanssondd8ef672022-01-04 08:53:19 +000062 targets: ["sdk"],
Anton Hansson85785fe2021-01-20 20:23:34 +000063 dir: "apistubs/android/public/api",
64 dest: "android-non-updatable.txt",
65 tag: ".api.txt",
66 },
67 {
Anton Hanssondd8ef672022-01-04 08:53:19 +000068 targets: ["sdk"],
Anton Hansson85785fe2021-01-20 20:23:34 +000069 dir: "apistubs/android/public/api",
70 dest: "android-non-updatable-removed.txt",
71 tag: ".removed-api.txt",
72 },
73 ],
Anton Hansson76d3db42020-04-09 14:16:37 +010074}
75
Anton Hansson240ee482021-04-14 12:52:00 +010076priv_apps = " --show-annotation android.annotation.SystemApi\\(" +
77 "client=android.annotation.SystemApi.Client.PRIVILEGED_APPS" +
Anton Hansson2feb3f12020-11-13 11:44:32 +000078 "\\)"
79
Anton Hansson240ee482021-04-14 12:52:00 +010080priv_apps_in_stubs = " --show-for-stub-purposes-annotation android.annotation.SystemApi\\(" +
81 "client=android.annotation.SystemApi.Client.PRIVILEGED_APPS" +
Anton Hansson2feb3f12020-11-13 11:44:32 +000082 "\\)"
83
84test = " --show-annotation android.annotation.TestApi"
85
Anton Hansson240ee482021-04-14 12:52:00 +010086module_libs = " --show-annotation android.annotation.SystemApi\\(" +
87 "client=android.annotation.SystemApi.Client.MODULE_LIBRARIES" +
Anton Hansson2feb3f12020-11-13 11:44:32 +000088 "\\)"
Anton Hansson81969c22020-02-03 20:45:56 +000089
Jiyong Park7fb4b182019-12-20 14:35:43 +090090droidstubs {
Anton Hansson76d3db42020-04-09 14:16:37 +010091 name: "system-api-stubs-docs-non-updatable",
Anton Hansson9dce8322022-01-24 14:14:33 +000092 defaults: [
93 "android-non-updatable-stubs-defaults",
94 "module-classpath-stubs-defaults",
95 ],
Anton Hansson76d3db42020-04-09 14:16:37 +010096 args: metalava_framework_docs_args + priv_apps,
97 check_api: {
98 current: {
Anton Hansson6cbaff22020-10-29 15:28:19 +000099 api_file: "core/api/system-current.txt",
100 removed_api_file: "core/api/system-removed.txt",
Anton Hansson76d3db42020-04-09 14:16:37 +0100101 },
Anton Hansson37e102e2020-10-05 16:42:40 +0100102 last_released: {
103 api_file: ":android-non-updatable.api.system.latest",
104 removed_api_file: ":android-non-updatable-removed.api.system.latest",
Anton Hansson240ee482021-04-14 12:52:00 +0100105 baseline_file: ":android-non-updatable-incompatibilities.api.system.latest",
Anton Hansson37e102e2020-10-05 16:42:40 +0100106 },
Anton Hansson76d3db42020-04-09 14:16:37 +0100107 api_lint: {
108 enabled: true,
Anton Hansson4f90aa52021-06-04 22:23:59 +0100109 new_since: ":android.api.system.latest",
Anton Hansson6cbaff22020-10-29 15:28:19 +0000110 baseline_file: "core/api/system-lint-baseline.txt",
Anton Hansson76d3db42020-04-09 14:16:37 +0100111 },
112 },
Anton Hansson85785fe2021-01-20 20:23:34 +0000113 dists: [
114 {
Anton Hanssondd8ef672022-01-04 08:53:19 +0000115 targets: ["sdk"],
Anton Hansson85785fe2021-01-20 20:23:34 +0000116 dir: "apistubs/android/system/api",
117 dest: "android-non-updatable.txt",
118 tag: ".api.txt",
119 },
120 {
Anton Hanssondd8ef672022-01-04 08:53:19 +0000121 targets: ["sdk"],
Anton Hansson85785fe2021-01-20 20:23:34 +0000122 dir: "apistubs/android/system/api",
123 dest: "android-non-updatable-removed.txt",
124 tag: ".removed-api.txt",
125 },
126 ],
Anton Hansson76d3db42020-04-09 14:16:37 +0100127}
128
129droidstubs {
Anton Hansson022aac52020-11-05 10:45:13 +0000130 name: "test-api-stubs-docs-non-updatable",
Anton Hansson9dce8322022-01-24 14:14:33 +0000131 defaults: [
132 "android-non-updatable-stubs-defaults",
133 "module-classpath-stubs-defaults",
134 ],
Anton Hansson2feb3f12020-11-13 11:44:32 +0000135 args: metalava_framework_docs_args + test + priv_apps_in_stubs,
Jiyong Park7fb4b182019-12-20 14:35:43 +0900136 check_api: {
137 current: {
Anton Hansson022aac52020-11-05 10:45:13 +0000138 api_file: "core/api/test-current.txt",
139 removed_api_file: "core/api/test-removed.txt",
Jiyong Park7fb4b182019-12-20 14:35:43 +0900140 },
141 api_lint: {
142 enabled: true,
Anton Hansson022aac52020-11-05 10:45:13 +0000143 baseline_file: "core/api/test-lint-baseline.txt",
Jiyong Park7fb4b182019-12-20 14:35:43 +0900144 },
145 },
Anton Hansson85785fe2021-01-20 20:23:34 +0000146 dists: [
147 {
Anton Hanssondd8ef672022-01-04 08:53:19 +0000148 targets: ["sdk"],
Anton Hansson85785fe2021-01-20 20:23:34 +0000149 dir: "apistubs/android/test/api",
150 dest: "android.txt",
151 tag: ".api.txt",
152 },
153 {
Anton Hanssondd8ef672022-01-04 08:53:19 +0000154 targets: ["sdk"],
Anton Hansson85785fe2021-01-20 20:23:34 +0000155 dir: "apistubs/android/test/api",
156 dest: "removed.txt",
157 tag: ".removed-api.txt",
158 },
159 {
Anton Hanssondd8ef672022-01-04 08:53:19 +0000160 targets: ["sdk"],
Anton Hansson85785fe2021-01-20 20:23:34 +0000161 dir: "apistubs/android/test/api",
162 dest: "android-non-updatable.txt",
163 tag: ".api.txt",
164 },
165 {
Anton Hanssondd8ef672022-01-04 08:53:19 +0000166 targets: ["sdk"],
Anton Hansson85785fe2021-01-20 20:23:34 +0000167 dir: "apistubs/android/test/api",
168 dest: "android-non-updatable-removed.txt",
169 tag: ".removed-api.txt",
170 },
171 ],
Jiyong Park7fb4b182019-12-20 14:35:43 +0900172}
173
Jiyong Parke3095162019-12-20 15:30:28 +0900174droidstubs {
Anton Hansson76d3db42020-04-09 14:16:37 +0100175 name: "module-lib-api-stubs-docs-non-updatable",
Anton Hansson9dce8322022-01-24 14:14:33 +0000176 defaults: [
177 "android-non-updatable-stubs-defaults",
178 "module-classpath-stubs-defaults",
179 ],
Anton Hansson2feb3f12020-11-13 11:44:32 +0000180 args: metalava_framework_docs_args + priv_apps_in_stubs + module_libs,
Anton Hansson76d3db42020-04-09 14:16:37 +0100181 check_api: {
182 current: {
Anton Hansson6cbaff22020-10-29 15:28:19 +0000183 api_file: "core/api/module-lib-current.txt",
184 removed_api_file: "core/api/module-lib-removed.txt",
Anton Hansson76d3db42020-04-09 14:16:37 +0100185 },
Anton Hanssonc3ef1f562020-10-07 14:55:36 +0100186 last_released: {
187 api_file: ":android-non-updatable.api.module-lib.latest",
188 removed_api_file: ":android-non-updatable-removed.api.module-lib.latest",
Junyu Lai2dbb1772022-01-12 17:38:02 +0000189 baseline_file: ":android-non-updatable-incompatibilities.api.module-lib.latest",
Anton Hanssonc3ef1f562020-10-07 14:55:36 +0100190 },
Anton Hansson76d3db42020-04-09 14:16:37 +0100191 api_lint: {
192 enabled: true,
Anton Hansson4f90aa52021-06-04 22:23:59 +0100193 new_since: ":android.api.module-lib.latest",
Anton Hansson1f449412021-06-04 22:30:52 +0100194 baseline_file: "core/api/module-lib-lint-baseline.txt",
Anton Hansson76d3db42020-04-09 14:16:37 +0100195 },
196 },
Anton Hansson85785fe2021-01-20 20:23:34 +0000197 dists: [
198 {
Anton Hanssondd8ef672022-01-04 08:53:19 +0000199 targets: ["sdk"],
Anton Hansson85785fe2021-01-20 20:23:34 +0000200 dir: "apistubs/android/module-lib/api",
201 dest: "android-non-updatable.txt",
202 tag: ".api.txt",
203 },
204 {
Anton Hanssondd8ef672022-01-04 08:53:19 +0000205 targets: ["sdk"],
Anton Hansson85785fe2021-01-20 20:23:34 +0000206 dir: "apistubs/android/module-lib/api",
207 dest: "android-non-updatable-removed.txt",
208 tag: ".removed-api.txt",
209 },
210 ],
Anton Hansson76d3db42020-04-09 14:16:37 +0100211}
Anton Hansson81969c22020-02-03 20:45:56 +0000212
Jiyong Parke3095162019-12-20 15:30:28 +0900213/////////////////////////////////////////////////////////////////////
Jiyong Park7fb4b182019-12-20 14:35:43 +0900214// android_*_stubs_current modules are the stubs libraries compiled
Anton Hansson2feb3f12020-11-13 11:44:32 +0000215// from stub sources
Jiyong Park7fb4b182019-12-20 14:35:43 +0900216/////////////////////////////////////////////////////////////////////
217
Anton Hansson33b9b852021-04-09 10:12:45 +0100218modules_public_stubs = [
219 "android.net.ipsec.ike.stubs",
220 "art.module.public.api.stubs",
221 "conscrypt.module.public.api.stubs",
222 "framework-appsearch.stubs",
223 "framework-connectivity.stubs",
paulhuf45fe962021-12-14 23:09:55 +0800224 "framework-connectivity-tiramisu.stubs",
Anton Hansson33b9b852021-04-09 10:12:45 +0100225 "framework-graphics.stubs",
226 "framework-media.stubs",
227 "framework-mediaprovider.stubs",
Chun Zhanga615ce52021-10-29 14:57:55 -0700228 "framework-nearby.stubs",
Anton Hansson33b9b852021-04-09 10:12:45 +0100229 "framework-permission.stubs",
230 "framework-permission-s.stubs",
231 "framework-scheduling.stubs",
232 "framework-sdkextensions.stubs",
233 "framework-statsd.stubs",
Gavin Corkerybc006442021-11-16 22:33:10 +0000234 "framework-supplementalprocess.stubs",
Anton Hansson33b9b852021-04-09 10:12:45 +0100235 "framework-tethering.stubs",
Roshan Pius6c580dd2021-07-29 21:31:23 -0700236 "framework-uwb.stubs",
Anton Hansson33b9b852021-04-09 10:12:45 +0100237 "framework-wifi.stubs",
238 "i18n.module.public.api.stubs",
239]
240
241modules_system_stubs = [
242 "android.net.ipsec.ike.stubs.system",
Victor Chang9f5cdff2021-05-12 10:47:16 +0100243 "art.module.public.api.stubs.system",
Anton Hansson33b9b852021-04-09 10:12:45 +0100244 "conscrypt.module.public.api.stubs", // Only has public stubs
245 "framework-appsearch.stubs.system",
246 "framework-connectivity.stubs.system",
paulhuf45fe962021-12-14 23:09:55 +0800247 "framework-connectivity-tiramisu.stubs.system",
Anton Hansson33b9b852021-04-09 10:12:45 +0100248 "framework-graphics.stubs.system",
249 "framework-media.stubs.system",
250 "framework-mediaprovider.stubs.system",
Chun Zhanga615ce52021-10-29 14:57:55 -0700251 "framework-nearby.stubs.system",
Anton Hansson33b9b852021-04-09 10:12:45 +0100252 "framework-permission.stubs.system",
253 "framework-permission-s.stubs.system",
254 "framework-scheduling.stubs.system",
255 "framework-sdkextensions.stubs.system",
256 "framework-statsd.stubs.system",
Gavin Corkerybc006442021-11-16 22:33:10 +0000257 "framework-supplementalprocess.stubs",
Anton Hansson33b9b852021-04-09 10:12:45 +0100258 "framework-tethering.stubs.system",
Roshan Pius6c580dd2021-07-29 21:31:23 -0700259 "framework-uwb.stubs.system",
Anton Hansson33b9b852021-04-09 10:12:45 +0100260 "framework-wifi.stubs.system",
261 "i18n.module.public.api.stubs", // Only has public stubs
262]
263
Jiyong Park7fb4b182019-12-20 14:35:43 +0900264java_defaults {
Anton Hanssona4748cd2021-04-09 10:16:19 +0100265 name: "android-non-updatable_defaults_stubs_current",
266 libs: ["stub-annotations"],
267 static_libs: ["framework-res-package-jar"], // Export package of framework-res
Anton Hanssonfbd32f32020-04-09 14:16:37 +0100268 sdk_version: "none",
Jiyong Park7fb4b182019-12-20 14:35:43 +0900269 system_modules: "none",
270 java_version: "1.8",
271 compile_dex: true,
Anton Hanssona4108912021-04-09 13:40:11 +0100272 dist: {
Anton Hanssondd8ef672022-01-04 08:53:19 +0000273 targets: ["sdk"],
Anton Hanssona4108912021-04-09 13:40:11 +0100274 tag: ".jar",
275 dest: "android-non-updatable.jar",
Anton Hansson240ee482021-04-14 12:52:00 +0100276 },
Anton Hansson86925682021-04-14 14:54:43 +0100277 defaults_visibility: ["//visibility:private"],
278 visibility: ["//visibility:private"],
Jiyong Park7fb4b182019-12-20 14:35:43 +0900279}
280
Neha Pattan403eb572021-12-14 02:58:57 +0000281java_library_with_nonpublic_deps {
Anton Hanssona4748cd2021-04-09 10:16:19 +0100282 name: "android-non-updatable.stubs",
283 defaults: ["android-non-updatable_defaults_stubs_current"],
284 srcs: [":api-stubs-docs-non-updatable"],
285 libs: modules_public_stubs,
Neha Pattan403eb572021-12-14 02:58:57 +0000286 soong_config_variables: {
287 include_nonpublic_framework_api: {
288 libs: [
289 "framework-supplementalapi.stubs",
290 ],
291 },
292 },
Anton Hanssona4108912021-04-09 13:40:11 +0100293 dist: {
294 dir: "apistubs/android/public",
295 },
Anton Hanssona4748cd2021-04-09 10:16:19 +0100296}
297
Neha Pattan403eb572021-12-14 02:58:57 +0000298java_library_with_nonpublic_deps {
Anton Hanssona4748cd2021-04-09 10:16:19 +0100299 name: "android-non-updatable.stubs.system",
300 defaults: ["android-non-updatable_defaults_stubs_current"],
Anton Hansson240ee482021-04-14 12:52:00 +0100301 srcs: [":system-api-stubs-docs-non-updatable"],
Anton Hanssona4748cd2021-04-09 10:16:19 +0100302 libs: modules_system_stubs,
Neha Pattan403eb572021-12-14 02:58:57 +0000303 soong_config_variables: {
304 include_nonpublic_framework_api: {
305 libs: [
306 "framework-supplementalapi.stubs",
307 ],
308 },
309 },
Anton Hanssona4108912021-04-09 13:40:11 +0100310 dist: {
311 dir: "apistubs/android/system",
312 },
Anton Hanssona4748cd2021-04-09 10:16:19 +0100313}
314
Anton Hanssonbbdd64b2021-04-26 18:47:39 +0100315java_library {
Anton Hanssona4748cd2021-04-09 10:16:19 +0100316 name: "android-non-updatable.stubs.module_lib",
317 defaults: ["android-non-updatable_defaults_stubs_current"],
318 srcs: [":module-lib-api-stubs-docs-non-updatable"],
319 libs: [
markchiencd813a32021-11-11 00:42:55 +0800320 "sdk_module-lib_current_framework-tethering",
Anton Hanssona4748cd2021-04-09 10:16:19 +0100321 "sdk_system_current_android",
322 // NOTE: The below can be removed once the prebuilt stub contains IKE.
323 "sdk_system_current_android.net.ipsec.ike",
324 ],
Anton Hanssona4108912021-04-09 13:40:11 +0100325 dist: {
326 dir: "apistubs/android/module-lib",
327 },
Anton Hanssona4748cd2021-04-09 10:16:19 +0100328}
329
Neha Pattan403eb572021-12-14 02:58:57 +0000330java_library_with_nonpublic_deps {
Anton Hanssona4748cd2021-04-09 10:16:19 +0100331 name: "android-non-updatable.stubs.test",
332 defaults: ["android-non-updatable_defaults_stubs_current"],
333 srcs: [":test-api-stubs-docs-non-updatable"],
334 libs: modules_system_stubs,
Neha Pattan403eb572021-12-14 02:58:57 +0000335 soong_config_variables: {
336 include_nonpublic_framework_api: {
337 libs: [
338 "framework-supplementalapi.stubs",
339 ],
340 },
341 },
Anton Hanssona4108912021-04-09 13:40:11 +0100342 dist: {
343 dir: "apistubs/android/test",
344 },
Anton Hanssona4748cd2021-04-09 10:16:19 +0100345}
346
347java_defaults {
Anton Hansson53cf0ba2020-08-18 12:35:31 +0000348 name: "android_stubs_dists_default",
349 dist: {
Anton Hanssondd8ef672022-01-04 08:53:19 +0000350 targets: ["sdk"],
Anton Hansson53cf0ba2020-08-18 12:35:31 +0000351 tag: ".jar",
352 dest: "android.jar",
353 },
Anton Hansson86925682021-04-14 14:54:43 +0100354 defaults_visibility: ["//frameworks/base/services"],
Anton Hansson53cf0ba2020-08-18 12:35:31 +0000355}
356
Neha Pattan403eb572021-12-14 02:58:57 +0000357java_library_with_nonpublic_deps {
Anton Hansson65aa6ea2020-11-03 19:35:56 +0000358 name: "android_stubs_current",
Anton Hansson33b9b852021-04-09 10:12:45 +0100359 static_libs: modules_public_stubs + [
Anton Hanssona4748cd2021-04-09 10:16:19 +0100360 "android-non-updatable.stubs",
Anton Hanssonbf63f942020-05-20 12:06:23 +0100361 "private-stub-annotations-jar",
Anton Hansson76d3db42020-04-09 14:16:37 +0100362 ],
Neha Pattan403eb572021-12-14 02:58:57 +0000363 soong_config_variables: {
364 include_nonpublic_framework_api: {
365 static_libs: [
366 "framework-supplementalapi.stubs",
367 ],
368 },
369 },
Anton Hansson65057af2021-04-14 18:52:08 +0100370 defaults: ["android.jar_defaults"],
Jiyong Park7fb4b182019-12-20 14:35:43 +0900371}
372
Neha Pattan403eb572021-12-14 02:58:57 +0000373java_library_with_nonpublic_deps {
Anton Hansson65aa6ea2020-11-03 19:35:56 +0000374 name: "android_system_stubs_current",
Anton Hansson33b9b852021-04-09 10:12:45 +0100375 static_libs: modules_system_stubs + [
Anton Hanssona4748cd2021-04-09 10:16:19 +0100376 "android-non-updatable.stubs.system",
Anton Hanssonbf63f942020-05-20 12:06:23 +0100377 "private-stub-annotations-jar",
Anton Hansson76d3db42020-04-09 14:16:37 +0100378 ],
Neha Pattan403eb572021-12-14 02:58:57 +0000379 soong_config_variables: {
380 include_nonpublic_framework_api: {
381 static_libs: [
382 "framework-supplementalapi.stubs",
383 ],
384 },
385 },
Anton Hanssonc3002e52020-11-18 18:23:55 +0000386 defaults: [
Anton Hansson65057af2021-04-14 18:52:08 +0100387 "android.jar_defaults",
Anton Hanssonc3002e52020-11-18 18:23:55 +0000388 "android_stubs_dists_default",
389 ],
390 dist: {
391 dir: "apistubs/android/system",
392 },
393 dists: [
394 {
395 // Legacy dist path
Anton Hanssondd8ef672022-01-04 08:53:19 +0000396 targets: ["sdk"],
Anton Hanssonc3002e52020-11-18 18:23:55 +0000397 tag: ".jar",
398 dest: "android_system.jar",
399 },
400 ],
Anton Hansson76d3db42020-04-09 14:16:37 +0100401}
402
Neha Pattan403eb572021-12-14 02:58:57 +0000403java_library_with_nonpublic_deps {
Jiyong Park7fb4b182019-12-20 14:35:43 +0900404 name: "android_test_stubs_current",
Anton Hansson33b9b852021-04-09 10:12:45 +0100405 // Modules do not have test APIs, but we want to include their SystemApis, like we include
406 // the SystemApi of framework-non-updatable-sources.
407 static_libs: modules_system_stubs + [
Anton Hanssona4748cd2021-04-09 10:16:19 +0100408 "android-non-updatable.stubs.test",
Anton Hansson7ce31c12020-10-15 18:38:49 +0100409 "private-stub-annotations-jar",
410 ],
Neha Pattan403eb572021-12-14 02:58:57 +0000411 soong_config_variables: {
412 include_nonpublic_framework_api: {
413 static_libs: [
414 "framework-supplementalapi.stubs",
415 ],
416 },
417 },
Anton Hansson53cf0ba2020-08-18 12:35:31 +0000418 defaults: [
Anton Hansson65057af2021-04-14 18:52:08 +0100419 "android.jar_defaults",
Anton Hansson53cf0ba2020-08-18 12:35:31 +0000420 "android_stubs_dists_default",
421 ],
422 dist: {
423 dir: "apistubs/android/test",
424 },
Jiyong Parke3095162019-12-20 15:30:28 +0900425}
426
Anton Hanssonbbdd64b2021-04-26 18:47:39 +0100427java_library {
Anton Hansson1b9cf092020-01-30 12:09:02 +0000428 name: "android_module_lib_stubs_current",
Anton Hansson53cf0ba2020-08-18 12:35:31 +0000429 defaults: [
Anton Hansson65057af2021-04-14 18:52:08 +0100430 "android.jar_defaults",
Anton Hansson53cf0ba2020-08-18 12:35:31 +0000431 "android_stubs_dists_default",
432 ],
Anton Hanssona4748cd2021-04-09 10:16:19 +0100433 static_libs: [
434 "android-non-updatable.stubs.module_lib",
Victor Chang6b107a92021-06-17 23:49:42 +0100435 "art.module.public.api.stubs.module_lib",
Giulio Fiscella68a04112021-11-30 16:32:44 +0000436 "i18n.module.public.api.stubs",
Anton Hanssonb7d532e2021-02-05 11:40:25 +0000437 ],
Anton Hansson53cf0ba2020-08-18 12:35:31 +0000438 dist: {
439 dir: "apistubs/android/module-lib",
440 },
Jiyong Park7fb4b182019-12-20 14:35:43 +0900441}
442
Andrei Oneafaa271a2021-03-17 13:32:51 +0000443java_library {
444 name: "android_system_server_stubs_current",
445 defaults: ["android_stubs_dists_default"],
446 srcs: [":services-non-updatable-stubs"],
447 installable: false,
448 static_libs: [
449 "android_module_lib_stubs_current",
450 ],
451 sdk_version: "none",
452 system_modules: "none",
453 java_version: "1.8",
454 dist: {
455 dir: "apistubs/android/system-server",
456 },
457}
458
Jiyong Park7fb4b182019-12-20 14:35:43 +0900459/////////////////////////////////////////////////////////////////////
460// hwbinder.stubs provides APIs required for building HIDL Java
461// libraries.
462/////////////////////////////////////////////////////////////////////
463
464droidstubs {
465 name: "hwbinder-stubs-docs",
466 srcs: [
467 "core/java/android/os/HidlSupport.java",
Jiyong Park7fb4b182019-12-20 14:35:43 +0900468 "core/java/android/os/HidlMemory.java",
469 "core/java/android/os/HwBinder.java",
470 "core/java/android/os/HwBlob.java",
471 "core/java/android/os/HwParcel.java",
472 "core/java/android/os/IHwBinder.java",
473 "core/java/android/os/IHwInterface.java",
474 "core/java/android/os/DeadObjectException.java",
475 "core/java/android/os/DeadSystemException.java",
476 "core/java/android/os/NativeHandle.java",
477 "core/java/android/os/RemoteException.java",
478 "core/java/android/util/AndroidException.java",
479 ],
Colin Cross037d7fb2021-03-25 17:01:55 -0700480 libs: ["framework-annotations-lib"],
Jiyong Park7fb4b182019-12-20 14:35:43 +0900481 installable: false,
482 sdk_version: "core_platform",
483 annotations_enabled: true,
Anton Hansson48ee95e2020-05-02 17:49:26 +0100484 previous_api: ":android.api.public.latest",
Jiyong Park7fb4b182019-12-20 14:35:43 +0900485 merge_annotations_dirs: [
486 "metalava-manual",
487 ],
Anton Hansson81969c22020-02-03 20:45:56 +0000488 args: priv_apps,
Anton Hansson86925682021-04-14 14:54:43 +0100489 visibility: ["//visibility:private"],
Jiyong Park7fb4b182019-12-20 14:35:43 +0900490}
491
Anton Hanssonbbdd64b2021-04-26 18:47:39 +0100492java_library {
Jiyong Park7fb4b182019-12-20 14:35:43 +0900493 name: "hwbinder.stubs",
494 sdk_version: "core_current",
Colin Cross037d7fb2021-03-25 17:01:55 -0700495 libs: ["framework-annotations-lib"],
Jiyong Park7fb4b182019-12-20 14:35:43 +0900496 srcs: [
497 ":hwbinder-stubs-docs",
498 ],
Anton Hansson86925682021-04-14 14:54:43 +0100499 visibility: ["//visibility:public"],
Jiyong Park7fb4b182019-12-20 14:35:43 +0900500}