blob: 1e16f9431f82b57fc7a5bc0eafda45a37373a7f9 [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/////////////////////////////////////////////////////////////////////
35// Common metalava configs
36/////////////////////////////////////////////////////////////////////
37
Jiyong Park7fb4b182019-12-20 14:35:43 +090038stubs_defaults {
Anton Hansson2feb3f12020-11-13 11:44:32 +000039 name: "metalava-non-updatable-api-stubs-default",
Anton Hansson867f94c2021-05-05 10:32:31 +010040 defaults: ["android-non-updatable-stubs-defaults"],
Aurimas Liutikas94bac9c2020-03-12 17:06:12 -070041 api_levels_annotations_enabled: false,
Anton Hansson86925682021-04-14 14:54:43 +010042 defaults_visibility: ["//visibility:private"],
Jiyong Park7fb4b182019-12-20 14:35:43 +090043}
44
45/////////////////////////////////////////////////////////////////////
Anton Hansson51861e72020-11-13 09:55:29 +000046// These modules provide source files for the stub libraries
Jiyong Park7fb4b182019-12-20 14:35:43 +090047/////////////////////////////////////////////////////////////////////
48
Anton Hansson76d3db42020-04-09 14:16:37 +010049droidstubs {
50 name: "api-stubs-docs-non-updatable",
51 defaults: ["metalava-non-updatable-api-stubs-default"],
Anton Hansson76d3db42020-04-09 14:16:37 +010052 args: metalava_framework_docs_args,
53 check_api: {
54 current: {
Anton Hansson6cbaff22020-10-29 15:28:19 +000055 api_file: "core/api/current.txt",
56 removed_api_file: "core/api/removed.txt",
Anton Hansson76d3db42020-04-09 14:16:37 +010057 },
Anton Hansson37e102e2020-10-05 16:42:40 +010058 last_released: {
59 api_file: ":android-non-updatable.api.public.latest",
60 removed_api_file: ":android-non-updatable-removed.api.public.latest",
Anton Hansson7f3393d2021-04-12 11:56:53 +010061 baseline_file: ":android-non-updatable-incompatibilities.api.public.latest",
Anton Hansson37e102e2020-10-05 16:42:40 +010062 },
Anton Hansson76d3db42020-04-09 14:16:37 +010063 api_lint: {
64 enabled: true,
Anton Hansson4f90aa52021-06-04 22:23:59 +010065 new_since: ":android.api.public.latest",
Anton Hansson76d3db42020-04-09 14:16:37 +010066 },
67 },
Anton Hansson85785fe2021-01-20 20:23:34 +000068 dists: [
69 {
Anton Hanssondd8ef672022-01-04 08:53:19 +000070 targets: ["sdk"],
Anton Hansson85785fe2021-01-20 20:23:34 +000071 dir: "apistubs/android/public/api",
72 dest: "android-non-updatable.txt",
73 tag: ".api.txt",
74 },
75 {
Anton Hanssondd8ef672022-01-04 08:53:19 +000076 targets: ["sdk"],
Anton Hansson85785fe2021-01-20 20:23:34 +000077 dir: "apistubs/android/public/api",
78 dest: "android-non-updatable-removed.txt",
79 tag: ".removed-api.txt",
80 },
81 ],
Anton Hansson76d3db42020-04-09 14:16:37 +010082}
83
Anton Hansson240ee482021-04-14 12:52:00 +010084priv_apps = " --show-annotation android.annotation.SystemApi\\(" +
85 "client=android.annotation.SystemApi.Client.PRIVILEGED_APPS" +
Anton Hansson2feb3f12020-11-13 11:44:32 +000086 "\\)"
87
Anton Hansson240ee482021-04-14 12:52:00 +010088priv_apps_in_stubs = " --show-for-stub-purposes-annotation android.annotation.SystemApi\\(" +
89 "client=android.annotation.SystemApi.Client.PRIVILEGED_APPS" +
Anton Hansson2feb3f12020-11-13 11:44:32 +000090 "\\)"
91
92test = " --show-annotation android.annotation.TestApi"
93
Anton Hansson240ee482021-04-14 12:52:00 +010094module_libs = " --show-annotation android.annotation.SystemApi\\(" +
95 "client=android.annotation.SystemApi.Client.MODULE_LIBRARIES" +
Anton Hansson2feb3f12020-11-13 11:44:32 +000096 "\\)"
Anton Hansson81969c22020-02-03 20:45:56 +000097
Jiyong Park7fb4b182019-12-20 14:35:43 +090098droidstubs {
Anton Hansson76d3db42020-04-09 14:16:37 +010099 name: "system-api-stubs-docs-non-updatable",
100 defaults: ["metalava-non-updatable-api-stubs-default"],
Anton Hansson76d3db42020-04-09 14:16:37 +0100101 args: metalava_framework_docs_args + priv_apps,
102 check_api: {
103 current: {
Anton Hansson6cbaff22020-10-29 15:28:19 +0000104 api_file: "core/api/system-current.txt",
105 removed_api_file: "core/api/system-removed.txt",
Anton Hansson76d3db42020-04-09 14:16:37 +0100106 },
Anton Hansson37e102e2020-10-05 16:42:40 +0100107 last_released: {
108 api_file: ":android-non-updatable.api.system.latest",
109 removed_api_file: ":android-non-updatable-removed.api.system.latest",
Anton Hansson240ee482021-04-14 12:52:00 +0100110 baseline_file: ":android-non-updatable-incompatibilities.api.system.latest",
Anton Hansson37e102e2020-10-05 16:42:40 +0100111 },
Anton Hansson76d3db42020-04-09 14:16:37 +0100112 api_lint: {
113 enabled: true,
Anton Hansson4f90aa52021-06-04 22:23:59 +0100114 new_since: ":android.api.system.latest",
Anton Hansson6cbaff22020-10-29 15:28:19 +0000115 baseline_file: "core/api/system-lint-baseline.txt",
Anton Hansson76d3db42020-04-09 14:16:37 +0100116 },
117 },
Anton Hansson85785fe2021-01-20 20:23:34 +0000118 dists: [
119 {
Anton Hanssondd8ef672022-01-04 08:53:19 +0000120 targets: ["sdk"],
Anton Hansson85785fe2021-01-20 20:23:34 +0000121 dir: "apistubs/android/system/api",
122 dest: "android-non-updatable.txt",
123 tag: ".api.txt",
124 },
125 {
Anton Hanssondd8ef672022-01-04 08:53:19 +0000126 targets: ["sdk"],
Anton Hansson85785fe2021-01-20 20:23:34 +0000127 dir: "apistubs/android/system/api",
128 dest: "android-non-updatable-removed.txt",
129 tag: ".removed-api.txt",
130 },
131 ],
Anton Hansson76d3db42020-04-09 14:16:37 +0100132}
133
134droidstubs {
Anton Hansson022aac52020-11-05 10:45:13 +0000135 name: "test-api-stubs-docs-non-updatable",
Anton Hansson7ce31c12020-10-15 18:38:49 +0100136 defaults: ["metalava-non-updatable-api-stubs-default"],
Anton Hansson2feb3f12020-11-13 11:44:32 +0000137 args: metalava_framework_docs_args + test + priv_apps_in_stubs,
Jiyong Park7fb4b182019-12-20 14:35:43 +0900138 check_api: {
139 current: {
Anton Hansson022aac52020-11-05 10:45:13 +0000140 api_file: "core/api/test-current.txt",
141 removed_api_file: "core/api/test-removed.txt",
Jiyong Park7fb4b182019-12-20 14:35:43 +0900142 },
143 api_lint: {
144 enabled: true,
Anton Hansson022aac52020-11-05 10:45:13 +0000145 baseline_file: "core/api/test-lint-baseline.txt",
Jiyong Park7fb4b182019-12-20 14:35:43 +0900146 },
147 },
Anton Hansson85785fe2021-01-20 20:23:34 +0000148 dists: [
149 {
Anton Hanssondd8ef672022-01-04 08:53:19 +0000150 targets: ["sdk"],
Anton Hansson85785fe2021-01-20 20:23:34 +0000151 dir: "apistubs/android/test/api",
152 dest: "android.txt",
153 tag: ".api.txt",
154 },
155 {
Anton Hanssondd8ef672022-01-04 08:53:19 +0000156 targets: ["sdk"],
Anton Hansson85785fe2021-01-20 20:23:34 +0000157 dir: "apistubs/android/test/api",
158 dest: "removed.txt",
159 tag: ".removed-api.txt",
160 },
161 {
Anton Hanssondd8ef672022-01-04 08:53:19 +0000162 targets: ["sdk"],
Anton Hansson85785fe2021-01-20 20:23:34 +0000163 dir: "apistubs/android/test/api",
164 dest: "android-non-updatable.txt",
165 tag: ".api.txt",
166 },
167 {
Anton Hanssondd8ef672022-01-04 08:53:19 +0000168 targets: ["sdk"],
Anton Hansson85785fe2021-01-20 20:23:34 +0000169 dir: "apistubs/android/test/api",
170 dest: "android-non-updatable-removed.txt",
171 tag: ".removed-api.txt",
172 },
173 ],
Jiyong Park7fb4b182019-12-20 14:35:43 +0900174}
175
Jiyong Parke3095162019-12-20 15:30:28 +0900176droidstubs {
Anton Hansson76d3db42020-04-09 14:16:37 +0100177 name: "module-lib-api-stubs-docs-non-updatable",
178 defaults: ["metalava-non-updatable-api-stubs-default"],
Anton Hansson2feb3f12020-11-13 11:44:32 +0000179 args: metalava_framework_docs_args + priv_apps_in_stubs + module_libs,
Anton Hansson76d3db42020-04-09 14:16:37 +0100180 check_api: {
181 current: {
Anton Hansson6cbaff22020-10-29 15:28:19 +0000182 api_file: "core/api/module-lib-current.txt",
183 removed_api_file: "core/api/module-lib-removed.txt",
Anton Hansson76d3db42020-04-09 14:16:37 +0100184 },
Anton Hanssonc3ef1f562020-10-07 14:55:36 +0100185 last_released: {
186 api_file: ":android-non-updatable.api.module-lib.latest",
187 removed_api_file: ":android-non-updatable-removed.api.module-lib.latest",
188 },
Anton Hansson76d3db42020-04-09 14:16:37 +0100189 api_lint: {
190 enabled: true,
Anton Hansson4f90aa52021-06-04 22:23:59 +0100191 new_since: ":android.api.module-lib.latest",
Anton Hansson1f449412021-06-04 22:30:52 +0100192 baseline_file: "core/api/module-lib-lint-baseline.txt",
Anton Hansson76d3db42020-04-09 14:16:37 +0100193 },
194 },
Anton Hansson85785fe2021-01-20 20:23:34 +0000195 dists: [
196 {
Anton Hanssondd8ef672022-01-04 08:53:19 +0000197 targets: ["sdk"],
Anton Hansson85785fe2021-01-20 20:23:34 +0000198 dir: "apistubs/android/module-lib/api",
199 dest: "android-non-updatable.txt",
200 tag: ".api.txt",
201 },
202 {
Anton Hanssondd8ef672022-01-04 08:53:19 +0000203 targets: ["sdk"],
Anton Hansson85785fe2021-01-20 20:23:34 +0000204 dir: "apistubs/android/module-lib/api",
205 dest: "android-non-updatable-removed.txt",
206 tag: ".removed-api.txt",
207 },
208 ],
Anton Hansson76d3db42020-04-09 14:16:37 +0100209}
Anton Hansson81969c22020-02-03 20:45:56 +0000210
Jiyong Parke3095162019-12-20 15:30:28 +0900211/////////////////////////////////////////////////////////////////////
Jiyong Park7fb4b182019-12-20 14:35:43 +0900212// android_*_stubs_current modules are the stubs libraries compiled
Anton Hansson2feb3f12020-11-13 11:44:32 +0000213// from stub sources
Jiyong Park7fb4b182019-12-20 14:35:43 +0900214/////////////////////////////////////////////////////////////////////
215
Anton Hansson33b9b852021-04-09 10:12:45 +0100216modules_public_stubs = [
217 "android.net.ipsec.ike.stubs",
218 "art.module.public.api.stubs",
219 "conscrypt.module.public.api.stubs",
220 "framework-appsearch.stubs",
221 "framework-connectivity.stubs",
paulhuf45fe962021-12-14 23:09:55 +0800222 "framework-connectivity-tiramisu.stubs",
Anton Hansson33b9b852021-04-09 10:12:45 +0100223 "framework-graphics.stubs",
224 "framework-media.stubs",
225 "framework-mediaprovider.stubs",
Chun Zhanga615ce52021-10-29 14:57:55 -0700226 "framework-nearby.stubs",
Anton Hansson33b9b852021-04-09 10:12:45 +0100227 "framework-permission.stubs",
228 "framework-permission-s.stubs",
229 "framework-scheduling.stubs",
230 "framework-sdkextensions.stubs",
231 "framework-statsd.stubs",
Gavin Corkerybc006442021-11-16 22:33:10 +0000232 "framework-supplementalprocess.stubs",
Anton Hansson33b9b852021-04-09 10:12:45 +0100233 "framework-tethering.stubs",
Roshan Pius6c580dd2021-07-29 21:31:23 -0700234 "framework-uwb.stubs",
Anton Hansson33b9b852021-04-09 10:12:45 +0100235 "framework-wifi.stubs",
236 "i18n.module.public.api.stubs",
237]
238
239modules_system_stubs = [
240 "android.net.ipsec.ike.stubs.system",
Victor Chang9f5cdff2021-05-12 10:47:16 +0100241 "art.module.public.api.stubs.system",
Anton Hansson33b9b852021-04-09 10:12:45 +0100242 "conscrypt.module.public.api.stubs", // Only has public stubs
243 "framework-appsearch.stubs.system",
244 "framework-connectivity.stubs.system",
paulhuf45fe962021-12-14 23:09:55 +0800245 "framework-connectivity-tiramisu.stubs.system",
Anton Hansson33b9b852021-04-09 10:12:45 +0100246 "framework-graphics.stubs.system",
247 "framework-media.stubs.system",
248 "framework-mediaprovider.stubs.system",
Chun Zhanga615ce52021-10-29 14:57:55 -0700249 "framework-nearby.stubs.system",
Anton Hansson33b9b852021-04-09 10:12:45 +0100250 "framework-permission.stubs.system",
251 "framework-permission-s.stubs.system",
252 "framework-scheduling.stubs.system",
253 "framework-sdkextensions.stubs.system",
254 "framework-statsd.stubs.system",
Gavin Corkerybc006442021-11-16 22:33:10 +0000255 "framework-supplementalprocess.stubs",
Anton Hansson33b9b852021-04-09 10:12:45 +0100256 "framework-tethering.stubs.system",
Roshan Pius6c580dd2021-07-29 21:31:23 -0700257 "framework-uwb.stubs.system",
Anton Hansson33b9b852021-04-09 10:12:45 +0100258 "framework-wifi.stubs.system",
259 "i18n.module.public.api.stubs", // Only has public stubs
260]
261
Jiyong Park7fb4b182019-12-20 14:35:43 +0900262java_defaults {
Anton Hanssona4748cd2021-04-09 10:16:19 +0100263 name: "android-non-updatable_defaults_stubs_current",
264 libs: ["stub-annotations"],
265 static_libs: ["framework-res-package-jar"], // Export package of framework-res
Anton Hanssonfbd32f32020-04-09 14:16:37 +0100266 sdk_version: "none",
Jiyong Park7fb4b182019-12-20 14:35:43 +0900267 system_modules: "none",
268 java_version: "1.8",
269 compile_dex: true,
Anton Hanssona4108912021-04-09 13:40:11 +0100270 dist: {
Anton Hanssondd8ef672022-01-04 08:53:19 +0000271 targets: ["sdk"],
Anton Hanssona4108912021-04-09 13:40:11 +0100272 tag: ".jar",
273 dest: "android-non-updatable.jar",
Anton Hansson240ee482021-04-14 12:52:00 +0100274 },
Anton Hansson86925682021-04-14 14:54:43 +0100275 defaults_visibility: ["//visibility:private"],
276 visibility: ["//visibility:private"],
Jiyong Park7fb4b182019-12-20 14:35:43 +0900277}
278
Neha Pattan403eb572021-12-14 02:58:57 +0000279java_library_with_nonpublic_deps {
Anton Hanssona4748cd2021-04-09 10:16:19 +0100280 name: "android-non-updatable.stubs",
281 defaults: ["android-non-updatable_defaults_stubs_current"],
282 srcs: [":api-stubs-docs-non-updatable"],
283 libs: modules_public_stubs,
Neha Pattan403eb572021-12-14 02:58:57 +0000284 soong_config_variables: {
285 include_nonpublic_framework_api: {
286 libs: [
287 "framework-supplementalapi.stubs",
288 ],
289 },
290 },
Anton Hanssona4108912021-04-09 13:40:11 +0100291 dist: {
292 dir: "apistubs/android/public",
293 },
Anton Hanssona4748cd2021-04-09 10:16:19 +0100294}
295
Neha Pattan403eb572021-12-14 02:58:57 +0000296java_library_with_nonpublic_deps {
Anton Hanssona4748cd2021-04-09 10:16:19 +0100297 name: "android-non-updatable.stubs.system",
298 defaults: ["android-non-updatable_defaults_stubs_current"],
Anton Hansson240ee482021-04-14 12:52:00 +0100299 srcs: [":system-api-stubs-docs-non-updatable"],
Anton Hanssona4748cd2021-04-09 10:16:19 +0100300 libs: modules_system_stubs,
Neha Pattan403eb572021-12-14 02:58:57 +0000301 soong_config_variables: {
302 include_nonpublic_framework_api: {
303 libs: [
304 "framework-supplementalapi.stubs",
305 ],
306 },
307 },
Anton Hanssona4108912021-04-09 13:40:11 +0100308 dist: {
309 dir: "apistubs/android/system",
310 },
Anton Hanssona4748cd2021-04-09 10:16:19 +0100311}
312
Anton Hanssonbbdd64b2021-04-26 18:47:39 +0100313java_library {
Anton Hanssona4748cd2021-04-09 10:16:19 +0100314 name: "android-non-updatable.stubs.module_lib",
315 defaults: ["android-non-updatable_defaults_stubs_current"],
316 srcs: [":module-lib-api-stubs-docs-non-updatable"],
317 libs: [
markchiencd813a32021-11-11 00:42:55 +0800318 "sdk_module-lib_current_framework-tethering",
Anton Hanssona4748cd2021-04-09 10:16:19 +0100319 "sdk_system_current_android",
320 // NOTE: The below can be removed once the prebuilt stub contains IKE.
321 "sdk_system_current_android.net.ipsec.ike",
322 ],
Anton Hanssona4108912021-04-09 13:40:11 +0100323 dist: {
324 dir: "apistubs/android/module-lib",
325 },
Anton Hanssona4748cd2021-04-09 10:16:19 +0100326}
327
Neha Pattan403eb572021-12-14 02:58:57 +0000328java_library_with_nonpublic_deps {
Anton Hanssona4748cd2021-04-09 10:16:19 +0100329 name: "android-non-updatable.stubs.test",
330 defaults: ["android-non-updatable_defaults_stubs_current"],
331 srcs: [":test-api-stubs-docs-non-updatable"],
332 libs: modules_system_stubs,
Neha Pattan403eb572021-12-14 02:58:57 +0000333 soong_config_variables: {
334 include_nonpublic_framework_api: {
335 libs: [
336 "framework-supplementalapi.stubs",
337 ],
338 },
339 },
Anton Hanssona4108912021-04-09 13:40:11 +0100340 dist: {
341 dir: "apistubs/android/test",
342 },
Anton Hanssona4748cd2021-04-09 10:16:19 +0100343}
344
345java_defaults {
Anton Hansson53cf0ba2020-08-18 12:35:31 +0000346 name: "android_stubs_dists_default",
347 dist: {
Anton Hanssondd8ef672022-01-04 08:53:19 +0000348 targets: ["sdk"],
Anton Hansson53cf0ba2020-08-18 12:35:31 +0000349 tag: ".jar",
350 dest: "android.jar",
351 },
Anton Hansson86925682021-04-14 14:54:43 +0100352 defaults_visibility: ["//frameworks/base/services"],
Anton Hansson53cf0ba2020-08-18 12:35:31 +0000353}
354
Neha Pattan403eb572021-12-14 02:58:57 +0000355java_library_with_nonpublic_deps {
Anton Hansson65aa6ea2020-11-03 19:35:56 +0000356 name: "android_stubs_current",
Anton Hansson33b9b852021-04-09 10:12:45 +0100357 static_libs: modules_public_stubs + [
Anton Hanssona4748cd2021-04-09 10:16:19 +0100358 "android-non-updatable.stubs",
Anton Hanssonbf63f942020-05-20 12:06:23 +0100359 "private-stub-annotations-jar",
Anton Hansson76d3db42020-04-09 14:16:37 +0100360 ],
Neha Pattan403eb572021-12-14 02:58:57 +0000361 soong_config_variables: {
362 include_nonpublic_framework_api: {
363 static_libs: [
364 "framework-supplementalapi.stubs",
365 ],
366 },
367 },
Anton Hansson65057af2021-04-14 18:52:08 +0100368 defaults: ["android.jar_defaults"],
Jiyong Park7fb4b182019-12-20 14:35:43 +0900369}
370
Neha Pattan403eb572021-12-14 02:58:57 +0000371java_library_with_nonpublic_deps {
Anton Hansson65aa6ea2020-11-03 19:35:56 +0000372 name: "android_system_stubs_current",
Anton Hansson33b9b852021-04-09 10:12:45 +0100373 static_libs: modules_system_stubs + [
Anton Hanssona4748cd2021-04-09 10:16:19 +0100374 "android-non-updatable.stubs.system",
Anton Hanssonbf63f942020-05-20 12:06:23 +0100375 "private-stub-annotations-jar",
Anton Hansson76d3db42020-04-09 14:16:37 +0100376 ],
Neha Pattan403eb572021-12-14 02:58:57 +0000377 soong_config_variables: {
378 include_nonpublic_framework_api: {
379 static_libs: [
380 "framework-supplementalapi.stubs",
381 ],
382 },
383 },
Anton Hanssonc3002e52020-11-18 18:23:55 +0000384 defaults: [
Anton Hansson65057af2021-04-14 18:52:08 +0100385 "android.jar_defaults",
Anton Hanssonc3002e52020-11-18 18:23:55 +0000386 "android_stubs_dists_default",
387 ],
388 dist: {
389 dir: "apistubs/android/system",
390 },
391 dists: [
392 {
393 // Legacy dist path
Anton Hanssondd8ef672022-01-04 08:53:19 +0000394 targets: ["sdk"],
Anton Hanssonc3002e52020-11-18 18:23:55 +0000395 tag: ".jar",
396 dest: "android_system.jar",
397 },
398 ],
Anton Hansson76d3db42020-04-09 14:16:37 +0100399}
400
Neha Pattan403eb572021-12-14 02:58:57 +0000401java_library_with_nonpublic_deps {
Jiyong Park7fb4b182019-12-20 14:35:43 +0900402 name: "android_test_stubs_current",
Anton Hansson33b9b852021-04-09 10:12:45 +0100403 // Modules do not have test APIs, but we want to include their SystemApis, like we include
404 // the SystemApi of framework-non-updatable-sources.
405 static_libs: modules_system_stubs + [
Anton Hanssona4748cd2021-04-09 10:16:19 +0100406 "android-non-updatable.stubs.test",
Anton Hansson7ce31c12020-10-15 18:38:49 +0100407 "private-stub-annotations-jar",
408 ],
Neha Pattan403eb572021-12-14 02:58:57 +0000409 soong_config_variables: {
410 include_nonpublic_framework_api: {
411 static_libs: [
412 "framework-supplementalapi.stubs",
413 ],
414 },
415 },
Anton Hansson53cf0ba2020-08-18 12:35:31 +0000416 defaults: [
Anton Hansson65057af2021-04-14 18:52:08 +0100417 "android.jar_defaults",
Anton Hansson53cf0ba2020-08-18 12:35:31 +0000418 "android_stubs_dists_default",
419 ],
420 dist: {
421 dir: "apistubs/android/test",
422 },
Jiyong Parke3095162019-12-20 15:30:28 +0900423}
424
Anton Hanssonbbdd64b2021-04-26 18:47:39 +0100425java_library {
Anton Hansson1b9cf092020-01-30 12:09:02 +0000426 name: "android_module_lib_stubs_current",
Anton Hansson53cf0ba2020-08-18 12:35:31 +0000427 defaults: [
Anton Hansson65057af2021-04-14 18:52:08 +0100428 "android.jar_defaults",
Anton Hansson53cf0ba2020-08-18 12:35:31 +0000429 "android_stubs_dists_default",
430 ],
Anton Hanssona4748cd2021-04-09 10:16:19 +0100431 static_libs: [
432 "android-non-updatable.stubs.module_lib",
Victor Chang6b107a92021-06-17 23:49:42 +0100433 "art.module.public.api.stubs.module_lib",
Giulio Fiscella68a04112021-11-30 16:32:44 +0000434 "i18n.module.public.api.stubs",
Anton Hanssonb7d532e2021-02-05 11:40:25 +0000435 ],
Anton Hansson53cf0ba2020-08-18 12:35:31 +0000436 dist: {
437 dir: "apistubs/android/module-lib",
438 },
Jiyong Park7fb4b182019-12-20 14:35:43 +0900439}
440
Andrei Oneafaa271a2021-03-17 13:32:51 +0000441java_library {
442 name: "android_system_server_stubs_current",
443 defaults: ["android_stubs_dists_default"],
444 srcs: [":services-non-updatable-stubs"],
445 installable: false,
446 static_libs: [
447 "android_module_lib_stubs_current",
448 ],
449 sdk_version: "none",
450 system_modules: "none",
451 java_version: "1.8",
452 dist: {
453 dir: "apistubs/android/system-server",
454 },
455}
456
Jiyong Park7fb4b182019-12-20 14:35:43 +0900457/////////////////////////////////////////////////////////////////////
458// hwbinder.stubs provides APIs required for building HIDL Java
459// libraries.
460/////////////////////////////////////////////////////////////////////
461
462droidstubs {
463 name: "hwbinder-stubs-docs",
464 srcs: [
465 "core/java/android/os/HidlSupport.java",
Jiyong Park7fb4b182019-12-20 14:35:43 +0900466 "core/java/android/os/HidlMemory.java",
467 "core/java/android/os/HwBinder.java",
468 "core/java/android/os/HwBlob.java",
469 "core/java/android/os/HwParcel.java",
470 "core/java/android/os/IHwBinder.java",
471 "core/java/android/os/IHwInterface.java",
472 "core/java/android/os/DeadObjectException.java",
473 "core/java/android/os/DeadSystemException.java",
474 "core/java/android/os/NativeHandle.java",
475 "core/java/android/os/RemoteException.java",
476 "core/java/android/util/AndroidException.java",
477 ],
Colin Cross037d7fb2021-03-25 17:01:55 -0700478 libs: ["framework-annotations-lib"],
Jiyong Park7fb4b182019-12-20 14:35:43 +0900479 installable: false,
480 sdk_version: "core_platform",
481 annotations_enabled: true,
Anton Hansson48ee95e2020-05-02 17:49:26 +0100482 previous_api: ":android.api.public.latest",
Jiyong Park7fb4b182019-12-20 14:35:43 +0900483 merge_annotations_dirs: [
484 "metalava-manual",
485 ],
Anton Hansson81969c22020-02-03 20:45:56 +0000486 args: priv_apps,
Anton Hansson86925682021-04-14 14:54:43 +0100487 visibility: ["//visibility:private"],
Jiyong Park7fb4b182019-12-20 14:35:43 +0900488}
489
Anton Hanssonbbdd64b2021-04-26 18:47:39 +0100490java_library {
Jiyong Park7fb4b182019-12-20 14:35:43 +0900491 name: "hwbinder.stubs",
492 sdk_version: "core_current",
Colin Cross037d7fb2021-03-25 17:01:55 -0700493 libs: ["framework-annotations-lib"],
Jiyong Park7fb4b182019-12-20 14:35:43 +0900494 srcs: [
495 ":hwbinder-stubs-docs",
496 ],
Anton Hansson86925682021-04-14 14:54:43 +0100497 visibility: ["//visibility:public"],
Jiyong Park7fb4b182019-12-20 14:35:43 +0900498}