mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-07-25 08:58:27 -07:00
dev-cpp/commoncpp2: Allow for compiling with GCC 6
Gentoo-bug: 595422 * EAPI=6 * Make PATCHES -p1 compliant Package-Manager: portage-2.3.1
This commit is contained in:
71
dev-cpp/commoncpp2/commoncpp2-1.8.1-r2.ebuild
Normal file
71
dev-cpp/commoncpp2/commoncpp2-1.8.1-r2.ebuild
Normal file
@@ -0,0 +1,71 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
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"
|
||||
REQUIRED_USE="gnutls? ( ssl )"
|
||||
|
||||
RDEPEND="ssl? ( gnutls? ( dev-libs/libgcrypt:0
|
||||
net-libs/gnutls )
|
||||
!gnutls? ( dev-libs/openssl:0 ) )
|
||||
sys-libs/zlib"
|
||||
DEPEND="doc? ( >=app-doc/doxygen-1.3.6 )
|
||||
${RDEPEND}"
|
||||
|
||||
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() {
|
||||
local myconf
|
||||
if use gnutls; then
|
||||
myconf+="--with-gnutls"
|
||||
else
|
||||
use ssl && myconf+="--with-openssl"
|
||||
fi
|
||||
|
||||
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
|
||||
}
|
||||
@@ -1,7 +1,7 @@
|
||||
http://bugs.gentoo.org/334135
|
||||
|
||||
--- src/applog.cpp
|
||||
+++ src/applog.cpp
|
||||
--- a/src/applog.cpp
|
||||
+++ b/src/applog.cpp
|
||||
@@ -44,6 +44,7 @@
|
||||
#include <cstdio>
|
||||
#include <stdarg.h>
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 80518db..64221e0 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -9,7 +9,8 @@
|
||||
@@ -12,7 +10,7 @@ index 80518db..64221e0 100644
|
||||
AC_CONFIG_MACRO_DIR([m4])
|
||||
m4_pattern_allow(LT_VERSION)
|
||||
|
||||
@@ -81,17 +82,17 @@ fi
|
||||
@@ -81,17 +82,17 @@
|
||||
AC_SUBST(ccincludedir)
|
||||
|
||||
AC_CONFIG_AUX_DIR(autoconf)
|
||||
@@ -34,7 +32,21 @@ index 80518db..64221e0 100644
|
||||
|
||||
AC_C_RESTRICT
|
||||
AC_C_VOLATILE
|
||||
@@ -408,10 +409,11 @@ LIB_MAJOR=`echo $LT_VERSION | sed -e 's/[:].*$//'`
|
||||
@@ -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)
|
||||
|
||||
|
||||
52
dev-cpp/commoncpp2/files/1.8.1-fix-c++14.patch
Normal file
52
dev-cpp/commoncpp2/files/1.8.1-fix-c++14.patch
Normal file
@@ -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
|
||||
@@ -1,5 +1,5 @@
|
||||
--- src/ssl.cpp.orig 2010-11-01 03:42:51.000000000 +0300
|
||||
+++ src/ssl.cpp 2015-11-25 15:32:23.923057317 +0300
|
||||
--- a/src/ssl.cpp
|
||||
+++ b/src/ssl.cpp
|
||||
@@ -99,35 +99,7 @@
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
--- src/Makefile.am
|
||||
+++ src/Makefile.am
|
||||
--- a/src/Makefile.am
|
||||
+++ b/src/Makefile.am
|
||||
@@ -47,6 +47,7 @@
|
||||
|
||||
if EXTRAS
|
||||
|
||||
Reference in New Issue
Block a user