blob: bd693850f45e1873b2504a9255bd378f4a8a6246 [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}",
Yan Yand3c353f2023-10-25 01:55:01 +000021 ":android.net.vcn.flags-aconfig-java{.generated_srcjars}",
Roshan Pius558940e2023-06-22 11:15:32 -070022 ":android.nfc.flags-aconfig-java{.generated_srcjars}",
Liz Kammer56896172023-09-20 15:15:43 +000023 ":android.os.flags-aconfig-java{.generated_srcjars}",
24 ":android.security.flags-aconfig-java{.generated_srcjars}",
25 ":com.android.hardware.camera2-aconfig-java{.generated_srcjars}",
Liz Kammer56896172023-09-20 15:15:43 +000026 ":com.android.hardware.input-aconfig-java{.generated_srcjars}",
Motomu Utsumid2a3e4d2023-10-12 23:25:03 +090027 ":com.android.net.flags-aconfig-java{.generated_srcjars}",
Lajos Molnar4fbcf2f2024-01-17 09:59:01 -080028 ":com.android.text.flags-aconfig-java{.generated_srcjars}",
29 ":com.android.window.flags.window-aconfig-java{.generated_srcjars}",
30 // !!! KEEP THIS LIST ALPHABETICAL !!!
Liz Kammer56896172023-09-20 15:15:43 +000031]
32
33filegroup {
34 name: "framework-minus-apex-aconfig-srcjars",
35 srcs: aconfig_srcjars,
36}
37
Joe Onoratocd779472023-08-19 19:49:52 -070038// Aconfig declarations and libraries for the core framework
39java_defaults {
40 name: "framework-minus-apex-aconfig-libraries",
41
42 // Add java_aconfig_libraries to here to add them to the core framework
Zhi Dou3b92dcb2023-08-30 22:12:17 +000043 // Add aconfig-annotations-lib as a dependency for the optimization
Liz Kammer56896172023-09-20 15:15:43 +000044 srcs: aconfig_srcjars,
Zhi Dou3b92dcb2023-08-30 22:12:17 +000045 libs: ["aconfig-annotations-lib"],
Joe Onoratocd779472023-08-19 19:49:52 -070046}
47
48// Default flags for java_aconfig_libraries that go into framework-minus-apex
49// These libraries will not work standalone
50java_defaults {
51 name: "framework-minus-apex-aconfig-java-defaults",
52 sdk_version: "core_platform",
53 libs: ["fake_device_config"],
54}
55
Chris Li547ae2c2023-07-28 14:01:06 +080056// Camera
Joe Onoratocd779472023-08-19 19:49:52 -070057aconfig_declarations {
58 name: "com.android.hardware.camera2-aconfig",
59 package: "com.android.hardware.camera2",
60 srcs: ["core/java/android/hardware/camera2/camera_platform.aconfig"],
61}
62
63java_aconfig_library {
64 name: "com.android.hardware.camera2-aconfig-java",
65 aconfig_declarations: "com.android.hardware.camera2-aconfig",
66 defaults: ["framework-minus-apex-aconfig-java-defaults"],
67}
Chris Li547ae2c2023-07-28 14:01:06 +080068
69// Window
70aconfig_declarations {
71 name: "com.android.window.flags.window-aconfig",
72 package: "com.android.window.flags",
73 srcs: ["core/java/android/window/flags/*.aconfig"],
74}
75
76java_aconfig_library {
77 name: "com.android.window.flags.window-aconfig-java",
78 aconfig_declarations: "com.android.window.flags.window-aconfig",
79 defaults: ["framework-minus-apex-aconfig-java-defaults"],
80}
Seigo Nonaka1e157782023-08-22 09:57:46 +090081
Josep del Rioc469f352023-08-24 18:03:06 +000082// Input
83aconfig_declarations {
84 name: "com.android.hardware.input.input-aconfig",
85 package: "com.android.hardware.input",
86 srcs: ["core/java/android/hardware/input/*.aconfig"],
87}
88
89java_aconfig_library {
90 name: "com.android.hardware.input-aconfig-java",
91 aconfig_declarations: "com.android.hardware.input.input-aconfig",
92 defaults: ["framework-minus-apex-aconfig-java-defaults"],
93}
94
Seigo Nonaka1e157782023-08-22 09:57:46 +090095// Text
96aconfig_declarations {
97 name: "com.android.text.flags-aconfig",
98 package: "com.android.text.flags",
99 srcs: ["core/java/android/text/flags/*.aconfig"],
100}
101
102java_aconfig_library {
103 name: "com.android.text.flags-aconfig-java",
104 aconfig_declarations: "com.android.text.flags-aconfig",
105 defaults: ["framework-minus-apex-aconfig-java-defaults"],
106}
Victor Hsieh529c1a732023-08-21 17:20:25 -0700107
Gil Cukierman4585b932023-08-29 15:57:05 +0000108// OS
109aconfig_declarations {
110 name: "android.os.flags-aconfig",
111 package: "android.os",
112 srcs: ["core/java/android/os/*.aconfig"],
113}
114
115java_aconfig_library {
116 name: "android.os.flags-aconfig-java",
117 aconfig_declarations: "android.os.flags-aconfig",
118 defaults: ["framework-minus-apex-aconfig-java-defaults"],
119}
120
Roshan Pius558940e2023-06-22 11:15:32 -0700121// NFC
122aconfig_declarations {
123 name: "android.nfc.flags-aconfig",
124 package: "android.nfc",
125 srcs: ["core/java/android/nfc/*.aconfig"],
126}
127
Brad Lasseyb8c4f9b2023-09-01 11:30:09 -0400128cc_aconfig_library {
129 name: "android_nfc_flags_aconfig_c_lib",
130 vendor_available: true,
131 aconfig_declarations: "android.nfc.flags-aconfig",
132 apex_available: [
133 "//apex_available:platform",
134 "com.android.nfcservices",
135 "nfc_nci.st21nfc.default",
136 ],
137 defaults: ["framework-minus-apex-aconfig-java-defaults"],
138}
139
Roshan Pius558940e2023-06-22 11:15:32 -0700140java_aconfig_library {
141 name: "android.nfc.flags-aconfig-java",
142 aconfig_declarations: "android.nfc.flags-aconfig",
Roshan Piusd1ad8ca2023-10-20 14:02:38 +0000143 min_sdk_version: "VanillaIceCream",
144 apex_available: [
145 "//apex_available:platform",
146 "com.android.nfcservices",
147 ],
Roshan Pius558940e2023-06-22 11:15:32 -0700148 defaults: ["framework-minus-apex-aconfig-java-defaults"],
149}
150
Victor Hsieh529c1a732023-08-21 17:20:25 -0700151// Security
152aconfig_declarations {
153 name: "android.security.flags-aconfig",
154 package: "android.security",
155 srcs: ["core/java/android/security/*.aconfig"],
156}
157
158java_aconfig_library {
159 name: "android.security.flags-aconfig-java",
160 aconfig_declarations: "android.security.flags-aconfig",
161 defaults: ["framework-minus-apex-aconfig-java-defaults"],
162}
Victor Hsieh65bec8d2023-08-29 14:04:02 -0700163
164java_aconfig_library {
165 name: "android.security.flags-aconfig-java-host",
166 aconfig_declarations: "android.security.flags-aconfig",
167 host_supported: true,
Victor Hsieh65bec8d2023-08-29 14:04:02 -0700168 defaults: ["framework-minus-apex-aconfig-java-defaults"],
169}
Shaquille Johnsonf732f472023-09-22 23:00:59 +0100170
Eric Biggersaa6688e2023-10-20 17:07:37 +0000171rust_aconfig_library {
172 name: "libandroid_security_flags_rust",
173 crate_name: "android_security_flags",
174 aconfig_declarations: "android.security.flags-aconfig",
175}
176
Jiakai Zhang1dde3e72023-10-10 14:58:43 +0000177// Package Manager
178aconfig_declarations {
179 name: "android.content.pm.flags-aconfig",
180 package: "android.content.pm",
181 srcs: ["core/java/android/content/pm/flags.aconfig"],
182}
183
184java_aconfig_library {
185 name: "android.content.pm.flags-aconfig-java",
186 aconfig_declarations: "android.content.pm.flags-aconfig",
187 defaults: ["framework-minus-apex-aconfig-java-defaults"],
188}
189
190java_aconfig_library {
191 name: "android.content.pm.flags-aconfig-java-host",
192 aconfig_declarations: "android.content.pm.flags-aconfig",
193 host_supported: true,
194 defaults: ["framework-minus-apex-aconfig-java-defaults"],
195}
196
Jeremy Meyer16bbdc22023-10-06 15:47:17 -0700197// Resources
198aconfig_declarations {
199 name: "android.content.res.flags-aconfig",
200 package: "android.content.res",
201 srcs: ["core/java/android/content/res/*.aconfig"],
202}
203
204java_aconfig_library {
205 name: "android.content.res.flags-aconfig-java",
206 aconfig_declarations: "android.content.res.flags-aconfig",
207 defaults: ["framework-minus-apex-aconfig-java-defaults"],
208}
209
Shaquille Johnsonf732f472023-09-22 23:00:59 +0100210// Biometrics
211aconfig_declarations {
212 name: "android.hardware.biometrics.flags-aconfig",
213 package: "android.hardware.biometrics",
214 srcs: ["core/java/android/hardware/biometrics/flags.aconfig"],
215}
216
217java_aconfig_library {
218 name: "android.hardware.biometrics.flags-aconfig-java",
219 aconfig_declarations: "android.hardware.biometrics.flags-aconfig",
220 defaults: ["framework-minus-apex-aconfig-java-defaults"],
221}
Motomu Utsumid2a3e4d2023-10-12 23:25:03 +0900222
Motomu Utsumi9e80cbb2023-12-06 13:29:49 +0900223// Networking
224aconfig_declarations {
225 name: "com.android.net.flags-aconfig",
226 package: "com.android.net.flags",
227 srcs: ["core/java/android/net/flags.aconfig"],
228}
229
Motomu Utsumid2a3e4d2023-10-12 23:25:03 +0900230java_aconfig_library {
231 name: "com.android.net.flags-aconfig-java",
232 aconfig_declarations: "com.android.net.flags-aconfig",
233 defaults: ["framework-minus-apex-aconfig-java-defaults"],
234}
Yan Yand3c353f2023-10-25 01:55:01 +0000235
Venkatarama Avadhanic35577e2023-09-11 08:47:33 +0530236// Media
237aconfig_declarations {
238 name: "android.media.playback.flags-aconfig",
239 package: "com.android.media.playback.flags",
240 srcs: ["media/jni/playback_flags.aconfig"],
241}
242
243cc_aconfig_library {
244 name: "android.media.playback.flags-aconfig-cc",
245 aconfig_declarations: "android.media.playback.flags-aconfig",
246}
247
248java_aconfig_library {
249 name: "android.media.playback.flags-aconfig-java",
250 aconfig_declarations: "android.media.playback.flags-aconfig",
251 defaults: ["framework-minus-apex-aconfig-java-defaults"],
252}
253
Yan Yand3c353f2023-10-25 01:55:01 +0000254// VCN
255aconfig_declarations {
256 name: "android.net.vcn.flags-aconfig",
257 package: "android.net.vcn",
258 srcs: ["core/java/android/net/vcn/*.aconfig"],
259}
260
261java_aconfig_library {
262 name: "android.net.vcn.flags-aconfig-java",
263 aconfig_declarations: "android.net.vcn.flags-aconfig",
264 defaults: ["framework-minus-apex-aconfig-java-defaults"],
265}