Use patch not feature to fix rustdoc build.
aosp/1797429 enabled a new feature to fix the rustdoc build. This
removes that feature and instead uses a patch (which has already been
merged upstream) to fix the issue.
Test: m rustdoc
Change-Id: I2f0088625304ae4bf9fc349e0a64fe0bcf5a4c21
diff --git a/Android.bp b/Android.bp
index 62fc34d..6d64e30 100644
--- a/Android.bp
+++ b/Android.bp
@@ -45,10 +45,7 @@
cargo_pkg_version: "0.10.0",
srcs: ["src/lib.rs"],
edition: "2018",
- features: [
- "default",
- "validate",
- ],
+ features: ["default"],
rustlibs: [
"libbase64_rust",
"libchrono",
diff --git a/cargo2android.json b/cargo2android.json
index e24b32a..5f001a6 100644
--- a/cargo2android.json
+++ b/cargo2android.json
@@ -3,7 +3,6 @@
"data_encoding"
],
"device": true,
- "features": "default,validate",
"run": true
}
diff --git a/patches/rustdoc.patch b/patches/rustdoc.patch
new file mode 100644
index 0000000..d6ec591
--- /dev/null
+++ b/patches/rustdoc.patch
@@ -0,0 +1,24 @@
+diff --git a/src/traits.rs b/src/traits.rs
+index bd4d070..aae96e5 100644
+--- a/src/traits.rs
++++ b/src/traits.rs
+@@ -5,7 +5,18 @@ use crate::error::X509Result;
+ ///
+ /// The returned object uses zero-copy, and so has the same lifetime as the input.
+ ///
+-/// Note that only parsing is done, not validation (see the [`Validate`](crate::validate::Validate) trait).
++#[cfg_attr(
++ feature = "validate",
++ doc = r#"
++Note that only parsing is done, not validation (see the [`Validate`](crate::validate::Validate) trait).
++"#
++)]
++#[cfg_attr(
++ not(feature = "validate"),
++ doc = r#"
++Note that only parsing is done, not validation.
++"#
++)]
+ ///
+ /// # Example
+ ///
diff --git a/src/traits.rs b/src/traits.rs
index bd4d070..aae96e5 100644
--- a/src/traits.rs
+++ b/src/traits.rs
@@ -5,7 +5,18 @@
///
/// The returned object uses zero-copy, and so has the same lifetime as the input.
///
-/// Note that only parsing is done, not validation (see the [`Validate`](crate::validate::Validate) trait).
+#[cfg_attr(
+ feature = "validate",
+ doc = r#"
+Note that only parsing is done, not validation (see the [`Validate`](crate::validate::Validate) trait).
+"#
+)]
+#[cfg_attr(
+ not(feature = "validate"),
+ doc = r#"
+Note that only parsing is done, not validation.
+"#
+)]
///
/// # Example
///