summaryrefslogtreecommitdiff
path: root/dev-cpp/commoncpp2
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /dev-cpp/commoncpp2
reinit the tree, so we can have metadata
Diffstat (limited to 'dev-cpp/commoncpp2')
-rw-r--r--dev-cpp/commoncpp2/Manifest14
-rw-r--r--dev-cpp/commoncpp2/commoncpp2-1.8.1-r2.ebuild69
-rw-r--r--dev-cpp/commoncpp2/commoncpp2-1.8.1-r3.ebuild72
-rw-r--r--dev-cpp/commoncpp2/files/1.8.0-glibc212.patch12
-rw-r--r--dev-cpp/commoncpp2/files/1.8.1-autoconf-update.patch61
-rw-r--r--dev-cpp/commoncpp2/files/1.8.1-configure_detect_netfilter.patch14
-rw-r--r--dev-cpp/commoncpp2/files/1.8.1-fix-buffer-overflow.patch13
-rw-r--r--dev-cpp/commoncpp2/files/1.8.1-fix-c++14.patch52
-rw-r--r--dev-cpp/commoncpp2/files/1.8.1-gnutls-3.4.patch36
-rw-r--r--dev-cpp/commoncpp2/files/1.8.1-libgcrypt.patch48
-rw-r--r--dev-cpp/commoncpp2/files/1.8.1-parallel-build.patch11
-rw-r--r--dev-cpp/commoncpp2/metadata.xml8
12 files changed, 410 insertions, 0 deletions
diff --git a/dev-cpp/commoncpp2/Manifest b/dev-cpp/commoncpp2/Manifest
new file mode 100644
index 000000000000..817860ab57b1
--- /dev/null
+++ b/dev-cpp/commoncpp2/Manifest
@@ -0,0 +1,14 @@
+AUX 1.8.0-glibc212.patch 323 SHA256 1c07cfe66bcb95649ac7688ae2954b4539c3510b5f124fa07f3e30bcd88a15fe SHA512 c7807f0cb867343fb167f8428a143e125a36c5c764f6ff0a0c8edab892c12b636bc7a47e87574e30209ee0cf5500642369e4135799aee3d3f4292423496fdd07 WHIRLPOOL 59e16e1a0f3cef69252b120af170f6d1c75c29316c6e1b2d195dfa8bf78bca7874de7d31b5a27366ed0196c9255948944641e59bffb242d35a2d2e18d142df27
+AUX 1.8.1-autoconf-update.patch 1735 SHA256 f89ae9b80a4e4ddd526ee7b1829d42b55ad52a9bd37194bb2758718eeddd484a SHA512 5c48300d3476913a96f1ea45853ad6092527490f1e36cab669be74766486f7c13ab86c740603cfe7f5381148a69e60bfb0e968c03c1c579f7aa8d9efb36281b6 WHIRLPOOL 6d172fb3ecba88bf741b9ae65699cd12d79309c2cac57bb4b489646378cb98cc8a91edc89ae6d0aad5084e2190780a206bbc722f294b8d612507d19ee2babd5f
+AUX 1.8.1-configure_detect_netfilter.patch 641 SHA256 1662350f27aaa8d058e97186a668dbd2ad02cddf498291cf1ee51c318af81bd6 SHA512 d4c3af631ab0ef37cb5943cd17ba6481e229af3537e73769f13ed6fe45e2671a9e9ee8f14f2243e95fd8b17d4a8dbb2c7945a5de9e4ce3f29e842779c55d0ea0 WHIRLPOOL 69ffa1ba5a0a123f87b8108fc26f31ddc0fb6a0a4b1e5f7cd72b7362d92c3972d08b96429367f042a86462debc92229ffedc85e26116e0a7f998a33e2b15048a
+AUX 1.8.1-fix-buffer-overflow.patch 442 SHA256 0556a17325a199df3526be14c7e47d4cf19b14bd573ddd3ff4db791e54bed281 SHA512 4c3cece95f4a32ee2b37b37f84462aeda43c2d25c2eb5cfaf4bfbbe2bdc2d7db7c2ead2f6150bb108ea124fc29c277371d1d0f415a6b26df98f515d910cb3e8b WHIRLPOOL d518d0a2f61e56a3370f40eaedf09e67e7e22152a1468250df31f5c9d2a2ef69d37c82fc01f7d3e0f41074e09f215beeb3d7f51d8e45c518e282f81909416605
+AUX 1.8.1-fix-c++14.patch 1220 SHA256 322977dc077d85c4c062751eaa739392a349b0539a439069ed67817c5580b583 SHA512 222c21e7b0b4e035ec3a36edb5b9e68d345550781f21a8c075835bf6f27ee46f62469a17f4cec3c1c1bb69741661dbcc7071c51c964006201ed8c3ff48a60c80 WHIRLPOOL 6e0e1492c822713e8afa25b5a8cf1e24652dede4c68cb53dfce1caf502fb7b6b05a6605d1f1ee02274636f063cfec2c10e22c7535db9a0d0249eda9f3ee2a8ff
+AUX 1.8.1-gnutls-3.4.patch 1229 SHA256 ead71b0e7cb5a55ace7553cc9f21d6606c6fb534ac045c343fc6badfcaecff48 SHA512 92db4deba0ae612fda5873224641d35d5637a48d553d0afee7749c5477ca19a62640656d4781d101db5b545ddd962ce7c11a6edf33d128b031cafebf3cf6db77 WHIRLPOOL 681a4442a55a97707f3a9aeca59c7462bf2aad6c8bcb33d59127fff9254329fb2e04457ddb22f8dbef86b2406801ebc4a04d119f4cbc864e5bbddd41083e36a0
+AUX 1.8.1-libgcrypt.patch 1054 SHA256 90cccdd8e6bb790fb3f678c699e956dc17dedd2c65b7368a02a4a3a6ebfceb0c SHA512 76f444739b370681d1b619b78cc77867da197f149c19d036d9d8b430a7a59d697c7ab30529582c308f77bc584a003dc0701d8c06003329589ade652babe5edd2 WHIRLPOOL fdce5e6031361b854d1c271946e764d68532bbc88f7c32600308c700030a9c7639ada97d9f2a252bf6c8ab046396955392a367ebf2e20193eca05a2deb8bb33e
+AUX 1.8.1-parallel-build.patch 261 SHA256 4cfb1fa37d894aae21d41b9d3d61becc8e979032fefbae1d97a2bc0dc2a61148 SHA512 e06ca32ffd811897859ef7bf06f3b7998eaa56c7fcbb01f971ec32b6e75c4242e3a2ed5a1bdaa28c02bae08bfbb386d65ebed3e50e2de759d056f085f1f49c1f WHIRLPOOL c7252df525b117ff2d5b3c5ac26a3d78ac7f2c7e92790a6b652003422dfb2f6e728d477480be500d5775b24894ac097beea7f789e2774b41f6ca9d2c86d75def
+DIST commoncpp2-1.8.1.tar.gz 908678 SHA256 53ced4aff74e28a1d8018eb2b4974519028db3c12471ab6dff1c873578c9af4e SHA512 949823461d20429c2b0acfa22554a5a9dacc977e3ee097f34416f65d322df84fbdb27c644435c6c6caaed800347dfbe789cee7f19b39b306165c97b4f4012bfe WHIRLPOOL 1844cf39ce0a087aaea1cfac1e712b52f81de594278facb70306d68cd3e3343c0d2c581886b4fe3ce7607eb52150c5cf1c9558d0fac0ee7d8730eff39b46bb64
+EBUILD commoncpp2-1.8.1-r2.ebuild 1570 SHA256 e9145c2674513aad967e8872feaafc4c90dd535e0b6aab1bbef4671b71b83e0f SHA512 3dfdeed9b2b04151fe4ae5fab0454c8c161a047f99f8945325a4a88291463cfb85cc23adb6305efe76dc6b99b60893f78a0ecb721dd381ffe04be1e4b3376412 WHIRLPOOL 45a76c7e018ba6d860cc7e4d6e6b5a3f11bb9c7e2a55072b2cdf6dbeaacb25bfe66c96452904b8a0c0b0933107b4ef8f6302a29a9770586d00290f89f12f240d
+EBUILD commoncpp2-1.8.1-r3.ebuild 1515 SHA256 0d02322ded0aff1cb077db4ed0b85baa861db52458f5b34316a333f009f0372a SHA512 ce6af72543aca69603849311c2a15ae8f4df829c5e027660468b8a8e38f8c343581475890105849e78df329dc66911effaded94f6984779f706d6e2824b3108b WHIRLPOOL a3cc871e397384ed7020fe70bc80ea0787accc96fbe22b80b0cc08eeb197c5e29e40799e955897499d27dd5b574cdfafe80eabcf776f2af08a0df6aa20aca146
+MISC ChangeLog 3896 SHA256 f87e51ee9620bd90b2a3185e95a4c74b297d07a024591e03f7dfdcd52c5d1496 SHA512 e9a809c039c6df3f169a5a47ddc0b56e4774ec6ef35a3ce1d37ba98150fcfcdcbc995e56994b2187f83905ab63d81a18d3e9ae7a3da89104c60696db2948be7a WHIRLPOOL def06b3b9cdc9a1560c0d4c926f7d67dfedac939996e251a5246c5e1d5332fe263b753150e7792d99f5e7fb26bb81eab2d74590d99e61d49e76d6d959c667157
+MISC ChangeLog-2015 11054 SHA256 86e05a1b9bfde4b4e498d1b0c49007900d792529a883fd5a83465751ed81e3f3 SHA512 5e6d5eb46022e2bed64900dcd0cf9fb72b651a0e6efdb5cc3063c00d3eac083539ab9ae125060bd50c7a7a648f369590163b8476f5531805fd15232e8695344a WHIRLPOOL b7e5cb7d33638b5c744325754c7518eb4eda96dd4a0739a4adc93a35740efb01efe5c4adf6ad010690efca7b02d3de9020de09239130d657dba28b965b8a05fd
+MISC metadata.xml 245 SHA256 2d55ae4b33723b881e2cd48221560da36aec5b304b8bf2b440a9e2588875dba9 SHA512 b098db4fb4d9ea116f6246bc6caf0f49e80e236d2fad78d287b638dbd5add7bfaf7feb1ca081ca557b23dde9227ce42fa808f3f6fd8eaba6a7e9cae93342f9c6 WHIRLPOOL edd2e34ed3775c96bf085c9c0a95bd448028cb5ba6a2bfa7d7253b54878c888b62fa579483265c47c2602ca454fd656d32346eaa7351067cc3a36295d1e1e861
diff --git a/dev-cpp/commoncpp2/commoncpp2-1.8.1-r2.ebuild b/dev-cpp/commoncpp2/commoncpp2-1.8.1-r2.ebuild
new file mode 100644
index 000000000000..dee8c708de05
--- /dev/null
+++ b/dev-cpp/commoncpp2/commoncpp2-1.8.1-r2.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools
+
+DESCRIPTION="C++ library offering portable support for system-related services"
+SRC_URI="mirror://gnu/commoncpp/${P}.tar.gz"
+HOMEPAGE="https://www.gnu.org/software/commoncpp/"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc ppc64 x86"
+IUSE="debug doc examples ipv6 gnutls ssl static-libs"
+
+RDEPEND="
+ sys-libs/zlib
+ ssl? (
+ gnutls? (
+ dev-libs/libgcrypt:0=
+ net-libs/gnutls:=
+ )
+ !gnutls? ( dev-libs/openssl:0= )
+ )"
+DEPEND="${RDEPEND}
+ doc? ( >=app-doc/doxygen-1.3.6 )"
+
+PATCHES=(
+ "${FILESDIR}/1.8.1-configure_detect_netfilter.patch"
+ "${FILESDIR}/1.8.0-glibc212.patch"
+ "${FILESDIR}/1.8.1-autoconf-update.patch"
+ "${FILESDIR}/1.8.1-fix-buffer-overflow.patch"
+ "${FILESDIR}/1.8.1-parallel-build.patch"
+ "${FILESDIR}/1.8.1-libgcrypt.patch"
+ "${FILESDIR}/1.8.1-fix-c++14.patch"
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ use ssl && local myconf=( $(usex gnutls '--with-gnutls' '--with-openssl') )
+
+ econf \
+ $(use_enable debug) \
+ $(use_with ipv6) \
+ $(use_enable static-libs static) \
+ $(use_with doc doxygen) \
+ "${myconf[@]}"
+}
+
+src_install () {
+ # Only install html docs
+ # man and latex available, but seems a little wasteful
+ use doc && HTML_DOCS=( doc/html/. )
+ default
+ dodoc COPYING.addendum
+
+ if use examples; then
+ docinto examples
+ dodoc demo/{*.cpp,*.h,*.xml,README}
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+
+ # package provides .pc files
+ find "${D}" -name '*.la' -delete || die
+}
diff --git a/dev-cpp/commoncpp2/commoncpp2-1.8.1-r3.ebuild b/dev-cpp/commoncpp2/commoncpp2-1.8.1-r3.ebuild
new file mode 100644
index 000000000000..f75eac737a8e
--- /dev/null
+++ b/dev-cpp/commoncpp2/commoncpp2-1.8.1-r3.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools eutils
+
+DESCRIPTION="C++ library offering portable support for system-related services"
+SRC_URI="mirror://gnu/commoncpp/${P}.tar.gz"
+HOMEPAGE="https://www.gnu.org/software/commoncpp/"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc ppc64 x86"
+IUSE="debug doc examples ipv6 gnutls ssl static-libs"
+
+RDEPEND="
+ sys-libs/zlib
+ ssl? (
+ gnutls? (
+ dev-libs/libgcrypt:0=
+ net-libs/gnutls:=
+ )
+ !gnutls? ( dev-libs/openssl:0= )
+ )"
+DEPEND="${RDEPEND}
+ doc? ( >=app-doc/doxygen-1.3.6 )"
+
+HTML_DOCS=()
+
+PATCHES=(
+ "${FILESDIR}/1.8.1-configure_detect_netfilter.patch"
+ "${FILESDIR}/1.8.0-glibc212.patch"
+ "${FILESDIR}/1.8.1-autoconf-update.patch"
+ "${FILESDIR}/1.8.1-fix-buffer-overflow.patch"
+ "${FILESDIR}/1.8.1-parallel-build.patch"
+ "${FILESDIR}/1.8.1-libgcrypt.patch"
+ "${FILESDIR}/1.8.1-fix-c++14.patch"
+ "${FILESDIR}/1.8.1-gnutls-3.4.patch"
+)
+
+pkg_setup() {
+ use doc && HTML_DOCS+=( doc/html/. )
+}
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ use ssl && local myconf=( $(usex gnutls '--with-gnutls' '--with-openssl') )
+
+ econf \
+ $(use_enable debug) \
+ $(use_with ipv6) \
+ $(use_enable static-libs static) \
+ $(use_with doc doxygen) \
+ "${myconf[@]}"
+}
+
+src_install () {
+ default
+ prune_libtool_files
+
+ dodoc COPYING.addendum
+
+ if use examples; then
+ docinto examples
+ dodoc demo/{*.cpp,*.h,*.xml,README}
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+}
diff --git a/dev-cpp/commoncpp2/files/1.8.0-glibc212.patch b/dev-cpp/commoncpp2/files/1.8.0-glibc212.patch
new file mode 100644
index 000000000000..5132554aea1c
--- /dev/null
+++ b/dev-cpp/commoncpp2/files/1.8.0-glibc212.patch
@@ -0,0 +1,12 @@
+http://bugs.gentoo.org/334135
+
+--- a/src/applog.cpp
++++ b/src/applog.cpp
+@@ -44,6 +44,7 @@
+ #include <cstdio>
+ #include <stdarg.h>
+ #include <errno.h>
++#include <sys/stat.h>
+
+ // TODO sc: test if has to move up now that it is into commoncpp
+ // NOTE: the order of inclusion is important do not move following include line
diff --git a/dev-cpp/commoncpp2/files/1.8.1-autoconf-update.patch b/dev-cpp/commoncpp2/files/1.8.1-autoconf-update.patch
new file mode 100644
index 000000000000..c64ba2f65fa9
--- /dev/null
+++ b/dev-cpp/commoncpp2/files/1.8.1-autoconf-update.patch
@@ -0,0 +1,61 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -9,7 +9,8 @@
+ # WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
+ # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+-AC_INIT(src/thread.cpp)
++AC_INIT
++AC_CONFIG_SRCDIR([src/thread.cpp])
+ AC_CONFIG_MACRO_DIR([m4])
+ m4_pattern_allow(LT_VERSION)
+
+@@ -81,17 +82,17 @@
+ AC_SUBST(ccincludedir)
+
+ AC_CONFIG_AUX_DIR(autoconf)
+-AC_CANONICAL_SYSTEM
++AC_CANONICAL_TARGET
+ AC_PROG_CPP
+ AC_PROG_CC
+ AC_PROG_CXXCPP
+ AC_PROG_CXX
+ OST_PROG_CC_POSIX
+ NP_PROG_MSC
+-AC_LIBTOOL_WIN32_DLL
+-AM_PROG_LIBTOOL
++
++LT_INIT([win32-dll,disable-static])
+ AM_INIT_AUTOMAKE(commoncpp2, [$VERSION])
+-AM_CONFIG_HEADER(config.h)
++AC_CONFIG_HEADERS([config.h])
+
+ AC_C_RESTRICT
+ AC_C_VOLATILE
+@@ -395,10 +396,11 @@
+ #endif
+
+ ])
+-
++AC_ARG_WITH([doxygen],
++ AS_HELP_STRING([--without-doxygen], [Do not build documentation]))
+ AC_PATH_PROG(DOXYGEN, doxygen, no)
+ AC_SUBST(DOXYGEN)
+-AM_CONDITIONAL(DOXY, test "$DOXYGEN" != "no")
++AM_CONDITIONAL([DOXY], [test "x$with_doxygen" != "xno"])
+
+ AM_CONDITIONAL(GETOPT_LONG, [test ! -z "$LIBGETOPTOBJS"])
+
+@@ -408,10 +410,11 @@
+ AC_SUBST(LIB_VERSION)
+ AC_SUBST(LIB_MAJOR)
+
+-AC_OUTPUT([src/ccgnu2-config src/libccext2.pc src/libccgnu2.pc
++AC_CONFIG_FILES([src/ccgnu2-config src/libccext2.pc src/libccgnu2.pc
+ src/Makefile w32/Makefile w32/vs2008/Makefile w32/vs2008/ccext2.vcproj w32/vs2008/ccgnu2.vcproj w32/vs2008/common.sln m4/Makefile doc/Doxyfile
+ doc/Makefile demo/Makefile inc/Makefile inc/cc++/Makefile Makefile
+ commoncpp2.spec tests/Makefile commoncpp2.list w32/ccgnu2.dsp w32/ccext2.dsp w32/ccgnu2.vcproj w32/ccext2.vcproj])
++AC_OUTPUT
+
+ # if test ! -f inc/cc++/thread.h ; then
+ # cp ${srcdir}/inc/cc++/*.h inc/cc++ ; fi
diff --git a/dev-cpp/commoncpp2/files/1.8.1-configure_detect_netfilter.patch b/dev-cpp/commoncpp2/files/1.8.1-configure_detect_netfilter.patch
new file mode 100644
index 000000000000..b6ebf0e0f4a4
--- /dev/null
+++ b/dev-cpp/commoncpp2/files/1.8.1-configure_detect_netfilter.patch
@@ -0,0 +1,14 @@
+diff --git a/m4/ost_socket.m4 b/m4/ost_socket.m4
+index bd9db7c..122c938 100644
+--- a/m4/ost_socket.m4
++++ b/m4/ost_socket.m4
+@@ -93,6 +93,9 @@ AC_DEFUN([OST_SYS_SOCKET],[
+ AC_CHECK_HEADERS([linux/netfilter_ipv4.h linux/netfilter_ipv6.h],,,
+ [#ifdef HAVE_LIMITS_H
+ #include <limits.h>
++ #endif
++ #ifdef HAVE_NETINET_IN_H
++ #include <netinet/in.h>
+ #endif])
+ if test "$ac_cv_header_linux_netfilter_ipv4_h" = "yes" &&
+ [ test "$ac_cv_header_linux_netfilter_ipv6_h" = "yes" &&
diff --git a/dev-cpp/commoncpp2/files/1.8.1-fix-buffer-overflow.patch b/dev-cpp/commoncpp2/files/1.8.1-fix-buffer-overflow.patch
new file mode 100644
index 000000000000..e68b00576cdb
--- /dev/null
+++ b/dev-cpp/commoncpp2/files/1.8.1-fix-buffer-overflow.patch
@@ -0,0 +1,13 @@
+diff --git a/src/inaddr.cpp b/src/inaddr.cpp
+index 5a4b9c4..50127f3 100644
+--- a/src/inaddr.cpp
++++ b/src/inaddr.cpp
+@@ -333,7 +333,7 @@ void IPV4Address::setAddress(const char *host)
+ if(ipaddr)
+ delete[] ipaddr;
+ ipaddr = new struct in_addr[1];
+- memset((void *)&ipaddr[0], 0, sizeof(ipaddr));
++ memset((void *)&ipaddr[0], 0, sizeof(*ipaddr));
+ return;
+ }
+
diff --git a/dev-cpp/commoncpp2/files/1.8.1-fix-c++14.patch b/dev-cpp/commoncpp2/files/1.8.1-fix-c++14.patch
new file mode 100644
index 000000000000..cc921060b303
--- /dev/null
+++ b/dev-cpp/commoncpp2/files/1.8.1-fix-c++14.patch
@@ -0,0 +1,52 @@
+Fix building with C++14, which errors out due changed noexcept()
+semantics for dtors caught by -Werror=terminate.
+
+See also: https://bugs.gentoo.org/show_bug.cgi?id=595422
+
+--- a/src/nat.cpp
++++ b/src/nat.cpp
+@@ -145,11 +145,11 @@
+ "nat lookup successful",
+ "nat address not in table",
+ "nat not supported/implemented",
+- "unable to open device "NAT_DEVICE,
++ "unable to open device " NAT_DEVICE,
+ "unable to get socket name",
+ "unable to get peer name",
+ "unable to get socket type",
+- "unable to lookup, nat "NAT_SYSCALL" failed",
++ "unable to lookup, nat " NAT_SYSCALL " failed",
+ "unkown nat error code"
+ };
+
+--- a/src/socket.cpp
++++ b/src/socket.cpp
+@@ -2971,12 +2971,7 @@
+
+ TCPStream::~TCPStream()
+ {
+-#ifdef CCXX_EXCEPTIONS
+- try { endStream(); }
+- catch( ... ) { if ( ! std::uncaught_exception()) throw;};
+-#else
+- endStream();
+-#endif
++ endStream();
+ }
+
+ #ifdef HAVE_GETADDRINFO
+--- a/src/ssl.cpp
++++ b/src/ssl.cpp
+@@ -441,12 +441,7 @@
+
+ SSLStream::~SSLStream()
+ {
+-#ifdef CCXX_EXCEPTIONS
+- try { endStream(); }
+- catch( ...) { if ( ! std::uncaught_exception()) throw;};
+-#else
+ endStream();
+-#endif
+ }
+
+ #ifdef CCXX_NAMESPACES
diff --git a/dev-cpp/commoncpp2/files/1.8.1-gnutls-3.4.patch b/dev-cpp/commoncpp2/files/1.8.1-gnutls-3.4.patch
new file mode 100644
index 000000000000..b7365b822065
--- /dev/null
+++ b/dev-cpp/commoncpp2/files/1.8.1-gnutls-3.4.patch
@@ -0,0 +1,36 @@
+From ba702b6034444c2e30b0990d06e28bb2dea8ecb7 Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <alon.barlev@gmail.com>
+Date: Sat, 4 Mar 2017 01:36:23 +0200
+Subject: [PATCH] ssl: support gnutls-3.4
+
+Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
+---
+ src/ssl.cpp | 5 +----
+ 1 file changed, 1 insertion(+), 4 deletions(-)
+
+diff --git a/src/ssl.cpp b/src/ssl.cpp
+index 5bf526d..38ef0a7 100644
+--- a/src/ssl.cpp
++++ b/src/ssl.cpp
+@@ -344,9 +344,6 @@ ssize_t SSLStream::readData(void *target, size_t size, char separator, timeout_t
+ #ifdef CCXX_GNUTLS
+ bool SSLStream::getSession(void)
+ {
+- const int cert_priority[3] =
+- {GNUTLS_CRT_X509, GNUTLS_CRT_OPENPGP, 0};
+-
+ if(ssl)
+ return true;
+
+@@ -362,7 +359,7 @@ bool SSLStream::getSession(void)
+
+ gnutls_set_default_priority(ssl->session);
+ gnutls_certificate_allocate_credentials(&ssl->xcred);
+- gnutls_certificate_type_set_priority(ssl->session, cert_priority);
++ gnutls_priority_set_direct(ssl->session, "NORMAL:+CTYPE-OPENPGP", NULL);
+ gnutls_credentials_set(ssl->session, GNUTLS_CRD_CERTIFICATE, ssl->xcred);
+ gnutls_transport_set_ptr(ssl->session, (gnutls_transport_ptr)so);
+ if(gnutls_handshake(ssl->session)) {
+--
+2.10.2
+
diff --git a/dev-cpp/commoncpp2/files/1.8.1-libgcrypt.patch b/dev-cpp/commoncpp2/files/1.8.1-libgcrypt.patch
new file mode 100644
index 000000000000..08e24e1a06a9
--- /dev/null
+++ b/dev-cpp/commoncpp2/files/1.8.1-libgcrypt.patch
@@ -0,0 +1,48 @@
+--- a/src/ssl.cpp
++++ b/src/ssl.cpp
+@@ -99,35 +99,7 @@
+ return 0;
+ }
+
+-extern "C" {
+- static int _wrap_mutex_init(void **priv)
+- {
+- return _gcry_mutex_init((Mutex **)(priv));
+- }
+-
+- static int _wrap_mutex_destroy(void **priv)
+- {
+- return _gcry_mutex_destroy((Mutex **)(priv));
+- }
+-
+- static int _wrap_mutex_lock(void **priv)
+- {
+- return _gcry_mutex_lock((Mutex **)(priv));
+- }
+-
+- static int _wrap_mutex_unlock(void **priv)
+- {
+- return _gcry_mutex_unlock((Mutex **)(priv));
+- }
+-
+- static struct gcry_thread_cbs _gcry_threads =
+- {
+- GCRY_THREAD_OPTION_PTHREAD, NULL,
+- _wrap_mutex_init, _wrap_mutex_destroy,
+- _wrap_mutex_lock, _wrap_mutex_unlock
+- };
+-
+-};
++GCRY_THREAD_OPTION_PTHREAD_IMPL;
+
+ #endif
+
+@@ -135,7 +107,7 @@
+ public:
+ _ssl_global() {
+ #ifndef WIN32
+- gcry_control(GCRYCTL_SET_THREAD_CBS, &_gcry_threads);
++ gcry_control(GCRYCTL_SET_THREAD_CBS, &gcry_threads_pthread);
+ #endif
+ gnutls_global_init();
+ }
diff --git a/dev-cpp/commoncpp2/files/1.8.1-parallel-build.patch b/dev-cpp/commoncpp2/files/1.8.1-parallel-build.patch
new file mode 100644
index 000000000000..149677ca89b4
--- /dev/null
+++ b/dev-cpp/commoncpp2/files/1.8.1-parallel-build.patch
@@ -0,0 +1,11 @@
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -47,6 +47,7 @@
+
+ if EXTRAS
+ libccext2_la_LIBADD = @THREAD_LIBS@ @BASE_LIB@ @SSL_LIBS@ @ZSTREAM_LIBS@
++libccext2_la_DEPENDENCIES = libccgnu2.la
+ libccext2_la_LDFLAGS = $(RELEASE) $(SHARED_FLAGS)
+
+ if GETOPT_LONG
+
diff --git a/dev-cpp/commoncpp2/metadata.xml b/dev-cpp/commoncpp2/metadata.xml
new file mode 100644
index 000000000000..41cd682e0ecf
--- /dev/null
+++ b/dev-cpp/commoncpp2/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>cpp@gentoo.org</email>
+ <name>Gentoo C++ Project</name>
+</maintainer>
+</pkgmetadata>