platform_system_core/healthd/Android.bp
Yifan Hong 8e55134f43 charger: Add API to replace ro.charger.enable_suspend
The system property is set by vendor partition but owned by platform,
hence vendor domains can't read this value. Add an API in
ChargerConfigurationInterface so that HAL implementations can override
its value.

Other ro.charger.* sysprops are unused, hence no APIs are created for
them.

Test: manual
Bug: 203246116

Change-Id: I583c21e58ed3d912b156e253d6a4b46a0378f11e
2021-11-01 12:38:56 -07:00

309 lines
6.4 KiB
Text

package {
default_applicable_licenses: ["Android-Apache-2.0"],
}
cc_library_headers {
name: "libhealthd_headers",
vendor_available: true,
recovery_available: true,
export_include_dirs: ["include"],
header_libs: ["libbatteryservice_headers"],
export_header_lib_headers: ["libbatteryservice_headers"],
}
cc_library_static {
name: "libbatterymonitor",
srcs: ["BatteryMonitor.cpp"],
cflags: ["-Wall", "-Werror"],
vendor_available: true,
recovery_available: true,
export_include_dirs: ["include"],
shared_libs: [
"libutils",
"libbase",
// Need latest HealthInfo definition from headers of this shared
// library. Clients don't need to link to this.
"android.hardware.health@2.1",
],
header_libs: ["libhealthd_headers"],
export_header_lib_headers: ["libhealthd_headers"],
}
cc_defaults {
name: "android.hardware.health@2.0-service_defaults",
cflags: [
"-Wall",
"-Werror",
],
static_libs: [
"android.hardware.health@2.0-impl",
"android.hardware.health@1.0-convert",
"libhealthservice",
"libhealthstoragedefault",
"libbatterymonitor",
],
shared_libs: [
"libbase",
"libcutils",
"libhidlbase",
"liblog",
"libutils",
"android.hardware.health@2.0",
],
}
cc_binary {
name: "android.hardware.health@2.0-service",
defaults: ["android.hardware.health@2.0-service_defaults"],
vendor: true,
relative_install_path: "hw",
init_rc: ["android.hardware.health@2.0-service.rc"],
srcs: [
"HealthServiceDefault.cpp",
],
}
cc_library_static {
name: "libhealthd_charger_nops",
recovery_available: true,
srcs: [
"healthd_mode_charger_nops.cpp",
],
cflags: [
"-Wall",
"-Werror",
],
header_libs: [
"libhealthd_headers",
],
static_libs: [
"libhealthloop",
"libhealth2impl",
],
shared_libs: [
"android.hardware.health@2.1",
"libutils",
],
}
sysprop_library {
name: "charger_sysprop",
recovery_available: true,
srcs: ["charger.sysprop"],
property_owner: "Platform",
api_packages: ["android.sysprop"],
}
cc_library_static {
name: "libhealthd_draw",
export_include_dirs: ["."],
static_libs: [
"libcharger_sysprop",
"libminui",
],
shared_libs: [
"libbase",
],
header_libs: ["libbatteryservice_headers"],
srcs: ["healthd_draw.cpp"],
}
cc_library_static {
name: "libhealthd_charger_ui",
export_include_dirs: [
"include",
"include_charger",
],
static_libs: [
"android.hardware.health-V1-ndk",
"android.hardware.health-translate-ndk",
"libcharger_sysprop",
"libhealthd_draw",
"libhealthloop",
"libminui",
],
shared_libs: [
"libbase",
"libcutils",
"liblog",
"libpng",
"libsuspend",
"libutils",
],
header_libs: [
"libhealthd_headers",
],
export_static_lib_headers: [
"android.hardware.health-V1-ndk",
],
srcs: [
"healthd_mode_charger.cpp",
"AnimationParser.cpp",
],
}
cc_library_static {
name: "libhealthd_charger",
export_include_dirs: [
"include",
"include_charger",
],
static_libs: [
"android.hardware.health@1.0-convert",
"libcharger_sysprop",
"libhealth2impl",
"libhealthd_charger_ui",
],
shared_libs: [
"android.hardware.health@2.1",
"libbase",
"libcutils",
"liblog",
"libutils",
],
srcs: [
"healthd_mode_charger_hidl.cpp",
],
}
cc_defaults {
name: "charger_defaults",
local_include_dirs: [
"include_charger",
],
cflags: [
"-Wall",
"-Werror",
],
shared_libs: [
// common
"android.hardware.health@2.0",
"android.hardware.health@2.1",
"libbase",
"libcutils",
"libhidlbase",
"liblog",
"libutils",
// system charger only
"libpng",
],
static_libs: [
// common
"android.hardware.health@1.0-convert",
"android.hardware.health-V1-ndk",
"libbatterymonitor",
"libcharger_sysprop",
"libhealthd_charger_nops",
"libhealthloop",
"libhealth2impl",
// system charger only
"libhealthd_draw",
"libhealthd_charger",
"libhealthd_charger_ui",
"libminui",
"libsuspend",
],
}
cc_binary {
name: "charger",
defaults: ["charger_defaults"],
recovery_available: true,
srcs: [
"charger.cpp",
"charger_utils.cpp",
],
target: {
recovery: {
// No UI and libsuspend for recovery charger.
cflags: [
"-DCHARGER_FORCE_NO_UI=1",
],
exclude_shared_libs: [
"libpng",
],
exclude_static_libs: [
"libhealthd_draw",
"libhealthd_charger",
"libhealthd_charger_ui",
"libminui",
"libsuspend",
],
}
}
}
cc_test {
name: "charger_test",
defaults: ["charger_defaults"],
srcs: ["charger_test.cpp"],
}
cc_test {
name: "libhealthd_charger_test",
defaults: ["charger_defaults"],
srcs: [
"AnimationParser_test.cpp",
"healthd_mode_charger_test.cpp"
],
static_libs: [
"libgmock",
],
test_suites: [
"general-tests",
"device-tests",
],
data: [
":libhealthd_charger_test_data",
],
require_root: true,
}
// /system/etc/res/images/charger/battery_fail.png
prebuilt_etc {
name: "system_core_charger_res_images_battery_fail.png",
src: "images/battery_fail.png",
relative_install_path: "res/images/charger",
filename: "battery_fail.png",
}
// /system/etc/res/images/charger/battery_scale.png
prebuilt_etc {
name: "system_core_charger_res_images_battery_scale.png",
src: "images/battery_scale.png",
relative_install_path: "res/images/charger",
filename: "battery_scale.png",
}
phony {
name: "charger_res_images",
required: [
"system_core_charger_res_images_battery_fail.png",
"system_core_charger_res_images_battery_scale.png",
],
}