diff options
author | David Seifert <soap@gentoo.org> | 2016-09-27 22:14:34 +0200 |
---|---|---|
committer | David Seifert <soap@gentoo.org> | 2016-09-27 23:28:25 +0200 |
commit | 9278c4bd82488448165e6d075cc1a4230769c427 (patch) | |
tree | 02e9d6e23670c9984d19482472e3736c4fee0fbd /sci-libs/libdap | |
parent | net-im/slack-bin: new package. (diff) | |
download | gentoo-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/Manifest | 1 | ||||
-rw-r--r-- | sci-libs/libdap/files/libdap-3.18.1-disable-broken-tests.patch | 18 | ||||
-rw-r--r-- | sci-libs/libdap/files/libdap-3.18.1-disable-cache-test.patch | 22 | ||||
-rw-r--r-- | sci-libs/libdap/files/libdap-3.18.1-disable-dmr-tests.patch | 31 | ||||
-rw-r--r-- | sci-libs/libdap/files/libdap-3.18.1-disable-net-tests.patch | 33 | ||||
-rw-r--r-- | sci-libs/libdap/files/libdap-3.18.1-fix-buildsystem.patch | 20 | ||||
-rw-r--r-- | sci-libs/libdap/files/libdap-3.18.1-fix-c++14.patch | 100 | ||||
-rw-r--r-- | sci-libs/libdap/libdap-3.18.1.ebuild | 52 |
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 +} |