diff options
Diffstat (limited to 'libs/binder/rust/Android.bp')
-rw-r--r-- | libs/binder/rust/Android.bp | 77 |
1 files changed, 62 insertions, 15 deletions
diff --git a/libs/binder/rust/Android.bp b/libs/binder/rust/Android.bp index 57a38dc480..2deb25457e 100644 --- a/libs/binder/rust/Android.bp +++ b/libs/binder/rust/Android.bp @@ -26,15 +26,27 @@ rust_library { }, apex_available: [ "//apex_available:platform", - "com.android.compos", - "com.android.rkpd", - "com.android.uwb", - "com.android.virt", + "//apex_available:anyapex", ], min_sdk_version: "Tiramisu", } rust_library { + name: "libbinder_rs_on_trusty_mock", + crate_name: "binder", + srcs: ["src/lib.rs"], + cfgs: [ + "trusty", + ], + rustlibs: [ + "libbinder_ndk_sys_on_trusty_mock", + "libdowncast_rs", + "liblibc", + ], + vendor: true, +} + +rust_library { name: "libbinder_tokio_rs", crate_name: "binder_tokio", srcs: ["binder_tokio/lib.rs"], @@ -44,6 +56,7 @@ rust_library { ], host_supported: true, vendor_available: true, + product_available: true, target: { darwin: { enabled: false, @@ -51,9 +64,7 @@ rust_library { }, apex_available: [ "//apex_available:platform", - "com.android.compos", - "com.android.uwb", - "com.android.virt", + "//apex_available:anyapex", ], min_sdk_version: "Tiramisu", } @@ -78,10 +89,7 @@ rust_library { }, apex_available: [ "//apex_available:platform", - "com.android.compos", - "com.android.rkpd", - "com.android.uwb", - "com.android.virt", + "//apex_available:anyapex", ], min_sdk_version: "Tiramisu", lints: "none", @@ -89,6 +97,26 @@ rust_library { visibility: [":__subpackages__"], } +rust_library { + name: "libbinder_ndk_sys_on_trusty_mock", + crate_name: "binder_ndk_sys", + srcs: [ + "sys/lib.rs", + ":libbinder_ndk_bindgen_on_trusty_mock", + ], + cfgs: [ + "trusty", + ], + shared_libs: [ + "libbinder_ndk_on_trusty_mock", + ], + vendor: true, + // Lints are checked separately for libbinder_ndk_sys. + // The Trusty mock copy pulls in extra headers that + // don't pass the lints for the bindgen output. + lints: "none", +} + rust_bindgen { name: "libbinder_ndk_bindgen", crate_name: "binder_ndk_bindgen", @@ -117,14 +145,33 @@ rust_bindgen { }, apex_available: [ "//apex_available:platform", - "com.android.compos", - "com.android.rkpd", - "com.android.uwb", - "com.android.virt", + "//apex_available:anyapex", ], min_sdk_version: "Tiramisu", } +rust_bindgen { + name: "libbinder_ndk_bindgen_on_trusty_mock", + crate_name: "binder_ndk_bindgen", + wrapper_src: "sys/BinderBindings.hpp", + source_stem: "bindings", + defaults: [ + "trusty_mock_defaults", + ], + + bindgen_flag_files: [ + // Unfortunately the only way to specify the rust_non_exhaustive enum + // style for a type is to make it the default + // and then specify constified enums for the enums we don't want + // rustified + "libbinder_ndk_bindgen_flags.txt", + ], + shared_libs: [ + "libbinder_ndk_on_trusty_mock", + "libc++", + ], +} + rust_test { name: "libbinder_rs-internal_test", crate_name: "binder", |