[cbor] Separate cbor conversion functions in an independent lib
This allows callers from both std and nostd environment to
convert to/from CBOR-encoded data.
Bug: 303807447
Test: atest libservice_vm_requests.test
Change-Id: Ib2052f28779290165941cb2cf7ecc9ca566472af
diff --git a/libs/cborutil/Android.bp b/libs/cborutil/Android.bp
new file mode 100644
index 0000000..4758c4b
--- /dev/null
+++ b/libs/cborutil/Android.bp
@@ -0,0 +1,42 @@
+package {
+ default_applicable_licenses: ["Android-Apache-2.0"],
+}
+
+rust_defaults {
+ name: "libcbor_util_defaults",
+ crate_name: "cbor_util",
+ srcs: ["src/lib.rs"],
+ defaults: ["avf_build_flags_rust"],
+ prefer_rlib: true,
+ apex_available: [
+ "com.android.virt",
+ ],
+}
+
+rust_library_rlib {
+ name: "libcbor_util_nostd",
+ defaults: ["libcbor_util_defaults"],
+ no_stdlibs: true,
+ stdlibs: [
+ "libcompiler_builtins.rust_sysroot",
+ "libcore.rust_sysroot",
+ ],
+ rustlibs: [
+ "libciborium_nostd",
+ "libcoset_nostd",
+ "libserde_nostd",
+ ],
+}
+
+rust_library {
+ name: "libcbor_util",
+ defaults: ["libcbor_util_defaults"],
+ features: [
+ "std",
+ ],
+ rustlibs: [
+ "libciborium",
+ "libcoset",
+ "libserde",
+ ],
+}