blob: 34c6f1c72d0ab18a982cebb5acf61ce68f4a6173 [file] [log] [blame]
Neil Fuller6bf280b2018-09-10 12:37:16 +01001// Copyright (C) 2018 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
Paul Duffin918d4592020-02-07 15:26:39 +000015// Referenced implicitly from art.module.intra.core.api.
Bob Badour4f70e802021-02-03 19:03:54 -080016package {
17 // http://go/android-license-faq
18 // A large-scale-change added 'default_applicable_licenses' to import
19 // the below license kinds from "libcore_license":
20 // SPDX-license-identifier-Apache-2.0
21 // SPDX-license-identifier-GPL
22 // SPDX-license-identifier-GPL-2.0
23 // SPDX-license-identifier-LGPL
24 // SPDX-license-identifier-MIT
25 // SPDX-license-identifier-W3C
26 default_applicable_licenses: ["libcore_license"],
27}
28
Paul Duffin918d4592020-02-07 15:26:39 +000029filegroup {
30 name: "art.module.intra.core.api.api.public.latest",
Paul Duffina38da2d2019-10-01 17:49:50 +010031 srcs: [
Paul Duffin918d4592020-02-07 15:26:39 +000032 "api/intra/last-api.txt",
Paul Duffina38da2d2019-10-01 17:49:50 +010033 ],
Paul Duffin918d4592020-02-07 15:26:39 +000034}
Neil Fuller6bf280b2018-09-10 12:37:16 +010035
Paul Duffin918d4592020-02-07 15:26:39 +000036// Referenced implicitly from art.module.intra.core.api.
37filegroup {
38 name: "art.module.intra.core.api-removed.api.public.latest",
39 srcs: [
40 "api/intra/last-removed.txt",
41 ],
Neil Fuller6bf280b2018-09-10 12:37:16 +010042}
43
Jaewoong Jung4dc28fd2021-03-09 16:08:49 -080044// Referenced implicitly from art.module.intra.core.api.
45filegroup {
46 name: "art.module.intra.core.api-incompatibilities.api.public.latest",
47 srcs: [
48 "api/intra/last-incompatibilities.txt",
49 ],
50}
51
Paul Duffina38da2d2019-10-01 17:49:50 +010052// A library containing the intra-core API stubs of the ART module.
53//
54// Intra-core APIs are only intended for the use of other core library modules.
Paul Duffin918d4592020-02-07 15:26:39 +000055//
56// The API specification .txt files managed by this only contain the additional
57// classes/members that are in the intra-core API but which are not the public API.
58java_sdk_library {
59 name: "art.module.intra.core.api",
Paul Duffina38da2d2019-10-01 17:49:50 +010060 visibility: [
Paul Duffin317bd512019-10-02 14:51:13 +010061 "//libcore/mmodules/core_platform_api",
Paul Duffina38da2d2019-10-01 17:49:50 +010062 ],
63 srcs: [
Paul Duffin918d4592020-02-07 15:26:39 +000064 ":art_module_api_files",
Paul Duffina38da2d2019-10-01 17:49:50 +010065 ],
Paul Duffin918d4592020-02-07 15:26:39 +000066 api_dir: "api/intra",
67 api_only: true,
68 droiddoc_options: [
69 "--hide-annotation libcore.api.Hide",
70 "--show-single-annotation libcore.api.IntraCoreApi",
Paul Duffin918d4592020-02-07 15:26:39 +000071 ],
72 merge_inclusion_annotations_dirs: ["ojluni-annotated-mmodule-stubs"],
Neil Fuller6bf280b2018-09-10 12:37:16 +010073
Paul Duffin83c25382019-06-07 14:10:49 +010074 sdk_version: "none",
Paul Duffina8173c52019-09-24 13:04:42 +010075 system_modules: "none",
Paul Duffin1d7d4a72019-10-10 18:15:01 +010076 patch_module: "java.base",
Paul Duffin81a0fdf2020-11-19 19:21:07 +000077
78 // Don't copy any output files to the dist.
79 no_dist: true,
Neil Fuller6bf280b2018-09-10 12:37:16 +010080}
81
Paul Duffin918d4592020-02-07 15:26:39 +000082// Bootstrap the art-module-intra-core-api-stubs-system-modules.
83//
84// This is needed to build art-module-intra-core-api-stubs-system-modules-lib
85// which is in turn needed to build art-module-intra-core-api-stubs-system-modules
86java_system_modules {
87 name: "art-module-intra-core-api-stubs-bootstrap-system-modules",
88 libs: [
89 // The intra core API stubs library.
90 "art.module.intra.core.api.stubs",
91 ],
92}
93
94// A library containing additional classes that are needed in the system modules.
95java_library {
96 name: "art-module-intra-core-api-stubs-system-modules-lib",
97 srcs: [
98 ":openjdk_lambda_stub_files",
99 ":openjdk_generated_annotation_stub_files",
100 ],
101 libs: [
102 "art.module.intra.core.api",
103 ],
104 system_modules: "art-module-intra-core-api-stubs-bootstrap-system-modules",
105 sdk_version: "none",
106 patch_module: "java.base",
107}
108
Paul Duffina38da2d2019-10-01 17:49:50 +0100109// Used when compiling against art.module.intra.core.api.stubs.
110java_system_modules {
111 name: "art-module-intra-core-api-stubs-system-modules",
112 visibility: [
Paul Duffin5db4b032020-02-07 14:54:34 +0000113 "//art/build/sdk",
Paul Duffinf545bc72019-10-02 14:07:04 +0100114 "//external/bouncycastle",
Paul Duffina38da2d2019-10-01 17:49:50 +0100115 "//external/conscrypt",
116 "//external/icu/android_icu4j",
117 ],
Paul Duffin918d4592020-02-07 15:26:39 +0000118 libs: [
119 // The intra core API stubs library.
120 "art.module.intra.core.api.stubs",
121
122 // Additional classes needed by javac but which are not present in the stubs.
123 "art-module-intra-core-api-stubs-system-modules-lib",
124 ],
Paul Duffina38da2d2019-10-01 17:49:50 +0100125}