blob: 9eb41c9274e4bc380e9f891109ec2cd8dcd726de [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}",
Sanal Buvaev4e02cf02024-01-26 17:10:50 +000020 ":android.crashrecovery.flags-aconfig-java{.generated_srcjars}",
Shaquille Johnsonf732f472023-09-22 23:00:59 +010021 ":android.hardware.biometrics.flags-aconfig-java{.generated_srcjars}",
Jihoon Kangc537cba2023-12-21 01:22:54 +000022 ":android.media.playback.flags-aconfig-java{.generated_srcjars}",
Yan Yand3c353f2023-10-25 01:55:01 +000023 ":android.net.vcn.flags-aconfig-java{.generated_srcjars}",
Roshan Pius558940e2023-06-22 11:15:32 -070024 ":android.nfc.flags-aconfig-java{.generated_srcjars}",
Liz Kammer56896172023-09-20 15:15:43 +000025 ":android.os.flags-aconfig-java{.generated_srcjars}",
26 ":android.security.flags-aconfig-java{.generated_srcjars}",
27 ":com.android.hardware.camera2-aconfig-java{.generated_srcjars}",
Liz Kammer56896172023-09-20 15:15:43 +000028 ":com.android.hardware.input-aconfig-java{.generated_srcjars}",
Motomu Utsumid2a3e4d2023-10-12 23:25:03 +090029 ":com.android.net.flags-aconfig-java{.generated_srcjars}",
Kangping Dong0bb89812024-01-24 16:47:23 +080030 ":com.android.net.thread.flags-aconfig-java{.generated_srcjars}",
Lajos Molnar4fbcf2f2024-01-17 09:59:01 -080031 ":com.android.text.flags-aconfig-java{.generated_srcjars}",
32 ":com.android.window.flags.window-aconfig-java{.generated_srcjars}",
33 // !!! KEEP THIS LIST ALPHABETICAL !!!
Liz Kammer56896172023-09-20 15:15:43 +000034]
35
Jihoon Kangc537cba2023-12-21 01:22:54 +000036stubs_defaults {
37 name: "framework-minus-apex-aconfig-declarations",
38 aconfig_declarations: [
39 "android.content.pm.flags-aconfig",
40 "android.content.res.flags-aconfig",
Sanal Buvaev4e02cf02024-01-26 17:10:50 +000041 "android.crashrecovery.flags-aconfig",
Jihoon Kangc537cba2023-12-21 01:22:54 +000042 "android.hardware.biometrics.flags-aconfig",
43 "android.media.playback.flags-aconfig",
44 "android.net.vcn.flags-aconfig",
45 "android.nfc.flags-aconfig",
46 "android.os.flags-aconfig",
47 "android.security.flags-aconfig",
48 "com.android.hardware.camera2-aconfig",
49 "com.android.hardware.input.input-aconfig",
Kangping Dong0bb89812024-01-24 16:47:23 +080050 "com.android.net.thread.flags-aconfig",
Jihoon Kangc537cba2023-12-21 01:22:54 +000051 "com.android.window.flags.window-aconfig",
52 "com.android.text.flags-aconfig",
53 "com.android.net.flags-aconfig",
54 ],
55}
56
Liz Kammer56896172023-09-20 15:15:43 +000057filegroup {
58 name: "framework-minus-apex-aconfig-srcjars",
59 srcs: aconfig_srcjars,
60}
61
Joe Onoratocd779472023-08-19 19:49:52 -070062// Aconfig declarations and libraries for the core framework
63java_defaults {
64 name: "framework-minus-apex-aconfig-libraries",
65
66 // Add java_aconfig_libraries to here to add them to the core framework
Zhi Dou3b92dcb2023-08-30 22:12:17 +000067 // Add aconfig-annotations-lib as a dependency for the optimization
Liz Kammer56896172023-09-20 15:15:43 +000068 srcs: aconfig_srcjars,
Zhi Dou3b92dcb2023-08-30 22:12:17 +000069 libs: ["aconfig-annotations-lib"],
Joe Onoratocd779472023-08-19 19:49:52 -070070}
71
72// Default flags for java_aconfig_libraries that go into framework-minus-apex
73// These libraries will not work standalone
74java_defaults {
75 name: "framework-minus-apex-aconfig-java-defaults",
76 sdk_version: "core_platform",
77 libs: ["fake_device_config"],
78}
79
Chris Li547ae2c2023-07-28 14:01:06 +080080// Camera
Joe Onoratocd779472023-08-19 19:49:52 -070081aconfig_declarations {
82 name: "com.android.hardware.camera2-aconfig",
83 package: "com.android.hardware.camera2",
84 srcs: ["core/java/android/hardware/camera2/camera_platform.aconfig"],
85}
86
87java_aconfig_library {
88 name: "com.android.hardware.camera2-aconfig-java",
89 aconfig_declarations: "com.android.hardware.camera2-aconfig",
90 defaults: ["framework-minus-apex-aconfig-java-defaults"],
91}
Chris Li547ae2c2023-07-28 14:01:06 +080092
93// Window
94aconfig_declarations {
95 name: "com.android.window.flags.window-aconfig",
96 package: "com.android.window.flags",
97 srcs: ["core/java/android/window/flags/*.aconfig"],
98}
99
100java_aconfig_library {
101 name: "com.android.window.flags.window-aconfig-java",
102 aconfig_declarations: "com.android.window.flags.window-aconfig",
103 defaults: ["framework-minus-apex-aconfig-java-defaults"],
104}
Seigo Nonaka1e157782023-08-22 09:57:46 +0900105
Josep del Rioc469f352023-08-24 18:03:06 +0000106// Input
107aconfig_declarations {
108 name: "com.android.hardware.input.input-aconfig",
109 package: "com.android.hardware.input",
110 srcs: ["core/java/android/hardware/input/*.aconfig"],
111}
112
113java_aconfig_library {
114 name: "com.android.hardware.input-aconfig-java",
115 aconfig_declarations: "com.android.hardware.input.input-aconfig",
116 defaults: ["framework-minus-apex-aconfig-java-defaults"],
117}
118
Seigo Nonaka1e157782023-08-22 09:57:46 +0900119// Text
120aconfig_declarations {
121 name: "com.android.text.flags-aconfig",
122 package: "com.android.text.flags",
123 srcs: ["core/java/android/text/flags/*.aconfig"],
124}
125
126java_aconfig_library {
127 name: "com.android.text.flags-aconfig-java",
128 aconfig_declarations: "com.android.text.flags-aconfig",
129 defaults: ["framework-minus-apex-aconfig-java-defaults"],
130}
Victor Hsieh529c1a732023-08-21 17:20:25 -0700131
Gil Cukierman4585b932023-08-29 15:57:05 +0000132// OS
133aconfig_declarations {
134 name: "android.os.flags-aconfig",
135 package: "android.os",
136 srcs: ["core/java/android/os/*.aconfig"],
137}
138
139java_aconfig_library {
140 name: "android.os.flags-aconfig-java",
141 aconfig_declarations: "android.os.flags-aconfig",
142 defaults: ["framework-minus-apex-aconfig-java-defaults"],
143}
144
Roshan Pius558940e2023-06-22 11:15:32 -0700145// NFC
146aconfig_declarations {
147 name: "android.nfc.flags-aconfig",
148 package: "android.nfc",
149 srcs: ["core/java/android/nfc/*.aconfig"],
150}
151
Brad Lasseyb8c4f9b2023-09-01 11:30:09 -0400152cc_aconfig_library {
153 name: "android_nfc_flags_aconfig_c_lib",
154 vendor_available: true,
155 aconfig_declarations: "android.nfc.flags-aconfig",
156 apex_available: [
157 "//apex_available:platform",
158 "com.android.nfcservices",
159 "nfc_nci.st21nfc.default",
160 ],
161 defaults: ["framework-minus-apex-aconfig-java-defaults"],
162}
163
Roshan Pius558940e2023-06-22 11:15:32 -0700164java_aconfig_library {
165 name: "android.nfc.flags-aconfig-java",
166 aconfig_declarations: "android.nfc.flags-aconfig",
Roshan Piusd1ad8ca2023-10-20 14:02:38 +0000167 min_sdk_version: "VanillaIceCream",
168 apex_available: [
169 "//apex_available:platform",
170 "com.android.nfcservices",
171 ],
Roshan Pius558940e2023-06-22 11:15:32 -0700172 defaults: ["framework-minus-apex-aconfig-java-defaults"],
173}
174
Victor Hsieh529c1a732023-08-21 17:20:25 -0700175// Security
176aconfig_declarations {
177 name: "android.security.flags-aconfig",
178 package: "android.security",
179 srcs: ["core/java/android/security/*.aconfig"],
180}
181
182java_aconfig_library {
183 name: "android.security.flags-aconfig-java",
184 aconfig_declarations: "android.security.flags-aconfig",
185 defaults: ["framework-minus-apex-aconfig-java-defaults"],
186}
Victor Hsieh65bec8d2023-08-29 14:04:02 -0700187
188java_aconfig_library {
189 name: "android.security.flags-aconfig-java-host",
190 aconfig_declarations: "android.security.flags-aconfig",
191 host_supported: true,
Victor Hsieh65bec8d2023-08-29 14:04:02 -0700192 defaults: ["framework-minus-apex-aconfig-java-defaults"],
193}
Shaquille Johnsonf732f472023-09-22 23:00:59 +0100194
Eric Biggersaa6688e2023-10-20 17:07:37 +0000195rust_aconfig_library {
196 name: "libandroid_security_flags_rust",
197 crate_name: "android_security_flags",
198 aconfig_declarations: "android.security.flags-aconfig",
199}
200
Jiakai Zhang1dde3e72023-10-10 14:58:43 +0000201// Package Manager
202aconfig_declarations {
203 name: "android.content.pm.flags-aconfig",
204 package: "android.content.pm",
205 srcs: ["core/java/android/content/pm/flags.aconfig"],
206}
207
208java_aconfig_library {
209 name: "android.content.pm.flags-aconfig-java",
210 aconfig_declarations: "android.content.pm.flags-aconfig",
211 defaults: ["framework-minus-apex-aconfig-java-defaults"],
212}
213
214java_aconfig_library {
215 name: "android.content.pm.flags-aconfig-java-host",
216 aconfig_declarations: "android.content.pm.flags-aconfig",
217 host_supported: true,
218 defaults: ["framework-minus-apex-aconfig-java-defaults"],
219}
220
Jeremy Meyer16bbdc22023-10-06 15:47:17 -0700221// Resources
222aconfig_declarations {
223 name: "android.content.res.flags-aconfig",
224 package: "android.content.res",
225 srcs: ["core/java/android/content/res/*.aconfig"],
226}
227
228java_aconfig_library {
229 name: "android.content.res.flags-aconfig-java",
230 aconfig_declarations: "android.content.res.flags-aconfig",
231 defaults: ["framework-minus-apex-aconfig-java-defaults"],
232}
233
Shaquille Johnsonf732f472023-09-22 23:00:59 +0100234// Biometrics
235aconfig_declarations {
236 name: "android.hardware.biometrics.flags-aconfig",
237 package: "android.hardware.biometrics",
238 srcs: ["core/java/android/hardware/biometrics/flags.aconfig"],
239}
240
241java_aconfig_library {
242 name: "android.hardware.biometrics.flags-aconfig-java",
243 aconfig_declarations: "android.hardware.biometrics.flags-aconfig",
244 defaults: ["framework-minus-apex-aconfig-java-defaults"],
245}
Motomu Utsumid2a3e4d2023-10-12 23:25:03 +0900246
Motomu Utsumi9e80cbb2023-12-06 13:29:49 +0900247// Networking
248aconfig_declarations {
249 name: "com.android.net.flags-aconfig",
250 package: "com.android.net.flags",
251 srcs: ["core/java/android/net/flags.aconfig"],
252}
253
Kangping Dong0bb89812024-01-24 16:47:23 +0800254// Thread network
255aconfig_declarations {
256 name: "com.android.net.thread.flags-aconfig",
257 package: "com.android.net.thread.flags",
258 srcs: ["core/java/android/net/thread/flags.aconfig"],
259}
260
Motomu Utsumid2a3e4d2023-10-12 23:25:03 +0900261java_aconfig_library {
262 name: "com.android.net.flags-aconfig-java",
263 aconfig_declarations: "com.android.net.flags-aconfig",
264 defaults: ["framework-minus-apex-aconfig-java-defaults"],
265}
Yan Yand3c353f2023-10-25 01:55:01 +0000266
Kangping Dong0bb89812024-01-24 16:47:23 +0800267java_aconfig_library {
268 name: "com.android.net.thread.flags-aconfig-java",
269 aconfig_declarations: "com.android.net.thread.flags-aconfig",
270 defaults: ["framework-minus-apex-aconfig-java-defaults"],
271}
272
Venkatarama Avadhanic35577e2023-09-11 08:47:33 +0530273// Media
274aconfig_declarations {
275 name: "android.media.playback.flags-aconfig",
276 package: "com.android.media.playback.flags",
277 srcs: ["media/jni/playback_flags.aconfig"],
278}
279
280cc_aconfig_library {
281 name: "android.media.playback.flags-aconfig-cc",
282 aconfig_declarations: "android.media.playback.flags-aconfig",
283}
284
285java_aconfig_library {
286 name: "android.media.playback.flags-aconfig-java",
287 aconfig_declarations: "android.media.playback.flags-aconfig",
288 defaults: ["framework-minus-apex-aconfig-java-defaults"],
289}
290
Yan Yand3c353f2023-10-25 01:55:01 +0000291// VCN
292aconfig_declarations {
293 name: "android.net.vcn.flags-aconfig",
294 package: "android.net.vcn",
295 srcs: ["core/java/android/net/vcn/*.aconfig"],
296}
297
298java_aconfig_library {
299 name: "android.net.vcn.flags-aconfig-java",
300 aconfig_declarations: "android.net.vcn.flags-aconfig",
301 defaults: ["framework-minus-apex-aconfig-java-defaults"],
302}
Sanal Buvaev4e02cf02024-01-26 17:10:50 +0000303
304// CrashRecovery Module
305aconfig_declarations {
306 name: "android.crashrecovery.flags-aconfig",
307 package: "android.crashrecovery.flags",
308 srcs: ["packages/CrashRecovery/aconfig/flags.aconfig"],
309}
310
311java_aconfig_library {
312 name: "android.crashrecovery.flags-aconfig-java",
313 aconfig_declarations: "android.crashrecovery.flags-aconfig",
314 defaults: ["framework-minus-apex-aconfig-java-defaults"],
315}