Use static libraries for multilib VTS
Move the `keystore2_client_tests` VTS `rust_binary` back to the default
value for `compile_multilib` (both), effectively reverting
aosp/2877436 and aosp/2989155.
Instead move various `shared_libs` dependencies to be `static_libs`,
as per https://b.corp.google.com/issues/298668920#comment34.
Bug: 314110490
Bug: 351099311
Bug: 362676017
Bug: 360287577
Test: Build, TreeHugger
Test: vts-tradefed then run vts --abi armeabi-v7a -m keystore2_client_tests
Change-Id: I4bae1255764b1687e5db6aec799057ac5612c200
diff --git a/keystore-engine/Android.bp b/keystore-engine/Android.bp
index 7fbfe53..d763445 100644
--- a/keystore-engine/Android.bp
+++ b/keystore-engine/Android.bp
@@ -27,7 +27,8 @@
name: "libkeystore-engine",
defaults: [
- "keystore2_use_latest_aidl_ndk_shared",
+ "keymint_use_latest_hal_aidl_ndk_static",
+ "keystore2_use_latest_aidl_ndk_static",
],
srcs: [
"android_engine.cpp",
@@ -41,7 +42,6 @@
],
shared_libs: [
- "android.system.keystore2-V4-ndk",
"libbinder_ndk",
"libcrypto",
"libcutils",
diff --git a/keystore2/test_utils/Android.bp b/keystore2/test_utils/Android.bp
index 4c7c18a..d0b5540 100644
--- a/keystore2/test_utils/Android.bp
+++ b/keystore2/test_utils/Android.bp
@@ -42,15 +42,15 @@
"libthiserror",
],
static_libs: [
+ "libcppbor",
+ "libkeymaster_portable",
+ "libkeymint_support",
"libkeystore-engine",
"libkeystore2_ffi_test_utils",
],
shared_libs: [
- "android.system.keystore2-V4-ndk",
"libbase",
"libcrypto",
- "libkeymaster_portable",
- "libkeymint_support",
],
}
@@ -59,6 +59,12 @@
crate_name: "keystore2_test_utils",
srcs: ["lib.rs"],
defaults: ["libkeystore2_test_utils_defaults"],
+ static_libs: [
+ // Also include static_libs for the NDK variants so that they are available
+ // for dependencies.
+ "android.system.keystore2-V4-ndk",
+ "android.hardware.security.keymint-V3-ndk",
+ ],
}
rust_test {
@@ -75,20 +81,22 @@
name: "libkeystore2_ffi_test_utils",
srcs: ["ffi_test_utils.cpp"],
defaults: [
- "keymint_use_latest_hal_aidl_ndk_shared",
- "keystore2_use_latest_aidl_ndk_shared",
+ "keymint_use_latest_hal_aidl_ndk_static",
+ "keystore2_use_latest_aidl_ndk_static",
],
generated_headers: [
"cxx-bridge-header",
"libkeystore2_ffi_test_utils_bridge_header",
],
generated_sources: ["libkeystore2_ffi_test_utils_bridge_code"],
- static_libs: ["libkeystore-engine"],
+ static_libs: [
+ "libkeymaster_portable",
+ "libkeymint_support",
+ "libkeystore-engine",
+ ],
shared_libs: [
"libbase",
"libcrypto",
- "libkeymaster_portable",
- "libkeymint_support",
],
}
diff --git a/keystore2/tests/Android.bp b/keystore2/tests/Android.bp
index ca9f5e3..dbef46c 100644
--- a/keystore2/tests/Android.bp
+++ b/keystore2/tests/Android.bp
@@ -24,11 +24,16 @@
rust_test {
name: "keystore2_client_tests",
- compile_multilib: "first",
defaults: [
"keymint_use_latest_hal_aidl_rust",
"keystore2_use_latest_aidl_rust",
],
+ static_libs: [
+ // Also include static_libs for the NDK variants so that they are available
+ // for dependencies.
+ "android.system.keystore2-V4-ndk",
+ "android.hardware.security.keymint-V3-ndk",
+ ],
srcs: ["keystore2_client_tests.rs"],
test_suites: [
"general-tests",
diff --git a/keystore2/tests/AndroidTest.xml b/keystore2/tests/AndroidTest.xml
index dde18a9..7db36f7 100644
--- a/keystore2/tests/AndroidTest.xml
+++ b/keystore2/tests/AndroidTest.xml
@@ -14,7 +14,6 @@
limitations under the License.
-->
<configuration description="Config to run keystore2_client_tests device tests.">
- <option name="config-descriptor:metadata" key="parameter" value="not_multi_abi" />
<target_preparer class="com.android.tradefed.targetprep.RootTargetPreparer">
</target_preparer>