summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dev-perl/Crypt-OpenSSL-Bignum/Crypt-OpenSSL-Bignum-0.80.0-r1.ebuild24
-rw-r--r--dev-perl/Crypt-OpenSSL-Bignum/files/Crypt-OpenSSL-Bignum-0.80.0-openssl1.1.patch49
2 files changed, 73 insertions, 0 deletions
diff --git a/dev-perl/Crypt-OpenSSL-Bignum/Crypt-OpenSSL-Bignum-0.80.0-r1.ebuild b/dev-perl/Crypt-OpenSSL-Bignum/Crypt-OpenSSL-Bignum-0.80.0-r1.ebuild
new file mode 100644
index 000000000000..77e8c679f0bf
--- /dev/null
+++ b/dev-perl/Crypt-OpenSSL-Bignum/Crypt-OpenSSL-Bignum-0.80.0-r1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+DIST_AUTHOR=KMX
+DIST_VERSION=0.08
+inherit perl-module
+
+DESCRIPTION="OpenSSL's multiprecision integer arithmetic"
+
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE="libressl"
+
+RDEPEND="
+ !libressl? ( dev-libs/openssl:0 )
+ libressl? ( dev-libs/libressl )
+"
+DEPEND="${RDEPEND}
+ virtual/perl-ExtUtils-MakeMaker
+ virtual/pkgconfig
+"
+PATCHES=( "${FILESDIR}/${P}-openssl1.1.patch" )
diff --git a/dev-perl/Crypt-OpenSSL-Bignum/files/Crypt-OpenSSL-Bignum-0.80.0-openssl1.1.patch b/dev-perl/Crypt-OpenSSL-Bignum/files/Crypt-OpenSSL-Bignum-0.80.0-openssl1.1.patch
new file mode 100644
index 000000000000..f2c934863a13
--- /dev/null
+++ b/dev-perl/Crypt-OpenSSL-Bignum/files/Crypt-OpenSSL-Bignum-0.80.0-openssl1.1.patch
@@ -0,0 +1,49 @@
+From d9ddaa210a1b91deb6ea6fcea4cb274f634e482d Mon Sep 17 00:00:00 2001
+From: Mark Wright <gienah@gentoo.org>
+Date: Tue, 17 Oct 2017 16:50:01 +1100
+Subject: Fix building with OpenSSL 1.1.0
+
+Bug: https://bugs.gentoo.org/592532
+Bug: https://rt.cpan.org/Ticket/Display.html?id=117482
+Bug: https://github.com/kmx/perl-Crypt-OpenSSL-Bignum/pull/7
+---
+ Bignum.xs | 8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/Bignum.xs b/Bignum.xs
+index d39dcff..149fa52 100755
+--- a/Bignum.xs
++++ b/Bignum.xs
+@@ -29,7 +29,11 @@ BIGNUM* sv2bn( SV* sv )
+ MODULE = Crypt::OpenSSL::Bignum PACKAGE = Crypt::OpenSSL::Bignum PREFIX = BN_
+
+ BOOT:
++#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
++ OPENSSL_init_crypto(0, NULL);
++#else
+ ERR_load_crypto_strings();
++#endif
+
+ void
+ DESTROY(Crypt::OpenSSL::Bignum self)
+@@ -92,7 +96,7 @@ BN_new(CLASS)
+ BIGNUM* bn;
+ CODE:
+ checkOpenSslCall( bn = BN_new() );
+- checkOpenSslCall( BN_zero( bn ) );
++ checkOpenSslCall( BN_set_word( bn, 0 ) );
+ RETVAL = bn;
+ OUTPUT:
+ RETVAL
+@@ -103,7 +107,7 @@ BN_zero(CLASS)
+ BIGNUM *bn;
+ CODE:
+ checkOpenSslCall( bn = BN_new() );
+- checkOpenSslCall( BN_zero( bn ) );
++ checkOpenSslCall( BN_set_word( bn, 0 ) );
+ RETVAL = bn;
+ OUTPUT:
+ RETVAL
+--
+2.14.2
+