summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Seifert <soap@gentoo.org>2016-09-27 22:14:34 +0200
committerDavid Seifert <soap@gentoo.org>2016-09-27 23:28:25 +0200
commit9278c4bd82488448165e6d075cc1a4230769c427 (patch)
tree02e9d6e23670c9984d19482472e3736c4fee0fbd /sci-libs/libdap
parentnet-im/slack-bin: new package. (diff)
downloadgentoo-9278c4bd82488448165e6d075cc1a4230769c427.tar.gz
gentoo-9278c4bd82488448165e6d075cc1a4230769c427.tar.bz2
gentoo-9278c4bd82488448165e6d075cc1a4230769c427.zip
sci-libs/libdap: Version bump to 3.18.1
Gentoo-bug: 594374 * Make code C++11 compliant (change of noexcept default in C++11) * Import patches from Debian, make testsuite pass * Add proper USE="static-libs" handling with econf back into src_configure() phase * Remove installation of testsuite headers and convenience library * Delete .la files unconditionally * Add missing DEPENDs Package-Manager: portage-2.3.1
Diffstat (limited to 'sci-libs/libdap')
-rw-r--r--sci-libs/libdap/Manifest1
-rw-r--r--sci-libs/libdap/files/libdap-3.18.1-disable-broken-tests.patch18
-rw-r--r--sci-libs/libdap/files/libdap-3.18.1-disable-cache-test.patch22
-rw-r--r--sci-libs/libdap/files/libdap-3.18.1-disable-dmr-tests.patch31
-rw-r--r--sci-libs/libdap/files/libdap-3.18.1-disable-net-tests.patch33
-rw-r--r--sci-libs/libdap/files/libdap-3.18.1-fix-buildsystem.patch20
-rw-r--r--sci-libs/libdap/files/libdap-3.18.1-fix-c++14.patch100
-rw-r--r--sci-libs/libdap/libdap-3.18.1.ebuild52
8 files changed, 277 insertions, 0 deletions
diff --git a/sci-libs/libdap/Manifest b/sci-libs/libdap/Manifest
index ccada3be5a57..87b3775cbf71 100644
--- a/sci-libs/libdap/Manifest
+++ b/sci-libs/libdap/Manifest
@@ -1,2 +1,3 @@
DIST libdap-3.11.3.tar.gz 1514429 SHA256 1fe14594960c1c24842ea9c3a4032cfce70b7082bbab17369b43c9a134ddac97 SHA512 acdb54e135a153107460cad2310176b9d4a3f9b7c142eca3456ba9331f551d1855f7e6d4b7fdce6586dd266e54e23b795f903499f349d26481ca1d9abb5f52a0 WHIRLPOOL f67a56c64937610047de2cf2ea362193506fbd474aa0f1aa38a88e3c49e3e6fb3a5d8969feddc34c7560afa0b5c9e1304b5ced46ce3d37e9333094a2da289db0
DIST libdap-3.17.0.tar.gz 2269838 SHA256 7c5c65535f8a6aa20f3cdbe2d552140b8f20de007a8e005db437d7361739fb6d SHA512 ec8101f8b3e5b734ae487928d62845ae46e4770af92b95b3503b0da57a6bb1f796fd7617fe33da047f92b1045d2f2db4a21c7cf022b480be8aafd7bba451854e WHIRLPOOL 24fc31306eb99af2e79d55e792fe447fc99fdd26652f3456a6ec19b00cde102b6300905f128cae93dcc35aa037b7070ce1242757e373079911dd0f3cb9b883f4
+DIST libdap-3.18.1.tar.gz 2209343 SHA256 a755c472d7c9e54bc3aa6c92a847a69466fbc6cdc56ee912f411802a725d57a4 SHA512 a1d06bbbad654718bbf9980dc0943935089c09772678f6457d4de8a9d37f1ce33c0e1cab4c5eefec6f9e159028b194d6e3a6021597276b233eda52603ae8dd38 WHIRLPOOL 74eb65be375bd81e5d6db9fb93bdd219add79c12fea35eed98445df38f6dc212fc33cc51900ac93657166794b0700ff1be17fd7f41379733de19ad7480f889f0
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
new file mode 100644
index 000000000000..09c33e6f381a
--- /dev/null
+++ b/sci-libs/libdap/files/libdap-3.18.1-disable-broken-tests.patch
@@ -0,0 +1,18 @@
+Description: D4FilterClauseTest breaks on arm*, powerpc, s390x.
+Author: Alastair McKinstry <mckinstry@debian.org>
+Last-Updated: 2016-08-31
+Forwarded: no
+
+Index: libdap-3.18.0/unit-tests/Makefile.am
+===================================================================
+--- libdap-3.18.0.orig/unit-tests/Makefile.am
++++ libdap-3.18.0/unit-tests/Makefile.am
+@@ -74,7 +74,7 @@ UNIT_TESTS = marshT arrayT attrTableT st
+ if DAP4_DEFINED
+ UNIT_TESTS += D4MarshallerTest D4UnMarshallerTest D4DimensionsTest \
+ D4EnumDefsTest D4GroupTest D4ParserSax2Test D4AttributesTest D4EnumTest \
+- chunked_iostream_test D4AsyncDocTest DMRTest D4FilterClauseTest \
++ chunked_iostream_test D4AsyncDocTest DMRTest \
+ D4SequenceTest
+ endif
+
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
new file mode 100644
index 000000000000..6ce7ae0c4f6d
--- /dev/null
+++ b/sci-libs/libdap/files/libdap-3.18.1-disable-cache-test.patch
@@ -0,0 +1,22 @@
+Author: Alastair McKinstry <mckinstry@debian.org>
+Description: Disable test as website appears to be down
+Forwarded: no
+Last-Updated: 2015-10-20
+
+Index: libdap-3.18.0/unit-tests/Makefile.am
+===================================================================
+--- libdap-3.18.0.orig/unit-tests/Makefile.am
++++ libdap-3.18.0/unit-tests/Makefile.am
+@@ -67,9 +67,9 @@ D4-xml.tar.gz: D4-xml/DMR_*[0-9].xml
+ if CPPUNIT
+ UNIT_TESTS = marshT arrayT attrTableT structT sequenceT ddsT dasT \
+ RegexTest ArrayTest AttrTableTest ByteTest MIMEUtilTest ancT DASTest \
+- DDSTest DDXParserTest generalUtilTest HTTPConnectTest parserUtilTest \
+- RCReaderTest SequenceTest SignalHandlerTest MarshallerTest \
+- HTTPCacheTest ServerFunctionsListUnitTest
++ DDSTest DDXParserTest generalUtilTest parserUtilTest \
++ SequenceTest SignalHandlerTest MarshallerTest \
++ ServerFunctionsListUnitTest
+
+ if DAP4_DEFINED
+ UNIT_TESTS += D4MarshallerTest D4UnMarshallerTest D4DimensionsTest \
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
new file mode 100644
index 000000000000..d4691f59518f
--- /dev/null
+++ b/sci-libs/libdap/files/libdap-3.18.1-disable-dmr-tests.patch
@@ -0,0 +1,31 @@
+Author: Alastair McKinstry <mckinstry@debian.org>
+Description: Disable DMR tests which break on big-endian archs at the moment
+Last-Updated: 2015-11-08
+Forwarded: no
+
+Index: libdap-3.18.0/tests/Makefile.am
+===================================================================
+--- libdap-3.18.0.orig/tests/Makefile.am
++++ libdap-3.18.0/tests/Makefile.am
+@@ -31,7 +31,7 @@ endif
+ # TESTS = DASTest DDSTest EXPRTest DMRTest getdapTest
+
+ check_SCRIPTS = $(DASTESTSUITE) $(DDSTESTSUITE) $(EXPRTESTSUITE) \
+- $(DMRTESTSUITE) $(GETDAPTESTSUITE)
++ $(GETDAPTESTSUITE)
+
+ # Build the test drivers. The drivers all use the
+ # subclassed types in Test*.cc and the TestTypesFactory.
+@@ -107,11 +107,10 @@ DMRTESTSUITE = $(srcdir)/DMRTest
+ GETDAPTESTSUITE = $(srcdir)/getdapTest
+
+ check-local: atconfig atlocal $(DASTESTSUITE) $(DDSTESTSUITE) \
+-$(EXPRTESTSUITE) $(DMRTESTSUITE) $(GETDAPTESTSUITE)
++$(EXPRTESTSUITE) $(GETDAPTESTSUITE)
+ $(SHELL) '$(DASTESTSUITE)' $(TESTSUITEFLAGS)
+ $(SHELL) '$(DDSTESTSUITE)' $(TESTSUITEFLAGS)
+ $(SHELL) '$(EXPRTESTSUITE)' $(TESTSUITEFLAGS)
+- $(SHELL) '$(DMRTESTSUITE)' $(TESTSUITEFLAGS)
+ $(SHELL) '$(GETDAPTESTSUITE)' $(TESTSUITEFLAGS)
+
+ # Make sure there are no spaces after the DASTESTSUITE names. jhrg 3/16/15
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
new file mode 100644
index 000000000000..7c42ec1199c4
--- /dev/null
+++ b/sci-libs/libdap/files/libdap-3.18.1-disable-net-tests.patch
@@ -0,0 +1,33 @@
+Author: Alastair McKinstry <mckinstry@debian.org>
+Description: Disable network tests, as network not available on
+ most build systems
+Last-Updated: 2016-02-06
+Forwarded: not-needed
+
+Index: libdap-3.18.0/tests/Makefile.am
+===================================================================
+--- libdap-3.18.0.orig/tests/Makefile.am
++++ libdap-3.18.0/tests/Makefile.am
+@@ -30,8 +30,7 @@ endif
+
+ # TESTS = DASTest DDSTest EXPRTest DMRTest getdapTest
+
+-check_SCRIPTS = $(DASTESTSUITE) $(DDSTESTSUITE) $(EXPRTESTSUITE) \
+- $(GETDAPTESTSUITE)
++check_SCRIPTS = $(DASTESTSUITE) $(DDSTESTSUITE) $(EXPRTESTSUITE)
+
+ # Build the test drivers. The drivers all use the
+ # subclassed types in Test*.cc and the TestTypesFactory.
+@@ -107,11 +106,10 @@ DMRTESTSUITE = $(srcdir)/DMRTest
+ GETDAPTESTSUITE = $(srcdir)/getdapTest
+
+ check-local: atconfig atlocal $(DASTESTSUITE) $(DDSTESTSUITE) \
+-$(EXPRTESTSUITE) $(GETDAPTESTSUITE)
++$(EXPRTESTSUITE)
+ $(SHELL) '$(DASTESTSUITE)' $(TESTSUITEFLAGS)
+ $(SHELL) '$(DDSTESTSUITE)' $(TESTSUITEFLAGS)
+ $(SHELL) '$(EXPRTESTSUITE)' $(TESTSUITEFLAGS)
+- $(SHELL) '$(GETDAPTESTSUITE)' $(TESTSUITEFLAGS)
+
+ # Make sure there are no spaces after the DASTESTSUITE names. jhrg 3/16/15
+ # Delete the scripts here and not using CLEANFILES because this target is
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
new file mode 100644
index 000000000000..f36fdceb1fd0
--- /dev/null
+++ b/sci-libs/libdap/files/libdap-3.18.1-fix-buildsystem.patch
@@ -0,0 +1,20 @@
+Do not install headers and static library required only for test suite.
+
+--- a/tests/Makefile.am
++++ b/tests/Makefile.am
+@@ -36,13 +36,13 @@
+ # Build the test drivers. The drivers all use the
+ # subclassed types in Test*.cc and the TestTypesFactory.
+
+-lib_LIBRARIES = libtest-types.a
++noinst_LIBRARIES = libtest-types.a
+
+ libtest_types_a_SOURCES = $(TESTSRCS) $(TEST_HDR)
+ libtest_types_a_CXXFLAGS = -fPIC
+
+ testheadersdir = $(pkgincludedir)/test
+-testheaders_HEADERS = $(TEST_HDR)
++noinst_testheaders = $(TEST_HDR)
+
+ das_test_SOURCES = das-test.cc
+ das_test_LDADD = libtest-types.a ../libdapserver.la ../libdap.la
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
new file mode 100644
index 000000000000..6b74fa10a240
--- /dev/null
+++ b/sci-libs/libdap/files/libdap-3.18.1-fix-c++14.patch
@@ -0,0 +1,100 @@
+C++11 changed destructor semantics to be noexcept(true)
+by default, leading to potentially changed semantics.
+
+--- a/HTTPResponse.h
++++ b/HTTPResponse.h
+@@ -115,6 +115,9 @@
+ temp_file and headers are deleted. If the tmp file name is "", it is
+ not deleted. */
+ virtual ~HTTPResponse()
++#if __cplusplus >= 201103L
++ noexcept(false)
++#endif
+ {
+ DBG(cerr << "Freeing HTTPConnect resources (" + d_file + ")... ");
+
+--- a/MarshallerThread.cc
++++ b/MarshallerThread.cc
+@@ -106,6 +106,9 @@
+ * Unlock the mutex
+ */
+ Locker::~Locker()
++#if __cplusplus >= 201103L
++ noexcept(false)
++#endif
+ {
+ DBG(cerr << "Unlocking the mutex! (" << pthread_self() << ")" << endl);
+
+@@ -140,6 +143,9 @@
+ }
+
+ ChildLocker::~ChildLocker()
++#if __cplusplus >= 201103L
++ noexcept(false)
++#endif
+ {
+ DBG(cerr << "Unlocking the mutex! (" << pthread_self() << ")" << endl);
+
+@@ -164,6 +170,9 @@
+ }
+
+ MarshallerThread::~MarshallerThread()
++#if __cplusplus >= 201103L
++ noexcept(false)
++#endif
+ {
+ int status = pthread_mutex_lock(&d_out_mutex);
+ if (status != 0) throw InternalErr(__FILE__, __LINE__, "Could not lock m_mutex");
+--- a/MarshallerThread.h
++++ b/MarshallerThread.h
+@@ -52,7 +52,11 @@
+ class Locker {
+ public:
+ Locker(pthread_mutex_t &lock, pthread_cond_t &cond, int &count);
+- virtual ~Locker();
++ virtual ~Locker()
++#if __cplusplus >= 201103L
++ noexcept(false)
++#endif
++ ;
+
+ private:
+ pthread_mutex_t& m_mutex;
+@@ -74,7 +78,11 @@
+ class ChildLocker {
+ public:
+ ChildLocker(pthread_mutex_t &lock, pthread_cond_t &cond, int &count);
+- virtual ~ChildLocker();
++ virtual ~ChildLocker()
++#if __cplusplus >= 201103L
++ noexcept(false)
++#endif
++ ;
+
+ private:
+ pthread_mutex_t& m_mutex;
+@@ -144,7 +152,11 @@
+
+ public:
+ MarshallerThread();
+- virtual ~MarshallerThread();
++ virtual ~MarshallerThread()
++#if __cplusplus >= 201103L
++ noexcept(false)
++#endif
++ ;
+
+ pthread_mutex_t &get_mutex() { return d_out_mutex; }
+ pthread_cond_t &get_cond() { return d_out_cond; }
+--- a/Response.h
++++ b/Response.h
+@@ -93,6 +93,9 @@
+
+ /** Close the stream. */
+ virtual ~Response()
++#if __cplusplus >= 201103L
++ noexcept(false)
++#endif
+ {
+ if (d_stream)
+ fclose(d_stream);
diff --git a/sci-libs/libdap/libdap-3.18.1.ebuild b/sci-libs/libdap/libdap-3.18.1.ebuild
new file mode 100644
index 000000000000..8bd51887228f
--- /dev/null
+++ b/sci-libs/libdap/libdap-3.18.1.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+inherit autotools
+
+DESCRIPTION="Implementation of a C++ SDK for DAP 2.0 and 3.2"
+HOMEPAGE="http://opendap.org/"
+SRC_URI="http://www.opendap.org/pub/source/${P}.tar.gz"
+
+LICENSE="|| ( LGPL-2.1 URI )"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="static-libs test"
+
+RDEPEND="
+ dev-libs/libxml2:2
+ net-misc/curl
+ sys-libs/zlib"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ sys-devel/flex
+ test? ( dev-util/cppunit )"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-3.18.1-fix-buildsystem.patch"
+ "${FILESDIR}/${PN}-3.18.1-fix-c++14.patch"
+ "${FILESDIR}/${PN}-3.18.1-disable-cache-test.patch"
+ "${FILESDIR}/${PN}-3.18.1-disable-dmr-tests.patch"
+ "${FILESDIR}/${PN}-3.18.1-disable-net-tests.patch"
+ "${FILESDIR}/${PN}-3.18.1-disable-broken-tests.patch"
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --enable-shared \
+ $(use_enable static-libs static)
+}
+
+src_install() {
+ default
+
+ # package provides .pc files
+ find "${D}" -name '*.la' -delete || die
+}