bytes: enable “serde” Cargo feature

This allows us to serialize and deserialize a Bytes value via Serde.
I’ll be using this for auto-generated PDL tests at first.

This simply allows more code to compile: existing code is unaffected.

Test: presubmit
(cherry picked from https://android-review.googlesource.com/q/commit:5309249612fab0f62ebb1ec133ac7ba796d8b5e3)
Merged-In: I4709fb521feef7ffa519a47a32c80c290974f219
Change-Id: I4709fb521feef7ffa519a47a32c80c290974f219
diff --git a/Android.bp b/Android.bp
index 97dc970..1909ec1 100644
--- a/Android.bp
+++ b/Android.bp
@@ -28,10 +28,12 @@
     edition: "2018",
     features: [
         "default",
+        "serde",
         "std",
     ],
     rustlibs: [
         "libbytes",
+        "libserde",
         "libserde_test",
     ],
 }
@@ -127,6 +129,16 @@
 }
 
 rust_test {
+    name: "bytes_test_tests_test_serde",
+    defaults: ["bytes_test_defaults"],
+    host_supported: true,
+    srcs: ["tests/test_serde.rs"],
+    test_options: {
+        unit_test: true,
+    },
+}
+
+rust_test {
     name: "bytes_test_tests_test_take",
     defaults: ["bytes_test_defaults"],
     host_supported: true,
@@ -146,8 +158,12 @@
     edition: "2018",
     features: [
         "default",
+        "serde",
         "std",
     ],
+    rustlibs: [
+        "libserde",
+    ],
     apex_available: [
         "//apex_available:platform",
         "com.android.bluetooth",
diff --git a/cargo2android.json b/cargo2android.json
index 19c5df8..3f01463 100644
--- a/cargo2android.json
+++ b/cargo2android.json
@@ -10,6 +10,7 @@
   "dependencies": true,
   "device": true,
   "min-sdk-version": "29",
+  "features": "default,serde",
   "run": true,
   "tests": true,
   "vendor-available": true