aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorQuentin Retornaz <gentoo@retornaz.com>2018-12-20 15:49:54 +0100
committerAnthony G. Basile <blueness@gentoo.org>2018-12-20 12:11:35 -0500
commitba62527e2b40d29d0e0e252d5baf063fe2ff8e90 (patch)
treef4b2b9a6764c93dd4aa641489528a522677aff48
parentdev-util/cargo: openssl-sys crate bump to 0.9.40 for libressl 2.9.0 (diff)
downloadlibressl-ba62527e2b40d29d0e0e252d5baf063fe2ff8e90.tar.gz
libressl-ba62527e2b40d29d0e0e252d5baf063fe2ff8e90.tar.bz2
libressl-ba62527e2b40d29d0e0e252d5baf063fe2ff8e90.zip
dev-perl/Net-SSLeay: new package
Signed-off-by: Quentin Retornaz <gentoo@retornaz.com> Package-Manager: Portage-2.3.51, Repoman-2.3.11 Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
-rw-r--r--dev-perl/Net-SSLeay/Manifest1
-rw-r--r--dev-perl/Net-SSLeay/Net-SSLeay-1.820.0.ebuild58
-rw-r--r--dev-perl/Net-SSLeay/files/Net-SSLeay-1.82-fix-libdir.patch27
-rw-r--r--dev-perl/Net-SSLeay/files/Net-SSLeay-1.82-fix-network-tests.patch29
-rw-r--r--dev-perl/Net-SSLeay/files/Net-SSLeay-1.82-libressl.patch31
-rw-r--r--dev-perl/Net-SSLeay/files/Net-SSLeay-1.82-respect-cflags.patch26
-rw-r--r--dev-perl/Net-SSLeay/metadata.xml13
7 files changed, 185 insertions, 0 deletions
diff --git a/dev-perl/Net-SSLeay/Manifest b/dev-perl/Net-SSLeay/Manifest
new file mode 100644
index 0000000..45ff273
--- /dev/null
+++ b/dev-perl/Net-SSLeay/Manifest
@@ -0,0 +1 @@
+DIST Net-SSLeay-1.82.tar.gz 399194 BLAKE2B 0c8aeb3085b102b71284266904ee88a8558070644aaa6dd0c5f78db0bfccb0e7456c8ba62a549d7ab245a02ddc7e856bc326d503f63268ee0761290e41b97e4d SHA512 758c41f4916a55b5085167e5c6a2732a5ee70dbeb8f42e791cd957957ba4a59f724c072d3fa50a6b42ae3b22cf3ecb8738c3f8963990a7030117b73c2dcc0716
diff --git a/dev-perl/Net-SSLeay/Net-SSLeay-1.820.0.ebuild b/dev-perl/Net-SSLeay/Net-SSLeay-1.820.0.ebuild
new file mode 100644
index 0000000..668a49a
--- /dev/null
+++ b/dev-perl/Net-SSLeay/Net-SSLeay-1.820.0.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+DIST_AUTHOR=MIKEM
+DIST_VERSION=1.82
+DIST_EXAMPLES=("examples/*")
+inherit multilib perl-module
+
+DESCRIPTION="Perl extension for using OpenSSL"
+
+LICENSE="openssl"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="libressl test minimal examples"
+
+RDEPEND="
+ !libressl? ( dev-libs/openssl:0= )
+ libressl? ( dev-libs/libressl:0= )
+ virtual/perl-MIME-Base64
+"
+DEPEND="${RDEPEND}
+ virtual/perl-ExtUtils-MakeMaker
+ test? (
+ !minimal? (
+ dev-perl/Test-Exception
+ dev-perl/Test-Warn
+ dev-perl/Test-NoWarnings
+ )
+ virtual/perl-Test-Simple
+ )
+"
+export OPTIMIZE="$CFLAGS"
+export OPENSSL_PREFIX=${EPREFIX}/usr
+
+PATCHES=(
+ "${FILESDIR}/${PN}-1.82-respect-cflags.patch"
+ "${FILESDIR}/${PN}-1.82-fix-libdir.patch"
+ "${FILESDIR}/${PN}-1.82-fix-network-tests.patch"
+ "${FILESDIR}/${PN}-1.82-libressl.patch"
+)
+
+src_prepare() {
+ use test && perl_rm_files 't/local/01_pod.t' 't/local/02_pod_coverage.t' 't/local/kwalitee.t'
+ perl-module_src_prepare
+}
+
+src_configure() {
+ if use test && has network ${DIST_TEST_OVERRIDE:-${DIST_TEST:-do parallel}}; then
+ export NETWORK_TESTS=yes
+ else
+ use test && einfo "Network tests will be skipped without DIST_TEST_OVERRIDE=~network"
+ export NETWORK_TESTS=no
+ fi
+ export LIBDIR=$(get_libdir)
+ perl-module_src_configure
+}
diff --git a/dev-perl/Net-SSLeay/files/Net-SSLeay-1.82-fix-libdir.patch b/dev-perl/Net-SSLeay/files/Net-SSLeay-1.82-fix-libdir.patch
new file mode 100644
index 0000000..6aff3f8
--- /dev/null
+++ b/dev-perl/Net-SSLeay/files/Net-SSLeay-1.82-fix-libdir.patch
@@ -0,0 +1,27 @@
+Bug: https://bugs.gentoo.org/416339
+
+The previous patch for the above bug report used $ENV{LIBDIR} but this
+wasn't enough to help with cross-compiling. We could use $ENV{SYSROOT}
+but this results in a bogus RPATH entry. It is better to simply trust
+the toolchain, which may have its own sysroot applied.
+
+Cross-compiling Perl modules requires additional hackery but at least
+that hackery will work now. :)
+
+Chewi
+2017/12/03
+
+diff -Naur a/inc/Module/Install/PRIVATE/Net/SSLeay.pm b/inc/Module/Install/PRIVATE/Net/SSLeay.pm
+--- a/inc/Module/Install/PRIVATE/Net/SSLeay.pm 2017-10-13 01:38:01.000000000 +0100
++++ b/inc/Module/Install/PRIVATE/Net/SSLeay.pm 2017-12-03 10:52:27.304861804 +0000
+@@ -65,10 +65,8 @@
+ cccdlflags => '',
+ };
+ for ("$prefix/include", "$prefix/inc32", '/usr/kerberos/include') {
+- push @{$opts->{inc_paths}}, $_ if -f "$_/openssl/ssl.h";
+ }
+ for ($prefix, "$prefix/lib64", "$prefix/lib", "$prefix/out32dll") {
+- push @{$opts->{lib_paths}}, $_ if -d $_;
+ }
+
+ my $rsaref = $self->ssleay_is_rsaref;
diff --git a/dev-perl/Net-SSLeay/files/Net-SSLeay-1.82-fix-network-tests.patch b/dev-perl/Net-SSLeay/files/Net-SSLeay-1.82-fix-network-tests.patch
new file mode 100644
index 0000000..6c3e768
--- /dev/null
+++ b/dev-perl/Net-SSLeay/files/Net-SSLeay-1.82-fix-network-tests.patch
@@ -0,0 +1,29 @@
+From 36c14369372f0371e033019c9cea197b31a93bde Mon Sep 17 00:00:00 2001
+From: Kent Fredric <kentnl@gentoo.org>
+Date: Sat, 5 Mar 2016 12:41:11 +1300
+Subject: Fix network tests re: Networking
+
+---
+ inc/Module/Install/PRIVATE/Net/SSLeay.pm | 6 +-----
+ 1 file changed, 1 insertion(+), 5 deletions(-)
+
+diff --git a/inc/Module/Install/PRIVATE/Net/SSLeay.pm b/inc/Module/Install/PRIVATE/Net/SSLeay.pm
+index 0a3aa24..f27b43f 100644
+--- a/inc/Module/Install/PRIVATE/Net/SSLeay.pm
++++ b/inc/Module/Install/PRIVATE/Net/SSLeay.pm
+@@ -46,11 +46,7 @@ EOM
+ LIBS => join(' ', (map {"-L$_"} @{$opts->{lib_paths}}), (map {"-l$_"} @{$opts->{lib_links}})),
+ );
+
+- if ( $self->prompt(
+- "Do you want to run external tests?\n".
+- "These tests *will* *fail* if you do not have network connectivity.",
+- 'n',
+- ) =~ /^y/i ) {
++ if ( 'yes' eq ( $ENV{NETWORK_TESTS} || '' ) ) {
+ $self->tests('t/*/*.t t/*/*/*.t');
+ } else {
+ $self->tests('t/local/*.t t/handle/local/*.t');
+--
+2.14.3
+
diff --git a/dev-perl/Net-SSLeay/files/Net-SSLeay-1.82-libressl.patch b/dev-perl/Net-SSLeay/files/Net-SSLeay-1.82-libressl.patch
new file mode 100644
index 0000000..f320fc4
--- /dev/null
+++ b/dev-perl/Net-SSLeay/files/Net-SSLeay-1.82-libressl.patch
@@ -0,0 +1,31 @@
+diff --git a/SSLeay.xs b/SSLeay.xs
+index 685c2f2..54b1f40 100644
+--- a/SSLeay.xs
++++ b/SSLeay.xs
+@@ -2667,7 +2667,7 @@ RAND_write_file(file_name)
+
+ #define REM40 "Minimal X509 stuff..., this is a bit ugly and should be put in its own modules Net::SSLeay::X509.pm"
+
+-#if OPENSSL_VERSION_NUMBER >= 0x1000200fL && !defined(LIBRESSL_VERSION_NUMBER)
++#if OPENSSL_VERSION_NUMBER >= 0x1000200fL
+
+ int
+ X509_check_host(X509 *cert, const char *name, unsigned int flags = 0, SV *peername = &PL_sv_undef)
+@@ -5409,7 +5409,7 @@ SSL_get_client_random(s)
+
+ #endif
+
+-#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
++#if (OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)) || (LIBRESSL_VERSION_NUMBER >= 0x2070000fL)
+
+ void
+ SSL_get_server_random(s)
+@@ -5440,7 +5440,7 @@ int
+ SSL_get_keyblock_size(s)
+ SSL * s
+ CODE:
+-#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
++#if (OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)) || (LIBRESSL_VERSION_NUMBER >= 0x2070000fL)
+ const SSL_CIPHER *ssl_cipher;
+ int cipher = NID_undef, digest = NID_undef, mac_secret_size = 0;
+ const EVP_CIPHER *c = NULL;
diff --git a/dev-perl/Net-SSLeay/files/Net-SSLeay-1.82-respect-cflags.patch b/dev-perl/Net-SSLeay/files/Net-SSLeay-1.82-respect-cflags.patch
new file mode 100644
index 0000000..03d06b6
--- /dev/null
+++ b/dev-perl/Net-SSLeay/files/Net-SSLeay-1.82-respect-cflags.patch
@@ -0,0 +1,26 @@
+From 8472348e588c16ad5332fe0b1f1dc9cc8eb4ab7d Mon Sep 17 00:00:00 2001
+From: Torsten Veller <tove@gentoo.org>
+Date: Mon, 16 Jul 2012 05:31:43 +1200
+Subject: Respect CFLAGS
+
+Bug: https://bugs.gentoo.org/378657
+---
+ inc/Module/Install/PRIVATE/Net/SSLeay.pm | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/inc/Module/Install/PRIVATE/Net/SSLeay.pm b/inc/Module/Install/PRIVATE/Net/SSLeay.pm
+index 5abcf70..49913e6 100644
+--- a/inc/Module/Install/PRIVATE/Net/SSLeay.pm
++++ b/inc/Module/Install/PRIVATE/Net/SSLeay.pm
+@@ -129,7 +129,7 @@ EOM
+
+ if (($Config{cc} =~ /aCC/i) && $^O eq 'hpux') {
+ print "*** Enabling HPUX aCC options (+e)\n";
+- $opts->{optimize} = '+e -O2 -g';
++ $opts->{optimize} = '+e ' . $opts->{optimize};
+ }
+
+ if ( (($Config{ccname} || $Config{cc}) eq 'gcc') && ($Config{cccdlflags} =~ /-fpic/) ) {
+--
+2.14.3
+
diff --git a/dev-perl/Net-SSLeay/metadata.xml b/dev-perl/Net-SSLeay/metadata.xml
new file mode 100644
index 0000000..3a182c2
--- /dev/null
+++ b/dev-perl/Net-SSLeay/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>perl@gentoo.org</email>
+ <name>Gentoo Perl Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="cpan">Net-SSLeay</remote-id>
+ <remote-id type="cpan-module">Net::SSLeay</remote-id>
+ <remote-id type="cpan-module">Net::SSLeay::Handle</remote-id>
+ </upstream>
+</pkgmetadata>