From aba717c00f2d40ca5e858fe9259669bb1ee79e0e Mon Sep 17 00:00:00 2001 From: Alan Stokes Date: Mon, 24 Apr 2023 16:20:28 +0100 Subject: Create no_std builds of ciborium and dependencies pvmfw, which is no_std (but with alloc) needs to be able to read & write CBOR (for the DICE chain), so we need a no_std version of ciborium. Bug: 266172411 Test: atest MicrodroidTests (cherry picked from https://android-review.googlesource.com/q/commit:f7d51f4fa182c7897cb2a53c49563271fdefb6ad) Merged-In: Iee89507487203e29ad7076276e13f29d4d3caabf Change-Id: Iee89507487203e29ad7076276e13f29d4d3caabf --- Android.bp | 26 ++++++++++++++++++++++++++ cargo2android.json | 5 +---- cargo2android_nostd.bp | 25 +++++++++++++++++++++++++ 3 files changed, 52 insertions(+), 4 deletions(-) create mode 100644 cargo2android_nostd.bp diff --git a/Android.bp b/Android.bp index d88ecc7..676732d 100644 --- a/Android.bp +++ b/Android.bp @@ -63,6 +63,32 @@ rust_library { min_sdk_version: "29", } +rust_library_rlib { + name: "libserde_nostd", + crate_name: "serde", + cargo_env_compat: true, + cargo_pkg_version: "1.0.152", + srcs: ["src/lib.rs"], + edition: "2015", + prefer_rlib: true, + no_stdlibs: true, + stdlibs: [ + "liballoc.rust_sysroot", + "libcompiler_builtins.rust_sysroot", + "libcore.rust_sysroot", + ], + features: [ + "alloc", + "derive", + "serde_derive", + ], + proc_macros: ["libserde_derive"], + apex_available: [ + "//apex_available:platform", + "//apex_available:anyapex", + ], +} + rust_test { name: "serde_test_src_lib", host_supported: true, diff --git a/cargo2android.json b/cargo2android.json index 8579ca9..89a0f3e 100644 --- a/cargo2android.json +++ b/cargo2android.json @@ -1,8 +1,5 @@ { - "apex-available": [ - "//apex_available:platform", - "//apex_available:anyapex" - ], + "add-toplevel-block": "cargo2android_nostd.bp", "cfg-blocklist": [ "std_atomic64" ], diff --git a/cargo2android_nostd.bp b/cargo2android_nostd.bp new file mode 100644 index 0000000..d0e88d9 --- /dev/null +++ b/cargo2android_nostd.bp @@ -0,0 +1,25 @@ +rust_library_rlib { + name: "libserde_nostd", + crate_name: "serde", + cargo_env_compat: true, + cargo_pkg_version: "1.0.152", + srcs: ["src/lib.rs"], + edition: "2015", + prefer_rlib: true, + no_stdlibs: true, + stdlibs: [ + "liballoc.rust_sysroot", + "libcompiler_builtins.rust_sysroot", + "libcore.rust_sysroot", + ], + features: [ + "alloc", + "derive", + "serde_derive", + ], + proc_macros: ["libserde_derive"], + apex_available: [ + "//apex_available:platform", + "//apex_available:anyapex", + ], +} -- cgit v1.2.3