1//
2// Copyright (C) 2018 The Android Open Source Project
3//
4// Licensed under the Apache License, Version 2.0 (the "License");
5// you may not use this file except in compliance with the License.
6// You may obtain a copy of the License at
7//
8//      http://www.apache.org/licenses/LICENSE-2.0
9//
10// Unless required by applicable law or agreed to in writing, software
11// distributed under the License is distributed on an "AS IS" BASIS,
12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13// See the License for the specific language governing permissions and
14// limitations under the License.
15//
16
17package {
18    default_applicable_licenses: ["frameworks_base_packages_SystemUI_license"],
19}
20
21// Added automatically by a large-scale-change
22// See: http://go/android-license-faq
23license {
24    name: "frameworks_base_packages_SystemUI_license",
25    visibility: [":__subpackages__"],
26    license_kinds: [
27        "SPDX-license-identifier-Apache-2.0",
28    ],
29    license_text: [
30        "NOTICE",
31    ],
32}
33
34java_library {
35    name: "SystemUI-proto",
36
37    srcs: ["src/**/*.proto"],
38
39    proto: {
40        type: "nano",
41    },
42
43    libs: [
44        "WindowManager-Shell-proto",
45    ],
46}
47
48java_library {
49    name: "SystemUI-tags",
50    srcs: ["src/com/android/systemui/EventLogTags.logtags"],
51}
52
53android_library {
54    name: "SystemUI-core",
55    srcs: [
56        "src/**/*.kt",
57        "src/**/*.java",
58        "src/**/I*.aidl",
59    ],
60    resource_dirs: [
61        "res-product",
62        "res-keyguard",
63        "res",
64    ],
65    static_libs: [
66        "WindowManager-Shell",
67        "SystemUIAnimationLib",
68        "SystemUIPluginLib",
69        "SystemUISharedLib",
70        "SystemUI-statsd",
71        "SettingsLib",
72        "androidx.viewpager2_viewpager2",
73        "androidx.legacy_legacy-support-v4",
74        "androidx.recyclerview_recyclerview",
75        "androidx.preference_preference",
76        "androidx.appcompat_appcompat",
77        "androidx.concurrent_concurrent-futures",
78        "androidx.mediarouter_mediarouter",
79        "androidx.palette_palette",
80        "androidx.legacy_legacy-preference-v14",
81        "androidx.leanback_leanback",
82        "androidx.slice_slice-core",
83        "androidx.slice_slice-view",
84        "androidx.slice_slice-builders",
85        "androidx.arch.core_core-runtime",
86        "androidx.lifecycle_lifecycle-extensions",
87        "androidx.dynamicanimation_dynamicanimation",
88        "androidx-constraintlayout_constraintlayout",
89        "androidx.exifinterface_exifinterface",
90        "kotlinx_coroutines_android",
91        "kotlinx_coroutines",
92        "iconloader_base",
93        "SystemUI-tags",
94        "SystemUI-proto",
95        "dagger2",
96        "jsr330",
97        "lottie",
98    ],
99    manifest: "AndroidManifest.xml",
100
101    kotlincflags: ["-Xjvm-default=enable"],
102
103    plugins: ["dagger2-compiler"],
104}
105
106filegroup {
107    name: "SystemUI-tests-utils",
108    srcs: [
109        "tests/src/com/android/systemui/SysuiTestCase.java",
110        "tests/src/com/android/systemui/TestableDependency.java",
111        "tests/src/com/android/systemui/classifier/FalsingManagerFake.java",
112        "tests/src/com/android/systemui/statusbar/notification/collection/NotificationEntryBuilder.java",
113        "tests/src/com/android/systemui/statusbar/RankingBuilder.java",
114        "tests/src/com/android/systemui/statusbar/SbnBuilder.java",
115        "tests/src/com/android/systemui/SysuiTestableContext.java",
116        "tests/src/com/android/systemui/utils/leaks/BaseLeakChecker.java",
117        "tests/src/com/android/systemui/utils/leaks/LeakCheckedTest.java",
118        "tests/src/com/android/systemui/**/Fake*.java",
119        "tests/src/com/android/systemui/**/Fake*.kt",
120    ],
121    exclude_srcs: [
122        "tests/src/com/android/systemui/**/*Test.java",
123        "tests/src/com/android/systemui/**/*Test.kt",
124    ],
125    path: "tests/src",
126}
127
128android_library {
129    name: "SystemUI-tests",
130    manifest: "tests/AndroidManifest-base.xml",
131    additional_manifests: ["tests/AndroidManifest.xml"],
132
133    resource_dirs: [
134        "tests/res",
135        "res-product",
136        "res-keyguard",
137        "res",
138    ],
139    srcs: [
140        "tests/src/**/*.kt",
141        "tests/src/**/*.java",
142        "src/**/*.kt",
143        "src/**/*.java",
144        "src/**/I*.aidl",
145    ],
146    static_libs: [
147        "SystemUIAnimationLib",
148        "SystemUIPluginLib",
149        "SystemUISharedLib",
150        "SystemUI-statsd",
151        "SettingsLib",
152        "androidx.viewpager2_viewpager2",
153        "androidx.legacy_legacy-support-v4",
154        "androidx.recyclerview_recyclerview",
155        "androidx.preference_preference",
156        "androidx.appcompat_appcompat",
157        "androidx.concurrent_concurrent-futures",
158        "androidx.mediarouter_mediarouter",
159        "androidx.palette_palette",
160        "androidx.legacy_legacy-preference-v14",
161        "androidx.leanback_leanback",
162        "androidx.slice_slice-core",
163        "androidx.slice_slice-view",
164        "androidx.slice_slice-builders",
165        "androidx.arch.core_core-runtime",
166        "androidx.lifecycle_lifecycle-extensions",
167        "androidx.dynamicanimation_dynamicanimation",
168        "androidx-constraintlayout_constraintlayout",
169        "androidx.exifinterface_exifinterface",
170        "kotlinx-coroutines-android",
171        "kotlinx-coroutines-core",
172        "iconloader_base",
173        "SystemUI-tags",
174        "SystemUI-proto",
175        "metrics-helper-lib",
176        "hamcrest-library",
177        "androidx.test.rules",
178        "androidx.test.uiautomator",
179        "mockito-target-extended-minus-junit4",
180        "testables",
181        "truth-prebuilt",
182        "dagger2",
183        "jsr330",
184        "WindowManager-Shell",
185    ],
186    libs: [
187        "android.test.runner",
188        "android.test.base",
189    ],
190    kotlincflags: ["-Xjvm-default=enable"],
191    aaptflags: [
192        "--extra-packages",
193        "com.android.systemui",
194    ],
195    plugins: ["dagger2-compiler"],
196}
197
198android_app {
199    name: "SystemUI",
200    defaults: ["platform_app_defaults"],
201    static_libs: [
202        "SystemUI-core",
203    ],
204    resource_dirs: [],
205
206    platform_apis: true,
207    system_ext_specific: true,
208    certificate: "platform",
209    privileged: true,
210
211    optimize: {
212        proguard_flags_files: ["proguard.flags"],
213    },
214
215    kotlincflags: ["-Xjvm-default=enable"],
216
217    dxflags: ["--multi-dex"],
218    required: [
219        "privapp_whitelist_com.android.systemui",
220    ],
221}
222