Merge "Move default multihal configuration file to /vendor/..." into oc-dev

am: d3f4f14218

Change-Id: I569ec7b877e88b7a119ea22485cdfe59ab12573f
This commit is contained in:
Peng Xu 2017-05-04 02:10:16 +00:00 committed by android-build-merger
commit 8449dfc061
2 changed files with 27 additions and 7 deletions

View file

@ -500,15 +500,32 @@ static bool starts_with(const char* s, const char* prefix) {
* The vector must not be null.
*/
static void get_so_paths(std::vector<std::string> *so_paths) {
std::string line;
std::ifstream conf_file(MULTI_HAL_CONFIG_FILE_PATH);
const std::vector<const char *> config_path_list(
{ MULTI_HAL_CONFIG_FILE_PATH, DEPRECATED_MULTI_HAL_CONFIG_FILE_PATH });
if(!conf_file) {
ALOGW("No multihal config file found at %s", MULTI_HAL_CONFIG_FILE_PATH);
std::ifstream stream;
const char *path = nullptr;
for (auto i : config_path_list) {
std::ifstream f(i);
if (f) {
stream = std::move(f);
path = i;
break;
}
}
if(!stream) {
ALOGW("No multihal config file found");
return;
}
ALOGV("Multihal config file found at %s", MULTI_HAL_CONFIG_FILE_PATH);
while (std::getline(conf_file, line)) {
ALOGE_IF(strcmp(path, DEPRECATED_MULTI_HAL_CONFIG_FILE_PATH) == 0,
"Multihal configuration file path %s is not compatible with Treble "
"requirements. Please move it to %s.",
path, MULTI_HAL_CONFIG_FILE_PATH);
ALOGV("Multihal config file found at %s", path);
std::string line;
while (std::getline(stream, line)) {
ALOGV("config file line: '%s'", line.c_str());
so_paths->push_back(line);
}

View file

@ -19,7 +19,10 @@
#include <hardware/sensors.h>
#include <hardware/hardware.h>
static const char* MULTI_HAL_CONFIG_FILE_PATH = "/system/etc/sensors/hals.conf";
static const char* MULTI_HAL_CONFIG_FILE_PATH = "/vendor/etc/sensors/hals.conf";
// Depracated because system partition HAL config file does not satisfy treble requirements.
static const char* DEPRECATED_MULTI_HAL_CONFIG_FILE_PATH = "/system/etc/sensors/hals.conf";
struct sensors_module_t *get_multi_hal_module_info(void);