Fix apex rust_dyn_libs property
The apex rust_dyn_libs property wasn't being propagated to a dependency.
Test: TestBasicApex
Flag: EXEMPT bugfix
Change-Id: Ib93a322377933b9ad94cc2a97b71bb38e2710b8e
diff --git a/apex/apex.go b/apex/apex.go
index 30b16ee..0c56c30 100644
--- a/apex/apex.go
+++ b/apex/apex.go
@@ -833,6 +833,7 @@
deps.Merge(ctx, a.properties.Multilib.Both)
deps.Merge(ctx, ApexNativeDependencies{
Native_shared_libs: a.properties.Native_shared_libs,
+ Rust_dyn_libs: a.properties.Rust_dyn_libs,
Tests: a.properties.Tests,
Jni_libs: a.properties.Jni_libs,
})
diff --git a/apex/apex_test.go b/apex/apex_test.go
index 6f0357a..6c354b5 100644
--- a/apex/apex_test.go
+++ b/apex/apex_test.go
@@ -393,7 +393,7 @@
name: "foo.rust",
srcs: ["foo.rs"],
rlibs: ["libfoo.rlib.rust"],
- rustlibs: ["libfoo.dylib.rust"],
+ rustlibs: ["libfoo.transitive.dylib.rust"],
apex_available: ["myapex"],
}
@@ -420,6 +420,13 @@
apex_available: ["myapex"],
}
+ rust_library_dylib {
+ name: "libfoo.transitive.dylib.rust",
+ srcs: ["foo.rs"],
+ crate_name: "foo",
+ apex_available: ["myapex"],
+ }
+
rust_ffi_shared {
name: "libfoo.ffi",
srcs: ["foo.rs"],
@@ -455,7 +462,7 @@
"//apex_available:platform",
"myapex",
],
- }
+ }
cc_library_static {
name: "libstatic",
@@ -547,6 +554,7 @@
ensureListContains(t, ctx.ModuleVariantsForTests("myotherjar"), "android_common_apex10000")
ensureListContains(t, ctx.ModuleVariantsForTests("libfoo.rlib.rust"), "android_arm64_armv8-a_rlib_dylib-std_apex10000")
ensureListContains(t, ctx.ModuleVariantsForTests("libfoo.dylib.rust"), "android_arm64_armv8-a_dylib_apex10000")
+ ensureListContains(t, ctx.ModuleVariantsForTests("libfoo.transitive.dylib.rust"), "android_arm64_armv8-a_dylib_apex10000")
ensureListContains(t, ctx.ModuleVariantsForTests("libbar.ffi"), "android_arm64_armv8-a_shared_apex10000")
ensureListContains(t, ctx.ModuleVariantsForTests("libfoo.shared_from_rust"), "android_arm64_armv8-a_shared_apex10000")
@@ -556,6 +564,7 @@
ensureContains(t, copyCmds, "image.apex/javalib/myjar_stem.jar")
ensureContains(t, copyCmds, "image.apex/javalib/myjar_dex.jar")
ensureContains(t, copyCmds, "image.apex/lib64/libfoo.dylib.rust.dylib.so")
+ ensureContains(t, copyCmds, "image.apex/lib64/libfoo.transitive.dylib.rust.dylib.so")
ensureContains(t, copyCmds, "image.apex/lib64/libfoo.ffi.so")
ensureContains(t, copyCmds, "image.apex/lib64/libbar.ffi.so")
ensureContains(t, copyCmds, "image.apex/lib64/libfoo.shared_from_rust.so")