1// Copyright (C) 2014 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
15// Classic TvSettings
16package {
17    default_applicable_licenses: ["Android-Apache-2.0"],
18}
19
20android_app {
21    name: "TvSettings",
22    manifest: "Settings/AndroidManifest.xml",
23    srcs: [
24        "Settings/src/**/*.java",
25        "Settings/src/**/I*.aidl",
26    ],
27     aidl: {
28            local_include_dirs: ["Settings/src"],
29        },
30    resource_dirs: ["Settings/res"],
31    defaults: ["SettingsLibDefaults"],
32    platform_apis: true,
33    certificate: "platform",
34    system_ext_specific: true,
35    required: ["privapp_whitelist_com.android.tv.settings"],
36    optimize: {
37        proguard_flags_files: ["Settings/proguard.cfg"],
38    },
39    privileged: true,
40    static_libs: [
41        "androidx-constraintlayout_constraintlayout",
42        "androidx.recyclerview_recyclerview",
43        "androidx.preference_preference",
44        "androidx.appcompat_appcompat",
45        "androidx.legacy_legacy-preference-v14",
46        "androidx.leanback_leanback-preference",
47        "androidx.leanback_leanback",
48        "androidx.lifecycle_lifecycle-extensions",
49        "androidx.lifecycle_lifecycle-common-java8",
50        "androidx.annotation_annotation",
51        "statslog-tvsettings",
52        "tvsettings-logtags",
53        "TwoPanelSettingsLib",
54        "zxing-core-1.7",
55    ],
56}
57
58// Two-panel TvSettings
59android_app {
60    name: "TvSettingsTwoPanel",
61    manifest: "Settings/AndroidManifest.xml",
62    srcs: [
63        "Settings/src/**/*.java",
64        "Settings/src/**/I*.aidl",
65    ],
66     aidl: {
67            local_include_dirs: ["Settings/src"],
68        },
69    // Resources in res-twopanel should be applied last so they take precedence
70    resource_dirs: [
71        "Settings/res",
72        "Settings/res-twopanel",
73    ],
74    overrides: ["TvSettings"],
75    defaults: ["SettingsLibDefaults"],
76    platform_apis: true,
77    certificate: "platform",
78    system_ext_specific: true,
79    required: ["privapp_whitelist_com.android.tv.settings"],
80    optimize: {
81        proguard_flags_files: ["Settings/proguard.cfg"],
82    },
83    privileged: true,
84    static_libs: [
85        "androidx-constraintlayout_constraintlayout",
86        "androidx.recyclerview_recyclerview",
87        "androidx.preference_preference",
88        "androidx.appcompat_appcompat",
89        "androidx.legacy_legacy-preference-v14",
90        "androidx.leanback_leanback-preference",
91        "androidx.leanback_leanback",
92        "androidx.lifecycle_lifecycle-extensions",
93        "androidx.lifecycle_lifecycle-common-java8",
94        "androidx.annotation_annotation",
95        "statslog-tvsettings",
96        "tvsettings-logtags",
97        "TwoPanelSettingsLib",
98        "zxing-core-1.7",
99    ],
100    jacoco: {
101        include_filter: [
102            "com.android.tv.settings.*",
103            "com.android.settingslib.*",
104            "com.android.tv.twopanelsettingsoverlay.*",
105        ],
106    },
107}
108