Gentoo Archives: gentoo-commits

From: David Seifert <soap@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-cpp/commoncpp2/, dev-cpp/commoncpp2/files/
Date: Thu, 29 Sep 2016 19:42:37
Message-Id: 1475178134.46aee353c3029ab41e1669c5293ff1ec8440a733.soap@gentoo
1 commit: 46aee353c3029ab41e1669c5293ff1ec8440a733
2 Author: David Seifert <soap <AT> gentoo <DOT> org>
3 AuthorDate: Thu Sep 29 19:36:34 2016 +0000
4 Commit: David Seifert <soap <AT> gentoo <DOT> org>
5 CommitDate: Thu Sep 29 19:42:14 2016 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=46aee353
7
8 dev-cpp/commoncpp2: Allow for compiling with GCC 6
9
10 Gentoo-bug: 595422
11 * EAPI=6
12 * Make PATCHES -p1 compliant
13
14 Package-Manager: portage-2.3.1
15
16 dev-cpp/commoncpp2/commoncpp2-1.8.1-r2.ebuild | 71 ++++++++++++++++++++++
17 dev-cpp/commoncpp2/files/1.8.0-glibc212.patch | 4 +-
18 .../commoncpp2/files/1.8.1-autoconf-update.patch | 20 ++++--
19 dev-cpp/commoncpp2/files/1.8.1-fix-c++14.patch | 52 ++++++++++++++++
20 dev-cpp/commoncpp2/files/1.8.1-libgcrypt.patch | 4 +-
21 .../commoncpp2/files/1.8.1-parallel-build.patch | 4 +-
22 6 files changed, 145 insertions(+), 10 deletions(-)
23
24 diff --git a/dev-cpp/commoncpp2/commoncpp2-1.8.1-r2.ebuild b/dev-cpp/commoncpp2/commoncpp2-1.8.1-r2.ebuild
25 new file mode 100644
26 index 00000000..4cf6353
27 --- /dev/null
28 +++ b/dev-cpp/commoncpp2/commoncpp2-1.8.1-r2.ebuild
29 @@ -0,0 +1,71 @@
30 +# Copyright 1999-2016 Gentoo Foundation
31 +# Distributed under the terms of the GNU General Public License v2
32 +# $Id$
33 +
34 +EAPI=6
35 +
36 +inherit autotools
37 +
38 +DESCRIPTION="C++ library offering portable support for system-related services"
39 +SRC_URI="mirror://gnu/commoncpp/${P}.tar.gz"
40 +HOMEPAGE="https://www.gnu.org/software/commoncpp/"
41 +LICENSE="GPL-2"
42 +SLOT="0"
43 +KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
44 +IUSE="debug doc examples ipv6 gnutls ssl static-libs"
45 +REQUIRED_USE="gnutls? ( ssl )"
46 +
47 +RDEPEND="ssl? ( gnutls? ( dev-libs/libgcrypt:0
48 + net-libs/gnutls )
49 + !gnutls? ( dev-libs/openssl:0 ) )
50 + sys-libs/zlib"
51 +DEPEND="doc? ( >=app-doc/doxygen-1.3.6 )
52 + ${RDEPEND}"
53 +
54 +PATCHES=(
55 + "${FILESDIR}/1.8.1-configure_detect_netfilter.patch"
56 + "${FILESDIR}/1.8.0-glibc212.patch"
57 + "${FILESDIR}/1.8.1-autoconf-update.patch"
58 + "${FILESDIR}/1.8.1-fix-buffer-overflow.patch"
59 + "${FILESDIR}/1.8.1-parallel-build.patch"
60 + "${FILESDIR}/1.8.1-libgcrypt.patch"
61 + "${FILESDIR}/1.8.1-fix-c++14.patch"
62 +)
63 +
64 +src_prepare() {
65 + default
66 + eautoreconf
67 +}
68 +
69 +src_configure() {
70 + local myconf
71 + if use gnutls; then
72 + myconf+="--with-gnutls"
73 + else
74 + use ssl && myconf+="--with-openssl"
75 + fi
76 +
77 + econf \
78 + $(use_enable debug) \
79 + $(use_with ipv6) \
80 + $(use_enable static-libs static) \
81 + $(use_with doc doxygen) \
82 + ${myconf}
83 +}
84 +
85 +src_install () {
86 + # Only install html docs
87 + # man and latex available, but seems a little wasteful
88 + use doc && HTML_DOCS=( doc/html/. )
89 + default
90 + dodoc COPYING.addendum
91 +
92 + if use examples; then
93 + docinto examples
94 + dodoc demo/{*.cpp,*.h,*.xml,README}
95 + docompress -x /usr/share/doc/${PF}/examples
96 + fi
97 +
98 + # package provides .pc files
99 + find "${D}" -name '*.la' -delete || die
100 +}
101
102 diff --git a/dev-cpp/commoncpp2/files/1.8.0-glibc212.patch b/dev-cpp/commoncpp2/files/1.8.0-glibc212.patch
103 index a29e154..5132554 100644
104 --- a/dev-cpp/commoncpp2/files/1.8.0-glibc212.patch
105 +++ b/dev-cpp/commoncpp2/files/1.8.0-glibc212.patch
106 @@ -1,7 +1,7 @@
107 http://bugs.gentoo.org/334135
108
109 ---- src/applog.cpp
110 -+++ src/applog.cpp
111 +--- a/src/applog.cpp
112 ++++ b/src/applog.cpp
113 @@ -44,6 +44,7 @@
114 #include <cstdio>
115 #include <stdarg.h>
116
117 diff --git a/dev-cpp/commoncpp2/files/1.8.1-autoconf-update.patch b/dev-cpp/commoncpp2/files/1.8.1-autoconf-update.patch
118 index d50a340..c64ba2f 100644
119 --- a/dev-cpp/commoncpp2/files/1.8.1-autoconf-update.patch
120 +++ b/dev-cpp/commoncpp2/files/1.8.1-autoconf-update.patch
121 @@ -1,5 +1,3 @@
122 -diff --git a/configure.ac b/configure.ac
123 -index 80518db..64221e0 100644
124 --- a/configure.ac
125 +++ b/configure.ac
126 @@ -9,7 +9,8 @@
127 @@ -12,7 +10,7 @@ index 80518db..64221e0 100644
128 AC_CONFIG_MACRO_DIR([m4])
129 m4_pattern_allow(LT_VERSION)
130
131 -@@ -81,17 +82,17 @@ fi
132 +@@ -81,17 +82,17 @@
133 AC_SUBST(ccincludedir)
134
135 AC_CONFIG_AUX_DIR(autoconf)
136 @@ -34,7 +32,21 @@ index 80518db..64221e0 100644
137
138 AC_C_RESTRICT
139 AC_C_VOLATILE
140 -@@ -408,10 +409,11 @@ LIB_MAJOR=`echo $LT_VERSION | sed -e 's/[:].*$//'`
141 +@@ -395,10 +396,11 @@
142 + #endif
143 +
144 + ])
145 +-
146 ++AC_ARG_WITH([doxygen],
147 ++ AS_HELP_STRING([--without-doxygen], [Do not build documentation]))
148 + AC_PATH_PROG(DOXYGEN, doxygen, no)
149 + AC_SUBST(DOXYGEN)
150 +-AM_CONDITIONAL(DOXY, test "$DOXYGEN" != "no")
151 ++AM_CONDITIONAL([DOXY], [test "x$with_doxygen" != "xno"])
152 +
153 + AM_CONDITIONAL(GETOPT_LONG, [test ! -z "$LIBGETOPTOBJS"])
154 +
155 +@@ -408,10 +410,11 @@
156 AC_SUBST(LIB_VERSION)
157 AC_SUBST(LIB_MAJOR)
158
159
160 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
161 new file mode 100644
162 index 00000000..cc92106
163 --- /dev/null
164 +++ b/dev-cpp/commoncpp2/files/1.8.1-fix-c++14.patch
165 @@ -0,0 +1,52 @@
166 +Fix building with C++14, which errors out due changed noexcept()
167 +semantics for dtors caught by -Werror=terminate.
168 +
169 +See also: https://bugs.gentoo.org/show_bug.cgi?id=595422
170 +
171 +--- a/src/nat.cpp
172 ++++ b/src/nat.cpp
173 +@@ -145,11 +145,11 @@
174 + "nat lookup successful",
175 + "nat address not in table",
176 + "nat not supported/implemented",
177 +- "unable to open device "NAT_DEVICE,
178 ++ "unable to open device " NAT_DEVICE,
179 + "unable to get socket name",
180 + "unable to get peer name",
181 + "unable to get socket type",
182 +- "unable to lookup, nat "NAT_SYSCALL" failed",
183 ++ "unable to lookup, nat " NAT_SYSCALL " failed",
184 + "unkown nat error code"
185 + };
186 +
187 +--- a/src/socket.cpp
188 ++++ b/src/socket.cpp
189 +@@ -2971,12 +2971,7 @@
190 +
191 + TCPStream::~TCPStream()
192 + {
193 +-#ifdef CCXX_EXCEPTIONS
194 +- try { endStream(); }
195 +- catch( ... ) { if ( ! std::uncaught_exception()) throw;};
196 +-#else
197 +- endStream();
198 +-#endif
199 ++ endStream();
200 + }
201 +
202 + #ifdef HAVE_GETADDRINFO
203 +--- a/src/ssl.cpp
204 ++++ b/src/ssl.cpp
205 +@@ -441,12 +441,7 @@
206 +
207 + SSLStream::~SSLStream()
208 + {
209 +-#ifdef CCXX_EXCEPTIONS
210 +- try { endStream(); }
211 +- catch( ...) { if ( ! std::uncaught_exception()) throw;};
212 +-#else
213 + endStream();
214 +-#endif
215 + }
216 +
217 + #ifdef CCXX_NAMESPACES
218
219 diff --git a/dev-cpp/commoncpp2/files/1.8.1-libgcrypt.patch b/dev-cpp/commoncpp2/files/1.8.1-libgcrypt.patch
220 index d83ff91..08e24e1 100644
221 --- a/dev-cpp/commoncpp2/files/1.8.1-libgcrypt.patch
222 +++ b/dev-cpp/commoncpp2/files/1.8.1-libgcrypt.patch
223 @@ -1,5 +1,5 @@
224 ---- src/ssl.cpp.orig 2010-11-01 03:42:51.000000000 +0300
225 -+++ src/ssl.cpp 2015-11-25 15:32:23.923057317 +0300
226 +--- a/src/ssl.cpp
227 ++++ b/src/ssl.cpp
228 @@ -99,35 +99,7 @@
229 return 0;
230 }
231
232 diff --git a/dev-cpp/commoncpp2/files/1.8.1-parallel-build.patch b/dev-cpp/commoncpp2/files/1.8.1-parallel-build.patch
233 index f131ee1..149677c 100644
234 --- a/dev-cpp/commoncpp2/files/1.8.1-parallel-build.patch
235 +++ b/dev-cpp/commoncpp2/files/1.8.1-parallel-build.patch
236 @@ -1,5 +1,5 @@
237 ---- src/Makefile.am
238 -+++ src/Makefile.am
239 +--- a/src/Makefile.am
240 ++++ b/src/Makefile.am
241 @@ -47,6 +47,7 @@
242
243 if EXTRAS