blob: 59a1cbc38216e6742cab69969975ee0c1e2f026e [file] [log] [blame]
Joe Onoratocd779472023-08-19 19:49:52 -07001// Copyright (C) 2023 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
Liz Kammer56896172023-09-20 15:15:43 +000015aconfig_srcjars = [
Lajos Molnar4fbcf2f2024-01-17 09:59:01 -080016 // !!! KEEP THIS LIST ALPHABETICAL !!!
17 ":aconfig_mediacodec_flags_java_lib{.generated_srcjars}",
Jiakai Zhang1dde3e72023-10-10 14:58:43 +000018 ":android.content.pm.flags-aconfig-java{.generated_srcjars}",
Jeremy Meyer16bbdc22023-10-06 15:47:17 -070019 ":android.content.res.flags-aconfig-java{.generated_srcjars}",
Shaquille Johnsonf732f472023-09-22 23:00:59 +010020 ":android.hardware.biometrics.flags-aconfig-java{.generated_srcjars}",
Jihoon Kangc537cba2023-12-21 01:22:54 +000021 ":android.media.playback.flags-aconfig-java{.generated_srcjars}",
Yan Yand3c353f2023-10-25 01:55:01 +000022 ":android.net.vcn.flags-aconfig-java{.generated_srcjars}",
Roshan Pius558940e2023-06-22 11:15:32 -070023 ":android.nfc.flags-aconfig-java{.generated_srcjars}",
Liz Kammer56896172023-09-20 15:15:43 +000024 ":android.os.flags-aconfig-java{.generated_srcjars}",
25 ":android.security.flags-aconfig-java{.generated_srcjars}",
26 ":com.android.hardware.camera2-aconfig-java{.generated_srcjars}",
Liz Kammer56896172023-09-20 15:15:43 +000027 ":com.android.hardware.input-aconfig-java{.generated_srcjars}",
Motomu Utsumid2a3e4d2023-10-12 23:25:03 +090028 ":com.android.net.flags-aconfig-java{.generated_srcjars}",
Lajos Molnar4fbcf2f2024-01-17 09:59:01 -080029 ":com.android.text.flags-aconfig-java{.generated_srcjars}",
30 ":com.android.window.flags.window-aconfig-java{.generated_srcjars}",
31 // !!! KEEP THIS LIST ALPHABETICAL !!!
Liz Kammer56896172023-09-20 15:15:43 +000032]
33
Jihoon Kangc537cba2023-12-21 01:22:54 +000034stubs_defaults {
35 name: "framework-minus-apex-aconfig-declarations",
36 aconfig_declarations: [
37 "android.content.pm.flags-aconfig",
38 "android.content.res.flags-aconfig",
39 "android.hardware.biometrics.flags-aconfig",
40 "android.media.playback.flags-aconfig",
41 "android.net.vcn.flags-aconfig",
42 "android.nfc.flags-aconfig",
43 "android.os.flags-aconfig",
44 "android.security.flags-aconfig",
45 "com.android.hardware.camera2-aconfig",
46 "com.android.hardware.input.input-aconfig",
47 "com.android.window.flags.window-aconfig",
48 "com.android.text.flags-aconfig",
49 "com.android.net.flags-aconfig",
50 ],
51}
52
Liz Kammer56896172023-09-20 15:15:43 +000053filegroup {
54 name: "framework-minus-apex-aconfig-srcjars",
55 srcs: aconfig_srcjars,
56}
57
Joe Onoratocd779472023-08-19 19:49:52 -070058// Aconfig declarations and libraries for the core framework
59java_defaults {
60 name: "framework-minus-apex-aconfig-libraries",
61
62 // Add java_aconfig_libraries to here to add them to the core framework
Zhi Dou3b92dcb2023-08-30 22:12:17 +000063 // Add aconfig-annotations-lib as a dependency for the optimization
Liz Kammer56896172023-09-20 15:15:43 +000064 srcs: aconfig_srcjars,
Zhi Dou3b92dcb2023-08-30 22:12:17 +000065 libs: ["aconfig-annotations-lib"],
Joe Onoratocd779472023-08-19 19:49:52 -070066}
67
68// Default flags for java_aconfig_libraries that go into framework-minus-apex
69// These libraries will not work standalone
70java_defaults {
71 name: "framework-minus-apex-aconfig-java-defaults",
72 sdk_version: "core_platform",
73 libs: ["fake_device_config"],
74}
75
Chris Li547ae2c2023-07-28 14:01:06 +080076// Camera
Joe Onoratocd779472023-08-19 19:49:52 -070077aconfig_declarations {
78 name: "com.android.hardware.camera2-aconfig",
79 package: "com.android.hardware.camera2",
80 srcs: ["core/java/android/hardware/camera2/camera_platform.aconfig"],
81}
82
83java_aconfig_library {
84 name: "com.android.hardware.camera2-aconfig-java",
85 aconfig_declarations: "com.android.hardware.camera2-aconfig",
86 defaults: ["framework-minus-apex-aconfig-java-defaults"],
87}
Chris Li547ae2c2023-07-28 14:01:06 +080088
89// Window
90aconfig_declarations {
91 name: "com.android.window.flags.window-aconfig",
92 package: "com.android.window.flags",
93 srcs: ["core/java/android/window/flags/*.aconfig"],
94}
95
96java_aconfig_library {
97 name: "com.android.window.flags.window-aconfig-java",
98 aconfig_declarations: "com.android.window.flags.window-aconfig",
99 defaults: ["framework-minus-apex-aconfig-java-defaults"],
100}
Seigo Nonaka1e157782023-08-22 09:57:46 +0900101
Josep del Rioc469f352023-08-24 18:03:06 +0000102// Input
103aconfig_declarations {
104 name: "com.android.hardware.input.input-aconfig",
105 package: "com.android.hardware.input",
106 srcs: ["core/java/android/hardware/input/*.aconfig"],
107}
108
109java_aconfig_library {
110 name: "com.android.hardware.input-aconfig-java",
111 aconfig_declarations: "com.android.hardware.input.input-aconfig",
112 defaults: ["framework-minus-apex-aconfig-java-defaults"],
113}
114
Seigo Nonaka1e157782023-08-22 09:57:46 +0900115// Text
116aconfig_declarations {
117 name: "com.android.text.flags-aconfig",
118 package: "com.android.text.flags",
119 srcs: ["core/java/android/text/flags/*.aconfig"],
120}
121
122java_aconfig_library {
123 name: "com.android.text.flags-aconfig-java",
124 aconfig_declarations: "com.android.text.flags-aconfig",
125 defaults: ["framework-minus-apex-aconfig-java-defaults"],
126}
Victor Hsieh529c1a732023-08-21 17:20:25 -0700127
Gil Cukierman4585b932023-08-29 15:57:05 +0000128// OS
129aconfig_declarations {
130 name: "android.os.flags-aconfig",
131 package: "android.os",
132 srcs: ["core/java/android/os/*.aconfig"],
133}
134
135java_aconfig_library {
136 name: "android.os.flags-aconfig-java",
137 aconfig_declarations: "android.os.flags-aconfig",
138 defaults: ["framework-minus-apex-aconfig-java-defaults"],
139}
140
Roshan Pius558940e2023-06-22 11:15:32 -0700141// NFC
142aconfig_declarations {
143 name: "android.nfc.flags-aconfig",
144 package: "android.nfc",
145 srcs: ["core/java/android/nfc/*.aconfig"],
146}
147
Brad Lasseyb8c4f9b2023-09-01 11:30:09 -0400148cc_aconfig_library {
149 name: "android_nfc_flags_aconfig_c_lib",
150 vendor_available: true,
151 aconfig_declarations: "android.nfc.flags-aconfig",
152 apex_available: [
153 "//apex_available:platform",
154 "com.android.nfcservices",
155 "nfc_nci.st21nfc.default",
156 ],
157 defaults: ["framework-minus-apex-aconfig-java-defaults"],
158}
159
Roshan Pius558940e2023-06-22 11:15:32 -0700160java_aconfig_library {
161 name: "android.nfc.flags-aconfig-java",
162 aconfig_declarations: "android.nfc.flags-aconfig",
Roshan Piusd1ad8ca2023-10-20 14:02:38 +0000163 min_sdk_version: "VanillaIceCream",
164 apex_available: [
165 "//apex_available:platform",
166 "com.android.nfcservices",
167 ],
Roshan Pius558940e2023-06-22 11:15:32 -0700168 defaults: ["framework-minus-apex-aconfig-java-defaults"],
169}
170
Victor Hsieh529c1a732023-08-21 17:20:25 -0700171// Security
172aconfig_declarations {
173 name: "android.security.flags-aconfig",
174 package: "android.security",
175 srcs: ["core/java/android/security/*.aconfig"],
176}
177
178java_aconfig_library {
179 name: "android.security.flags-aconfig-java",
180 aconfig_declarations: "android.security.flags-aconfig",
181 defaults: ["framework-minus-apex-aconfig-java-defaults"],
182}
Victor Hsieh65bec8d2023-08-29 14:04:02 -0700183
184java_aconfig_library {
185 name: "android.security.flags-aconfig-java-host",
186 aconfig_declarations: "android.security.flags-aconfig",
187 host_supported: true,
Victor Hsieh65bec8d2023-08-29 14:04:02 -0700188 defaults: ["framework-minus-apex-aconfig-java-defaults"],
189}
Shaquille Johnsonf732f472023-09-22 23:00:59 +0100190
Eric Biggersaa6688e2023-10-20 17:07:37 +0000191rust_aconfig_library {
192 name: "libandroid_security_flags_rust",
193 crate_name: "android_security_flags",
194 aconfig_declarations: "android.security.flags-aconfig",
195}
196
Jiakai Zhang1dde3e72023-10-10 14:58:43 +0000197// Package Manager
198aconfig_declarations {
199 name: "android.content.pm.flags-aconfig",
200 package: "android.content.pm",
201 srcs: ["core/java/android/content/pm/flags.aconfig"],
202}
203
204java_aconfig_library {
205 name: "android.content.pm.flags-aconfig-java",
206 aconfig_declarations: "android.content.pm.flags-aconfig",
207 defaults: ["framework-minus-apex-aconfig-java-defaults"],
208}
209
210java_aconfig_library {
211 name: "android.content.pm.flags-aconfig-java-host",
212 aconfig_declarations: "android.content.pm.flags-aconfig",
213 host_supported: true,
214 defaults: ["framework-minus-apex-aconfig-java-defaults"],
215}
216
Jeremy Meyer16bbdc22023-10-06 15:47:17 -0700217// Resources
218aconfig_declarations {
219 name: "android.content.res.flags-aconfig",
220 package: "android.content.res",
221 srcs: ["core/java/android/content/res/*.aconfig"],
222}
223
224java_aconfig_library {
225 name: "android.content.res.flags-aconfig-java",
226 aconfig_declarations: "android.content.res.flags-aconfig",
227 defaults: ["framework-minus-apex-aconfig-java-defaults"],
228}
229
Shaquille Johnsonf732f472023-09-22 23:00:59 +0100230// Biometrics
231aconfig_declarations {
232 name: "android.hardware.biometrics.flags-aconfig",
233 package: "android.hardware.biometrics",
234 srcs: ["core/java/android/hardware/biometrics/flags.aconfig"],
235}
236
237java_aconfig_library {
238 name: "android.hardware.biometrics.flags-aconfig-java",
239 aconfig_declarations: "android.hardware.biometrics.flags-aconfig",
240 defaults: ["framework-minus-apex-aconfig-java-defaults"],
241}
Motomu Utsumid2a3e4d2023-10-12 23:25:03 +0900242
Motomu Utsumi9e80cbb2023-12-06 13:29:49 +0900243// Networking
244aconfig_declarations {
245 name: "com.android.net.flags-aconfig",
246 package: "com.android.net.flags",
247 srcs: ["core/java/android/net/flags.aconfig"],
248}
249
Motomu Utsumid2a3e4d2023-10-12 23:25:03 +0900250java_aconfig_library {
251 name: "com.android.net.flags-aconfig-java",
252 aconfig_declarations: "com.android.net.flags-aconfig",
253 defaults: ["framework-minus-apex-aconfig-java-defaults"],
254}
Yan Yand3c353f2023-10-25 01:55:01 +0000255
Venkatarama Avadhanic35577e2023-09-11 08:47:33 +0530256// Media
257aconfig_declarations {
258 name: "android.media.playback.flags-aconfig",
259 package: "com.android.media.playback.flags",
260 srcs: ["media/jni/playback_flags.aconfig"],
261}
262
263cc_aconfig_library {
264 name: "android.media.playback.flags-aconfig-cc",
265 aconfig_declarations: "android.media.playback.flags-aconfig",
266}
267
268java_aconfig_library {
269 name: "android.media.playback.flags-aconfig-java",
270 aconfig_declarations: "android.media.playback.flags-aconfig",
271 defaults: ["framework-minus-apex-aconfig-java-defaults"],
272}
273
Yan Yand3c353f2023-10-25 01:55:01 +0000274// VCN
275aconfig_declarations {
276 name: "android.net.vcn.flags-aconfig",
277 package: "android.net.vcn",
278 srcs: ["core/java/android/net/vcn/*.aconfig"],
279}
280
281java_aconfig_library {
282 name: "android.net.vcn.flags-aconfig-java",
283 aconfig_declarations: "android.net.vcn.flags-aconfig",
284 defaults: ["framework-minus-apex-aconfig-java-defaults"],
285}