dev-ruby/rbnacl: fix buffer size on ppc32, bug 650834
authorHans de Graaff <graaff@gentoo.org>
Sat, 7 Apr 2018 05:32:12 +0000 (07:32 +0200)
committerHans de Graaff <graaff@gentoo.org>
Sat, 7 Apr 2018 05:32:43 +0000 (07:32 +0200)
Thanks to slyfox for providing a patch.

Closes: https://bugs.gentoo.org/650834
Package-Manager: Portage-2.3.24, Repoman-2.3.6

dev-ruby/rbnacl/files/rbnacl-buffer-size.patch [new file with mode: 0644]
dev-ruby/rbnacl/rbnacl-4.0.2-r1.ebuild [new file with mode: 0644]
dev-ruby/rbnacl/rbnacl-5.0.0-r1.ebuild [new file with mode: 0644]

diff --git a/dev-ruby/rbnacl/files/rbnacl-buffer-size.patch b/dev-ruby/rbnacl/files/rbnacl-buffer-size.patch
new file mode 100644 (file)
index 0000000..3725c85
--- /dev/null
@@ -0,0 +1,24 @@
+Patches based on upstream patch below but reworked to apply to 5.0.0
+
+From 299e0ddbb8fcafc99214c26d6002da145cc84a0c Mon Sep 17 00:00:00 2001
+From: Sergei Trofimovich <slyfox@gentoo.org>
+Date: Sun, 18 Mar 2018 21:13:09 +0000
+Subject: [PATCH] rbnacl: fix byffer size type in randombytes_buf binding
+
+---
+ lib/rbnacl/random.rb | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/rbnacl/random.rb b/lib/rbnacl/random.rb
+index 9742186..db85d6d 100644
+--- a/lib/rbnacl/random.rb
++++ b/lib/rbnacl/random.rb
+@@ -13,7 +13,7 @@ module Random
+     sodium_function :c_random_bytes,
+                     :randombytes_buf,
+-                    [:pointer, :ulong_long]
++                    %i[pointer size_t]
+     # Returns a string of random bytes
+     #
diff --git a/dev-ruby/rbnacl/rbnacl-4.0.2-r1.ebuild b/dev-ruby/rbnacl/rbnacl-4.0.2-r1.ebuild
new file mode 100644 (file)
index 0000000..8501b10
--- /dev/null
@@ -0,0 +1,34 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+USE_RUBY="ruby22 ruby23 ruby24 ruby25"
+
+RUBY_FAKEGEM_RECIPE_DOC="rdoc"
+RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides a high-level toolkit for building cryptographic systems and protocols"
+HOMEPAGE="https://github.com/cryptosphere/rbnacl"
+
+LICENSE="MIT"
+SLOT="4"
+KEYWORDS="~amd64 ~ppc64 ~x86"
+IUSE=""
+
+RDEPEND+=" dev-libs/libsodium"
+DEPEND+=" test? ( dev-libs/libsodium )"
+
+ruby_add_rdepend "dev-ruby/ffi"
+
+PATCHES=( "${FILESDIR}/rbnacl-buffer-size.patch" )
+
+all_ruby_prepare() {
+       sed -i -e '/coveralls/I s:^:#:' \
+               -e '/bundler/ s:^:#:' \
+               -e 's:rbnacl/libsodium:rbnacl:' spec/spec_helper.rb
+}
diff --git a/dev-ruby/rbnacl/rbnacl-5.0.0-r1.ebuild b/dev-ruby/rbnacl/rbnacl-5.0.0-r1.ebuild
new file mode 100644 (file)
index 0000000..6637069
--- /dev/null
@@ -0,0 +1,34 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+USE_RUBY="ruby22 ruby23 ruby24 ruby25"
+
+RUBY_FAKEGEM_RECIPE_DOC="rdoc"
+RUBY_FAKEGEM_EXTRADOC="CHANGES.md README.md"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Provides a high-level toolkit for building cryptographic systems and protocols"
+HOMEPAGE="https://github.com/cryptosphere/rbnacl"
+
+LICENSE="MIT"
+SLOT="5"
+KEYWORDS="~amd64 ~ppc64 ~x86"
+IUSE=""
+
+RDEPEND+=" dev-libs/libsodium"
+DEPEND+=" test? ( dev-libs/libsodium )"
+
+ruby_add_rdepend "dev-ruby/ffi"
+
+PATCHES=( "${FILESDIR}/rbnacl-buffer-size.patch" )
+
+all_ruby_prepare() {
+       sed -i -e '/coveralls/I s:^:#:' \
+               -e '/bundler/ s:^:#:' \
+               -e 's:rbnacl/libsodium:rbnacl:' spec/spec_helper.rb
+}