• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1package {
2    // See: http://go/android-license-faq
3    // A large-scale-change added 'default_applicable_licenses' to import
4    // all of the 'license_kinds' from "frameworks_base_license"
5    // to get the below license kinds:
6    //   SPDX-license-identifier-Apache-2.0
7    default_applicable_licenses: ["frameworks_base_license"],
8}
9
10android_library {
11    name: "SettingsLib",
12    defaults: [
13        "SettingsLibAvatarPickerDefaults",
14        "SettingsLintDefaults",
15    ],
16
17    static_libs: [
18        "androidx.localbroadcastmanager_localbroadcastmanager",
19        "androidx.room_room-runtime",
20        "androidx.sqlite_sqlite",
21        "guava",
22        "zxing-core",
23
24        "//frameworks/libs/systemui:iconloader",
25        "WifiTrackerLibRes",
26        "setupdesign",
27
28        "SettingsLibActionBarShadow",
29        "SettingsLibActionButtonsPreference",
30        "SettingsLibAdaptiveIcon",
31        "SettingsLibAppPreference",
32        "SettingsLibBannerMessagePreference",
33        "SettingsLibBarChartPreference",
34        "SettingsLibBulletPreference",
35        "SettingsLibButtonPreference",
36        "SettingsLibCardPreference",
37        "SettingsLibCollapsingToolbarBaseActivity",
38        "SettingsLibDeviceStateRotationLock",
39        "SettingsLibDisplayUtils",
40        "SettingsLibEmergencyNumber",
41        "SettingsLibEntityHeaderWidgets",
42        "SettingsLibExpandablePreference",
43        "SettingsLibFooterPreference",
44        "SettingsLibHelpUtils",
45        "SettingsLibIllustrationPreference",
46        "SettingsLibIntroPreference",
47        "SettingsLibLayoutPreference",
48        "SettingsLibMainSwitchPreference",
49        "SettingsLibMetadata",
50        "SettingsLibPreference",
51        "SettingsLibProfileSelector",
52        "SettingsLibProgressBar",
53        "SettingsLibRestrictedLockUtils",
54        "SettingsLibSearchWidget",
55        "SettingsLibSegmentedButtonPreference",
56        "SettingsLibSelectorWithWidgetPreference",
57        "SettingsLibSettingsSpinner",
58        "SettingsLibSettingsTransition",
59        "SettingsLibSliderPreference",
60        "SettingsLibStatusBannerPreference",
61        "SettingsLibTopIntroPreference",
62        "SettingsLibTwoTargetPreference",
63        "SettingsLibUsageProgressBarPreference",
64        "SettingsLibUtils",
65        "SettingsLibZeroStatePreference",
66        "settingslib_media_flags_lib",
67    ],
68    libs: [
69        // This flag library has been added in frameworks jar
70        "aconfig_settingslib_flags_java_lib",
71        "wifi_framework_aconfig_flags_lib",
72    ],
73    plugins: ["androidx.room_room-compiler-plugin"],
74    use_resource_processor: true,
75    resource_dirs: ["res"],
76
77    srcs: [
78        "src/**/*.java",
79        "src/**/*.kt",
80        "src/**/I*.aidl",
81    ],
82    kotlincflags: ["-Xjvm-default=all"],
83}
84
85// defaults for lint option
86java_defaults {
87    name: "SettingsLintDefaults",
88    lint: {
89        extra_check_modules: [
90            "SettingsLibLintChecker",
91        ],
92    },
93}
94
95// NOTE: Keep this module in sync with ./common.mk
96java_defaults {
97    name: "SettingsLibDefaults",
98    static_libs: [
99        "SettingsLib",
100    ],
101}
102
103aconfig_declarations {
104    name: "settingslib_media_flags",
105    package: "com.android.settingslib.media.flags",
106    container: "system",
107    srcs: [
108        "aconfig/settingslib_media_flag_declarations.aconfig",
109    ],
110}
111
112java_aconfig_library {
113    name: "settingslib_media_flags_lib",
114    aconfig_declarations: "settingslib_media_flags",
115}
116
117soong_config_module_type {
118    name: "avatar_picker_java_defaults",
119    module_type: "java_defaults",
120    config_namespace: "SettingsLib",
121    bool_variables: [
122        "legacy_avatar_picker_app_enabled",
123    ],
124    properties: [
125        "manifest",
126        "static_libs",
127    ],
128}
129
130soong_config_bool_variable {
131    name: "legacy_avatar_picker_app_enabled",
132}
133
134avatar_picker_java_defaults {
135    name: "SettingsLibAvatarPickerDefaults",
136    soong_config_variables: {
137        // If flag is enabled, add the library
138        legacy_avatar_picker_app_enabled: {
139            static_libs: [
140                "SettingsLibAvatarPicker",
141            ],
142        },
143    },
144}
145