Merge "Make libhardware host_supported" am: 65d6174bbc
Original change: https://android-review.googlesource.com/c/platform/hardware/libhardware/+/2305002
Change-Id: If245768b5cfe2dc69b2abc744443d464e2728bce
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
diff --git a/Android.bp b/Android.bp
index e567cca..7aa3a23 100644
--- a/Android.bp
+++ b/Android.bp
@@ -86,6 +86,7 @@
header_libs: ["libhardware_headers"],
export_header_lib_headers: ["libhardware_headers"],
+ host_supported: true,
recovery_available: true,
vendor_available: true,
vndk: {
@@ -93,6 +94,9 @@
support_system_process: true,
},
target: {
+ host: {
+ exclude_shared_libs: ["libvndksupport"],
+ },
recovery: {
exclude_shared_libs: ["libvndksupport"],
},
diff --git a/hardware.c b/hardware.c
index 6e72ce9..d0e91e9 100644
--- a/hardware.c
+++ b/hardware.c
@@ -30,7 +30,7 @@
#define LOG_TAG "HAL"
#include <log/log.h>
-#if !defined(__ANDROID_RECOVERY__)
+#if !defined(__ANDROID_RECOVERY__) && defined(__ANDROID__)
#include <vndksupport/linker.h>
#endif
@@ -97,7 +97,7 @@
*/
handle = dlopen(path, RTLD_NOW);
} else {
-#if defined(__ANDROID_RECOVERY__)
+#if defined(__ANDROID_RECOVERY__) || !defined(__ANDROID__)
handle = dlopen(path, RTLD_NOW);
#else
handle = android_load_sphal_library(path, RTLD_NOW);
@@ -206,8 +206,13 @@
if (inst)
snprintf(name, PATH_MAX, "%s.%s", class_id, inst);
+#if defined(__ANDROID__)
else
strlcpy(name, class_id, PATH_MAX);
+#else
+ else
+ snprintf(name, PATH_MAX, "%s", class_id);
+#endif
/*
* Here we rely on the fact that calling dlopen multiple times on