Gentoo Archives: gentoo-commits

From: David Seifert <soap@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sci-libs/libdap/files/, sci-libs/libdap/
Date: Tue, 27 Sep 2016 21:28:51
Message-Id: 1475011705.9278c4bd82488448165e6d075cc1a4230769c427.soap@gentoo
1 commit: 9278c4bd82488448165e6d075cc1a4230769c427
2 Author: David Seifert <soap <AT> gentoo <DOT> org>
3 AuthorDate: Tue Sep 27 20:14:34 2016 +0000
4 Commit: David Seifert <soap <AT> gentoo <DOT> org>
5 CommitDate: Tue Sep 27 21:28:25 2016 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9278c4bd
7
8 sci-libs/libdap: Version bump to 3.18.1
9
10 Gentoo-bug: 594374
11 * Make code C++11 compliant
12 (change of noexcept default in C++11)
13 * Import patches from Debian, make testsuite pass
14 * Add proper USE="static-libs" handling with econf
15 back into src_configure() phase
16 * Remove installation of testsuite headers and
17 convenience library
18 * Delete .la files unconditionally
19 * Add missing DEPENDs
20
21 Package-Manager: portage-2.3.1
22
23 sci-libs/libdap/Manifest | 1 +
24 .../files/libdap-3.18.1-disable-broken-tests.patch | 18 ++++
25 .../files/libdap-3.18.1-disable-cache-test.patch | 22 +++++
26 .../files/libdap-3.18.1-disable-dmr-tests.patch | 31 +++++++
27 .../files/libdap-3.18.1-disable-net-tests.patch | 33 +++++++
28 .../files/libdap-3.18.1-fix-buildsystem.patch | 20 +++++
29 .../libdap/files/libdap-3.18.1-fix-c++14.patch | 100 +++++++++++++++++++++
30 sci-libs/libdap/libdap-3.18.1.ebuild | 52 +++++++++++
31 8 files changed, 277 insertions(+)
32
33 diff --git a/sci-libs/libdap/Manifest b/sci-libs/libdap/Manifest
34 index ccada3b..87b3775 100644
35 --- a/sci-libs/libdap/Manifest
36 +++ b/sci-libs/libdap/Manifest
37 @@ -1,2 +1,3 @@
38 DIST libdap-3.11.3.tar.gz 1514429 SHA256 1fe14594960c1c24842ea9c3a4032cfce70b7082bbab17369b43c9a134ddac97 SHA512 acdb54e135a153107460cad2310176b9d4a3f9b7c142eca3456ba9331f551d1855f7e6d4b7fdce6586dd266e54e23b795f903499f349d26481ca1d9abb5f52a0 WHIRLPOOL f67a56c64937610047de2cf2ea362193506fbd474aa0f1aa38a88e3c49e3e6fb3a5d8969feddc34c7560afa0b5c9e1304b5ced46ce3d37e9333094a2da289db0
39 DIST libdap-3.17.0.tar.gz 2269838 SHA256 7c5c65535f8a6aa20f3cdbe2d552140b8f20de007a8e005db437d7361739fb6d SHA512 ec8101f8b3e5b734ae487928d62845ae46e4770af92b95b3503b0da57a6bb1f796fd7617fe33da047f92b1045d2f2db4a21c7cf022b480be8aafd7bba451854e WHIRLPOOL 24fc31306eb99af2e79d55e792fe447fc99fdd26652f3456a6ec19b00cde102b6300905f128cae93dcc35aa037b7070ce1242757e373079911dd0f3cb9b883f4
40 +DIST libdap-3.18.1.tar.gz 2209343 SHA256 a755c472d7c9e54bc3aa6c92a847a69466fbc6cdc56ee912f411802a725d57a4 SHA512 a1d06bbbad654718bbf9980dc0943935089c09772678f6457d4de8a9d37f1ce33c0e1cab4c5eefec6f9e159028b194d6e3a6021597276b233eda52603ae8dd38 WHIRLPOOL 74eb65be375bd81e5d6db9fb93bdd219add79c12fea35eed98445df38f6dc212fc33cc51900ac93657166794b0700ff1be17fd7f41379733de19ad7480f889f0
41
42 diff --git a/sci-libs/libdap/files/libdap-3.18.1-disable-broken-tests.patch b/sci-libs/libdap/files/libdap-3.18.1-disable-broken-tests.patch
43 new file mode 100644
44 index 00000000..09c33e6
45 --- /dev/null
46 +++ b/sci-libs/libdap/files/libdap-3.18.1-disable-broken-tests.patch
47 @@ -0,0 +1,18 @@
48 +Description: D4FilterClauseTest breaks on arm*, powerpc, s390x.
49 +Author: Alastair McKinstry <mckinstry@××××××.org>
50 +Last-Updated: 2016-08-31
51 +Forwarded: no
52 +
53 +Index: libdap-3.18.0/unit-tests/Makefile.am
54 +===================================================================
55 +--- libdap-3.18.0.orig/unit-tests/Makefile.am
56 ++++ libdap-3.18.0/unit-tests/Makefile.am
57 +@@ -74,7 +74,7 @@ UNIT_TESTS = marshT arrayT attrTableT st
58 + if DAP4_DEFINED
59 + UNIT_TESTS += D4MarshallerTest D4UnMarshallerTest D4DimensionsTest \
60 + D4EnumDefsTest D4GroupTest D4ParserSax2Test D4AttributesTest D4EnumTest \
61 +- chunked_iostream_test D4AsyncDocTest DMRTest D4FilterClauseTest \
62 ++ chunked_iostream_test D4AsyncDocTest DMRTest \
63 + D4SequenceTest
64 + endif
65 +
66
67 diff --git a/sci-libs/libdap/files/libdap-3.18.1-disable-cache-test.patch b/sci-libs/libdap/files/libdap-3.18.1-disable-cache-test.patch
68 new file mode 100644
69 index 00000000..6ce7ae0
70 --- /dev/null
71 +++ b/sci-libs/libdap/files/libdap-3.18.1-disable-cache-test.patch
72 @@ -0,0 +1,22 @@
73 +Author: Alastair McKinstry <mckinstry@××××××.org>
74 +Description: Disable test as website appears to be down
75 +Forwarded: no
76 +Last-Updated: 2015-10-20
77 +
78 +Index: libdap-3.18.0/unit-tests/Makefile.am
79 +===================================================================
80 +--- libdap-3.18.0.orig/unit-tests/Makefile.am
81 ++++ libdap-3.18.0/unit-tests/Makefile.am
82 +@@ -67,9 +67,9 @@ D4-xml.tar.gz: D4-xml/DMR_*[0-9].xml
83 + if CPPUNIT
84 + UNIT_TESTS = marshT arrayT attrTableT structT sequenceT ddsT dasT \
85 + RegexTest ArrayTest AttrTableTest ByteTest MIMEUtilTest ancT DASTest \
86 +- DDSTest DDXParserTest generalUtilTest HTTPConnectTest parserUtilTest \
87 +- RCReaderTest SequenceTest SignalHandlerTest MarshallerTest \
88 +- HTTPCacheTest ServerFunctionsListUnitTest
89 ++ DDSTest DDXParserTest generalUtilTest parserUtilTest \
90 ++ SequenceTest SignalHandlerTest MarshallerTest \
91 ++ ServerFunctionsListUnitTest
92 +
93 + if DAP4_DEFINED
94 + UNIT_TESTS += D4MarshallerTest D4UnMarshallerTest D4DimensionsTest \
95
96 diff --git a/sci-libs/libdap/files/libdap-3.18.1-disable-dmr-tests.patch b/sci-libs/libdap/files/libdap-3.18.1-disable-dmr-tests.patch
97 new file mode 100644
98 index 00000000..d4691f5
99 --- /dev/null
100 +++ b/sci-libs/libdap/files/libdap-3.18.1-disable-dmr-tests.patch
101 @@ -0,0 +1,31 @@
102 +Author: Alastair McKinstry <mckinstry@××××××.org>
103 +Description: Disable DMR tests which break on big-endian archs at the moment
104 +Last-Updated: 2015-11-08
105 +Forwarded: no
106 +
107 +Index: libdap-3.18.0/tests/Makefile.am
108 +===================================================================
109 +--- libdap-3.18.0.orig/tests/Makefile.am
110 ++++ libdap-3.18.0/tests/Makefile.am
111 +@@ -31,7 +31,7 @@ endif
112 + # TESTS = DASTest DDSTest EXPRTest DMRTest getdapTest
113 +
114 + check_SCRIPTS = $(DASTESTSUITE) $(DDSTESTSUITE) $(EXPRTESTSUITE) \
115 +- $(DMRTESTSUITE) $(GETDAPTESTSUITE)
116 ++ $(GETDAPTESTSUITE)
117 +
118 + # Build the test drivers. The drivers all use the
119 + # subclassed types in Test*.cc and the TestTypesFactory.
120 +@@ -107,11 +107,10 @@ DMRTESTSUITE = $(srcdir)/DMRTest
121 + GETDAPTESTSUITE = $(srcdir)/getdapTest
122 +
123 + check-local: atconfig atlocal $(DASTESTSUITE) $(DDSTESTSUITE) \
124 +-$(EXPRTESTSUITE) $(DMRTESTSUITE) $(GETDAPTESTSUITE)
125 ++$(EXPRTESTSUITE) $(GETDAPTESTSUITE)
126 + $(SHELL) '$(DASTESTSUITE)' $(TESTSUITEFLAGS)
127 + $(SHELL) '$(DDSTESTSUITE)' $(TESTSUITEFLAGS)
128 + $(SHELL) '$(EXPRTESTSUITE)' $(TESTSUITEFLAGS)
129 +- $(SHELL) '$(DMRTESTSUITE)' $(TESTSUITEFLAGS)
130 + $(SHELL) '$(GETDAPTESTSUITE)' $(TESTSUITEFLAGS)
131 +
132 + # Make sure there are no spaces after the DASTESTSUITE names. jhrg 3/16/15
133
134 diff --git a/sci-libs/libdap/files/libdap-3.18.1-disable-net-tests.patch b/sci-libs/libdap/files/libdap-3.18.1-disable-net-tests.patch
135 new file mode 100644
136 index 00000000..7c42ec1
137 --- /dev/null
138 +++ b/sci-libs/libdap/files/libdap-3.18.1-disable-net-tests.patch
139 @@ -0,0 +1,33 @@
140 +Author: Alastair McKinstry <mckinstry@××××××.org>
141 +Description: Disable network tests, as network not available on
142 + most build systems
143 +Last-Updated: 2016-02-06
144 +Forwarded: not-needed
145 +
146 +Index: libdap-3.18.0/tests/Makefile.am
147 +===================================================================
148 +--- libdap-3.18.0.orig/tests/Makefile.am
149 ++++ libdap-3.18.0/tests/Makefile.am
150 +@@ -30,8 +30,7 @@ endif
151 +
152 + # TESTS = DASTest DDSTest EXPRTest DMRTest getdapTest
153 +
154 +-check_SCRIPTS = $(DASTESTSUITE) $(DDSTESTSUITE) $(EXPRTESTSUITE) \
155 +- $(GETDAPTESTSUITE)
156 ++check_SCRIPTS = $(DASTESTSUITE) $(DDSTESTSUITE) $(EXPRTESTSUITE)
157 +
158 + # Build the test drivers. The drivers all use the
159 + # subclassed types in Test*.cc and the TestTypesFactory.
160 +@@ -107,11 +106,10 @@ DMRTESTSUITE = $(srcdir)/DMRTest
161 + GETDAPTESTSUITE = $(srcdir)/getdapTest
162 +
163 + check-local: atconfig atlocal $(DASTESTSUITE) $(DDSTESTSUITE) \
164 +-$(EXPRTESTSUITE) $(GETDAPTESTSUITE)
165 ++$(EXPRTESTSUITE)
166 + $(SHELL) '$(DASTESTSUITE)' $(TESTSUITEFLAGS)
167 + $(SHELL) '$(DDSTESTSUITE)' $(TESTSUITEFLAGS)
168 + $(SHELL) '$(EXPRTESTSUITE)' $(TESTSUITEFLAGS)
169 +- $(SHELL) '$(GETDAPTESTSUITE)' $(TESTSUITEFLAGS)
170 +
171 + # Make sure there are no spaces after the DASTESTSUITE names. jhrg 3/16/15
172 + # Delete the scripts here and not using CLEANFILES because this target is
173
174 diff --git a/sci-libs/libdap/files/libdap-3.18.1-fix-buildsystem.patch b/sci-libs/libdap/files/libdap-3.18.1-fix-buildsystem.patch
175 new file mode 100644
176 index 00000000..f36fdce
177 --- /dev/null
178 +++ b/sci-libs/libdap/files/libdap-3.18.1-fix-buildsystem.patch
179 @@ -0,0 +1,20 @@
180 +Do not install headers and static library required only for test suite.
181 +
182 +--- a/tests/Makefile.am
183 ++++ b/tests/Makefile.am
184 +@@ -36,13 +36,13 @@
185 + # Build the test drivers. The drivers all use the
186 + # subclassed types in Test*.cc and the TestTypesFactory.
187 +
188 +-lib_LIBRARIES = libtest-types.a
189 ++noinst_LIBRARIES = libtest-types.a
190 +
191 + libtest_types_a_SOURCES = $(TESTSRCS) $(TEST_HDR)
192 + libtest_types_a_CXXFLAGS = -fPIC
193 +
194 + testheadersdir = $(pkgincludedir)/test
195 +-testheaders_HEADERS = $(TEST_HDR)
196 ++noinst_testheaders = $(TEST_HDR)
197 +
198 + das_test_SOURCES = das-test.cc
199 + das_test_LDADD = libtest-types.a ../libdapserver.la ../libdap.la
200
201 diff --git a/sci-libs/libdap/files/libdap-3.18.1-fix-c++14.patch b/sci-libs/libdap/files/libdap-3.18.1-fix-c++14.patch
202 new file mode 100644
203 index 00000000..6b74fa1
204 --- /dev/null
205 +++ b/sci-libs/libdap/files/libdap-3.18.1-fix-c++14.patch
206 @@ -0,0 +1,100 @@
207 +C++11 changed destructor semantics to be noexcept(true)
208 +by default, leading to potentially changed semantics.
209 +
210 +--- a/HTTPResponse.h
211 ++++ b/HTTPResponse.h
212 +@@ -115,6 +115,9 @@
213 + temp_file and headers are deleted. If the tmp file name is "", it is
214 + not deleted. */
215 + virtual ~HTTPResponse()
216 ++#if __cplusplus >= 201103L
217 ++ noexcept(false)
218 ++#endif
219 + {
220 + DBG(cerr << "Freeing HTTPConnect resources (" + d_file + ")... ");
221 +
222 +--- a/MarshallerThread.cc
223 ++++ b/MarshallerThread.cc
224 +@@ -106,6 +106,9 @@
225 + * Unlock the mutex
226 + */
227 + Locker::~Locker()
228 ++#if __cplusplus >= 201103L
229 ++ noexcept(false)
230 ++#endif
231 + {
232 + DBG(cerr << "Unlocking the mutex! (" << pthread_self() << ")" << endl);
233 +
234 +@@ -140,6 +143,9 @@
235 + }
236 +
237 + ChildLocker::~ChildLocker()
238 ++#if __cplusplus >= 201103L
239 ++ noexcept(false)
240 ++#endif
241 + {
242 + DBG(cerr << "Unlocking the mutex! (" << pthread_self() << ")" << endl);
243 +
244 +@@ -164,6 +170,9 @@
245 + }
246 +
247 + MarshallerThread::~MarshallerThread()
248 ++#if __cplusplus >= 201103L
249 ++ noexcept(false)
250 ++#endif
251 + {
252 + int status = pthread_mutex_lock(&d_out_mutex);
253 + if (status != 0) throw InternalErr(__FILE__, __LINE__, "Could not lock m_mutex");
254 +--- a/MarshallerThread.h
255 ++++ b/MarshallerThread.h
256 +@@ -52,7 +52,11 @@
257 + class Locker {
258 + public:
259 + Locker(pthread_mutex_t &lock, pthread_cond_t &cond, int &count);
260 +- virtual ~Locker();
261 ++ virtual ~Locker()
262 ++#if __cplusplus >= 201103L
263 ++ noexcept(false)
264 ++#endif
265 ++ ;
266 +
267 + private:
268 + pthread_mutex_t& m_mutex;
269 +@@ -74,7 +78,11 @@
270 + class ChildLocker {
271 + public:
272 + ChildLocker(pthread_mutex_t &lock, pthread_cond_t &cond, int &count);
273 +- virtual ~ChildLocker();
274 ++ virtual ~ChildLocker()
275 ++#if __cplusplus >= 201103L
276 ++ noexcept(false)
277 ++#endif
278 ++ ;
279 +
280 + private:
281 + pthread_mutex_t& m_mutex;
282 +@@ -144,7 +152,11 @@
283 +
284 + public:
285 + MarshallerThread();
286 +- virtual ~MarshallerThread();
287 ++ virtual ~MarshallerThread()
288 ++#if __cplusplus >= 201103L
289 ++ noexcept(false)
290 ++#endif
291 ++ ;
292 +
293 + pthread_mutex_t &get_mutex() { return d_out_mutex; }
294 + pthread_cond_t &get_cond() { return d_out_cond; }
295 +--- a/Response.h
296 ++++ b/Response.h
297 +@@ -93,6 +93,9 @@
298 +
299 + /** Close the stream. */
300 + virtual ~Response()
301 ++#if __cplusplus >= 201103L
302 ++ noexcept(false)
303 ++#endif
304 + {
305 + if (d_stream)
306 + fclose(d_stream);
307
308 diff --git a/sci-libs/libdap/libdap-3.18.1.ebuild b/sci-libs/libdap/libdap-3.18.1.ebuild
309 new file mode 100644
310 index 00000000..8bd5188
311 --- /dev/null
312 +++ b/sci-libs/libdap/libdap-3.18.1.ebuild
313 @@ -0,0 +1,52 @@
314 +# Copyright 1999-2016 Gentoo Foundation
315 +# Distributed under the terms of the GNU General Public License v2
316 +# $Id$
317 +
318 +EAPI=6
319 +
320 +inherit autotools
321 +
322 +DESCRIPTION="Implementation of a C++ SDK for DAP 2.0 and 3.2"
323 +HOMEPAGE="http://opendap.org/"
324 +SRC_URI="http://www.opendap.org/pub/source/${P}.tar.gz"
325 +
326 +LICENSE="|| ( LGPL-2.1 URI )"
327 +SLOT="0"
328 +KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
329 +IUSE="static-libs test"
330 +
331 +RDEPEND="
332 + dev-libs/libxml2:2
333 + net-misc/curl
334 + sys-libs/zlib"
335 +DEPEND="${RDEPEND}
336 + virtual/pkgconfig
337 + sys-devel/flex
338 + test? ( dev-util/cppunit )"
339 +
340 +PATCHES=(
341 + "${FILESDIR}/${PN}-3.18.1-fix-buildsystem.patch"
342 + "${FILESDIR}/${PN}-3.18.1-fix-c++14.patch"
343 + "${FILESDIR}/${PN}-3.18.1-disable-cache-test.patch"
344 + "${FILESDIR}/${PN}-3.18.1-disable-dmr-tests.patch"
345 + "${FILESDIR}/${PN}-3.18.1-disable-net-tests.patch"
346 + "${FILESDIR}/${PN}-3.18.1-disable-broken-tests.patch"
347 +)
348 +
349 +src_prepare() {
350 + default
351 + eautoreconf
352 +}
353 +
354 +src_configure() {
355 + econf \
356 + --enable-shared \
357 + $(use_enable static-libs static)
358 +}
359 +
360 +src_install() {
361 + default
362 +
363 + # package provides .pc files
364 + find "${D}" -name '*.la' -delete || die
365 +}