blob: e0745faecf5ae2dfc42880463a13e2a692307bb2 [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 = [
Jiakai Zhang1dde3e72023-10-10 14:58:43 +000016 ":android.content.pm.flags-aconfig-java{.generated_srcjars}",
Shaquille Johnsonf732f472023-09-22 23:00:59 +010017 ":android.hardware.biometrics.flags-aconfig-java{.generated_srcjars}",
Yan Yand3c353f2023-10-25 01:55:01 +000018 ":android.net.vcn.flags-aconfig-java{.generated_srcjars}",
Roshan Pius558940e2023-06-22 11:15:32 -070019 ":android.nfc.flags-aconfig-java{.generated_srcjars}",
Liz Kammer56896172023-09-20 15:15:43 +000020 ":android.os.flags-aconfig-java{.generated_srcjars}",
21 ":android.security.flags-aconfig-java{.generated_srcjars}",
22 ":com.android.hardware.camera2-aconfig-java{.generated_srcjars}",
23 ":com.android.window.flags.window-aconfig-java{.generated_srcjars}",
24 ":com.android.hardware.input-aconfig-java{.generated_srcjars}",
25 ":com.android.text.flags-aconfig-java{.generated_srcjars}",
Motomu Utsumid2a3e4d2023-10-12 23:25:03 +090026 ":com.android.net.flags-aconfig-java{.generated_srcjars}",
Liz Kammer56896172023-09-20 15:15:43 +000027]
28
29filegroup {
30 name: "framework-minus-apex-aconfig-srcjars",
31 srcs: aconfig_srcjars,
32}
33
Joe Onoratocd779472023-08-19 19:49:52 -070034// Aconfig declarations and libraries for the core framework
35java_defaults {
36 name: "framework-minus-apex-aconfig-libraries",
37
38 // Add java_aconfig_libraries to here to add them to the core framework
Zhi Dou3b92dcb2023-08-30 22:12:17 +000039 // Add aconfig-annotations-lib as a dependency for the optimization
Liz Kammer56896172023-09-20 15:15:43 +000040 srcs: aconfig_srcjars,
Zhi Dou3b92dcb2023-08-30 22:12:17 +000041 libs: ["aconfig-annotations-lib"],
Joe Onoratocd779472023-08-19 19:49:52 -070042}
43
44// Default flags for java_aconfig_libraries that go into framework-minus-apex
45// These libraries will not work standalone
46java_defaults {
47 name: "framework-minus-apex-aconfig-java-defaults",
48 sdk_version: "core_platform",
49 libs: ["fake_device_config"],
50}
51
Chris Li547ae2c2023-07-28 14:01:06 +080052// Camera
Joe Onoratocd779472023-08-19 19:49:52 -070053aconfig_declarations {
54 name: "com.android.hardware.camera2-aconfig",
55 package: "com.android.hardware.camera2",
56 srcs: ["core/java/android/hardware/camera2/camera_platform.aconfig"],
57}
58
59java_aconfig_library {
60 name: "com.android.hardware.camera2-aconfig-java",
61 aconfig_declarations: "com.android.hardware.camera2-aconfig",
62 defaults: ["framework-minus-apex-aconfig-java-defaults"],
63}
Chris Li547ae2c2023-07-28 14:01:06 +080064
65// Window
66aconfig_declarations {
67 name: "com.android.window.flags.window-aconfig",
68 package: "com.android.window.flags",
69 srcs: ["core/java/android/window/flags/*.aconfig"],
70}
71
72java_aconfig_library {
73 name: "com.android.window.flags.window-aconfig-java",
74 aconfig_declarations: "com.android.window.flags.window-aconfig",
75 defaults: ["framework-minus-apex-aconfig-java-defaults"],
76}
Seigo Nonaka1e157782023-08-22 09:57:46 +090077
Josep del Rioc469f352023-08-24 18:03:06 +000078// Input
79aconfig_declarations {
80 name: "com.android.hardware.input.input-aconfig",
81 package: "com.android.hardware.input",
82 srcs: ["core/java/android/hardware/input/*.aconfig"],
83}
84
85java_aconfig_library {
86 name: "com.android.hardware.input-aconfig-java",
87 aconfig_declarations: "com.android.hardware.input.input-aconfig",
88 defaults: ["framework-minus-apex-aconfig-java-defaults"],
89}
90
Seigo Nonaka1e157782023-08-22 09:57:46 +090091// Text
92aconfig_declarations {
93 name: "com.android.text.flags-aconfig",
94 package: "com.android.text.flags",
95 srcs: ["core/java/android/text/flags/*.aconfig"],
96}
97
98java_aconfig_library {
99 name: "com.android.text.flags-aconfig-java",
100 aconfig_declarations: "com.android.text.flags-aconfig",
101 defaults: ["framework-minus-apex-aconfig-java-defaults"],
102}
Victor Hsieh529c1a732023-08-21 17:20:25 -0700103
Gil Cukierman4585b932023-08-29 15:57:05 +0000104// OS
105aconfig_declarations {
106 name: "android.os.flags-aconfig",
107 package: "android.os",
108 srcs: ["core/java/android/os/*.aconfig"],
109}
110
111java_aconfig_library {
112 name: "android.os.flags-aconfig-java",
113 aconfig_declarations: "android.os.flags-aconfig",
114 defaults: ["framework-minus-apex-aconfig-java-defaults"],
115}
116
Roshan Pius558940e2023-06-22 11:15:32 -0700117// NFC
118aconfig_declarations {
119 name: "android.nfc.flags-aconfig",
120 package: "android.nfc",
121 srcs: ["core/java/android/nfc/*.aconfig"],
122}
123
Brad Lasseyb8c4f9b2023-09-01 11:30:09 -0400124cc_aconfig_library {
125 name: "android_nfc_flags_aconfig_c_lib",
126 vendor_available: true,
127 aconfig_declarations: "android.nfc.flags-aconfig",
128 apex_available: [
129 "//apex_available:platform",
130 "com.android.nfcservices",
131 "nfc_nci.st21nfc.default",
132 ],
133 defaults: ["framework-minus-apex-aconfig-java-defaults"],
134}
135
Roshan Pius558940e2023-06-22 11:15:32 -0700136java_aconfig_library {
137 name: "android.nfc.flags-aconfig-java",
138 aconfig_declarations: "android.nfc.flags-aconfig",
Roshan Piusd1ad8ca2023-10-20 14:02:38 +0000139 min_sdk_version: "VanillaIceCream",
140 apex_available: [
141 "//apex_available:platform",
142 "com.android.nfcservices",
143 ],
Roshan Pius558940e2023-06-22 11:15:32 -0700144 defaults: ["framework-minus-apex-aconfig-java-defaults"],
145}
146
Victor Hsieh529c1a732023-08-21 17:20:25 -0700147// Security
148aconfig_declarations {
149 name: "android.security.flags-aconfig",
150 package: "android.security",
151 srcs: ["core/java/android/security/*.aconfig"],
152}
153
154java_aconfig_library {
155 name: "android.security.flags-aconfig-java",
156 aconfig_declarations: "android.security.flags-aconfig",
157 defaults: ["framework-minus-apex-aconfig-java-defaults"],
158}
Victor Hsieh65bec8d2023-08-29 14:04:02 -0700159
160java_aconfig_library {
161 name: "android.security.flags-aconfig-java-host",
162 aconfig_declarations: "android.security.flags-aconfig",
163 host_supported: true,
164 test: true,
165 defaults: ["framework-minus-apex-aconfig-java-defaults"],
166}
Shaquille Johnsonf732f472023-09-22 23:00:59 +0100167
Eric Biggersaa6688e2023-10-20 17:07:37 +0000168rust_aconfig_library {
169 name: "libandroid_security_flags_rust",
170 crate_name: "android_security_flags",
171 aconfig_declarations: "android.security.flags-aconfig",
172}
173
Jiakai Zhang1dde3e72023-10-10 14:58:43 +0000174// Package Manager
175aconfig_declarations {
176 name: "android.content.pm.flags-aconfig",
177 package: "android.content.pm",
178 srcs: ["core/java/android/content/pm/flags.aconfig"],
179}
180
181java_aconfig_library {
182 name: "android.content.pm.flags-aconfig-java",
183 aconfig_declarations: "android.content.pm.flags-aconfig",
184 defaults: ["framework-minus-apex-aconfig-java-defaults"],
185}
186
187java_aconfig_library {
188 name: "android.content.pm.flags-aconfig-java-host",
189 aconfig_declarations: "android.content.pm.flags-aconfig",
190 host_supported: true,
191 defaults: ["framework-minus-apex-aconfig-java-defaults"],
192}
193
Shaquille Johnsonf732f472023-09-22 23:00:59 +0100194// Biometrics
195aconfig_declarations {
196 name: "android.hardware.biometrics.flags-aconfig",
197 package: "android.hardware.biometrics",
198 srcs: ["core/java/android/hardware/biometrics/flags.aconfig"],
199}
200
201java_aconfig_library {
202 name: "android.hardware.biometrics.flags-aconfig-java",
203 aconfig_declarations: "android.hardware.biometrics.flags-aconfig",
204 defaults: ["framework-minus-apex-aconfig-java-defaults"],
205}
Motomu Utsumid2a3e4d2023-10-12 23:25:03 +0900206
207// CoreNetworking
208java_aconfig_library {
209 name: "com.android.net.flags-aconfig-java",
210 aconfig_declarations: "com.android.net.flags-aconfig",
211 defaults: ["framework-minus-apex-aconfig-java-defaults"],
212}
Yan Yand3c353f2023-10-25 01:55:01 +0000213
Venkatarama Avadhanic35577e2023-09-11 08:47:33 +0530214// Media
215aconfig_declarations {
216 name: "android.media.playback.flags-aconfig",
217 package: "com.android.media.playback.flags",
218 srcs: ["media/jni/playback_flags.aconfig"],
219}
220
221cc_aconfig_library {
222 name: "android.media.playback.flags-aconfig-cc",
223 aconfig_declarations: "android.media.playback.flags-aconfig",
224}
225
226java_aconfig_library {
227 name: "android.media.playback.flags-aconfig-java",
228 aconfig_declarations: "android.media.playback.flags-aconfig",
229 defaults: ["framework-minus-apex-aconfig-java-defaults"],
230}
231
Yan Yand3c353f2023-10-25 01:55:01 +0000232// VCN
233aconfig_declarations {
234 name: "android.net.vcn.flags-aconfig",
235 package: "android.net.vcn",
236 srcs: ["core/java/android/net/vcn/*.aconfig"],
237}
238
239java_aconfig_library {
240 name: "android.net.vcn.flags-aconfig-java",
241 aconfig_declarations: "android.net.vcn.flags-aconfig",
242 defaults: ["framework-minus-apex-aconfig-java-defaults"],
243}