129 lines
3.6 KiB
Plaintext
129 lines
3.6 KiB
Plaintext
|
|
package {
|
||
|
|
default_applicable_licenses: ["Android-Apache-2.0"],
|
||
|
|
}
|
||
|
|
|
||
|
|
java_defaults {
|
||
|
|
name: "MicrodroidTestAppsDefaults",
|
||
|
|
test_suites: [
|
||
|
|
"cts",
|
||
|
|
"general-tests",
|
||
|
|
],
|
||
|
|
static_libs: [
|
||
|
|
"com.android.microdroid.testservice-java",
|
||
|
|
"com.android.microdroid.test.vmshare_service-java",
|
||
|
|
],
|
||
|
|
sdk_version: "test_current",
|
||
|
|
jni_uses_platform_apis: true,
|
||
|
|
use_embedded_native_libs: true,
|
||
|
|
// We only support 64-bit ABI, but CTS demands all APKs to be multi-ABI.
|
||
|
|
compile_multilib: "both",
|
||
|
|
}
|
||
|
|
|
||
|
|
android_test {
|
||
|
|
name: "MicrodroidTestApp",
|
||
|
|
defaults: ["MicrodroidTestAppsDefaults"],
|
||
|
|
srcs: ["src/java/**/*.java"],
|
||
|
|
static_libs: [
|
||
|
|
"MicrodroidDeviceTestHelper",
|
||
|
|
"androidx.test.runner",
|
||
|
|
"androidx.test.ext.junit",
|
||
|
|
"authfs_test_apk_assets",
|
||
|
|
"cbor-java",
|
||
|
|
"truth-prebuilt",
|
||
|
|
"compatibility-common-util-devicesidelib",
|
||
|
|
"measure_io_as_jar",
|
||
|
|
],
|
||
|
|
jni_libs: [
|
||
|
|
"MicrodroidTestNativeLib",
|
||
|
|
"MicrodroidIdleNativeLib",
|
||
|
|
"MicrodroidEmptyNativeLib",
|
||
|
|
"MicrodroidExitNativeLib",
|
||
|
|
"MicrodroidPrivateLinkingNativeLib",
|
||
|
|
"MicrodroidCrashNativeLib",
|
||
|
|
],
|
||
|
|
min_sdk_version: "33",
|
||
|
|
// Defined in ../vmshareapp/Android.bp
|
||
|
|
data: [":MicrodroidVmShareApp"],
|
||
|
|
}
|
||
|
|
|
||
|
|
// Defaults shared between MicrodroidTestNativeLib and MicrodroidPayloadInOtherAppNativeLib shared
|
||
|
|
// libs. They are expected to share everything apart from the name, so that one app
|
||
|
|
// (MicrodroidTestApp) can start a payload defined in the another app (MicrodroidVmShareApp).
|
||
|
|
cc_defaults {
|
||
|
|
name: "MicrodroidTestNativeLibDefaults",
|
||
|
|
srcs: ["src/native/testbinary.cpp"],
|
||
|
|
stl: "libc++_static",
|
||
|
|
header_libs: ["vm_payload_restricted_headers"],
|
||
|
|
shared_libs: [
|
||
|
|
"libbinder_ndk",
|
||
|
|
"libcap",
|
||
|
|
"MicrodroidTestNativeLibSub",
|
||
|
|
"libvm_payload#current",
|
||
|
|
],
|
||
|
|
static_libs: [
|
||
|
|
"com.android.microdroid.testservice-ndk",
|
||
|
|
"libbase",
|
||
|
|
"libfstab",
|
||
|
|
"libfsverity_digests_proto_cc",
|
||
|
|
"liblog",
|
||
|
|
"libprotobuf-cpp-lite-ndk",
|
||
|
|
],
|
||
|
|
}
|
||
|
|
|
||
|
|
cc_library_shared {
|
||
|
|
name: "MicrodroidPayloadInOtherAppNativeLib",
|
||
|
|
defaults: ["MicrodroidTestNativeLibDefaults"],
|
||
|
|
}
|
||
|
|
|
||
|
|
cc_library_shared {
|
||
|
|
name: "MicrodroidTestNativeLib",
|
||
|
|
defaults: ["MicrodroidTestNativeLibDefaults"],
|
||
|
|
}
|
||
|
|
|
||
|
|
cc_library_shared {
|
||
|
|
name: "MicrodroidTestNativeLibSub",
|
||
|
|
srcs: ["src/native/testlib.cpp"],
|
||
|
|
stl: "libc++_static",
|
||
|
|
}
|
||
|
|
|
||
|
|
cc_library_shared {
|
||
|
|
name: "MicrodroidIdleNativeLib",
|
||
|
|
srcs: ["src/native/idlebinary.cpp"],
|
||
|
|
header_libs: ["vm_payload_headers"],
|
||
|
|
stl: "libc++_static",
|
||
|
|
}
|
||
|
|
|
||
|
|
// An empty payload missing AVmPayload_main
|
||
|
|
cc_library_shared {
|
||
|
|
name: "MicrodroidEmptyNativeLib",
|
||
|
|
srcs: ["src/native/emptybinary.cpp"],
|
||
|
|
stl: "none",
|
||
|
|
}
|
||
|
|
|
||
|
|
// A payload that exits immediately on start
|
||
|
|
cc_library_shared {
|
||
|
|
name: "MicrodroidExitNativeLib",
|
||
|
|
srcs: ["src/native/exitbinary.cpp"],
|
||
|
|
header_libs: ["vm_payload_headers"],
|
||
|
|
stl: "libc++_static",
|
||
|
|
}
|
||
|
|
|
||
|
|
// A payload which tries to link against libselinux, one of private libraries
|
||
|
|
cc_library_shared {
|
||
|
|
name: "MicrodroidPrivateLinkingNativeLib",
|
||
|
|
srcs: ["src/native/idlebinary.cpp"],
|
||
|
|
header_libs: ["vm_payload_headers"],
|
||
|
|
// HACK: linking against "libselinux" will embed libselinux.so into the apk
|
||
|
|
// link against a stub to prevent libselinux.so from being embedded
|
||
|
|
shared_libs: ["libselinux#latest"],
|
||
|
|
stl: "libc++_static",
|
||
|
|
}
|
||
|
|
|
||
|
|
// A payload that crashes immediately on start
|
||
|
|
cc_library_shared {
|
||
|
|
name: "MicrodroidCrashNativeLib",
|
||
|
|
srcs: ["src/native/crashbinary.cpp"],
|
||
|
|
header_libs: ["vm_payload_headers"],
|
||
|
|
stl: "libc++_static",
|
||
|
|
}
|