Revert "Use compile_multilib: "both" with "32"/"64" suffixes by default for ART"
This reverts commit e631de122b065b014927c08df45258dffca27211.
Bug: 233550842
Reason for revert: Fails nativebridge test:
####################
#################### stderr diffs
--- expected-stderr.txt 2008-01-01 00:00:00.000000000 -0800
+++ test-stderr.txt 2022-06-10 07:15:02.074448940 -0700
@@ -0,0 +1,5 @@
+Exception in thread "main" java.lang.UnsatisfiedLinkError: /b/s/w/ir/x/t/test-art-js9t0vr2/tmpf1x6axa7/libarttestd.so: file too short
+ at java.lang.Runtime.loadLibrary0(Runtime.java:1077)
+ at java.lang.Runtime.loadLibrary0(Runtime.java:998)
+ at java.lang.System.loadLibrary(System.java:1661)
+ at NativeBridgeMain.main(NativeBridgeMain.java:211)
####################
115-native-bridge files deleted from host
----------
test-art-host-run-test-debug-prebuild-optimizing-no-relocate-ntrace-cms-checkjni-picimage-ndebuggable-no-jvmti-cdex-fast-115-native-bridge64
Change-Id: Ib5182fc50dc94d34f314297d0bcc0fa44cd04f61
diff --git a/libdexfile/Android.bp b/libdexfile/Android.bp
index f7afe85..fdc57d0 100644
--- a/libdexfile/Android.bp
+++ b/libdexfile/Android.bp
@@ -398,6 +398,19 @@
"art_libdexfile_external_tests_defaults",
],
+ // Support multilib variants (using different suffix per sub-architecture), which is needed on
+ // build targets with secondary architectures, as the CTS test suite packaging logic flattens
+ // all test artifacts into a single `testcases` directory.
+ compile_multilib: "both",
+ multilib: {
+ lib32: {
+ suffix: "32",
+ },
+ lib64: {
+ suffix: "64",
+ },
+ },
+
test_config_template: ":art-gtests-target-standalone-cts-template",
test_suites: ["cts"], // For backed-by API coverage.
}
@@ -482,6 +495,20 @@
"art_standalone_test_defaults",
"art_libdexfile_support_tests_defaults",
],
+
+ // Support multilib variants (using different suffix per sub-architecture), which is needed on
+ // build targets with secondary architectures, as the MTS test suite packaging logic flattens
+ // all test artifacts into a single `testcases` directory.
+ compile_multilib: "both",
+ multilib: {
+ lib32: {
+ suffix: "32",
+ },
+ lib64: {
+ suffix: "64",
+ },
+ },
+
test_suites: [
"mts-art",
],
diff --git a/libnativebridge/tests/Android.bp b/libnativebridge/tests/Android.bp
index a42f3d9..b787fba 100644
--- a/libnativebridge/tests/Android.bp
+++ b/libnativebridge/tests/Android.bp
@@ -172,6 +172,20 @@
],
header_libs: ["libbase_headers"],
+ // Support multilib variants (using different suffix per sub-architecture),
+ // which is needed on build targets with secondary architectures, as the CTS
+ // test suite packaging logic flattens all test artifacts into a single
+ // `testcases` directory.
+ compile_multilib: "both",
+ multilib: {
+ lib32: {
+ suffix: "32",
+ },
+ lib64: {
+ suffix: "64",
+ },
+ },
+
test_config_template: ":art-gtests-target-standalone-cts-template",
test_suites: [
"cts",
diff --git a/libnativebridge/tests/NativeBridgeTest.h b/libnativebridge/tests/NativeBridgeTest.h
index 6b445d0..62509b8 100644
--- a/libnativebridge/tests/NativeBridgeTest.h
+++ b/libnativebridge/tests/NativeBridgeTest.h
@@ -22,18 +22,12 @@
#include <nativebridge/native_bridge.h>
#include <gtest/gtest.h>
-#if defined(__LP64__)
-#define LIB_SUFFIX "64"
-#else
-#define LIB_SUFFIX "32"
-#endif
-
-constexpr const char* kNativeBridgeLibrary = "libnativebridge-test-case" LIB_SUFFIX ".so";
+constexpr const char* kNativeBridgeLibrary = "libnativebridge-test-case.so";
constexpr const char* kCodeCache = "./code_cache";
constexpr const char* kCodeCacheStatFail = "./code_cache/temp";
-constexpr const char* kNativeBridgeLibrary2 = "libnativebridge2-test-case" LIB_SUFFIX ".so";
-constexpr const char* kNativeBridgeLibrary3 = "libnativebridge3-test-case" LIB_SUFFIX ".so";
-constexpr const char* kNativeBridgeLibrary6 = "libnativebridge6-test-case" LIB_SUFFIX ".so";
+constexpr const char* kNativeBridgeLibrary2 = "libnativebridge2-test-case.so";
+constexpr const char* kNativeBridgeLibrary3 = "libnativebridge3-test-case.so";
+constexpr const char* kNativeBridgeLibrary6 = "libnativebridge6-test-case.so";
namespace android {
diff --git a/libnativeloader/Android.bp b/libnativeloader/Android.bp
index f30a3ac..e14aea2 100644
--- a/libnativeloader/Android.bp
+++ b/libnativeloader/Android.bp
@@ -164,6 +164,19 @@
"libnativeloader",
],
+ // Support multilib variants (using different suffix per sub-architecture), which is needed on
+ // build targets with secondary architectures, as the CTS test suite packaging logic flattens
+ // all test artifacts into a single `testcases` directory.
+ compile_multilib: "both",
+ multilib: {
+ lib32: {
+ suffix: "32",
+ },
+ lib64: {
+ suffix: "64",
+ },
+ },
+
// Added to CTS for API coverage of libnativeloader which is backed by the
// ART module.
test_config_template: ":art-gtests-target-standalone-cts-template",
diff --git a/test/Android.bp b/test/Android.bp
index db8383c..c0a363e 100644
--- a/test/Android.bp
+++ b/test/Android.bp
@@ -47,21 +47,6 @@
"-Wno-deprecated-dynamic-exception-spec",
],
- // Support multilib variants (using different suffix per sub-architecture),
- // which is needed on build targets with secondary architectures, as the
- // CTS/MTS/etc test suite packaging logic flattens all test artifacts into a
- // single `testcases` directory. Also, there is CI testing that expects
- // 64-bit multilib test suites to work for 32-bit devices (b/233550842).
- compile_multilib: "both",
- multilib: {
- lib32: {
- suffix: "32",
- },
- lib64: {
- suffix: "64",
- },
- },
-
target: {
darwin: {
enabled: false,
@@ -119,30 +104,16 @@
],
}
-// Variant of art_test_defaults for test libraries that installs them in a
-// location which will be added to the default namespace, and hence also the
-// com_android_art namespace. That allows them to have shared_libs
-// dependencies on all ART internal libraries.
+// Variant of art_test_defaults that installs the library in a location which
+// will be added to the default namespace, and hence also the com_android_art
+// namespace. That allows the library to have shared_libs dependencies on all
+// ART internal libraries.
//
// Currently this only works for run tests where run-test-jar sets
// LD_LIBRARY_PATH and NATIVELOADER_DEFAULT_NAMESPACE_LIBS.
art_cc_defaults {
name: "art_test_internal_library_defaults",
defaults: ["art_test_defaults"],
-
- // Undo multilib settings inherited from art_test_common_defaults - we
- // cannot add suffixes to shared libraries or else they won't be found at
- // runtime.
- compile_multilib: "",
- multilib: {
- lib32: {
- suffix: "",
- },
- lib64: {
- suffix: "",
- },
- },
-
target: {
android_arm: {
relative_install_path: "com.android.art/lib",