Prefer arch-specific linker config when available
New linker configuration from /linkerconfig is not suitbale for emulated
architectures. But as of now, native_bridge linkers pick it up as well
and thus fail to find the libraries for emulated architectures.
This is a (temporary) fix so native_bridge linker still picks up
configuration from old location.
Bug: 138920271
Test: native_bridge linker works
Change-Id: I0abbd3e95f9e6830385b0f19db0688e6183030b9
diff --git a/linker/linker.cpp b/linker/linker.cpp
index 4bcb896..a3bd964 100644
--- a/linker/linker.cpp
+++ b/linker/linker.cpp
@@ -4082,6 +4082,11 @@
path.c_str(), executable_path);
}
+ path = kLdConfigArchFilePath;
+ if (file_exists(path.c_str())) {
+ return path;
+ }
+
// Use generated linker config if flag is set
// TODO(b/138920271) Do not check property once it is confirmed as stable
if (android::base::GetBoolProperty("sys.linker.use_generated_config", true)) {
@@ -4093,12 +4098,6 @@
}
}
-
- path = kLdConfigArchFilePath;
- if (file_exists(path.c_str())) {
- return path;
- }
-
path = get_ld_config_file_vndk_path();
if (file_exists(path.c_str())) {
return path;