1// 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 15package { 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 24cc_defaults { 25 name: "librecovery_utils_defaults", 26 27 defaults: [ 28 "recovery_defaults", 29 ], 30 31 shared_libs: [ 32 "[email protected]", 33 "libbase", 34 "libbinder_ndk", 35 "libext4_utils", 36 "libfs_mgr", 37 "libhidlbase", 38 "libselinux", 39 "libutils", 40 ], 41 42 static_libs: [ 43 "libotautil", 44 45 // External dependencies. 46 "android.hardware.health-translate-ndk", 47 "libfstab", 48 "libhealthhalutils", 49 "libhealthshim", 50 ], 51} 52 53// 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: [ 61 "librecovery_utils_defaults", 62 ], 63 64 srcs: [ 65 "battery_utils.cpp", 66 "logging.cpp", 67 "parse_install_logs.cpp", 68 "roots.cpp", 69 "thermalutil.cpp", 70 ], 71 72 header_libs: [ 73 "libvold_headers", 74 ], 75 76 shared_libs: [ 77 // The following cannot be placed in librecovery_utils_defaults, 78 // because at the time of writing, android.hardware.health-V4-ndk.so 79 // 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. 82 "android.hardware.health-V4-ndk", 83 ], 84 85 export_include_dirs: [ 86 "include", 87 ], 88 89 export_static_lib_headers: [ 90 // roots.h includes <fstab/fstab.h>. 91 "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", 99 "//bootable/recovery/minadbd", 100 "//bootable/recovery/tests", 101 "//bootable/deprecated-ota:__subpackages__", 102 ], 103} 104