diff options
Diffstat (limited to 'libnativeloader/public_libraries.cpp')
-rw-r--r-- | libnativeloader/public_libraries.cpp | 24 |
1 files changed, 19 insertions, 5 deletions
diff --git a/libnativeloader/public_libraries.cpp b/libnativeloader/public_libraries.cpp index 35ef4889d0..277d2c90c0 100644 --- a/libnativeloader/public_libraries.cpp +++ b/libnativeloader/public_libraries.cpp @@ -275,9 +275,7 @@ static std::string InitLlndkLibrariesProduct() { return android::base::Join(*sonames, ':'); } -static std::string InitVndkspLibraries() { - // VNDK-SP is used only for vendor hals which are not available for the - // product partition. +static std::string InitVndkspLibrariesVendor() { std::string config_file = kVndkLibrariesFile; InsertVndkVersionStr(&config_file, false); auto sonames = ReadConfig(config_file, always_true); @@ -288,6 +286,17 @@ static std::string InitVndkspLibraries() { return android::base::Join(*sonames, ':'); } +static std::string InitVndkspLibrariesProduct() { + std::string config_file = kVndkLibrariesFile; + InsertVndkVersionStr(&config_file, true); + auto sonames = ReadConfig(config_file, always_true); + if (!sonames.ok()) { + LOG_ALWAYS_FATAL("%s", sonames.error().message().c_str()); + return ""; + } + return android::base::Join(*sonames, ':'); +} + static std::string InitNeuralNetworksPublicLibraries() { return kNeuralNetworksApexPublicLibrary; } @@ -352,8 +361,13 @@ const std::string& llndk_libraries_vendor() { return list; } -const std::string& vndksp_libraries() { - static std::string list = InitVndkspLibraries(); +const std::string& vndksp_libraries_product() { + static std::string list = InitVndkspLibrariesProduct(); + return list; +} + +const std::string& vndksp_libraries_vendor() { + static std::string list = InitVndkspLibrariesVendor(); return list; } |