blob: 79c56477c3092d5adf85ab1b5ee324db61e72577 [file] [log] [blame]
Anton Hanssonda4972f2020-01-08 09:48:18 +00001// 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
15package {
16 default_visibility: [":__subpackages__"],
Bob Badourbe5b7072021-02-12 14:50:30 -080017 default_applicable_licenses: ["Android-Apache-2.0"],
Anton Hanssonda4972f2020-01-08 09:48:18 +000018}
19
20apex {
21 name: "com.android.sdkext",
Paul Duffinc9d11fc2021-05-17 13:19:48 +010022 defaults: ["com.android.sdkext-defaults"],
satayev9a5c4412021-05-12 13:30:40 +010023 bootclasspath_fragments: ["com.android.sdkext-bootclasspath-fragment"],
Anton Hansson4c639682021-05-27 10:01:34 +000024 binaries: [
25 "derive_classpath",
26 "derive_sdk",
27 ],
Anton Hansson16097ea2021-01-12 20:34:32 +000028 prebuilts: [
Anton Hansson1f555ec2021-05-24 12:27:02 +010029 "current_sdkinfo",
Anton Hansson16097ea2021-01-12 20:34:32 +000030 "extensions_db",
31 ],
Anton Hansson36e2b132019-12-19 12:10:53 +000032 manifest: "manifest.json",
33}
34
35apex_defaults {
36 name: "com.android.sdkext-defaults",
Gurpreet Singh8b30b402022-03-02 16:26:44 +000037 defaults: ["r-launched-apex-module"],
Anton Hanssonda4972f2020-01-08 09:48:18 +000038 prebuilts: [
satayevbe3f8ea2021-03-19 11:08:49 +000039 "derive_classpath.rc",
Anton Hansson36e2b132019-12-19 12:10:53 +000040 "derive_sdk.rc",
Anton Hanssonda4972f2020-01-08 09:48:18 +000041 ],
42 key: "com.android.sdkext.key",
43 certificate: ":com.android.sdkext.certificate",
44}
45
Anton Hanssonda4972f2020-01-08 09:48:18 +000046apex_key {
47 name: "com.android.sdkext.key",
48 public_key: "com.android.sdkext.avbpubkey",
49 private_key: "com.android.sdkext.pem",
50}
51
52android_app_certificate {
53 name: "com.android.sdkext.certificate",
54 certificate: "com.android.sdkext",
55}
56
Anton Hansson966175d2020-11-09 15:03:34 +000057sdk {
58 name: "sdkextensions-sdk",
Paul Duffin338c35f2021-05-17 12:48:35 +010059 bootclasspath_fragments: ["com.android.sdkext-bootclasspath-fragment"],
Anton Hansson966175d2020-11-09 15:03:34 +000060}
satayev9a5c4412021-05-12 13:30:40 +010061
62// Encapsulate the contributions made by the com.android.sdkext to the bootclasspath.
63bootclasspath_fragment {
64 name: "com.android.sdkext-bootclasspath-fragment",
65 contents: ["framework-sdkextensions"],
66 apex_available: ["com.android.sdkext"],
Paul Duffin338c35f2021-05-17 12:48:35 +010067
68 // The bootclasspath_fragments that provide APIs on which this depends.
69 fragments: [
70 {
71 apex: "com.android.art",
72 module: "art-bootclasspath-fragment",
73 },
74 ],
Paul Duffinc024f032022-03-10 18:37:12 +000075
76 hidden_api: {
77 // This module does not contain any split packages.
78 split_packages: [],
79
80 // The following packages and all their subpackages currently only
81 // contain classes from this bootclasspath_fragment. Listing a package
82 // here won't prevent other bootclasspath modules from adding classes in
83 // any of those packages but it will prevent them from adding those
84 // classes into an API surface, e.g. public, system, etc.. Doing so will
85 // result in a build failure due to inconsistent flags.
86 package_prefixes: [
87 "android.os.ext",
88 ],
89 },
satayev9a5c4412021-05-12 13:30:40 +010090}