blob: 74392c522bdbe099ca5c51f9f535f6a20fcdc9f3 [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 ],
51}
52
Tao Baoe3f09a72019-10-01 11:55:36 -070053// A utility lib that's local to recovery (in contrast, libotautil is exposed to device-specific
54// recovery_ui lib as well as device-specific updater).
55cc_library_static {
56 name: "librecovery_utils",
57
58 recovery_available: true,
59
60 defaults: [
Tao Bao832c9cd2019-09-27 23:32:00 -070061 "librecovery_utils_defaults",
Tao Baoe3f09a72019-10-01 11:55:36 -070062 ],
63
64 srcs: [
Tao Bao832c9cd2019-09-27 23:32:00 -070065 "battery_utils.cpp",
Tao Baoe3f09a72019-10-01 11:55:36 -070066 "logging.cpp",
67 "parse_install_logs.cpp",
68 "roots.cpp",
69 "thermalutil.cpp",
70 ],
71
Tao Bao640175e2019-10-01 23:24:30 -070072 header_libs: [
73 "libvold_headers",
74 ],
75
Yifan Hong67a8fd22021-11-30 16:39:00 -080076 shared_libs: [
77 // The following cannot be placed in librecovery_utils_defaults,
Jack Wu6b39dee2022-11-24 20:45:47 +080078 // because at the time of writing, android.hardware.health-V2-ndk.so
Yifan Hong67a8fd22021-11-30 16:39:00 -080079 // is not installed to the system image yet. (It is installed
80 // to the recovery ramdisk.) Hence, minadbd_test must link to it
81 // statically.
Jack Wu6b39dee2022-11-24 20:45:47 +080082 "android.hardware.health-V2-ndk",
Yifan Hong67a8fd22021-11-30 16:39:00 -080083 ],
84
Tao Baoe3f09a72019-10-01 11:55:36 -070085 export_include_dirs: [
86 "include",
87 ],
88
Tao Baoe3f09a72019-10-01 11:55:36 -070089 export_static_lib_headers: [
Tao Bao640175e2019-10-01 23:24:30 -070090 // roots.h includes <fstab/fstab.h>.
Tao Baoe3f09a72019-10-01 11:55:36 -070091 "libfstab",
92 ],
93
94 // Should avoid exposing to the libs that might be used in device-specific codes (e.g.
95 // libedify, libotautil, librecovery_ui).
96 visibility: [
97 "//bootable/recovery",
98 "//bootable/recovery/install",
Tao Baob548bea2019-09-30 16:16:07 -070099 "//bootable/recovery/minadbd",
Tao Baoe3f09a72019-10-01 11:55:36 -0700100 "//bootable/recovery/tests",
101 ],
102}