* [gentoo-commits] repo/gentoo:master commit in: net-libs/wvstreams/files/, net-libs/wvstreams/
@ 2016-09-18 13:09 David Seifert
0 siblings, 0 replies; 7+ messages in thread
From: David Seifert @ 2016-09-18 13:09 UTC (permalink / raw
To: gentoo-commits
commit: cf1f89cf9056c80498a07796b28092671688d316
Author: David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Sun Sep 18 13:07:37 2016 +0000
Commit: David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Sun Sep 18 13:08:10 2016 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cf1f89cf
net-libs/wvstreams: Allow for compiling with GCC 6
Gentoo-bug: 594058
* Add missing slot operators
Package-Manager: portage-2.3.0
.../files/wvstreams-4.6.1-fix-c++14.patch | 36 ++++++++++++++++++++++
net-libs/wvstreams/wvstreams-4.6.1-r3.ebuild | 9 +++---
2 files changed, 41 insertions(+), 4 deletions(-)
diff --git a/net-libs/wvstreams/files/wvstreams-4.6.1-fix-c++14.patch b/net-libs/wvstreams/files/wvstreams-4.6.1-fix-c++14.patch
new file mode 100644
index 00000000..b2c2efd
--- /dev/null
+++ b/net-libs/wvstreams/files/wvstreams-4.6.1-fix-c++14.patch
@@ -0,0 +1,36 @@
+Fix building with C++14, which errors out due to explicit operator bool() conversion
+See also: https://bugs.gentoo.org/show_bug.cgi?id=594058
+
+--- a/streams/wvstream.cc
++++ b/streams/wvstream.cc
+@@ -907,9 +907,9 @@
+
+ if (forceable)
+ {
+- si.wants.readable = readcb;
+- si.wants.writable = writecb;
+- si.wants.isexception = exceptcb;
++ si.wants.readable = static_cast<bool>(readcb);
++ si.wants.writable = static_cast<bool>(writecb);
++ si.wants.isexception = static_cast<bool>(exceptcb);
+ }
+ else
+ {
+@@ -1019,7 +1019,7 @@
+
+ IWvStream::SelectRequest WvStream::get_select_request()
+ {
+- return IWvStream::SelectRequest(readcb, writecb, exceptcb);
++ return IWvStream::SelectRequest(static_cast<bool>(readcb), static_cast<bool>(writecb), static_cast<bool>(exceptcb));
+ }
+
+
+@@ -1107,7 +1107,7 @@
+ // inefficient, because if the alarm was expired then pre_select()
+ // returned true anyway and short-circuited the previous select().
+ TRACE("hello-%p\n", this);
+- return !alarm_was_ticking || select(0, readcb, writecb, exceptcb);
++ return !alarm_was_ticking || select(0, static_cast<bool>(readcb), static_cast<bool>(writecb), static_cast<bool>(exceptcb));
+ }
+
+
diff --git a/net-libs/wvstreams/wvstreams-4.6.1-r3.ebuild b/net-libs/wvstreams/wvstreams-4.6.1-r3.ebuild
index 394d4d0..33711e8 100644
--- a/net-libs/wvstreams/wvstreams-4.6.1-r3.ebuild
+++ b/net-libs/wvstreams/wvstreams-4.6.1-r3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2013 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
@@ -21,10 +21,10 @@ RESTRICT="test"
#It'll take a larger patching effort to get it extracted, since upstream integrated it
#more tightly this time. Probably for the better since upstream xplc seems dead.
-RDEPEND="sys-libs/readline
+RDEPEND="sys-libs/readline:0=
sys-libs/zlib
dbus? ( >=sys-apps/dbus-1.4.20 )
- dev-libs/openssl:0
+ dev-libs/openssl:0=
pam? ( virtual/pam )"
DEPEND="${RDEPEND}
virtual/pkgconfig
@@ -48,7 +48,8 @@ src_prepare() {
"${FILESDIR}"/${P}-parallel-make.patch \
"${FILESDIR}"/${P}-openssl-1.0.0.patch \
"${FILESDIR}"/${P}-glibc212.patch \
- "${FILESDIR}"/${P}-gcc47.patch
+ "${FILESDIR}"/${P}-gcc47.patch \
+ "${FILESDIR}"/${P}-fix-c++14.patch
sed -i \
-e 's:AM_CONFIG_HEADER:AC_CONFIG_HEADERS:' \
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: net-libs/wvstreams/files/, net-libs/wvstreams/
@ 2017-07-26 19:10 Jeroen Roovers
0 siblings, 0 replies; 7+ messages in thread
From: Jeroen Roovers @ 2017-07-26 19:10 UTC (permalink / raw
To: gentoo-commits
commit: 7442974f018c4f58ca1a25228ab1f01170ff441e
Author: Jeroen Roovers <jer <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 26 19:10:18 2017 +0000
Commit: Jeroen Roovers <jer <AT> gentoo <DOT> org>
CommitDate: Wed Jul 26 19:10:44 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7442974f
net-libs/wvstreams: EAPI bump.
Package-Manager: Portage-2.3.6, Repoman-2.3.3
.../files/wvstreams-4.6.1-_DEFAULT_SOURCE.patch | 11 ++++
.../wvstreams/files/wvstreams-4.6.1-autoconf.patch | 31 ++++++++++
net-libs/wvstreams/wvstreams-4.6.1-r3.ebuild | 2 +-
...s-4.6.1-r3.ebuild => wvstreams-4.6.1-r4.ebuild} | 68 +++++++++-------------
4 files changed, 72 insertions(+), 40 deletions(-)
diff --git a/net-libs/wvstreams/files/wvstreams-4.6.1-_DEFAULT_SOURCE.patch b/net-libs/wvstreams/files/wvstreams-4.6.1-_DEFAULT_SOURCE.patch
new file mode 100644
index 00000000000..1084a5be21e
--- /dev/null
+++ b/net-libs/wvstreams/files/wvstreams-4.6.1-_DEFAULT_SOURCE.patch
@@ -0,0 +1,11 @@
+--- a/wvrules.mk
++++ b/wvrules.mk
+@@ -83,7 +83,7 @@
+
+ INCFLAGS=$(addprefix -I,$(WVSTREAMS_INC) $(XPATH))
+ CPPFLAGS+=$(INCFLAGS) \
+- -D_BSD_SOURCE -D_GNU_SOURCE $(OSDEFINE) \
++ -D_DEFAULT_SOURCE $(OSDEFINE) \
+ -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 \
+ -DUNSTABLE
+
diff --git a/net-libs/wvstreams/files/wvstreams-4.6.1-autoconf.patch b/net-libs/wvstreams/files/wvstreams-4.6.1-autoconf.patch
new file mode 100644
index 00000000000..a9b9a5ac90c
--- /dev/null
+++ b/net-libs/wvstreams/files/wvstreams-4.6.1-autoconf.patch
@@ -0,0 +1,31 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -641,6 +641,8 @@
+
+ AC_CONFIG_HEADERS(include/wvautoconf.h)
+
++AC_CONFIG_SUBDIRS(argp)
++
+ AC_OUTPUT
+
+ # Now convert PACKAGE_* macros into WVPACKAGE_* in include/wvautoconf.h
+--- a/argp/configure.ac
++++ b/argp/configure.ac
+@@ -4,7 +4,7 @@
+ AC_PREREQ(2.54)
+ AC_INIT(argp-ba.c)
+ AM_INIT_AUTOMAKE(argp, standalone-1.3)
+-AM_CONFIG_HEADER(config.h)
++AC_CONFIG_HEADERS(config.h)
+
+ # GNU libc defaults to supplying the ISO C library functions only. The
+ # _GNU_SOURCE define enables these extensions, in particular we want
+@@ -18,7 +18,7 @@
+ AC_PROG_RANLIB
+ AC_PROGRAM_CHECK(AR,ar,ar,:)
+ AC_PROGRAM_CHECK(AR,gar,gar,:)
+-AM_PROG_CC_STDC
++AC_PROG_CC
+
+ AC_SUBST(AR)
+
diff --git a/net-libs/wvstreams/wvstreams-4.6.1-r3.ebuild b/net-libs/wvstreams/wvstreams-4.6.1-r3.ebuild
index af37675388d..dad2d2f206a 100644
--- a/net-libs/wvstreams/wvstreams-4.6.1-r3.ebuild
+++ b/net-libs/wvstreams/wvstreams-4.6.1-r3.ebuild
@@ -23,7 +23,7 @@ RESTRICT="test"
RDEPEND="sys-libs/readline:0=
sys-libs/zlib
dbus? ( >=sys-apps/dbus-1.4.20 )
- dev-libs/openssl:0=
+ <dev-libs/openssl-1.1:0=
pam? ( virtual/pam )"
DEPEND="${RDEPEND}
virtual/pkgconfig
diff --git a/net-libs/wvstreams/wvstreams-4.6.1-r3.ebuild b/net-libs/wvstreams/wvstreams-4.6.1-r4.ebuild
similarity index 61%
copy from net-libs/wvstreams/wvstreams-4.6.1-r3.ebuild
copy to net-libs/wvstreams/wvstreams-4.6.1-r4.ebuild
index af37675388d..df4b00f5a85 100644
--- a/net-libs/wvstreams/wvstreams-4.6.1-r3.ebuild
+++ b/net-libs/wvstreams/wvstreams-4.6.1-r4.ebuild
@@ -1,7 +1,7 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=6
inherit autotools eutils flag-o-matic toolchain-funcs versionator
DESCRIPTION="A network programming library in C++"
@@ -10,7 +10,7 @@ SRC_URI="https://wvstreams.googlecode.com/files/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="alpha amd64 hppa ppc sparc x86"
+KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~sparc ~x86"
IUSE="pam doc +ssl +dbus debug boost"
#Tests fail if openssl is not compiled with -DPURIFY. Gentoo's isn't. FAIL!
@@ -20,45 +20,34 @@ RESTRICT="test"
#It'll take a larger patching effort to get it extracted, since upstream integrated it
#more tightly this time. Probably for the better since upstream xplc seems dead.
-RDEPEND="sys-libs/readline:0=
+RDEPEND="
+ <dev-libs/openssl-1.1:0=
+ sys-libs/readline:0=
sys-libs/zlib
dbus? ( >=sys-apps/dbus-1.4.20 )
- dev-libs/openssl:0=
- pam? ( virtual/pam )"
-DEPEND="${RDEPEND}
+ pam? ( virtual/pam )
+"
+DEPEND="
+ ${RDEPEND}
virtual/pkgconfig
doc? ( app-doc/doxygen )
- boost? ( >=dev-libs/boost-1.34.1:= )"
-
+ boost? ( >=dev-libs/boost-1.34.1:= )
+"
DOCS="ChangeLog README*"
-
-pkg_pretend() {
- [[ ${MERGE_TYPE} == "binary" ]] && return
-
- if ! use boost && ! version_is_at_least 4.1 "$(gcc-fullversion)"; then
- eerror "This package requires the active gcc to be at least version 4.1"
- eerror "or USE=boost must be installed."
- die "Please activate >=sys-devel/gcc-4.1 with gcc-config."
- fi
-}
+PATCHES=(
+ "${FILESDIR}"/${P}-autoconf.patch
+ "${FILESDIR}"/${P}-fix-c++14.patch
+ "${FILESDIR}"/${P}-gcc47.patch
+ "${FILESDIR}"/${P}-glibc212.patch
+ "${FILESDIR}"/${P}-openssl-1.0.0.patch
+ "${FILESDIR}"/${P}-parallel-make.patch
+ "${FILESDIR}"/${P}-_DEFAULT_SOURCE.patch
+)
src_prepare() {
- epatch \
- "${FILESDIR}"/${P}-parallel-make.patch \
- "${FILESDIR}"/${P}-openssl-1.0.0.patch \
- "${FILESDIR}"/${P}-glibc212.patch \
- "${FILESDIR}"/${P}-gcc47.patch \
- "${FILESDIR}"/${P}-fix-c++14.patch
-
- sed -i \
- -e 's:AM_CONFIG_HEADER:AC_CONFIG_HEADERS:' \
- -e 's:AM_PROG_CC_STDC:AC_PROG_CC:' \
- argp/configure.ac || die
+ default
eautoreconf
- pushd argp >/dev/null
- eautoreconf
- popd >/dev/null
}
src_configure() {
@@ -70,15 +59,16 @@ src_configure() {
use boost && export ac_cv_header_tr1_functional=no
econf \
- --localstatedir=/var \
$(use_enable debug) \
- --disable-optimization \
$(use_with dbus) \
- --with-openssl \
$(use_with pam) \
- --without-tcl \
- --without-qt \
+ --cache-file=${T}/config.cache \
+ --disable-optimization \
+ --localstatedir=/var \
+ --with-openssl \
--with-zlib \
+ --without-qt \
+ --without-tcl \
--without-valgrind
}
@@ -99,7 +89,7 @@ src_install() {
if use doc; then
#the list of files is too big for dohtml -r Docs/doxy-html/*
- cd Docs/doxy-html
- dohtml -r *
+ docinto html
+ dodoc -r Docs/doxy-html/*
fi
}
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: net-libs/wvstreams/files/, net-libs/wvstreams/
@ 2017-07-27 13:26 Jeroen Roovers
0 siblings, 0 replies; 7+ messages in thread
From: Jeroen Roovers @ 2017-07-27 13:26 UTC (permalink / raw
To: gentoo-commits
commit: 5a27b2e7330527a3b1020be3a43ad021197226dc
Author: Jeroen Roovers <jer <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 27 13:25:56 2017 +0000
Commit: Jeroen Roovers <jer <AT> gentoo <DOT> org>
CommitDate: Thu Jul 27 13:25:56 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5a27b2e7
net-libs/wvstreams: Add patch for bug #614810.
Package-Manager: Portage-2.3.6, Repoman-2.3.3
...ytes-should-be-enough-right-question-mark.patch | 11 +++
net-libs/wvstreams/wvstreams-4.6.1-r5.ebuild | 96 ++++++++++++++++++++++
2 files changed, 107 insertions(+)
diff --git a/net-libs/wvstreams/files/wvstreams-4.6.1-2048-bytes-should-be-enough-right-question-mark.patch b/net-libs/wvstreams/files/wvstreams-4.6.1-2048-bytes-should-be-enough-right-question-mark.patch
new file mode 100644
index 00000000000..15fb13ca633
--- /dev/null
+++ b/net-libs/wvstreams/files/wvstreams-4.6.1-2048-bytes-should-be-enough-right-question-mark.patch
@@ -0,0 +1,11 @@
+--- a/utils/wvtask.cc
++++ b/utils/wvtask.cc
+@@ -429,7 +429,7 @@
+ total = (val+1) * (size_t)1024;
+
+ if (!use_shared_stack())
+- total = 1024; // enough to save the do_task stack frame
++ total = 2048; // enough to save the do_task stack frame
+
+ // set up a stack frame for the new task. This runs once
+ // per get_stack.
diff --git a/net-libs/wvstreams/wvstreams-4.6.1-r5.ebuild b/net-libs/wvstreams/wvstreams-4.6.1-r5.ebuild
new file mode 100644
index 00000000000..8d33d4bb718
--- /dev/null
+++ b/net-libs/wvstreams/wvstreams-4.6.1-r5.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit autotools eutils flag-o-matic toolchain-funcs versionator
+
+DESCRIPTION="A network programming library in C++"
+HOMEPAGE="http://alumnit.ca/wiki/?WvStreams"
+SRC_URI="https://wvstreams.googlecode.com/files/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~sparc ~x86"
+IUSE="pam doc +ssl +dbus debug boost"
+
+#Tests fail if openssl is not compiled with -DPURIFY. Gentoo's isn't. FAIL!
+RESTRICT="test"
+
+#QA Fail: xplc is compiled as a part of wvstreams.
+#It'll take a larger patching effort to get it extracted, since upstream integrated it
+#more tightly this time. Probably for the better since upstream xplc seems dead.
+
+RDEPEND="
+ <dev-libs/openssl-1.1:0=
+ sys-libs/readline:0=
+ sys-libs/zlib
+ dbus? ( >=sys-apps/dbus-1.4.20 )
+ pam? ( virtual/pam )
+"
+DEPEND="
+ ${RDEPEND}
+ virtual/pkgconfig
+ doc? ( app-doc/doxygen )
+ boost? ( >=dev-libs/boost-1.34.1:= )
+"
+DOCS="ChangeLog README*"
+PATCHES=(
+ "${FILESDIR}"/${P}-autoconf.patch
+ "${FILESDIR}"/${P}-fix-c++14.patch
+ "${FILESDIR}"/${P}-gcc47.patch
+ "${FILESDIR}"/${P}-glibc212.patch
+ "${FILESDIR}"/${P}-openssl-1.0.0.patch
+ "${FILESDIR}"/${P}-parallel-make.patch
+ "${FILESDIR}"/${P}-_DEFAULT_SOURCE.patch
+ "${FILESDIR}"/${P}-2048-bytes-should-be-enough-right-question-mark.patch
+)
+
+src_prepare() {
+ default
+
+ eautoreconf
+}
+
+src_configure() {
+ append-flags -fno-strict-aliasing
+ append-flags -fno-tree-dce -fno-optimize-sibling-calls #421375
+
+ tc-export AR CXX
+
+ use boost && export ac_cv_header_tr1_functional=no
+
+ econf \
+ $(use_enable debug) \
+ $(use_with dbus) \
+ $(use_with pam) \
+ --cache-file=${T}/config.cache \
+ --disable-optimization \
+ --localstatedir=/var \
+ --with-openssl \
+ --with-zlib \
+ --without-qt \
+ --without-tcl \
+ --without-valgrind
+}
+
+src_compile() {
+ default
+
+ if use doc; then
+ doxygen || die
+ fi
+}
+
+src_test() {
+ emake test
+}
+
+src_install() {
+ default
+
+ if use doc; then
+ #the list of files is too big for dohtml -r Docs/doxy-html/*
+ docinto html
+ dodoc -r Docs/doxy-html/*
+ fi
+}
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: net-libs/wvstreams/files/, net-libs/wvstreams/
@ 2018-12-18 13:49 Jeroen Roovers
0 siblings, 0 replies; 7+ messages in thread
From: Jeroen Roovers @ 2018-12-18 13:49 UTC (permalink / raw
To: gentoo-commits
commit: 7b3d714731f10129f9af881ae8fb58890d6c55f3
Author: Jeroen Roovers <jer <AT> gentoo <DOT> org>
AuthorDate: Tue Dec 18 13:49:06 2018 +0000
Commit: Jeroen Roovers <jer <AT> gentoo <DOT> org>
CommitDate: Tue Dec 18 13:49:24 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7b3d7147
Revert "net-libs/wvstreams: OpenSSL 1.1 compatibility"
This reverts commit 875f94f85a365c3fd22f07fe22634afb49e9febd.
Signed-off-by: Jeroen Roovers <jer <AT> gentoo.org>
.../files/wvstreams-4.6.1-openssl-1.1.patch | 555 ---------------------
net-libs/wvstreams/wvstreams-4.6.1-r6.ebuild | 96 ----
net-libs/wvstreams/wvstreams-99999.ebuild | 2 +-
3 files changed, 1 insertion(+), 652 deletions(-)
diff --git a/net-libs/wvstreams/files/wvstreams-4.6.1-openssl-1.1.patch b/net-libs/wvstreams/files/wvstreams-4.6.1-openssl-1.1.patch
deleted file mode 100644
index 88d854e2755..00000000000
--- a/net-libs/wvstreams/files/wvstreams-4.6.1-openssl-1.1.patch
+++ /dev/null
@@ -1,555 +0,0 @@
-From 5506a74e1b033776ad441b4554716cdcfa88fe03 Mon Sep 17 00:00:00 2001
-From: Reiner Herrmann <reiner@reiner-h.de>
-Date: Sat, 28 Jul 2018 23:26:17 +0200
-Subject: [PATCH] Port to OpenSSL 1.1
-
----
- crypto/wvcrl.cc | 38 +++++++++++++-------------------------
- crypto/wvdiffiehellman.cc | 30 +++++++++++++++++++-----------
- crypto/wvdigest.cc | 16 ++++++++--------
- crypto/wvocsp.cc | 35 +++++++++--------------------------
- crypto/wvx509.cc | 31 ++++++++++++++++---------------
- crypto/wvx509mgr.cc | 27 ++++++++++++++++-----------
- include/wvdiffiehellman.h | 2 +-
- include/wvdigest.h | 14 ++++++--------
- include/wvtripledes.h | 10 +++++-----
- 9 files changed, 93 insertions(+), 110 deletions(-)
-
-diff --git a/crypto/wvcrl.cc b/crypto/wvcrl.cc
-index fa00c760..880ad85d 100644
---- a/crypto/wvcrl.cc
-+++ b/crypto/wvcrl.cc
-@@ -357,31 +357,19 @@ bool WvCRL::isrevoked(WvStringParm serial_number) const
- ASN1_INTEGER *serial = serial_to_int(serial_number);
- if (serial)
- {
-- X509_REVOKED mayberevoked;
-- mayberevoked.serialNumber = serial;
-- if (crl->crl->revoked)
-- {
-- int idx = sk_X509_REVOKED_find(crl->crl->revoked,
-- &mayberevoked);
-- ASN1_INTEGER_free(serial);
-- if (idx >= 0)
-- {
-- debug("Certificate is revoked.\n");
-- return true;
-- }
-- else
-- {
-- debug("Certificate is not revoked.\n");
-- return false;
-- }
-- }
-- else
-- {
-- ASN1_INTEGER_free(serial);
-- debug("CRL does not have revoked list.\n");
-- return false;
-- }
--
-+ X509_REVOKED *revoked_entry = NULL;
-+ int idx = X509_CRL_get0_by_serial(crl, &revoked_entry, serial);
-+ ASN1_INTEGER_free(serial);
-+ if (idx >= 1 || revoked_entry)
-+ {
-+ debug("Certificate is revoked.\n");
-+ return true;
-+ }
-+ else
-+ {
-+ debug("Certificate is not revoked.\n");
-+ return false;
-+ }
- }
- else
- debug(WvLog::Warning, "Can't convert serial number to ASN1 format. "
-diff --git a/crypto/wvdiffiehellman.cc b/crypto/wvdiffiehellman.cc
-index 7c0bf329..15cd1040 100644
---- a/crypto/wvdiffiehellman.cc
-+++ b/crypto/wvdiffiehellman.cc
-@@ -39,24 +39,25 @@ WvDiffieHellman::WvDiffieHellman(const unsigned char *_key, int _keylen,
- {
- int problems;
- int check;
-- {
-+
- info = DH_new();
-- info->p = BN_bin2bn(_key, _keylen, NULL);
-+ BIGNUM *p = BN_bin2bn(_key, _keylen, NULL);
- // info->p->top = 0;
- // info->p->dmax = _keylen * 8 / BN_BITS2;
- // info->p->neg = 0;
- // info->p->flags = 0;
-
-- info->g = BN_new();
-- BN_set_word(info->g, generator);
-+ BIGNUM *g = BN_new();
-+ BN_set_word(g, generator);
- // info->g->d = &generator;
- // info->g->top = 0;
- // info->g->dmax = 1;
- // info->g->neg = 0;
- // info->g->flags = 0;
-- }
-
-- check = BN_mod_word(info->p, 24);
-+ DH_set0_pqg(info, p, NULL, g);
-+
-+ check = BN_mod_word(p, 24);
- DH_check(info, &problems);
- if (problems & DH_CHECK_P_NOT_PRIME)
- log(WvLog::Error, "Using a composite number for authentication.\n");
-@@ -64,7 +65,7 @@ WvDiffieHellman::WvDiffieHellman(const unsigned char *_key, int _keylen,
- log(WvLog::Error,"Using an unsafe prime number for authentication.\n");
- if (problems & DH_NOT_SUITABLE_GENERATOR)
- log(WvLog::Error, "Can you just use 2 instead of %s (%s)!!\n",
-- BN_bn2hex(info->g), check);
-+ BN_bn2hex(g), check);
- if (problems & DH_UNABLE_TO_CHECK_GENERATOR)
- log(WvLog::Notice, "Using a strange argument for diffie-hellman.\n");
- DH_generate_key(info);
-@@ -72,18 +73,23 @@ WvDiffieHellman::WvDiffieHellman(const unsigned char *_key, int _keylen,
-
- int WvDiffieHellman::pub_key_len()
- {
-- return BN_num_bytes(info->pub_key);
-+ const BIGNUM *pub_key = NULL;
-+ DH_get0_key(info, &pub_key, NULL);
-+ return BN_num_bytes(pub_key);
- }
-
- int WvDiffieHellman::get_public_value(WvBuf &outbuf, int len)
- {
-- int key_len = BN_num_bytes(info->pub_key);
-+ const BIGNUM *pub_key = NULL;
-+ DH_get0_key(info, &pub_key, NULL);
-+
-+ int key_len = BN_num_bytes(pub_key);
- if (key_len < len)
- len = key_len;
-
- // alloca is stack allocated, don't free it.
- unsigned char *foo = (unsigned char*)alloca(key_len);
-- BN_bn2bin(info->pub_key, foo);
-+ BN_bn2bin(pub_key, foo);
- outbuf.put(foo, len);
-
- return len;
-@@ -91,8 +97,10 @@ int WvDiffieHellman::get_public_value(WvBuf &outbuf, int len)
-
- bool WvDiffieHellman::create_secret(WvBuf &inbuf, size_t in_len, WvBuf& outbuf)
- {
-+ const BIGNUM *pub_key = NULL;
-+ DH_get0_key(info, &pub_key, NULL);
- unsigned char *foo = (unsigned char *)alloca(DH_size(info));
-- log("My public value\n%s\nYour public value\n%s\n",BN_bn2hex(info->pub_key),
-+ log("My public value\n%s\nYour public value\n%s\n",BN_bn2hex(pub_key),
- hexdump_buffer(inbuf.peek(0, in_len), in_len, false));
- int len = DH_compute_key (foo, BN_bin2bn(inbuf.get(in_len), in_len, NULL),
- info);
-diff --git a/crypto/wvdigest.cc b/crypto/wvdigest.cc
-index 150edeea..73ebb5d4 100644
---- a/crypto/wvdigest.cc
-+++ b/crypto/wvdigest.cc
-@@ -13,10 +13,10 @@
-
- /***** WvEVPMDDigest *****/
-
--WvEVPMDDigest::WvEVPMDDigest(const env_md_st *_evpmd) :
-+WvEVPMDDigest::WvEVPMDDigest(const EVP_MD*_evpmd) :
- evpmd(_evpmd), active(false)
- {
-- evpctx = new EVP_MD_CTX;
-+ evpctx = EVP_MD_CTX_new();
- _reset();
- }
-
-@@ -24,7 +24,7 @@ WvEVPMDDigest::WvEVPMDDigest(const env_md_st *_evpmd) :
- WvEVPMDDigest::~WvEVPMDDigest()
- {
- cleanup();
-- delete evpctx;
-+ EVP_MD_CTX_free(evpctx);
- }
-
-
-@@ -60,7 +60,7 @@ bool WvEVPMDDigest::_reset()
- // the typecast is necessary for API compatibility with different
- // versions of openssl. None of them *actually* change the contents of
- // the pointer.
-- EVP_DigestInit(evpctx, (env_md_st *)evpmd);
-+ EVP_DigestInit(evpctx, evpmd);
- active = true;
- return true;
- }
-@@ -79,7 +79,7 @@ void WvEVPMDDigest::cleanup()
-
- size_t WvEVPMDDigest::digestsize() const
- {
-- return EVP_MD_size((env_md_st *)evpmd);
-+ return EVP_MD_size(evpmd);
- }
-
-
-@@ -104,14 +104,14 @@ WvHMACDigest::WvHMACDigest(WvEVPMDDigest *_digest,
- {
- key = new unsigned char[keysize];
- memcpy(key, _key, keysize);
-- hmacctx = new HMAC_CTX;
-+ hmacctx = HMAC_CTX_new();
- _reset();
- }
-
- WvHMACDigest::~WvHMACDigest()
- {
- cleanup();
-- delete hmacctx;
-+ HMAC_CTX_free(hmacctx);
- deletev key;
- delete digest;
- }
-@@ -145,7 +145,7 @@ bool WvHMACDigest::_finish(WvBuf &outbuf)
- bool WvHMACDigest::_reset()
- {
- cleanup();
-- HMAC_Init(hmacctx, key, keysize, (env_md_st *)digest->getevpmd());
-+ HMAC_Init(hmacctx, key, keysize, digest->getevpmd());
- active = true;
- return true;
- }
-diff --git a/crypto/wvocsp.cc b/crypto/wvocsp.cc
-index ddb2de49..7d5da072 100644
---- a/crypto/wvocsp.cc
-+++ b/crypto/wvocsp.cc
-@@ -118,9 +118,10 @@ bool WvOCSPResp::check_nonce(const WvOCSPReq &req) const
-
- bool WvOCSPResp::signedbycert(const WvX509 &cert) const
- {
-- EVP_PKEY *skey = X509_get_pubkey(cert.cert);
-- int i = OCSP_BASICRESP_verify(bs, skey, 0);
-- EVP_PKEY_free(skey);
-+ STACK_OF(X509) *sk = sk_X509_new_null();
-+ sk_X509_push(sk, cert.cert);
-+ int i = OCSP_basic_verify(bs, sk, NULL, OCSP_NOVERIFY);
-+ sk_X509_free(sk);
-
- if(i > 0)
- return true;
-@@ -131,33 +132,15 @@ bool WvOCSPResp::signedbycert(const WvX509 &cert) const
-
- WvX509 WvOCSPResp::get_signing_cert() const
- {
-- if (!bs || !sk_X509_num(bs->certs))
-+ const STACK_OF(X509) *certs = OCSP_resp_get0_certs(bs);
-+ if (!bs || !sk_X509_num(certs))
- return WvX509();
-
-- // note: the following bit of code is taken almost verbatim from
-- // ocsp_vfy.c in OpenSSL 0.9.8. Copyright and attribution should
-- // properly belong to them
--
-- OCSP_RESPID *id = bs->tbsResponseData->responderId;
--
-- if (id->type == V_OCSP_RESPID_NAME)
-- {
-- X509 *x = X509_find_by_subject(bs->certs, id->value.byName);
-- if (x)
-- return WvX509(X509_dup(x));
-+ X509 *signer = NULL;
-+ if (OCSP_resp_get0_signer(bs, &signer, NULL) == 1) {
-+ return WvX509(X509_dup(signer));
- }
-
-- if (id->value.byKey->length != SHA_DIGEST_LENGTH) return NULL;
-- unsigned char tmphash[SHA_DIGEST_LENGTH];
-- unsigned char *keyhash = id->value.byKey->data;
-- for (int i = 0; i < sk_X509_num(bs->certs); i++)
-- {
-- X509 *x = sk_X509_value(bs->certs, i);
-- X509_pubkey_digest(x, EVP_sha1(), tmphash, NULL);
-- if(!memcmp(keyhash, tmphash, SHA_DIGEST_LENGTH))
-- return WvX509(X509_dup(x));
-- }
--
- return WvX509();
- }
-
-diff --git a/crypto/wvx509.cc b/crypto/wvx509.cc
-index 93dae06f..eed6c18e 100644
---- a/crypto/wvx509.cc
-+++ b/crypto/wvx509.cc
-@@ -974,7 +974,7 @@ static void add_aia(WvStringParm type, WvString identifier,
- sk_ACCESS_DESCRIPTION_push(ainfo, acc);
- acc->method = OBJ_txt2obj(type.cstr(), 0);
- acc->location->type = GEN_URI;
-- acc->location->d.ia5 = M_ASN1_IA5STRING_new();
-+ acc->location->d.ia5 = ASN1_IA5STRING_new();
- unsigned char *cident
- = reinterpret_cast<unsigned char *>(identifier.edit());
- ASN1_STRING_set(acc->location->d.ia5, cident, identifier.len());
-@@ -1059,7 +1059,7 @@ void WvX509::set_crl_urls(WvStringList &urls)
- GENERAL_NAMES *uris = GENERAL_NAMES_new();
- GENERAL_NAME *uri = GENERAL_NAME_new();
- uri->type = GEN_URI;
-- uri->d.ia5 = M_ASN1_IA5STRING_new();
-+ uri->d.ia5 = ASN1_IA5STRING_new();
- unsigned char *cident
- = reinterpret_cast<unsigned char *>(i().edit());
- ASN1_STRING_set(uri->d.ia5, cident, i().len());
-@@ -1158,10 +1158,15 @@ WvString WvX509::get_extension(int nid) const
- if (ext)
- {
-+#if OPENSSL_VERSION_NUMBER >= 0x10000000L
-+ const X509V3_EXT_METHOD *method = X509V3_EXT_get(ext);
-+#else
- X509V3_EXT_METHOD *method = X509V3_EXT_get(ext);
-+#endif
-+ ASN1_OCTET_STRING *ext_data_str = X509_EXTENSION_get_data(ext);
- if (!method)
- {
- WvDynBuf buf;
-- buf.put(ext->value->data, ext->value->length);
-+ buf.put(ext_data_str->data, ext_data_str->length);
- retval = buf.getstr();
- }
- else
-@@ -1172,21 +1173,21 @@ WvString WvX509::get_extension(int nid) const
- // even though it's const (at least as of version 0.9.8e).
- // gah.
- #if OPENSSL_VERSION_NUMBER >= 0x0090800fL
-- const unsigned char * ext_value_data = ext->value->data;
-+ const unsigned char * ext_value_data = ext_data_str->data;
- #else
- unsigned char *ext_value_data = ext->value->data;
- #endif
- if (method->it)
- {
- ext_data = ASN1_item_d2i(NULL, &ext_value_data,
-- ext->value->length,
-+ ext_data_str->length,
- ASN1_ITEM_ptr(method->it));
- TRACE("Applied generic conversion!\n");
- }
- else
- {
- ext_data = method->d2i(NULL, &ext_value_data,
-- ext->value->length);
-+ ext_data_str->length);
- TRACE("Applied method specific conversion!\n");
- }
-
-@@ -1321,13 +1322,13 @@ bool WvX509::verify(WvBuf &original, WvStringParm signature) const
- return false;
-
- /* Verify the signature */
-- EVP_MD_CTX sig_ctx;
-- EVP_VerifyInit(&sig_ctx, EVP_sha1());
-- EVP_VerifyUpdate(&sig_ctx, original.peek(0, original.used()),
-+ EVP_MD_CTX *sig_ctx = EVP_MD_CTX_new();
-+ EVP_VerifyInit(sig_ctx, EVP_sha1());
-+ EVP_VerifyUpdate(sig_ctx, original.peek(0, original.used()),
- original.used());
-- int sig_err = EVP_VerifyFinal(&sig_ctx, sig_buf, sig_size, pk);
-+ int sig_err = EVP_VerifyFinal(sig_ctx, sig_buf, sig_size, pk);
- EVP_PKEY_free(pk);
-- EVP_MD_CTX_cleanup(&sig_ctx); // Again, not my fault...
-+ EVP_MD_CTX_free(sig_ctx); // Again, not my fault...
- if (sig_err != 1)
- {
- debug("Verify failed!\n");
-@@ -1446,19 +1447,19 @@ void WvX509::set_ski()
- {
- CHECK_CERT_EXISTS_SET("ski");
-
-- ASN1_OCTET_STRING *oct = M_ASN1_OCTET_STRING_new();
-- ASN1_BIT_STRING *pk = cert->cert_info->key->public_key;
-+ ASN1_OCTET_STRING *oct = ASN1_OCTET_STRING_new();
-+ ASN1_BIT_STRING *pk = X509_get0_pubkey_bitstr(cert);
- unsigned char pkey_dig[EVP_MAX_MD_SIZE];
- unsigned int diglen;
-
- EVP_Digest(pk->data, pk->length, pkey_dig, &diglen, EVP_sha1(), NULL);
-
-- M_ASN1_OCTET_STRING_set(oct, pkey_dig, diglen);
-+ ASN1_OCTET_STRING_set(oct, pkey_dig, diglen);
- X509_EXTENSION *ext = X509V3_EXT_i2d(NID_subject_key_identifier, 0,
- oct);
- X509_add_ext(cert, ext, -1);
- X509_EXTENSION_free(ext);
-- M_ASN1_OCTET_STRING_free(oct);
-+ ASN1_OCTET_STRING_free(oct);
- }
-
-
-diff --git a/crypto/wvx509mgr.cc b/crypto/wvx509mgr.cc
-index f249eeca..156d3a49 100644
---- a/crypto/wvx509mgr.cc
-+++ b/crypto/wvx509mgr.cc
-@@ -350,6 +350,8 @@ bool WvX509Mgr::signcert(WvX509 &unsignedcert) const
- return false;
- }
-
-+ uint32_t ex_flags = X509_get_extension_flags(cert);
-+ uint32_t ex_kusage = X509_get_key_usage(cert);
- if (cert == unsignedcert.cert)
- {
- debug("Self Signing!\n");
-@@ -362,8 +364,8 @@ bool WvX509Mgr::signcert(WvX509 &unsignedcert) const
- return false;
- }
- #endif
-- else if (!((cert->ex_flags & EXFLAG_KUSAGE) &&
-- (cert->ex_kusage & KU_KEY_CERT_SIGN)))
-+ else if (!((ex_flags & EXFLAG_KUSAGE) &&
-+ (ex_kusage & KU_KEY_CERT_SIGN)))
- {
- debug("This Certificate is not allowed to sign certificates!\n");
- return false;
-@@ -390,6 +392,8 @@ bool WvX509Mgr::signcert(WvX509 &unsignedcert) const
-
- bool WvX509Mgr::signcrl(WvCRL &crl) const
- {
-+ uint32_t ex_flags = X509_get_extension_flags(cert);
-+ uint32_t ex_kusage = X509_get_key_usage(cert);
- if (!isok() || !crl.isok())
- {
- debug(WvLog::Warning, "Asked to sign CRL, but certificate or CRL (or "
-@@ -403,12 +407,12 @@ bool WvX509Mgr::signcrl(WvCRL &crl) const
- "CRLs!\n");
- return false;
- }
-- else if (!((cert->ex_flags & EXFLAG_KUSAGE) &&
-- (cert->ex_kusage & KU_CRL_SIGN)))
-+ else if (!((ex_flags & EXFLAG_KUSAGE) &&
-+ (ex_kusage & KU_CRL_SIGN)))
- {
- debug("Certificate not allowed to sign CRLs! (%s %s)\n",
-- (cert->ex_flags & EXFLAG_KUSAGE),
-- (cert->ex_kusage & KU_CRL_SIGN));
-+ (ex_flags & EXFLAG_KUSAGE),
-+ (ex_kusage & KU_CRL_SIGN));
- return false;
- }
- #endif
-@@ -454,7 +458,6 @@ WvString WvX509Mgr::sign(WvBuf &data) const
- {
- assert(rsa);
-
-- EVP_MD_CTX sig_ctx;
- unsigned char sig_buf[4096];
-
- EVP_PKEY *pk = EVP_PKEY_new();
-@@ -467,20 +470,22 @@ WvString WvX509Mgr::sign(WvBuf &data) const
- return WvString::null;
- }
-
-- EVP_SignInit(&sig_ctx, EVP_sha1());
-- EVP_SignUpdate(&sig_ctx, data.peek(0, data.used()), data.used());
-+ EVP_MD_CTX *sig_ctx = EVP_MD_CTX_new();
-+ EVP_SignInit(sig_ctx, EVP_sha1());
-+ EVP_SignUpdate(sig_ctx, data.peek(0, data.used()), data.used());
- unsigned int sig_len = sizeof(sig_buf);
-- int sig_err = EVP_SignFinal(&sig_ctx, sig_buf,
-+ int sig_err = EVP_SignFinal(sig_ctx, sig_buf,
- &sig_len, pk);
- if (sig_err != 1)
- {
- debug("Error while signing.\n");
- EVP_PKEY_free(pk);
-+ EVP_MD_CTX_free(sig_ctx);
- return WvString::null;
- }
-
- EVP_PKEY_free(pk);
-- EVP_MD_CTX_cleanup(&sig_ctx); // this isn't my fault ://
-+ EVP_MD_CTX_free(sig_ctx); // this isn't my fault ://
- WvDynBuf buf;
- buf.put(sig_buf, sig_len);
- debug("Signature size: %s\n", buf.used());
-diff --git a/include/wvdiffiehellman.h b/include/wvdiffiehellman.h
-index af75ffa9..a2d001f8 100644
---- a/include/wvdiffiehellman.h
-+++ b/include/wvdiffiehellman.h
-@@ -27,7 +27,7 @@ class WvDiffieHellman
- bool create_secret(WvBuf &inbuf, size_t in_len, WvBuf& outbuf);
-
- protected:
-- struct dh_st *info;
-+ DH *info;
- BN_ULONG generator;
-
- private:
-diff --git a/include/wvdigest.h b/include/wvdigest.h
-index fdc39bd6..f2eed401 100644
---- a/include/wvdigest.h
-+++ b/include/wvdigest.h
-@@ -9,10 +9,8 @@
-
- #include "wvencoder.h"
- #include <stdint.h>
-+#include <openssl/evp.h>
-
--struct env_md_st;
--struct env_md_ctx_st;
--struct hmac_ctx_st;
-
- /**
- * Superclass for all message digests.
-@@ -45,8 +43,8 @@ class WvDigest : public WvEncoder
- class WvEVPMDDigest : public WvDigest
- {
- friend class WvHMACDigest;
-- const env_md_st *evpmd;
-- env_md_ctx_st *evpctx;
-+ const EVP_MD *evpmd;
-+ EVP_MD_CTX *evpctx;
- bool active;
-
- public:
-@@ -54,13 +52,13 @@ class WvEVPMDDigest : public WvDigest
- virtual size_t digestsize() const;
-
- protected:
-- WvEVPMDDigest(const env_md_st *_evpmd);
-+ WvEVPMDDigest(const EVP_MD *_evpmd);
- virtual bool _encode(WvBuf &inbuf, WvBuf &outbuf,
- bool flush); // consumes input
- virtual bool _finish(WvBuf &outbuf); // outputs digest
- virtual bool _reset(); // supported: resets digest value
-
-- const env_md_st *getevpmd()
-+ const EVP_MD *getevpmd()
- { return evpmd; }
-
- private:
-@@ -104,7 +102,7 @@ class WvHMACDigest : public WvDigest
- WvEVPMDDigest *digest;
- unsigned char *key;
- size_t keysize;
-- hmac_ctx_st *hmacctx;
-+ HMAC_CTX *hmacctx;
- bool active;
-
- public:
-diff --git a/include/wvtripledes.h b/include/wvtripledes.h
-index 185fe8a9..a442e7a0 100644
---- a/include/wvtripledes.h
-+++ b/include/wvtripledes.h
-@@ -70,11 +70,11 @@ class WvTripleDESEncoder : public WvCryptoEncoder
-
- private:
- Mode mode;
-- des_cblock key;
-- des_key_schedule deskey1;
-- des_key_schedule deskey2;
-- des_key_schedule deskey3;
-- des_cblock ivec; // initialization vector
-+ DES_cblock key;
-+ DES_key_schedule deskey1;
-+ DES_key_schedule deskey2;
-+ DES_key_schedule deskey3;
-+ DES_cblock ivec; // initialization vector
- int ivecoff; // current offset into initvec
- };
-
diff --git a/net-libs/wvstreams/wvstreams-4.6.1-r6.ebuild b/net-libs/wvstreams/wvstreams-4.6.1-r6.ebuild
deleted file mode 100644
index 91012087a9a..00000000000
--- a/net-libs/wvstreams/wvstreams-4.6.1-r6.ebuild
+++ /dev/null
@@ -1,96 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit autotools eutils flag-o-matic toolchain-funcs
-
-DESCRIPTION="A network programming library in C++"
-HOMEPAGE="http://alumnit.ca/wiki/?WvStreams"
-SRC_URI="https://wvstreams.googlecode.com/files/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~sparc ~x86"
-IUSE="pam doc +ssl +dbus debug boost"
-
-#Tests fail if openssl is not compiled with -DPURIFY. Gentoo's isn't. FAIL!
-RESTRICT="test"
-
-#QA Fail: xplc is compiled as a part of wvstreams.
-#It'll take a larger patching effort to get it extracted, since upstream integrated it
-#more tightly this time. Probably for the better since upstream xplc seems dead.
-
-RDEPEND="
- dev-libs/openssl:0=
- sys-libs/readline:0=
- sys-libs/zlib
- dbus? ( >=sys-apps/dbus-1.4.20 )
- pam? ( virtual/pam )
-"
-DEPEND="
- ${RDEPEND}
- virtual/pkgconfig
- doc? ( app-doc/doxygen )
- boost? ( >=dev-libs/boost-1.34.1:= )
-"
-DOCS="ChangeLog README*"
-PATCHES=(
- "${FILESDIR}"/${P}-autoconf.patch
- "${FILESDIR}"/${P}-fix-c++14.patch
- "${FILESDIR}"/${P}-gcc47.patch
- "${FILESDIR}"/${P}-glibc212.patch
- "${FILESDIR}"/${P}-parallel-make.patch
- "${FILESDIR}"/${P}-_DEFAULT_SOURCE.patch
- "${FILESDIR}"/${P}-2048-bytes-should-be-enough-right-question-mark.patch
- "${FILESDIR}"/${P}-openssl-1.1.patch
-)
-
-src_prepare() {
- default
-
- eautoreconf
-}
-
-src_configure() {
- append-flags -fno-strict-aliasing
- append-flags -fno-tree-dce -fno-optimize-sibling-calls #421375
-
- tc-export AR CXX
-
- use boost && export ac_cv_header_tr1_functional=no
-
- econf \
- $(use_enable debug) \
- $(use_with dbus) \
- $(use_with pam) \
- --cache-file="${T}"/config.cache \
- --disable-optimization \
- --localstatedir=/var \
- --with-openssl \
- --with-zlib \
- --without-qt \
- --without-tcl \
- --without-valgrind
-}
-
-src_compile() {
- default
-
- if use doc; then
- doxygen || die
- fi
-}
-
-src_test() {
- emake test
-}
-
-src_install() {
- default
-
- if use doc; then
- #the list of files is too big for dohtml -r Docs/doxy-html/*
- docinto html
- dodoc -r Docs/doxy-html/*
- fi
-}
diff --git a/net-libs/wvstreams/wvstreams-99999.ebuild b/net-libs/wvstreams/wvstreams-99999.ebuild
index 4181ca4eaeb..8665f2087f9 100644
--- a/net-libs/wvstreams/wvstreams-99999.ebuild
+++ b/net-libs/wvstreams/wvstreams-99999.ebuild
@@ -15,7 +15,7 @@ KEYWORDS=""
IUSE="+dbus debug doc pam static-libs +zlib"
RDEPEND="
- dev-libs/openssl:0=
+ <dev-libs/openssl-1.1:0=
sys-libs/readline:0=
sys-libs/zlib
dbus? ( >=sys-apps/dbus-1.4.20 )
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: net-libs/wvstreams/files/, net-libs/wvstreams/
@ 2019-08-29 17:05 Stefan Strogin
0 siblings, 0 replies; 7+ messages in thread
From: Stefan Strogin @ 2019-08-29 17:05 UTC (permalink / raw
To: gentoo-commits
commit: e363428904c1586d8667335c89aabc4ceeea768e
Author: Stefan Strogin <steils <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 28 19:41:26 2019 +0000
Commit: Stefan Strogin <steils <AT> gentoo <DOT> org>
CommitDate: Thu Aug 29 17:04:04 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e3634289
net-libs/wvstreams: add USE=libressl and patch for LibreSSL support
Drop the redundant "ssl" flag, since wvstreams is always built with SSL
support.
Closes: https://bugs.gentoo.org/687096
Closes: https://github.com/gentoo/gentoo/pull/12233
Package-Manager: Portage-2.3.67, Repoman-2.3.14
Signed-off-by: Stefan Strogin <steils <AT> gentoo.org>
.../files/wvstreams-4.6.1_p14-libressl.patch | 114 +++++++++++++++++++++
net-libs/wvstreams/wvstreams-4.6.1_p14-r1.ebuild | 6 +-
net-libs/wvstreams/wvstreams-99999.ebuild | 7 +-
3 files changed, 122 insertions(+), 5 deletions(-)
diff --git a/net-libs/wvstreams/files/wvstreams-4.6.1_p14-libressl.patch b/net-libs/wvstreams/files/wvstreams-4.6.1_p14-libressl.patch
new file mode 100644
index 00000000000..e897c95bf09
--- /dev/null
+++ b/net-libs/wvstreams/files/wvstreams-4.6.1_p14-libressl.patch
@@ -0,0 +1,114 @@
+From cb8a81da928054c2e8174d671f2abc88f4f35b87 Mon Sep 17 00:00:00 2001
+From: Stefan Strogin <steils@gentoo.org>
+Date: Mon, 10 Jun 2019 17:07:06 +0300
+Subject: [PATCH] Fix LibreSSL support
+
+---
+ crypto/wvocsp.cc | 34 ++++++++++++++++++++++++++++++++++
+ crypto/wvx509mgr.cc | 14 ++++++++++++++
+ include/wvdigest.h | 1 +
+ 3 files changed, 49 insertions(+)
+
+diff --git a/crypto/wvocsp.cc b/crypto/wvocsp.cc
+index 7d5da072..7a157f90 100644
+--- a/crypto/wvocsp.cc
++++ b/crypto/wvocsp.cc
+@@ -130,6 +130,7 @@ bool WvOCSPResp::signedbycert(const WvX509 &cert) const
+ }
+
+
++#ifndef LIBRESSL_VERSION_NUMBER
+ WvX509 WvOCSPResp::get_signing_cert() const
+ {
+ const STACK_OF(X509) *certs = OCSP_resp_get0_certs(bs);
+@@ -143,6 +144,39 @@ WvX509 WvOCSPResp::get_signing_cert() const
+
+ return WvX509();
+ }
++#else
++WvX509 WvOCSPResp::get_signing_cert() const
++{
++ if (!bs || !sk_X509_num(bs->certs))
++ return WvX509();
++
++ // note: the following bit of code is taken almost verbatim from
++ // ocsp_vfy.c in OpenSSL 0.9.8. Copyright and attribution should
++ // properly belong to them
++
++ OCSP_RESPID *id = bs->tbsResponseData->responderId;
++
++ if (id->type == V_OCSP_RESPID_NAME)
++ {
++ X509 *x = X509_find_by_subject(bs->certs, id->value.byName);
++ if (x)
++ return WvX509(X509_dup(x));
++ }
++
++ if (id->value.byKey->length != SHA_DIGEST_LENGTH) return NULL;
++ unsigned char tmphash[SHA_DIGEST_LENGTH];
++ unsigned char *keyhash = id->value.byKey->data;
++ for (int i = 0; i < sk_X509_num(bs->certs); i++)
++ {
++ X509 *x = sk_X509_value(bs->certs, i);
++ X509_pubkey_digest(x, EVP_sha1(), tmphash, NULL);
++ if(!memcmp(keyhash, tmphash, SHA_DIGEST_LENGTH))
++ return WvX509(X509_dup(x));
++ }
++
++ return WvX509();
++}
++#endif /* LIBRESSL_VERSION_NUMBER */
+
+
+ WvOCSPResp::Status WvOCSPResp::get_status(const WvX509 &cert,
+diff --git a/crypto/wvx509mgr.cc b/crypto/wvx509mgr.cc
+index 156d3a49..e2bb3ffe 100644
+--- a/crypto/wvx509mgr.cc
++++ b/crypto/wvx509mgr.cc
+@@ -350,8 +350,15 @@ bool WvX509Mgr::signcert(WvX509 &unsignedcert) const
+ return false;
+ }
+
++#ifndef LIBRESSL_VERSION_NUMBER
+ uint32_t ex_flags = X509_get_extension_flags(cert);
+ uint32_t ex_kusage = X509_get_key_usage(cert);
++#else
++ X509_check_purpose(cert, -1, -1);
++ uint32_t ex_flags = cert->ex_flags;
++ uint32_t ex_kusage = (cert->ex_flags & EXFLAG_KUSAGE) ?
++ cert->ex_kusage : UINT32_MAX;
++#endif
+ if (cert == unsignedcert.cert)
+ {
+ debug("Self Signing!\n");
+@@ -392,8 +399,15 @@ bool WvX509Mgr::signcert(WvX509 &unsignedcert) const
+
+ bool WvX509Mgr::signcrl(WvCRL &crl) const
+ {
++#ifndef LIBRESSL_VERSION_NUMBER
+ uint32_t ex_flags = X509_get_extension_flags(cert);
+ uint32_t ex_kusage = X509_get_key_usage(cert);
++#else
++ X509_check_purpose(cert, -1, -1);
++ uint32_t ex_flags = cert->ex_flags;
++ uint32_t ex_kusage = (cert->ex_flags & EXFLAG_KUSAGE) ?
++ cert->ex_kusage : UINT32_MAX;
++#endif
+ if (!isok() || !crl.isok())
+ {
+ debug(WvLog::Warning, "Asked to sign CRL, but certificate or CRL (or "
+diff --git a/include/wvdigest.h b/include/wvdigest.h
+index f2eed401..e637fb49 100644
+--- a/include/wvdigest.h
++++ b/include/wvdigest.h
+@@ -10,6 +10,7 @@
+ #include "wvencoder.h"
+ #include <stdint.h>
+ #include <openssl/evp.h>
++#include <openssl/hmac.h>
+
+
+ /**
+--
+2.21.0
+
diff --git a/net-libs/wvstreams/wvstreams-4.6.1_p14-r1.ebuild b/net-libs/wvstreams/wvstreams-4.6.1_p14-r1.ebuild
index 58f5b66846d..34a203bd673 100644
--- a/net-libs/wvstreams/wvstreams-4.6.1_p14-r1.ebuild
+++ b/net-libs/wvstreams/wvstreams-4.6.1_p14-r1.ebuild
@@ -14,7 +14,7 @@ SRC_URI="
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~sparc ~x86"
-IUSE="pam doc +ssl +dbus debug boost"
+IUSE="boost +dbus debug doc libressl pam"
#Tests fail if openssl is not compiled with -DPURIFY. Gentoo's isn't. FAIL!
RESTRICT="test"
@@ -24,10 +24,11 @@ RESTRICT="test"
#more tightly this time. Probably for the better since upstream xplc seems dead.
RDEPEND="
- >=dev-libs/openssl-1.1:0=
sys-libs/readline:0=
sys-libs/zlib
dbus? ( >=sys-apps/dbus-1.4.20 )
+ !libressl? ( >=dev-libs/openssl-1.1:0= )
+ libressl? ( dev-libs/libressl:0= )
pam? ( virtual/pam )
"
DEPEND="
@@ -49,6 +50,7 @@ src_prepare() {
default
eapply $(awk '{ print "'"${WORKDIR}"'/debian/patches/" $0; }' < "${WORKDIR}"/debian/patches/series)
+ eapply "${FILESDIR}"/${P}-libressl.patch # bug 687096
eautoreconf
}
diff --git a/net-libs/wvstreams/wvstreams-99999.ebuild b/net-libs/wvstreams/wvstreams-99999.ebuild
index 8665f2087f9..dc51487d43e 100644
--- a/net-libs/wvstreams/wvstreams-99999.ebuild
+++ b/net-libs/wvstreams/wvstreams-99999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -12,13 +12,14 @@ EGIT_REPO_URI="${HOMEPAGE}"
LICENSE="GPL-2"
SLOT="0/5.0"
KEYWORDS=""
-IUSE="+dbus debug doc pam static-libs +zlib"
+IUSE="+dbus debug doc libressl pam static-libs +zlib"
RDEPEND="
- <dev-libs/openssl-1.1:0=
sys-libs/readline:0=
sys-libs/zlib
dbus? ( >=sys-apps/dbus-1.4.20 )
+ !libressl? ( <dev-libs/openssl-1.1:0= )
+ libressl? ( dev-libs/libressl:0= )
pam? ( virtual/pam )
"
DEPEND="
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: net-libs/wvstreams/files/, net-libs/wvstreams/
@ 2020-01-02 8:47 Jeroen Roovers
0 siblings, 0 replies; 7+ messages in thread
From: Jeroen Roovers @ 2020-01-02 8:47 UTC (permalink / raw
To: gentoo-commits
commit: ba48b6eef15db93238c4646e21e67bdae135bb3f
Author: Jeroen Roovers <jer <AT> gentoo <DOT> org>
AuthorDate: Thu Jan 2 08:47:15 2020 +0000
Commit: Jeroen Roovers <jer <AT> gentoo <DOT> org>
CommitDate: Thu Jan 2 08:47:29 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ba48b6ee
net-libs/wvstreams: Old
Package-Manager: Portage-2.3.84, Repoman-2.3.20
Signed-off-by: Jeroen Roovers <jer <AT> gentoo.org>
net-libs/wvstreams/Manifest | 1 -
...ytes-should-be-enough-right-question-mark.patch | 11 ---
.../files/wvstreams-4.6.1-fix-c++14.patch | 36 -------
.../wvstreams/files/wvstreams-4.6.1-glibc212.patch | 23 -----
.../files/wvstreams-4.6.1-openssl-1.0.0.patch | 16 ----
net-libs/wvstreams/wvstreams-4.6.1-r3.ebuild | 105 ---------------------
net-libs/wvstreams/wvstreams-4.6.1-r4.ebuild | 95 -------------------
net-libs/wvstreams/wvstreams-4.6.1-r5.ebuild | 96 -------------------
8 files changed, 383 deletions(-)
diff --git a/net-libs/wvstreams/Manifest b/net-libs/wvstreams/Manifest
index 579ea20214d..ac908263b97 100644
--- a/net-libs/wvstreams/Manifest
+++ b/net-libs/wvstreams/Manifest
@@ -1,3 +1,2 @@
-DIST wvstreams-4.6.1.tar.gz 1118456 BLAKE2B 62243d9adc6ff5d01b7dfeb2ce24e8e530914e6ac4540e542dc3cee31e00d32211ad1c6085d7f5bd6e5fd85ff66e8c93afa37cec81f976590ba150f039dc8580 SHA512 59d64e527d86394b768b35254bf95ea59c412c0e092393ea3c84ec3202949150439bb6093bd7350b64ad4767acdb8feb38806c03de4e5cf238ed893f41db4a4a
DIST wvstreams_4.6.1-14.debian.tar.xz 21124 BLAKE2B 2af6ec180c3130dd7def733e5ea569fd0a81cd2c2411daca25e6042dcbe78792bafc4b13f1c1fffddb6cd66273f11c62f54b415c975cbea0af052b18ff0955d1 SHA512 93ea7c4fbab542bd552d6e91ae0c49a27ad8aded177ae6474943acb08d204ab31eac49b3f416b4d90a38ea697f3641c09651a64f9c40d12543d454aadf2ad9e4
DIST wvstreams_4.6.1.orig.tar.gz 1118456 BLAKE2B 62243d9adc6ff5d01b7dfeb2ce24e8e530914e6ac4540e542dc3cee31e00d32211ad1c6085d7f5bd6e5fd85ff66e8c93afa37cec81f976590ba150f039dc8580 SHA512 59d64e527d86394b768b35254bf95ea59c412c0e092393ea3c84ec3202949150439bb6093bd7350b64ad4767acdb8feb38806c03de4e5cf238ed893f41db4a4a
diff --git a/net-libs/wvstreams/files/wvstreams-4.6.1-2048-bytes-should-be-enough-right-question-mark.patch b/net-libs/wvstreams/files/wvstreams-4.6.1-2048-bytes-should-be-enough-right-question-mark.patch
deleted file mode 100644
index 15fb13ca633..00000000000
--- a/net-libs/wvstreams/files/wvstreams-4.6.1-2048-bytes-should-be-enough-right-question-mark.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/utils/wvtask.cc
-+++ b/utils/wvtask.cc
-@@ -429,7 +429,7 @@
- total = (val+1) * (size_t)1024;
-
- if (!use_shared_stack())
-- total = 1024; // enough to save the do_task stack frame
-+ total = 2048; // enough to save the do_task stack frame
-
- // set up a stack frame for the new task. This runs once
- // per get_stack.
diff --git a/net-libs/wvstreams/files/wvstreams-4.6.1-fix-c++14.patch b/net-libs/wvstreams/files/wvstreams-4.6.1-fix-c++14.patch
deleted file mode 100644
index b2c2efd5624..00000000000
--- a/net-libs/wvstreams/files/wvstreams-4.6.1-fix-c++14.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-Fix building with C++14, which errors out due to explicit operator bool() conversion
-See also: https://bugs.gentoo.org/show_bug.cgi?id=594058
-
---- a/streams/wvstream.cc
-+++ b/streams/wvstream.cc
-@@ -907,9 +907,9 @@
-
- if (forceable)
- {
-- si.wants.readable = readcb;
-- si.wants.writable = writecb;
-- si.wants.isexception = exceptcb;
-+ si.wants.readable = static_cast<bool>(readcb);
-+ si.wants.writable = static_cast<bool>(writecb);
-+ si.wants.isexception = static_cast<bool>(exceptcb);
- }
- else
- {
-@@ -1019,7 +1019,7 @@
-
- IWvStream::SelectRequest WvStream::get_select_request()
- {
-- return IWvStream::SelectRequest(readcb, writecb, exceptcb);
-+ return IWvStream::SelectRequest(static_cast<bool>(readcb), static_cast<bool>(writecb), static_cast<bool>(exceptcb));
- }
-
-
-@@ -1107,7 +1107,7 @@
- // inefficient, because if the alarm was expired then pre_select()
- // returned true anyway and short-circuited the previous select().
- TRACE("hello-%p\n", this);
-- return !alarm_was_ticking || select(0, readcb, writecb, exceptcb);
-+ return !alarm_was_ticking || select(0, static_cast<bool>(readcb), static_cast<bool>(writecb), static_cast<bool>(exceptcb));
- }
-
-
diff --git a/net-libs/wvstreams/files/wvstreams-4.6.1-glibc212.patch b/net-libs/wvstreams/files/wvstreams-4.6.1-glibc212.patch
deleted file mode 100644
index 38218d7213a..00000000000
--- a/net-libs/wvstreams/files/wvstreams-4.6.1-glibc212.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-http://bugs.gentoo.org/333301
-
---- a/ipstreams/wvunixdgsocket.cc
-+++ b/ipstreams/wvunixdgsocket.cc
-@@ -1,5 +1,5 @@
- #include "wvunixdgsocket.h"
--#ifdef MACOS
-+#if defined(MACOS) || defined(__GNUC__)
- #include <sys/types.h>
- #include <sys/stat.h>
- #endif
---- a/streams/wvatomicfile.cc
-+++ b/streams/wvatomicfile.cc
-@@ -11,7 +11,8 @@
- #include "wvfileutils.h"
- #include "wvstrutils.h"
-
--#ifdef MACOS
-+#if defined(MACOS) || defined(__GNUC__)
-+#include <sys/types.h>
- #include <sys/stat.h>
- #endif
-
diff --git a/net-libs/wvstreams/files/wvstreams-4.6.1-openssl-1.0.0.patch b/net-libs/wvstreams/files/wvstreams-4.6.1-openssl-1.0.0.patch
deleted file mode 100644
index 327e19a0c11..00000000000
--- a/net-libs/wvstreams/files/wvstreams-4.6.1-openssl-1.0.0.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-http://bugs.gentoo.org/304283
-
---- a/crypto/wvx509.cc
-+++ b/crypto/wvx509.cc
-@@ -1157,7 +1157,11 @@
-
- if (ext)
- {
-+#if OPENSSL_VERSION_NUMBER >= 0x10000000L
-+ const X509V3_EXT_METHOD *method = X509V3_EXT_get(ext);
-+#else
- X509V3_EXT_METHOD *method = X509V3_EXT_get(ext);
-+#endif
- if (!method)
- {
- WvDynBuf buf;
diff --git a/net-libs/wvstreams/wvstreams-4.6.1-r3.ebuild b/net-libs/wvstreams/wvstreams-4.6.1-r3.ebuild
deleted file mode 100644
index 34eb54286d8..00000000000
--- a/net-libs/wvstreams/wvstreams-4.6.1-r3.ebuild
+++ /dev/null
@@ -1,105 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-inherit autotools eutils flag-o-matic toolchain-funcs versionator
-
-DESCRIPTION="A network programming library in C++"
-HOMEPAGE="http://alumnit.ca/wiki/?WvStreams"
-SRC_URI="https://wvstreams.googlecode.com/files/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="alpha amd64 hppa ppc sparc x86"
-IUSE="pam doc +ssl +dbus debug boost"
-
-#Tests fail if openssl is not compiled with -DPURIFY. Gentoo's isn't. FAIL!
-RESTRICT="test"
-
-#QA Fail: xplc is compiled as a part of wvstreams.
-#It'll take a larger patching effort to get it extracted, since upstream integrated it
-#more tightly this time. Probably for the better since upstream xplc seems dead.
-
-RDEPEND="sys-libs/readline:0=
- sys-libs/zlib
- dbus? ( >=sys-apps/dbus-1.4.20 )
- <dev-libs/openssl-1.1:0=
- pam? ( sys-libs/pam )"
-DEPEND="${RDEPEND}
- virtual/pkgconfig
- doc? ( app-doc/doxygen )
- boost? ( >=dev-libs/boost-1.34.1:= )"
-
-DOCS="ChangeLog README*"
-
-pkg_pretend() {
- [[ ${MERGE_TYPE} == "binary" ]] && return
-
- if ! use boost && ! version_is_at_least 4.1 "$(gcc-fullversion)"; then
- eerror "This package requires the active gcc to be at least version 4.1"
- eerror "or USE=boost must be installed."
- die "Please activate >=sys-devel/gcc-4.1 with gcc-config."
- fi
-}
-
-src_prepare() {
- epatch \
- "${FILESDIR}"/${P}-parallel-make.patch \
- "${FILESDIR}"/${P}-openssl-1.0.0.patch \
- "${FILESDIR}"/${P}-glibc212.patch \
- "${FILESDIR}"/${P}-gcc47.patch \
- "${FILESDIR}"/${P}-fix-c++14.patch
-
- sed -i \
- -e 's:AM_CONFIG_HEADER:AC_CONFIG_HEADERS:' \
- -e 's:AM_PROG_CC_STDC:AC_PROG_CC:' \
- argp/configure.ac || die
-
- eautoreconf
- pushd argp >/dev/null
- eautoreconf
- popd >/dev/null
-}
-
-src_configure() {
- append-flags -fno-strict-aliasing
- append-flags -fno-tree-dce -fno-optimize-sibling-calls #421375
-
- tc-export AR CXX
-
- use boost && export ac_cv_header_tr1_functional=no
-
- econf \
- --localstatedir=/var \
- $(use_enable debug) \
- --disable-optimization \
- $(use_with dbus) \
- --with-openssl \
- $(use_with pam) \
- --without-tcl \
- --without-qt \
- --with-zlib \
- --without-valgrind
-}
-
-src_compile() {
- default
-
- if use doc; then
- doxygen || die
- fi
-}
-
-src_test() {
- emake test
-}
-
-src_install() {
- default
-
- if use doc; then
- #the list of files is too big for dohtml -r Docs/doxy-html/*
- cd Docs/doxy-html
- dohtml -r *
- fi
-}
diff --git a/net-libs/wvstreams/wvstreams-4.6.1-r4.ebuild b/net-libs/wvstreams/wvstreams-4.6.1-r4.ebuild
deleted file mode 100644
index 2cd4879c732..00000000000
--- a/net-libs/wvstreams/wvstreams-4.6.1-r4.ebuild
+++ /dev/null
@@ -1,95 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit autotools eutils flag-o-matic toolchain-funcs versionator
-
-DESCRIPTION="A network programming library in C++"
-HOMEPAGE="http://alumnit.ca/wiki/?WvStreams"
-SRC_URI="https://wvstreams.googlecode.com/files/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~sparc ~x86"
-IUSE="pam doc +ssl +dbus debug boost"
-
-#Tests fail if openssl is not compiled with -DPURIFY. Gentoo's isn't. FAIL!
-RESTRICT="test"
-
-#QA Fail: xplc is compiled as a part of wvstreams.
-#It'll take a larger patching effort to get it extracted, since upstream integrated it
-#more tightly this time. Probably for the better since upstream xplc seems dead.
-
-RDEPEND="
- <dev-libs/openssl-1.1:0=
- sys-libs/readline:0=
- sys-libs/zlib
- dbus? ( >=sys-apps/dbus-1.4.20 )
- pam? ( sys-libs/pam )
-"
-DEPEND="
- ${RDEPEND}
- virtual/pkgconfig
- doc? ( app-doc/doxygen )
- boost? ( >=dev-libs/boost-1.34.1:= )
-"
-DOCS="ChangeLog README*"
-PATCHES=(
- "${FILESDIR}"/${P}-autoconf.patch
- "${FILESDIR}"/${P}-fix-c++14.patch
- "${FILESDIR}"/${P}-gcc47.patch
- "${FILESDIR}"/${P}-glibc212.patch
- "${FILESDIR}"/${P}-openssl-1.0.0.patch
- "${FILESDIR}"/${P}-parallel-make.patch
- "${FILESDIR}"/${P}-_DEFAULT_SOURCE.patch
-)
-
-src_prepare() {
- default
-
- eautoreconf
-}
-
-src_configure() {
- append-flags -fno-strict-aliasing
- append-flags -fno-tree-dce -fno-optimize-sibling-calls #421375
-
- tc-export AR CXX
-
- use boost && export ac_cv_header_tr1_functional=no
-
- econf \
- $(use_enable debug) \
- $(use_with dbus) \
- $(use_with pam) \
- --cache-file="${T}"/config.cache \
- --disable-optimization \
- --localstatedir=/var \
- --with-openssl \
- --with-zlib \
- --without-qt \
- --without-tcl \
- --without-valgrind
-}
-
-src_compile() {
- default
-
- if use doc; then
- doxygen || die
- fi
-}
-
-src_test() {
- emake test
-}
-
-src_install() {
- default
-
- if use doc; then
- #the list of files is too big for dohtml -r Docs/doxy-html/*
- docinto html
- dodoc -r Docs/doxy-html/*
- fi
-}
diff --git a/net-libs/wvstreams/wvstreams-4.6.1-r5.ebuild b/net-libs/wvstreams/wvstreams-4.6.1-r5.ebuild
deleted file mode 100644
index db808c10219..00000000000
--- a/net-libs/wvstreams/wvstreams-4.6.1-r5.ebuild
+++ /dev/null
@@ -1,96 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-inherit autotools eutils flag-o-matic toolchain-funcs versionator
-
-DESCRIPTION="A network programming library in C++"
-HOMEPAGE="http://alumnit.ca/wiki/?WvStreams"
-SRC_URI="https://wvstreams.googlecode.com/files/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~sparc ~x86"
-IUSE="pam doc +ssl +dbus debug boost"
-
-#Tests fail if openssl is not compiled with -DPURIFY. Gentoo's isn't. FAIL!
-RESTRICT="test"
-
-#QA Fail: xplc is compiled as a part of wvstreams.
-#It'll take a larger patching effort to get it extracted, since upstream integrated it
-#more tightly this time. Probably for the better since upstream xplc seems dead.
-
-RDEPEND="
- <dev-libs/openssl-1.1:0=
- sys-libs/readline:0=
- sys-libs/zlib
- dbus? ( >=sys-apps/dbus-1.4.20 )
- pam? ( sys-libs/pam )
-"
-DEPEND="
- ${RDEPEND}
- virtual/pkgconfig
- doc? ( app-doc/doxygen )
- boost? ( >=dev-libs/boost-1.34.1:= )
-"
-DOCS="ChangeLog README*"
-PATCHES=(
- "${FILESDIR}"/${P}-autoconf.patch
- "${FILESDIR}"/${P}-fix-c++14.patch
- "${FILESDIR}"/${P}-gcc47.patch
- "${FILESDIR}"/${P}-glibc212.patch
- "${FILESDIR}"/${P}-openssl-1.0.0.patch
- "${FILESDIR}"/${P}-parallel-make.patch
- "${FILESDIR}"/${P}-_DEFAULT_SOURCE.patch
- "${FILESDIR}"/${P}-2048-bytes-should-be-enough-right-question-mark.patch
-)
-
-src_prepare() {
- default
-
- eautoreconf
-}
-
-src_configure() {
- append-flags -fno-strict-aliasing
- append-flags -fno-tree-dce -fno-optimize-sibling-calls #421375
-
- tc-export AR CXX
-
- use boost && export ac_cv_header_tr1_functional=no
-
- econf \
- $(use_enable debug) \
- $(use_with dbus) \
- $(use_with pam) \
- --cache-file="${T}"/config.cache \
- --disable-optimization \
- --localstatedir=/var \
- --with-openssl \
- --with-zlib \
- --without-qt \
- --without-tcl \
- --without-valgrind
-}
-
-src_compile() {
- default
-
- if use doc; then
- doxygen || die
- fi
-}
-
-src_test() {
- emake test
-}
-
-src_install() {
- default
-
- if use doc; then
- #the list of files is too big for dohtml -r Docs/doxy-html/*
- docinto html
- dodoc -r Docs/doxy-html/*
- fi
-}
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: net-libs/wvstreams/files/, net-libs/wvstreams/
@ 2022-01-09 19:11 Andreas Sturmlechner
0 siblings, 0 replies; 7+ messages in thread
From: Andreas Sturmlechner @ 2022-01-09 19:11 UTC (permalink / raw
To: gentoo-commits
commit: 80ef3604cac64727db2e1380797fc3c60d0529ca
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 9 18:00:09 2022 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sun Jan 9 19:11:07 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=80ef3604
net-libs/wvstreams: Drop hopelessly outdated 9999 ebuild
A single commit was made in 2018 and nothing after that.
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
.../files/wvstreams-99999-openssl-ldflags.patch | 10 ---
.../wvstreams/files/wvstreams-99999-soname.patch | 11 ---
net-libs/wvstreams/wvstreams-99999.ebuild | 93 ----------------------
3 files changed, 114 deletions(-)
diff --git a/net-libs/wvstreams/files/wvstreams-99999-openssl-ldflags.patch b/net-libs/wvstreams/files/wvstreams-99999-openssl-ldflags.patch
deleted file mode 100644
index 0bf2bc4a7b02..000000000000
--- a/net-libs/wvstreams/files/wvstreams-99999-openssl-ldflags.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/config.ac
-+++ b/config.ac
-@@ -444,7 +444,6 @@
- if test "$with_openssl" != "no"; then
- if test "$with_openssl" != ""; then
- WV_APPEND(CPPFLAGS, [-I$with_openssl/include])
-- WV_APPEND(LDFLAGS, [-L$with_openssl])
- fi
- AC_CHECK_HEADERS(openssl/ssl.h,, [with_openssl=no],
- [#define OPENSSL_NO_KRB5])
diff --git a/net-libs/wvstreams/files/wvstreams-99999-soname.patch b/net-libs/wvstreams/files/wvstreams-99999-soname.patch
deleted file mode 100644
index 9dd0d8ab8260..000000000000
--- a/net-libs/wvstreams/files/wvstreams-99999-soname.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/default.so.do
-+++ b/default.so.do
-@@ -47,7 +47,7 @@
- redo-ifchange "$OUT/$2.a"
- ln -s $2.a "$sofile"
- else
-- $CXX -o "$sofile" -shared \
-+ $CXX -o "$sofile" -shared -Wl,-soname,$sofile \
- $zdefs \
- $LDFLAGS \
- $obj $libdep $libs
diff --git a/net-libs/wvstreams/wvstreams-99999.ebuild b/net-libs/wvstreams/wvstreams-99999.ebuild
deleted file mode 100644
index 11e465328157..000000000000
--- a/net-libs/wvstreams/wvstreams-99999.ebuild
+++ /dev/null
@@ -1,93 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-AT_NOELIBTOOLIZE=yes
-inherit autotools flag-o-matic git-r3 multiprocessing toolchain-funcs out-of-source
-
-DESCRIPTION="A network programming library in C++"
-HOMEPAGE="https://github.com/apenwarr/wvstreams"
-EGIT_REPO_URI="https://github.com/apenwarr/wvstreams"
-
-LICENSE="GPL-2"
-SLOT="0/5.0"
-KEYWORDS=""
-IUSE="+dbus debug doc pam static-libs +zlib"
-
-RDEPEND="
- <dev-libs/openssl-1.1:0=
- sys-libs/readline:0=
- sys-libs/zlib
- virtual/libcrypt:=
- dbus? ( >=sys-apps/dbus-1.4.20 )
- pam? ( sys-libs/pam )
-"
-DEPEND="
- ${RDEPEND}
- dev-util/redo
- virtual/pkgconfig
- doc? ( app-doc/doxygen )
-"
-PATCHES=(
- "${FILESDIR}"/${PN}-99999-openssl-ldflags.patch
- "${FILESDIR}"/${PN}-99999-soname.patch
-)
-
-src_prepare() {
- sed -i -e 's|-pre||g' config.ac || die
-
- default
-
- ln -s config.ac configure.ac || die
- eautoreconf
-}
-
-my_src_configure() {
- append-flags -fno-strict-aliasing
- append-flags -fno-tree-dce -fno-optimize-sibling-calls #421375
-
- tc-export AR CC CXX
-
- econf \
- $(use_enable debug) \
- $(use_with dbus) \
- $(use_with pam) \
- $(use_with zlib) \
- --cache-file="${BUILD_DIR}"/config.cache \
- --disable-optimization \
- --localstatedir=/var \
- --without-qt \
- --without-valgrind
-}
-
-my_src_compile() {
- redo -j$(makeopts_jobs) || die
-
- if use doc; then
- doxygen "${S}"/Doxyfile || die
- fi
-}
-
-my_src_test() {
- redo -j$(makeopts_jobs) test || die
-}
-
-my_src_install() {
- DESTDIR="${D}" redo -j$(makeopts_jobs) install || die
-
- local lib
- for lib in $(find "${BUILD_DIR}" -name '*.so' -type l | grep -v libwvstatic); do
- insinto /usr/$(get_libdir)/pkgconfig
- doins "${BUILD_DIR}"/pkgconfig/$(basename ${lib/.so}).pc
- done
-
- if use doc; then
- #the list of files is too big for dohtml -r Docs/doxy-html/*
- docinto html
- dodoc -r Docs/doxy-html/*
- fi
-
- if ! use static-libs; then
- find "${D}/usr/$(get_libdir)" -name '*.a' -delete || die
- fi
-}
^ permalink raw reply related [flat|nested] 7+ messages in thread
end of thread, other threads:[~2022-01-09 19:11 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-07-26 19:10 [gentoo-commits] repo/gentoo:master commit in: net-libs/wvstreams/files/, net-libs/wvstreams/ Jeroen Roovers
-- strict thread matches above, loose matches on Subject: below --
2022-01-09 19:11 Andreas Sturmlechner
2020-01-02 8:47 Jeroen Roovers
2019-08-29 17:05 Stefan Strogin
2018-12-18 13:49 Jeroen Roovers
2017-07-27 13:26 Jeroen Roovers
2016-09-18 13:09 David Seifert
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox