Merge "Remove libdl* tests from bionic-unit-tests-static" into mnc-dev
diff --git a/linker/linker.cpp b/linker/linker.cpp
index 2c51ed9..e147a13 100644
--- a/linker/linker.cpp
+++ b/linker/linker.cpp
@@ -2884,6 +2884,13 @@
 
 #if !defined(__LP64__)
   if (has_text_relocations) {
+    // Fail if app is targeting sdk version > 22
+    // TODO (dimitry): remove != __ANDROID_API__ check once http://b/20020312 is fixed
+    if (get_application_target_sdk_version() != __ANDROID_API__
+        && get_application_target_sdk_version() > 22) {
+      DL_ERR("%s: has text relocations", get_realpath());
+      return false;
+    }
     // Make segments writable to allow text relocations to work properly. We will later call
     // phdr_table_protect_segments() after all of them are applied and all constructors are run.
     DL_WARN("%s has text relocations. This is wasting memory and prevents "