Merge "Revert "ART: Hook Runtime APEX checker into build""
diff --git a/build/apex/Android.bp b/build/apex/Android.bp
index 47a1e4b..4a6637b 100644
--- a/build/apex/Android.bp
+++ b/build/apex/Android.bp
@@ -13,12 +13,11 @@
 ]
 // - Base requirements (libraries).
 art_runtime_base_native_shared_libs = [
-    "libadbconnection",
     "libart",
     "libart-compiler",
-    "libdexfile_external",
     "libopenjdkjvm",
     "libopenjdkjvmti",
+    "libadbconnection",
 ]
 bionic_native_shared_libs = [
     "libc",
@@ -42,11 +41,11 @@
 
 // - Debug variants (libraries).
 art_runtime_debug_native_shared_libs = [
-    "libadbconnectiond",
     "libartd",
     "libartd-compiler",
     "libopenjdkjvmd",
     "libopenjdkjvmtid",
+    "libadbconnectiond",
 ]
 libcore_debug_native_shared_libs = [
     "libopenjdkd",
diff --git a/build/apex/art_apex_test.py b/build/apex/art_apex_test.py
index a8b104f..1abc466 100755
--- a/build/apex/art_apex_test.py
+++ b/build/apex/art_apex_test.py
@@ -353,7 +353,6 @@
     self._checker.check_library('libartpalette.so')
     self._checker.check_no_library('libartpalette-system.so')
     self._checker.check_library('libdexfile.so')
-    self._checker.check_library('libdexfile_external.so')
     self._checker.check_library('libopenjdkjvm.so')
     self._checker.check_library('libopenjdkjvmti.so')
     self._checker.check_library('libprofile.so')
diff --git a/build/apex/ld.config.txt b/build/apex/ld.config.txt
index 3cfda65..9bf2ae5 100644
--- a/build/apex/ld.config.txt
+++ b/build/apex/ld.config.txt
@@ -30,7 +30,6 @@
 namespace.platform.asan.search.paths = /data/asan/system/${LIB}
 namespace.platform.links = default
 namespace.platform.link.default.shared_libs  = libart.so:libartd.so
-namespace.platform.link.default.shared_libs += libdexfile_external.so
 namespace.platform.link.default.shared_libs += libnativebridge.so
 namespace.platform.link.default.shared_libs += libnativehelper.so
 namespace.platform.link.default.shared_libs += libnativeloader.so
diff --git a/libdexfile/Android.bp b/libdexfile/Android.bp
index feb5e38..f83f18c 100644
--- a/libdexfile/Android.bp
+++ b/libdexfile/Android.bp
@@ -228,9 +228,28 @@
         "libdexfile",
     ],
 
-    stubs: {
-        symbol_file: "external/libdexfile_external.map.txt",
-        versions: ["1"],
+    // TODO(b/120670568): Enable this when linking bug is fixed.
+    // stubs: {
+    //     symbol_file: "external/libdexfile_external.map.txt",
+    //     versions: ["1"],
+    // },
+
+    // Hide symbols using version scripts for targets that support it, i.e. all
+    // but Darwin.
+    // TODO(b/120670568): Clean this up when stubs above is enabled.
+    target: {
+        android: {
+            version_script: "external/libdexfile_external.map.txt",
+        },
+        linux_bionic: {
+            version_script: "external/libdexfile_external.map.txt",
+        },
+        linux_glibc: {
+            version_script: "external/libdexfile_external.map.txt",
+        },
+        windows: {
+            version_script: "external/libdexfile_external.map.txt",
+        },
     },
 }
 
diff --git a/oatdump/Android.bp b/oatdump/Android.bp
index f56265c..8849a7a 100644
--- a/oatdump/Android.bp
+++ b/oatdump/Android.bp
@@ -97,8 +97,8 @@
         "libart-disassembler",
         "libvixl",
     ],
-    // TODO(b/122885634): This is necessary for the static lib ordering bug with
-    // APEX stubs.
+    // We need this to resolve libartpalette symbols
+    // correctly. Multiple source libraries depend on it.
     group_static_libs: true,
 }
 
diff --git a/test/knownfailures.json b/test/knownfailures.json
index 8de9574..a1a038a 100644
--- a/test/knownfailures.json
+++ b/test/knownfailures.json
@@ -1185,7 +1185,7 @@
     },
     {
         "tests": ["719-dm-verify-redefinition"],
-        "variant": "jvm | speed-profile | interp-ac | target",
+        "variant": "jvm | speed-profile | interp-ac | target | no-prebuild",
         "description": ["Doesn't run on RI because of boot class redefintion.",
                         "Doesn't work with profiles because the run-test is not setup to",
                         "support both. It also needs full verification, so no interp-ac.",