blob: db8f5b7aba969ba80b8bf7119e6f711d0c2aca4b [file] [log] [blame]
Hyunyoung Songda4fcfe2018-09-05 09:57:59 -07001// Copyright (C) 2018 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
Bob Badour4bdf3802021-02-12 17:08:17 -080015package {
16 default_applicable_licenses: ["packages_apps_Launcher3_license"],
17}
18
Sunny Goyal1fb271f2021-05-20 10:43:23 -070019min_launcher3_sdk_version = "26"
20
Bob Badour4bdf3802021-02-12 17:08:17 -080021// Added automatically by a large-scale-change
22// See: http://go/android-license-faq
23license {
24 name: "packages_apps_Launcher3_license",
25 visibility: [":__subpackages__"],
26 license_kinds: [
27 "SPDX-license-identifier-Apache-2.0",
28 ],
29 license_text: [
30 "NOTICE",
31 ],
32}
33
vadimt09df0832019-03-07 14:59:30 -080034android_library {
Hyunyoung Songda4fcfe2018-09-05 09:57:59 -070035 name: "launcher-aosp-tapl",
Thiru Ramasamyd495e8c2021-08-26 10:37:17 -070036 libs: [
37 "framework-statsd",
38 ],
Hyunyoung Songda4fcfe2018-09-05 09:57:59 -070039 static_libs: [
40 "androidx.annotation_annotation",
Brett Chabotd7d692c2018-10-23 21:17:58 -070041 "androidx.test.runner",
42 "androidx.test.rules",
Hyunyoung Songda4fcfe2018-09-05 09:57:59 -070043 "androidx.test.uiautomator_uiautomator",
Hyunyoung Songbb715822020-08-04 10:45:53 -070044 "androidx.preference_preference",
Hyunyoung Songda4fcfe2018-09-05 09:57:59 -070045 "SystemUISharedLib",
46 ],
47 srcs: [
48 "tests/tapl/**/*.java",
vadimt1b383af2019-05-08 15:29:37 -070049 "src/com/android/launcher3/ResourceUtils.java",
Sunny Goyalab3963d2019-05-23 00:50:08 -070050 "src/com/android/launcher3/testing/TestProtocol.java",
Hyunyoung Songda4fcfe2018-09-05 09:57:59 -070051 ],
Sunny Goyal572aca42021-03-24 15:21:39 -070052 resource_dirs: [ ],
vadimt09df0832019-03-07 14:59:30 -080053 manifest: "tests/tapl/AndroidManifest.xml",
Hyunyoung Songda4fcfe2018-09-05 09:57:59 -070054 platform_apis: true,
55}
thiruram5e1ecf62019-11-13 17:49:35 -080056
57java_library_static {
thiruramc1c2bfa2020-02-04 18:56:40 -080058 name: "launcher_log_protos_lite",
thiruram5e1ecf62019-11-13 17:49:35 -080059 srcs: [
60 "protos/*.proto",
thiruramcbeb13d2021-01-27 14:45:58 -080061 "protos_overrides/*.proto",
thiruram5e1ecf62019-11-13 17:49:35 -080062 ],
63 sdk_version: "current",
64 proto: {
65 type: "lite",
66 local_include_dirs:[
67 "protos",
thiruramcbeb13d2021-01-27 14:45:58 -080068 "protos_overrides",
thiruram5e1ecf62019-11-13 17:49:35 -080069 ],
70 },
thiruramc1c2bfa2020-02-04 18:56:40 -080071 static_libs: ["libprotobuf-java-lite"],
thiruram5e1ecf62019-11-13 17:49:35 -080072}
Hyunyoung Song8605be32020-02-21 14:52:25 -080073
thiruramcbeb13d2021-01-27 14:45:58 -080074java_library_static {
75 name: "launcher_quickstep_log_protos_lite",
76 srcs: [
77 "quickstep/protos_overrides/*.proto",
78 ],
79 sdk_version: "current",
80 proto: {
81 type: "lite",
82 local_include_dirs:[
83 "quickstep/protos_overrides",
84 ],
85 },
86 static_libs: [
87 "libprotobuf-java-lite",
88 "launcher_log_protos_lite"
89 ],
90}
91
Hyunyoung Song8605be32020-02-21 14:52:25 -080092java_library {
93 name: "LauncherPluginLib",
94
95 static_libs: ["PluginCoreLib"],
96
97 srcs: ["src_plugins/**/*.java"],
98
99 sdk_version: "current",
Sunny Goyal1fb271f2021-05-20 10:43:23 -0700100 min_sdk_version: min_launcher3_sdk_version,
Hyunyoung Song8605be32020-02-21 14:52:25 -0800101}
Hyunyoung Song5a007fe2021-02-25 00:58:05 -0800102
Anay Wadhera151d24f2020-10-10 22:46:40 -0700103java_import {
104 name: "libGoogleFeed",
105 jars: [
106 "libs/libGoogleFeed.jar",
107 ],
108}
109
Sunny Goyalf5c42ea2021-03-12 16:00:40 -0800110// Library with all the dependencies for building Launcher3
111android_library {
112 name: "Launcher3ResLib",
113 srcs: [ ],
114 resource_dirs: ["res"],
115 static_libs: [
116 "LauncherPluginLib",
117 "launcher_quickstep_log_protos_lite",
118 "androidx-constraintlayout_constraintlayout",
119 "androidx.recyclerview_recyclerview",
120 "androidx.dynamicanimation_dynamicanimation",
121 "androidx.fragment_fragment",
122 "androidx.preference_preference",
123 "androidx.slice_slice-view",
124 "androidx.cardview_cardview",
Brian Isganitis93031bc2021-06-09 16:34:45 -0400125 "com.google.android.material_material",
Sunny Goyalf5c42ea2021-03-12 16:00:40 -0800126 "iconloader_base",
Anay Wadhera151d24f2020-10-10 22:46:40 -0700127 "libGoogleFeed",
Danny Lin77c49d12021-10-06 20:17:10 -0700128 "colorkt",
129 "themelib",
Sunny Goyalf5c42ea2021-03-12 16:00:40 -0800130 ],
131 manifest: "AndroidManifest-common.xml",
132 sdk_version: "current",
Sunny Goyal1fb271f2021-05-20 10:43:23 -0700133 min_sdk_version: min_launcher3_sdk_version,
Pedro Loureiro1e296c12021-03-09 18:35:52 +0000134 lint: {
135 baseline_filename: "lint-baseline-res-lib.xml",
136 },
Sunny Goyalf5c42ea2021-03-12 16:00:40 -0800137}
138
Hyunyoung Song5a007fe2021-02-25 00:58:05 -0800139//
140// Build rule for Launcher3 dependencies lib.
141//
142android_library {
143 name: "Launcher3CommonDepsLib",
Sunny Goyalf5c42ea2021-03-12 16:00:40 -0800144 srcs: ["src_build_config/**/*.java"],
145 static_libs: ["Launcher3ResLib"],
Hyunyoung Song5a007fe2021-02-25 00:58:05 -0800146 sdk_version: "current",
Sunny Goyal1fb271f2021-05-20 10:43:23 -0700147 min_sdk_version: min_launcher3_sdk_version,
Hyunyoung Song5a007fe2021-02-25 00:58:05 -0800148 manifest: "AndroidManifest-common.xml",
Pedro Loureiro1e296c12021-03-09 18:35:52 +0000149 lint: {
150 baseline_filename: "lint-baseline-common-deps-lib.xml",
151 },
Hyunyoung Song5a007fe2021-02-25 00:58:05 -0800152}
153
154//
155// Build rule for Launcher3 app.
156//
157android_app {
158 name: "Launcher3",
159
160 static_libs: [
161 "Launcher3CommonDepsLib",
162 ],
163 srcs: [
164 "src/**/*.java",
Thales Lima26f44912021-10-21 15:34:28 +0100165 "src/**/*.kt",
Hyunyoung Song5a007fe2021-02-25 00:58:05 -0800166 "src_shortcuts_overrides/**/*.java",
Thales Lima26f44912021-10-21 15:34:28 +0100167 "src_shortcuts_overrides/**/*.kt",
Hyunyoung Song5a007fe2021-02-25 00:58:05 -0800168 "src_ui_overrides/**/*.java",
Thales Lima26f44912021-10-21 15:34:28 +0100169 "src_ui_overrides/**/*.kt",
Hyunyoung Song5a007fe2021-02-25 00:58:05 -0800170 "ext_tests/src/**/*.java",
Thales Lima26f44912021-10-21 15:34:28 +0100171 "ext_tests/src/**/*.kt",
Hyunyoung Song5a007fe2021-02-25 00:58:05 -0800172 ],
173 resource_dirs: [
174 "ext_tests/res",
175 ],
176 optimize: {
177 proguard_flags_files: ["proguard.flags"],
178 // Proguard is disable for testing. Derivarive prjects to keep proguard enabled
179 enabled: false,
180 },
181
182 sdk_version: "current",
Sunny Goyal1fb271f2021-05-20 10:43:23 -0700183 min_sdk_version: min_launcher3_sdk_version,
184 target_sdk_version: "current",
Hyunyoung Song5a007fe2021-02-25 00:58:05 -0800185 privileged: true,
186 system_ext_specific: true,
187
188 overrides: [
189 "Home",
190 "Launcher2",
191 ],
192 required: ["privapp_whitelist_com.android.launcher3"],
193
194 jacoco: {
195 include_filter: ["com.android.launcher3.**"],
196 },
197 additional_manifests: [
198 "AndroidManifest-common.xml",
199 ],
Pedro Loureiro1e296c12021-03-09 18:35:52 +0000200 lint: {
201 baseline_filename: "lint-baseline-launcher3.xml",
202 },
Hyunyoung Song5a007fe2021-02-25 00:58:05 -0800203}
204
Sunny Goyalf5c42ea2021-03-12 16:00:40 -0800205// Library with all the dependencies for building quickstep
206android_library {
207 name: "QuickstepResLib",
208 srcs: [ ],
209 resource_dirs: [
210 "quickstep/res",
Hyunyoung Song5a007fe2021-02-25 00:58:05 -0800211 ],
Thiru Ramasamyd495e8c2021-08-26 10:37:17 -0700212 libs: [
213 "framework-statsd",
214 ],
Sunny Goyalf5c42ea2021-03-12 16:00:40 -0800215 static_libs: [
216 "Launcher3ResLib",
Schneider Victor-tuliasd0865f82021-11-09 13:19:21 -0800217 "lottie",
Sunny Goyalf5c42ea2021-03-12 16:00:40 -0800218 "SystemUISharedLib",
219 "SystemUI-statsd",
220 ],
221 manifest: "quickstep/AndroidManifest.xml",
Sunny Goyal1fb271f2021-05-20 10:43:23 -0700222 min_sdk_version: "current",
Sunny Goyalf5c42ea2021-03-12 16:00:40 -0800223}
224
225
226// Source code used for test helpers
227filegroup {
228 name: "launcher-src-ext-tests",
Thales Lima26f44912021-10-21 15:34:28 +0100229 srcs: [
230 "ext_tests/src/**/*.java",
231 "ext_tests/src/**/*.kt",
232 ],
Sunny Goyalf5c42ea2021-03-12 16:00:40 -0800233}
234
235// Common source files used to build launcher
236filegroup {
237 name: "launcher-src-no-build-config",
Hyunyoung Song5a007fe2021-02-25 00:58:05 -0800238 srcs: [
239 "src/**/*.java",
Thales Lima26f44912021-10-21 15:34:28 +0100240 "src/**/*.kt",
Hyunyoung Song5a007fe2021-02-25 00:58:05 -0800241 "src_shortcuts_overrides/**/*.java",
Thales Lima26f44912021-10-21 15:34:28 +0100242 "src_shortcuts_overrides/**/*.kt",
Sunny Goyalf5c42ea2021-03-12 16:00:40 -0800243 "quickstep/src/**/*.java",
Thales Lima26f44912021-10-21 15:34:28 +0100244 "quickstep/src/**/*.kt",
Hyunyoung Song5a007fe2021-02-25 00:58:05 -0800245 ],
Sunny Goyalf5c42ea2021-03-12 16:00:40 -0800246}
247
248// Proguard files for Launcher3
249filegroup {
250 name: "launcher-proguard-rules",
251 srcs: ["proguard.flags"],
Hyunyoung Song5a007fe2021-02-25 00:58:05 -0800252}
Jon Spivacka65d68b2021-04-07 10:22:25 -0700253
Jon Spivacka65d68b2021-04-07 10:22:25 -0700254// Library with all the dependencies for building Launcher Go
255android_library {
256 name: "LauncherGoResLib",
257 srcs: [
258 "src/**/*.java",
Thales Lima26f44912021-10-21 15:34:28 +0100259 "src/**/*.kt",
Jon Spivacka65d68b2021-04-07 10:22:25 -0700260 "quickstep/src/**/*.java",
Thales Lima26f44912021-10-21 15:34:28 +0100261 "quickstep/src/**/*.kt",
Jon Spivacka65d68b2021-04-07 10:22:25 -0700262 "go/src/**/*.java",
Thales Lima26f44912021-10-21 15:34:28 +0100263 "go/src/**/*.kt",
Jon Spivacka65d68b2021-04-07 10:22:25 -0700264 "go/quickstep/src/**/*.java",
Thales Lima26f44912021-10-21 15:34:28 +0100265 "go/quickstep/src/**/*.kt",
Jon Spivacka65d68b2021-04-07 10:22:25 -0700266 ],
267 resource_dirs: [
268 "go/res",
269 "go/quickstep/res",
270 ],
Ben Murdochfabc8732021-12-02 18:22:17 +0000271 // Note the ordering here is important when it comes to resource
272 // overriding. We want the most specific resource overrides defined
273 // in QuickstepResLib to take precendece, so it should be the final
274 // dependency. See b/205278434 for how this can go wrong.
Jon Spivacka65d68b2021-04-07 10:22:25 -0700275 static_libs: [
Thales Lima10eb3cd2021-10-25 16:45:57 +0100276 "Launcher3CommonDepsLib",
Greg Kaiser24898d32021-11-05 16:18:33 +0000277 "QuickstepResLib",
Jon Spivacka65d68b2021-04-07 10:22:25 -0700278 ],
279 manifest: "quickstep/AndroidManifest-launcher.xml",
280 additional_manifests: [
281 "go/AndroidManifest.xml",
282 "AndroidManifest-common.xml",
283 ],
Sunny Goyal1fb271f2021-05-20 10:43:23 -0700284 min_sdk_version: "current",
Pedro Loureiro1e296c12021-03-09 18:35:52 +0000285 lint: {
286 baseline_filename: "lint-baseline-go-res-lib.xml",
287 },
Jon Spivacka65d68b2021-04-07 10:22:25 -0700288}
289
Sunny Goyal4af8cf92021-07-29 15:48:24 -0700290// Build rule for Quickstep library
291android_library {
292 name: "Launcher3QuickStepLib",
293 srcs: [
294 ":launcher-src-no-build-config",
295 ],
Thales Limac335ad22021-11-08 15:31:49 +0000296 resource_dirs: [],
Thiru Ramasamyd495e8c2021-08-26 10:37:17 -0700297 libs: [
298 "framework-statsd",
299 ],
Ben Murdochfabc8732021-12-02 18:22:17 +0000300 // Note the ordering here is important when it comes to resource
301 // overriding. We want the most specific resource overrides defined
302 // in QuickstepResLib to take precendece, so it should be the final
303 // dependency. See b/208647810 for how this can go wrong.
Sunny Goyal4af8cf92021-07-29 15:48:24 -0700304 static_libs: [
305 "SystemUI-statsd",
306 "SystemUISharedLib",
Thales Limac335ad22021-11-08 15:31:49 +0000307 "Launcher3CommonDepsLib",
Ben Murdochfabc8732021-12-02 18:22:17 +0000308 "QuickstepResLib",
Sunny Goyal4af8cf92021-07-29 15:48:24 -0700309 ],
310 manifest: "quickstep/AndroidManifest.xml",
311 platform_apis: true,
312 min_sdk_version: "current",
313 lint: {
314 baseline_filename: "lint-baseline-launcher3.xml",
315 },
316}