blob: d84299feb0c556c1f1683add47802e905d84e6a3 [file] [log] [blame]
Tao Baoe3f09a72019-10-01 11:55:36 -07001// Copyright (C) 2019 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 Badour29be3f62021-02-12 18:00:57 -080015package {
16 // See: http://go/android-license-faq
17 // A large-scale-change added 'default_applicable_licenses' to import
18 // all of the 'license_kinds' from "bootable_recovery_license"
19 // to get the below license kinds:
20 // SPDX-license-identifier-Apache-2.0
21 default_applicable_licenses: ["bootable_recovery_license"],
22}
23
Tao Bao832c9cd2019-09-27 23:32:00 -070024cc_defaults {
25 name: "librecovery_utils_defaults",
26
27 defaults: [
28 "recovery_defaults",
29 ],
30
31 shared_libs: [
32 "android.hardware.health@2.0",
33 "libbase",
Yifan Hong67a8fd22021-11-30 16:39:00 -080034 "libbinder_ndk",
Tao Bao832c9cd2019-09-27 23:32:00 -070035 "libext4_utils",
36 "libfs_mgr",
37 "libhidlbase",
38 "libselinux",
39 "libutils",
40 ],
41
42 static_libs: [
43 "libotautil",
44
45 // External dependencies.
Yifan Hong67a8fd22021-11-30 16:39:00 -080046 "android.hardware.health-translate-ndk",
Tao Bao832c9cd2019-09-27 23:32:00 -070047 "libfstab",
48 "libhealthhalutils",
Yifan Hong67a8fd22021-11-30 16:39:00 -080049 "libhealthshim",
Tao Bao832c9cd2019-09-27 23:32:00 -070050 ],
Alessandro Astonef9d52d02020-03-01 13:33:27 +010051
52 whole_static_libs: [
53 "libext2_blkid",
54 ],
Tao Bao832c9cd2019-09-27 23:32:00 -070055}
56
Tao Baoe3f09a72019-10-01 11:55:36 -070057// A utility lib that's local to recovery (in contrast, libotautil is exposed to device-specific
58// recovery_ui lib as well as device-specific updater).
59cc_library_static {
60 name: "librecovery_utils",
61
62 recovery_available: true,
63
64 defaults: [
Tao Bao832c9cd2019-09-27 23:32:00 -070065 "librecovery_utils_defaults",
Tao Baoe3f09a72019-10-01 11:55:36 -070066 ],
67
68 srcs: [
Tao Bao832c9cd2019-09-27 23:32:00 -070069 "battery_utils.cpp",
Tao Baoe3f09a72019-10-01 11:55:36 -070070 "logging.cpp",
71 "parse_install_logs.cpp",
72 "roots.cpp",
73 "thermalutil.cpp",
74 ],
75
Tao Bao640175e2019-10-01 23:24:30 -070076 header_libs: [
77 "libvold_headers",
78 ],
79
Yifan Hong67a8fd22021-11-30 16:39:00 -080080 shared_libs: [
81 // The following cannot be placed in librecovery_utils_defaults,
David Anderson8ee048d2023-11-17 20:30:02 -080082 // because at the time of writing, android.hardware.health-V3-ndk.so
Yifan Hong67a8fd22021-11-30 16:39:00 -080083 // is not installed to the system image yet. (It is installed
84 // to the recovery ramdisk.) Hence, minadbd_test must link to it
85 // statically.
David Anderson8ee048d2023-11-17 20:30:02 -080086 "android.hardware.health-V3-ndk",
Yifan Hong67a8fd22021-11-30 16:39:00 -080087 ],
88
Tao Baoe3f09a72019-10-01 11:55:36 -070089 export_include_dirs: [
90 "include",
91 ],
92
Tao Baoe3f09a72019-10-01 11:55:36 -070093 export_static_lib_headers: [
Tao Bao640175e2019-10-01 23:24:30 -070094 // roots.h includes <fstab/fstab.h>.
Tao Baoe3f09a72019-10-01 11:55:36 -070095 "libfstab",
96 ],
97
98 // Should avoid exposing to the libs that might be used in device-specific codes (e.g.
99 // libedify, libotautil, librecovery_ui).
100 visibility: [
101 "//bootable/recovery",
102 "//bootable/recovery/install",
Tao Baob548bea2019-09-30 16:16:07 -0700103 "//bootable/recovery/minadbd",
Tao Baoe3f09a72019-10-01 11:55:36 -0700104 "//bootable/recovery/tests",
105 ],
106}