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 |
+} |