Revert "libhidlbase supports API level(29)"
This reverts commit 544d9b595478a177dd6ae864f9ced25c003530d1.
Reason for revert: b/161492170
Exempt-From-Owner-Approval: revert to fix a broken test
Change-Id: If2d17d59015ed737112dea78aaa525f053f3ca56
diff --git a/base/HidlInternal.cpp b/base/HidlInternal.cpp
index e5c8f70..e38a664 100644
--- a/base/HidlInternal.cpp
+++ b/base/HidlInternal.cpp
@@ -18,9 +18,6 @@
#include <hidl/HidlInternal.h>
-#ifdef __ANDROID__
-#include <android/api-level.h>
-#endif
#include <android-base/logging.h>
#include <android-base/properties.h>
#include <android-base/stringprintf.h>
@@ -53,16 +50,9 @@
LOG(FATAL) << message;
}
-std::string getVndkSpHwPath(const char* lib) {
- static std::string vndk_version = base::GetProperty("ro.vndk.version", "");
-#ifdef __ANDROID__
- static int api_level = android_get_device_api_level();
- if (api_level >= __ANDROID_API_R__) {
- return android::base::StringPrintf("/apex/com.android.vndk.v%s/%s/hw/",
- vndk_version.c_str(), lib);
- }
-#endif
- return android::base::StringPrintf("/system/%s/vndk-sp-%s/hw/", lib, vndk_version.c_str());
+std::string getVndkVersionStr() {
+ static std::string vndkVersion = base::GetProperty("ro.vndk.version", "");
+ return vndkVersion;
}
// ----------------------------------------------------------------------
@@ -143,7 +133,8 @@
if (instrumentationLibPath.size() > 0) {
instrumentationLibPaths.push_back(instrumentationLibPath);
} else {
- static std::string halLibPathVndkSp = getVndkSpHwPath();
+ static std::string halLibPathVndkSp = android::base::StringPrintf(
+ HAL_LIBRARY_PATH_VNDK_SP_FOR_VERSION, getVndkVersionStr().c_str());
#ifndef __ANDROID_VNDK__
instrumentationLibPaths.push_back(HAL_LIBRARY_PATH_SYSTEM);
#endif
diff --git a/base/include/hidl/HidlInternal.h b/base/include/hidl/HidlInternal.h
index 3cd246a..ee87b87 100644
--- a/base/include/hidl/HidlInternal.h
+++ b/base/include/hidl/HidlInternal.h
@@ -44,12 +44,8 @@
//to avoid creating dependencies on liblog.
void logAlwaysFatal(const char *message);
-// Returns VNDK-SP hw path according to "ro.vndk.version"
-#if defined(__LP64__)
-std::string getVndkSpHwPath(const char* lib = "lib64");
-#else
-std::string getVndkSpHwPath(const char* lib = "lib");
-#endif
+// Returns vndk version from "ro.vndk.version"
+std::string getVndkVersionStr();
// Explicitly invokes the parameterized element's destructor;
// intended to be used alongside the placement new operator.
@@ -118,18 +114,22 @@
};
#define HAL_LIBRARY_PATH_SYSTEM_64BIT "/system/lib64/hw/"
+#define HAL_LIBRARY_PATH_VNDK_SP_64BIT_FOR_VERSION "/apex/com.android.vndk.v%s/lib64/hw/"
#define HAL_LIBRARY_PATH_VENDOR_64BIT "/vendor/lib64/hw/"
#define HAL_LIBRARY_PATH_ODM_64BIT "/odm/lib64/hw/"
#define HAL_LIBRARY_PATH_SYSTEM_32BIT "/system/lib/hw/"
+#define HAL_LIBRARY_PATH_VNDK_SP_32BIT_FOR_VERSION "/apex/com.android.vndk.v%s/lib/hw/"
#define HAL_LIBRARY_PATH_VENDOR_32BIT "/vendor/lib/hw/"
#define HAL_LIBRARY_PATH_ODM_32BIT "/odm/lib/hw/"
#if defined(__LP64__)
#define HAL_LIBRARY_PATH_SYSTEM HAL_LIBRARY_PATH_SYSTEM_64BIT
+#define HAL_LIBRARY_PATH_VNDK_SP_FOR_VERSION HAL_LIBRARY_PATH_VNDK_SP_64BIT_FOR_VERSION
#define HAL_LIBRARY_PATH_VENDOR HAL_LIBRARY_PATH_VENDOR_64BIT
#define HAL_LIBRARY_PATH_ODM HAL_LIBRARY_PATH_ODM_64BIT
#else
#define HAL_LIBRARY_PATH_SYSTEM HAL_LIBRARY_PATH_SYSTEM_32BIT
+#define HAL_LIBRARY_PATH_VNDK_SP_FOR_VERSION HAL_LIBRARY_PATH_VNDK_SP_32BIT_FOR_VERSION
#define HAL_LIBRARY_PATH_VENDOR HAL_LIBRARY_PATH_VENDOR_32BIT
#define HAL_LIBRARY_PATH_ODM HAL_LIBRARY_PATH_ODM_32BIT
#endif
diff --git a/transport/ServiceManagement.cpp b/transport/ServiceManagement.cpp
index aa540c6..1c30909 100644
--- a/transport/ServiceManagement.cpp
+++ b/transport/ServiceManagement.cpp
@@ -394,7 +394,8 @@
dlerror(); // clear
- static std::string halLibPathVndkSp = details::getVndkSpHwPath();
+ static std::string halLibPathVndkSp = android::base::StringPrintf(
+ HAL_LIBRARY_PATH_VNDK_SP_FOR_VERSION, details::getVndkVersionStr().c_str());
std::vector<std::string> paths = {
HAL_LIBRARY_PATH_ODM, HAL_LIBRARY_PATH_VENDOR, halLibPathVndkSp,
#ifndef __ANDROID_VNDK__
@@ -511,8 +512,10 @@
Return<void> debugDump(debugDump_cb _hidl_cb) override {
using Arch = ::android::hidl::base::V1_0::DebugInfo::Architecture;
using std::literals::string_literals::operator""s;
- static std::string halLibPathVndkSp64 = details::getVndkSpHwPath("lib64");
- static std::string halLibPathVndkSp32 = details::getVndkSpHwPath("lib");
+ static std::string halLibPathVndkSp64 = android::base::StringPrintf(
+ HAL_LIBRARY_PATH_VNDK_SP_64BIT_FOR_VERSION, details::getVndkVersionStr().c_str());
+ static std::string halLibPathVndkSp32 = android::base::StringPrintf(
+ HAL_LIBRARY_PATH_VNDK_SP_32BIT_FOR_VERSION, details::getVndkVersionStr().c_str());
static std::vector<std::pair<Arch, std::vector<const char*>>> sAllPaths{
{Arch::IS_64BIT,
{