blob: b8dcbe5762baf0e921eea42aa4c6f577dd1cbcd4 [file] [log] [blame]
Santiago Etchebehere0b1d66e2021-03-04 18:25:05 -08001//
2// Copyright (C) 2021 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
17
Bob Badoure9c20682021-03-19 03:30:57 -070018package {
19 default_applicable_licenses: ["Android-Apache-2.0"],
20}
21
Santiago Etchebehere0b1d66e2021-03-04 18:25:05 -080022filegroup {
23 name: "ThemePicker_srcs",
24 srcs: [
25 "src/**/*.java",
26 "src/**/*.kt",
27 ],
28}
29
30filegroup {
Chris Poultneyf5109062022-12-20 19:57:42 +000031 name: "ThemePicker_src_overrides",
32 srcs: [
33 "src_override/**/*.java",
34 "src_override/**/*.kt",
35 ],
36}
37
38filegroup {
Santiago Etchebehere0b1d66e2021-03-04 18:25:05 -080039 name: "ThemePicker_Manifest",
40 srcs: [
41 "AndroidManifest.xml",
42 ],
43}
44
45genrule {
46 name: "ThemePicker_res",
47 tools: ["soong_zip"],
48 srcs: [
George Lin621fb8f2022-07-29 21:13:41 +000049 "res/**/*",
Santiago Etchebehere0b1d66e2021-03-04 18:25:05 -080050 ],
51 out: ["ThemePicker_res.zip"],
52 cmd: "INPUTS=($(in)) && "
53 + "RES_DIR=$$(dirname $$(dirname $${INPUTS[0]})) && "
Colin Cross928f3132021-05-11 18:32:09 +000054 + "$(location soong_zip) -o $(out) -C $$RES_DIR -D $$RES_DIR"
Santiago Etchebehere0b1d66e2021-03-04 18:25:05 -080055}
56
Chris Poultneyf5109062022-12-20 19:57:42 +000057genrule {
58 name: "ThemePicker_res_overrides",
59 tools: ["soong_zip"],
60 srcs: [
61 "res_override/**/*",
62 ],
63 out: ["ThemePicker_res_overrides.zip"],
64 cmd: "INPUTS=($(in)) && "
65 + "RES_DIR=$$(dirname $$(dirname $${INPUTS[0]})) && "
66 + "$(location soong_zip) -o $(out) -C $$RES_DIR -D $$RES_DIR"
67}
68
69java_defaults {
70 name: "ThemePicker_defaults",
Santiago Etchebehere0b1d66e2021-03-04 18:25:05 -080071
72 static_libs: [
Kunhung Li53fc4d52022-02-12 16:58:06 +080073 "guava",
74 "monet",
Alejandro Nijamkin0f02b082022-11-24 13:43:43 -080075 "renderscript_toolkit",
Santiago Etchebehere0b1d66e2021-03-04 18:25:05 -080076 "wallpaper-common-deps",
Chihhang Chuangc21a3ff2021-06-08 12:53:24 +080077 "SettingsLibSettingsTheme",
Santiago Etchebehere0b1d66e2021-03-04 18:25:05 -080078 "SystemUI-statsd",
Chihhang Chuangc21a3ff2021-06-08 12:53:24 +080079 "styleprotoslite",
Alejandro Nijamkin7a062282023-02-06 13:38:40 -080080 "androidx.lifecycle_lifecycle-livedata-ktx",
Alejandro Nijamkin0f02b082022-11-24 13:43:43 -080081 "androidx.lifecycle_lifecycle-runtime-ktx",
82 "androidx.lifecycle_lifecycle-viewmodel-ktx",
83 "androidx.recyclerview_recyclerview",
84 "SystemUICustomizationLib",
Santiago Etchebehere0b1d66e2021-03-04 18:25:05 -080085 ],
86
Ching-Sung Libdf34222022-03-30 15:19:13 +080087 jni_libs: [
88 "librenderscript-toolkit",
89 ],
90
Santiago Etchebehere0b1d66e2021-03-04 18:25:05 -080091 srcs: [
92 ":WallpaperPicker2_srcs",
93 ":ThemePicker_srcs",
Chris Poultneyf5109062022-12-20 19:57:42 +000094 ":ThemePicker_src_overrides",
George Lin621fb8f2022-07-29 21:13:41 +000095 ],
96
Edward Savage-Jonesd325f172022-05-13 00:49:59 +020097 required: ["android.software.theme_picker.xml"],
98
Santiago Etchebehere0b1d66e2021-03-04 18:25:05 -080099 use_embedded_native_libs: true,
100
Chris Poultneyf5109062022-12-20 19:57:42 +0000101 resource_zips: [":WallpaperPicker2_res", ":ThemePicker_res", ":ThemePicker_res_overrides"],
Santiago Etchebehere0b1d66e2021-03-04 18:25:05 -0800102
103 optimize: {
104 enabled: false,
105 },
Colin Cross9088a452023-07-19 14:26:55 -0700106 kotlincflags: ["-Xjvm-default=all"],
Santiago Etchebehere0b1d66e2021-03-04 18:25:05 -0800107 certificate: "",
108
109 privileged: true,
110 system_ext_specific: true,
Chris Poultneyf5109062022-12-20 19:57:42 +0000111}
112
Edward Savage-Jonesd325f172022-05-13 00:49:59 +0200113prebuilt_etc {
114 name: "android.software.theme_picker.xml",
115 system_ext_specific: true,
116 sub_dir: "permissions",
117 src: "android.software.theme_picker.xml",
118}
119
Chris Poultneyf5109062022-12-20 19:57:42 +0000120//
121// Build app code.
122//
123android_app {
124 name: "ThemePicker",
125 defaults: ["ThemePicker_defaults"],
126
Santiago Etchebehere0b1d66e2021-03-04 18:25:05 -0800127 platform_apis: true,
128 manifest: "AndroidManifest.xml",
Chihhang Chuangd2ece572021-06-17 22:40:26 +0800129 additional_manifests: [":WallpaperPicker2_Manifest"],
Santiago Etchebehere0b1d66e2021-03-04 18:25:05 -0800130 overrides: ["WallpaperPicker2"],
131}