summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Mueller <deso@posteo.net>2019-05-27 11:18:32 -0700
committerGeorgy Yakovlev <gyakovlev@gentoo.org>2019-05-27 19:36:21 -0700
commite2f4fcdd819a8b4812c2aacd303a28654d575ece (patch)
treeb5f16b3e27b0ca5e2168788308e7e969377663b7 /app-crypt/nitrocli
parentapp-crypt/nitrocli: Remove 0.2.2 ebuild (diff)
downloadgentoo-e2f4fcdd819a8b4812c2aacd303a28654d575ece.tar.gz
gentoo-e2f4fcdd819a8b4812c2aacd303a28654d575ece.tar.bz2
gentoo-e2f4fcdd819a8b4812c2aacd303a28654d575ece.zip
app-crypt/nitrocli: Add patch for build failure with Rust 1.35
With dev-lang/rust-1.35 (or higher, presumably) nitrocli fails to build because of a unused comments that are flagged starting with this version. The change has been fixed upstream and with this change we add a patch back porting the fix to 0.2.3. Closes: https://bugs.gentoo.org/686870 Signed-off-by: Daniel Müller <deso@posteo.net> Closes: https://github.com/gentoo/gentoo/pull/12119 Signed-off-by: Georgy Yakovlev <gyakovlev@gentoo.org>
Diffstat (limited to 'app-crypt/nitrocli')
-rw-r--r--app-crypt/nitrocli/files/nitrocli_-_fix-rust-1.35-build.patch52
-rw-r--r--app-crypt/nitrocli/nitrocli-0.2.3-r1.ebuild5
2 files changed, 57 insertions, 0 deletions
diff --git a/app-crypt/nitrocli/files/nitrocli_-_fix-rust-1.35-build.patch b/app-crypt/nitrocli/files/nitrocli_-_fix-rust-1.35-build.patch
new file mode 100644
index 000000000000..d5da3b1f48de
--- /dev/null
+++ b/app-crypt/nitrocli/files/nitrocli_-_fix-rust-1.35-build.patch
@@ -0,0 +1,52 @@
+From 5383aa73b339e6a53ff027ee6012a3428f67466a Mon Sep 17 00:00:00 2001
+From: Daniel Mueller <deso@posteo.net>
+Date: Fri, 24 May 2019 17:39:14 -0700
+Subject: [PATCH] Allow for unused doc comments on macros
+
+With Rust 1.35 we get compile errors due to doc comments that are added
+to macro invocations but not actually included in the expanded output.
+The rustc wrongly assumes that we want to document the resulting code
+and not just provide details about the invocation itself.
+This change explicitly allows for those cases. Alternatively we could
+have "downgraded" the doc comments to normal comments or removed them
+altogether. There is little difference between those alternatives.
+---
+ nitrocli/src/args.rs | 2 ++
+ nitrocli/src/pinentry.rs | 1 +
+ 2 files changed, 3 insertions(+)
+
+diff --git a/nitrocli/src/args.rs b/nitrocli/src/args.rs
+index 7f0bfc..7e4f83 100644
+--- a/nitrocli/src/args.rs
++++ b/nitrocli/src/args.rs
+@@ -101,6 +101,7 @@ impl<'io> Stdio for ExecCtx<'io> {
+ }
+
+ /// The available Nitrokey models.
++#[allow(unused_doc_comments)]
+ Enum! {DeviceModel, [
+ Pro => "pro",
+ Storage => "storage"
+@@ -116,6 +117,7 @@ impl From<DeviceModel> for nitrokey::Model {
+ }
+
+ /// A top-level command for nitrocli.
++#[allow(unused_doc_comments)]
+ Enum! {Command, [
+ Config => ("config", config),
+ Lock => ("lock", lock),
+diff --git a/nitrocli/src/pinentry.rs b/nitrocli/src/pinentry.rs
+index 837032..8bab65 100644
+--- a/nitrocli/src/pinentry.rs
++++ b/nitrocli/src/pinentry.rs
+@@ -30,6 +30,7 @@ type CowStr = borrow::Cow<'static, str>;
+ ///
+ /// The available PIN types correspond to the PIN types used by the Nitrokey devices: user and
+ /// admin.
++#[allow(unused_doc_comments)]
+ Enum! {PinType, [
+ Admin => "admin",
+ User => "user"
+--
+2.21.0
+
diff --git a/app-crypt/nitrocli/nitrocli-0.2.3-r1.ebuild b/app-crypt/nitrocli/nitrocli-0.2.3-r1.ebuild
index 40b62ff2d192..fb74af29209c 100644
--- a/app-crypt/nitrocli/nitrocli-0.2.3-r1.ebuild
+++ b/app-crypt/nitrocli/nitrocli-0.2.3-r1.ebuild
@@ -67,6 +67,11 @@ RDEPEND="
RESTRICT="test"
QA_FLAGS_IGNORED="/usr/bin/nitrocli"
+src_prepare() {
+ eapply -p2 "${FILESDIR}/${PN}_-_fix-rust-1.35-build.patch"
+ default
+}
+
src_install() {
cargo_src_install --path=.