summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Seifert <soap@gentoo.org>2021-06-15 11:24:35 +0200
committerDavid Seifert <soap@gentoo.org>2021-06-15 11:24:35 +0200
commite92ca0aaccb92b4dc59645bdede1d3f3174afa82 (patch)
treec051c195f4aa702b17e076237dcf9ea0c4357473 /dev-cpp
parentsci-chemistry/gromacs: Needs cuda_profiler_api.h to build (diff)
downloadgentoo-e92ca0aaccb92b4dc59645bdede1d3f3174afa82.tar.gz
gentoo-e92ca0aaccb92b4dc59645bdede1d3f3174afa82.tar.bz2
gentoo-e92ca0aaccb92b4dc59645bdede1d3f3174afa82.zip
dev-cpp/commoncpp2: Fix for C++17
Closes: https://bugs.gentoo.org/787761 Package-Manager: Portage-3.0.20, Repoman-3.0.3 Signed-off-by: David Seifert <soap@gentoo.org>
Diffstat (limited to 'dev-cpp')
-rw-r--r--dev-cpp/commoncpp2/Manifest1
-rw-r--r--dev-cpp/commoncpp2/commoncpp2-1.8.1-r4.ebuild33
-rw-r--r--dev-cpp/commoncpp2/files/1.8.0-glibc212.patch12
-rw-r--r--dev-cpp/commoncpp2/files/1.8.1-autoconf-update.patch61
-rw-r--r--dev-cpp/commoncpp2/files/1.8.1-configure_detect_netfilter.patch14
-rw-r--r--dev-cpp/commoncpp2/files/1.8.1-fix-buffer-overflow.patch13
-rw-r--r--dev-cpp/commoncpp2/files/1.8.1-fix-c++14.patch52
-rw-r--r--dev-cpp/commoncpp2/files/1.8.1-fix-gcc9.patch28
-rw-r--r--dev-cpp/commoncpp2/files/1.8.1-gnutls-3.4.patch36
-rw-r--r--dev-cpp/commoncpp2/files/1.8.1-libgcrypt.patch48
-rw-r--r--dev-cpp/commoncpp2/files/1.8.1-parallel-build.patch11
11 files changed, 19 insertions, 290 deletions
diff --git a/dev-cpp/commoncpp2/Manifest b/dev-cpp/commoncpp2/Manifest
index 102921c445f7..8eff371544f6 100644
--- a/dev-cpp/commoncpp2/Manifest
+++ b/dev-cpp/commoncpp2/Manifest
@@ -1 +1,2 @@
+DIST commoncpp2-1.8.1-patches.txz 7028 BLAKE2B be1d3ba7a87d82b3eb29c766df7f2a67cba60640ec6c2162d48bdd7b5cbf2bdd7b88ce1bae8f34c1418fc239d1a90ef6fbaa1600cb39c514176de74afb36cb36 SHA512 bc511776b4330ea1700a4288f30e22e7be3b5d7d0a6dc66baa787bcdbf4321a9ebb8ab3ca5dd6531425988136bb26f6094af89997bb6a44cf9455b6bb85ef7f9
DIST commoncpp2-1.8.1.tar.gz 908678 BLAKE2B 93868286230b4b0507127627f0a1c24b4f340e4af50d7592774b57bfc7a8f1e31bacc0cee5d17b4237aac85be0265cf3aabd65708e988159daaac85b4145c398 SHA512 949823461d20429c2b0acfa22554a5a9dacc977e3ee097f34416f65d322df84fbdb27c644435c6c6caaed800347dfbe789cee7f19b39b306165c97b4f4012bfe
diff --git a/dev-cpp/commoncpp2/commoncpp2-1.8.1-r4.ebuild b/dev-cpp/commoncpp2/commoncpp2-1.8.1-r4.ebuild
index aaa9e49a4ed9..70410305ec27 100644
--- a/dev-cpp/commoncpp2/commoncpp2-1.8.1-r4.ebuild
+++ b/dev-cpp/commoncpp2/commoncpp2-1.8.1-r4.ebuild
@@ -7,7 +7,9 @@ inherit autotools
DESCRIPTION="C++ library offering portable support for system-related services"
HOMEPAGE="https://www.gnu.org/software/commoncpp/"
-SRC_URI="mirror://gnu/commoncpp/${P}.tar.gz"
+SRC_URI="
+ mirror://gnu/commoncpp/${P}.tar.gz
+ https://dev.gentoo.org/~soap/distfiles/${P}-patches.txz"
LICENSE="GPL-2"
SLOT="0"
@@ -25,19 +27,20 @@ RDEPEND="
dev-libs/openssl:0=
)
)"
-DEPEND="${RDEPEND}
- doc? ( >=app-doc/doxygen-1.3.6 )"
+DEPEND="${RDEPEND}"
+BDEPEND="doc? ( >=app-doc/doxygen-1.3.6 )"
PATCHES=(
- "${FILESDIR}/1.8.1-configure_detect_netfilter.patch"
- "${FILESDIR}/1.8.0-glibc212.patch"
- "${FILESDIR}/1.8.1-autoconf-update.patch"
- "${FILESDIR}/1.8.1-fix-buffer-overflow.patch"
- "${FILESDIR}/1.8.1-parallel-build.patch"
- "${FILESDIR}/1.8.1-libgcrypt.patch"
- "${FILESDIR}/1.8.1-fix-c++14.patch"
- "${FILESDIR}/1.8.1-gnutls-3.4.patch"
- "${FILESDIR}/1.8.1-fix-gcc9.patch" # bug 686012
+ "${WORKDIR}"/patches/1.8.1-configure_detect_netfilter.patch
+ "${WORKDIR}"/patches/1.8.1-glibc212.patch
+ "${WORKDIR}"/patches/1.8.1-autoconf-update.patch
+ "${WORKDIR}"/patches/1.8.1-fix-buffer-overflow.patch
+ "${WORKDIR}"/patches/1.8.1-parallel-build.patch
+ "${WORKDIR}"/patches/1.8.1-libgcrypt.patch
+ "${WORKDIR}"/patches/1.8.1-fix-c++14.patch
+ "${WORKDIR}"/patches/1.8.1-gnutls-3.4.patch
+ "${WORKDIR}"/patches/1.8.1-fix-gcc9.patch
+ "${WORKDIR}"/patches/1.8.1-c++17.patch
)
src_prepare() {
@@ -47,19 +50,19 @@ src_prepare() {
src_configure() {
econf \
+ --disable-static \
$(use_enable debug) \
$(use_with ipv6) \
$(use_with ssl $(usex gnutls gnutls openssl)) \
- $(use_enable static-libs static) \
$(use_with doc doxygen)
}
src_install() {
- use doc && local HTML_DOCS=( doc/html/. )
+ use doc && HTML_DOCS=( doc/html/. )
default
# package provides .pc files
- find "${D}" -name '*.la' -delete || die
+ find "${ED}" -name '*.la' -delete || die
dodoc COPYING.addendum
diff --git a/dev-cpp/commoncpp2/files/1.8.0-glibc212.patch b/dev-cpp/commoncpp2/files/1.8.0-glibc212.patch
deleted file mode 100644
index 5132554aea1c..000000000000
--- a/dev-cpp/commoncpp2/files/1.8.0-glibc212.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-http://bugs.gentoo.org/334135
-
---- a/src/applog.cpp
-+++ b/src/applog.cpp
-@@ -44,6 +44,7 @@
- #include <cstdio>
- #include <stdarg.h>
- #include <errno.h>
-+#include <sys/stat.h>
-
- // TODO sc: test if has to move up now that it is into commoncpp
- // NOTE: the order of inclusion is important do not move following include line
diff --git a/dev-cpp/commoncpp2/files/1.8.1-autoconf-update.patch b/dev-cpp/commoncpp2/files/1.8.1-autoconf-update.patch
deleted file mode 100644
index c64ba2f65fa9..000000000000
--- a/dev-cpp/commoncpp2/files/1.8.1-autoconf-update.patch
+++ /dev/null
@@ -1,61 +0,0 @@
---- a/configure.ac
-+++ b/configure.ac
-@@ -9,7 +9,8 @@
- # WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
- # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
--AC_INIT(src/thread.cpp)
-+AC_INIT
-+AC_CONFIG_SRCDIR([src/thread.cpp])
- AC_CONFIG_MACRO_DIR([m4])
- m4_pattern_allow(LT_VERSION)
-
-@@ -81,17 +82,17 @@
- AC_SUBST(ccincludedir)
-
- AC_CONFIG_AUX_DIR(autoconf)
--AC_CANONICAL_SYSTEM
-+AC_CANONICAL_TARGET
- AC_PROG_CPP
- AC_PROG_CC
- AC_PROG_CXXCPP
- AC_PROG_CXX
- OST_PROG_CC_POSIX
- NP_PROG_MSC
--AC_LIBTOOL_WIN32_DLL
--AM_PROG_LIBTOOL
-+
-+LT_INIT([win32-dll,disable-static])
- AM_INIT_AUTOMAKE(commoncpp2, [$VERSION])
--AM_CONFIG_HEADER(config.h)
-+AC_CONFIG_HEADERS([config.h])
-
- AC_C_RESTRICT
- AC_C_VOLATILE
-@@ -395,10 +396,11 @@
- #endif
-
- ])
--
-+AC_ARG_WITH([doxygen],
-+ AS_HELP_STRING([--without-doxygen], [Do not build documentation]))
- AC_PATH_PROG(DOXYGEN, doxygen, no)
- AC_SUBST(DOXYGEN)
--AM_CONDITIONAL(DOXY, test "$DOXYGEN" != "no")
-+AM_CONDITIONAL([DOXY], [test "x$with_doxygen" != "xno"])
-
- AM_CONDITIONAL(GETOPT_LONG, [test ! -z "$LIBGETOPTOBJS"])
-
-@@ -408,10 +410,11 @@
- AC_SUBST(LIB_VERSION)
- AC_SUBST(LIB_MAJOR)
-
--AC_OUTPUT([src/ccgnu2-config src/libccext2.pc src/libccgnu2.pc
-+AC_CONFIG_FILES([src/ccgnu2-config src/libccext2.pc src/libccgnu2.pc
- src/Makefile w32/Makefile w32/vs2008/Makefile w32/vs2008/ccext2.vcproj w32/vs2008/ccgnu2.vcproj w32/vs2008/common.sln m4/Makefile doc/Doxyfile
- doc/Makefile demo/Makefile inc/Makefile inc/cc++/Makefile Makefile
- commoncpp2.spec tests/Makefile commoncpp2.list w32/ccgnu2.dsp w32/ccext2.dsp w32/ccgnu2.vcproj w32/ccext2.vcproj])
-+AC_OUTPUT
-
- # if test ! -f inc/cc++/thread.h ; then
- # cp ${srcdir}/inc/cc++/*.h inc/cc++ ; fi
diff --git a/dev-cpp/commoncpp2/files/1.8.1-configure_detect_netfilter.patch b/dev-cpp/commoncpp2/files/1.8.1-configure_detect_netfilter.patch
deleted file mode 100644
index b6ebf0e0f4a4..000000000000
--- a/dev-cpp/commoncpp2/files/1.8.1-configure_detect_netfilter.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff --git a/m4/ost_socket.m4 b/m4/ost_socket.m4
-index bd9db7c..122c938 100644
---- a/m4/ost_socket.m4
-+++ b/m4/ost_socket.m4
-@@ -93,6 +93,9 @@ AC_DEFUN([OST_SYS_SOCKET],[
- AC_CHECK_HEADERS([linux/netfilter_ipv4.h linux/netfilter_ipv6.h],,,
- [#ifdef HAVE_LIMITS_H
- #include <limits.h>
-+ #endif
-+ #ifdef HAVE_NETINET_IN_H
-+ #include <netinet/in.h>
- #endif])
- if test "$ac_cv_header_linux_netfilter_ipv4_h" = "yes" &&
- [ test "$ac_cv_header_linux_netfilter_ipv6_h" = "yes" &&
diff --git a/dev-cpp/commoncpp2/files/1.8.1-fix-buffer-overflow.patch b/dev-cpp/commoncpp2/files/1.8.1-fix-buffer-overflow.patch
deleted file mode 100644
index e68b00576cdb..000000000000
--- a/dev-cpp/commoncpp2/files/1.8.1-fix-buffer-overflow.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/src/inaddr.cpp b/src/inaddr.cpp
-index 5a4b9c4..50127f3 100644
---- a/src/inaddr.cpp
-+++ b/src/inaddr.cpp
-@@ -333,7 +333,7 @@ void IPV4Address::setAddress(const char *host)
- if(ipaddr)
- delete[] ipaddr;
- ipaddr = new struct in_addr[1];
-- memset((void *)&ipaddr[0], 0, sizeof(ipaddr));
-+ memset((void *)&ipaddr[0], 0, sizeof(*ipaddr));
- return;
- }
-
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
deleted file mode 100644
index cc921060b303..000000000000
--- a/dev-cpp/commoncpp2/files/1.8.1-fix-c++14.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-Fix building with C++14, which errors out due changed noexcept()
-semantics for dtors caught by -Werror=terminate.
-
-See also: https://bugs.gentoo.org/show_bug.cgi?id=595422
-
---- a/src/nat.cpp
-+++ b/src/nat.cpp
-@@ -145,11 +145,11 @@
- "nat lookup successful",
- "nat address not in table",
- "nat not supported/implemented",
-- "unable to open device "NAT_DEVICE,
-+ "unable to open device " NAT_DEVICE,
- "unable to get socket name",
- "unable to get peer name",
- "unable to get socket type",
-- "unable to lookup, nat "NAT_SYSCALL" failed",
-+ "unable to lookup, nat " NAT_SYSCALL " failed",
- "unkown nat error code"
- };
-
---- a/src/socket.cpp
-+++ b/src/socket.cpp
-@@ -2971,12 +2971,7 @@
-
- TCPStream::~TCPStream()
- {
--#ifdef CCXX_EXCEPTIONS
-- try { endStream(); }
-- catch( ... ) { if ( ! std::uncaught_exception()) throw;};
--#else
-- endStream();
--#endif
-+ endStream();
- }
-
- #ifdef HAVE_GETADDRINFO
---- a/src/ssl.cpp
-+++ b/src/ssl.cpp
-@@ -441,12 +441,7 @@
-
- SSLStream::~SSLStream()
- {
--#ifdef CCXX_EXCEPTIONS
-- try { endStream(); }
-- catch( ...) { if ( ! std::uncaught_exception()) throw;};
--#else
- endStream();
--#endif
- }
-
- #ifdef CCXX_NAMESPACES
diff --git a/dev-cpp/commoncpp2/files/1.8.1-fix-gcc9.patch b/dev-cpp/commoncpp2/files/1.8.1-fix-gcc9.patch
deleted file mode 100644
index 795e44178c64..000000000000
--- a/dev-cpp/commoncpp2/files/1.8.1-fix-gcc9.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-https://bugs.gentoo.org/686012
-In file included from ../inc/cc++/thread.h:50,
- from thread.cpp:41:
-../inc/cc++/string.h:734:35: error: friend declaration of ‘std::istream& getline(std::istream&, ost::String&, char, size_t)’ specifies default arguments and isn’t a definition [-fpermissive]
- 734 | friend __EXPORT std::istream &getline(std::istream &is, String &str, char delim = '\n', size_t size = 0);
- | ^~~~~~~
-
---- a/inc/cc++/string.h
-+++ b/inc/cc++/string.h
-@@ -58,6 +58,9 @@
-
- class MemPager;
-
-+class String;
-+__EXPORT std::istream &getline(std::istream &is, String &str, char delim = '\n', size_t size = 0);
-+
- /**
- * This is a generic and portable string class. It uses optimized
- * memory allocation strategies to efficiently handle smaller string
-@@ -731,7 +734,7 @@
- * @param delim deliminator to use.
- * @param size optional size limitor.
- */
-- friend __EXPORT std::istream &getline(std::istream &is, String &str, char delim = '\n', size_t size = 0);
-+ friend std::istream &getline(std::istream &is, String &str, char delim, size_t size);
-
- /**
- * Stream the content of our string variable directly to a C++
diff --git a/dev-cpp/commoncpp2/files/1.8.1-gnutls-3.4.patch b/dev-cpp/commoncpp2/files/1.8.1-gnutls-3.4.patch
deleted file mode 100644
index b7365b822065..000000000000
--- a/dev-cpp/commoncpp2/files/1.8.1-gnutls-3.4.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From ba702b6034444c2e30b0990d06e28bb2dea8ecb7 Mon Sep 17 00:00:00 2001
-From: Alon Bar-Lev <alon.barlev@gmail.com>
-Date: Sat, 4 Mar 2017 01:36:23 +0200
-Subject: [PATCH] ssl: support gnutls-3.4
-
-Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
----
- src/ssl.cpp | 5 +----
- 1 file changed, 1 insertion(+), 4 deletions(-)
-
-diff --git a/src/ssl.cpp b/src/ssl.cpp
-index 5bf526d..38ef0a7 100644
---- a/src/ssl.cpp
-+++ b/src/ssl.cpp
-@@ -344,9 +344,6 @@ ssize_t SSLStream::readData(void *target, size_t size, char separator, timeout_t
- #ifdef CCXX_GNUTLS
- bool SSLStream::getSession(void)
- {
-- const int cert_priority[3] =
-- {GNUTLS_CRT_X509, GNUTLS_CRT_OPENPGP, 0};
--
- if(ssl)
- return true;
-
-@@ -362,7 +359,7 @@ bool SSLStream::getSession(void)
-
- gnutls_set_default_priority(ssl->session);
- gnutls_certificate_allocate_credentials(&ssl->xcred);
-- gnutls_certificate_type_set_priority(ssl->session, cert_priority);
-+ gnutls_priority_set_direct(ssl->session, "NORMAL:+CTYPE-OPENPGP", NULL);
- gnutls_credentials_set(ssl->session, GNUTLS_CRD_CERTIFICATE, ssl->xcred);
- gnutls_transport_set_ptr(ssl->session, (gnutls_transport_ptr)so);
- if(gnutls_handshake(ssl->session)) {
---
-2.10.2
-
diff --git a/dev-cpp/commoncpp2/files/1.8.1-libgcrypt.patch b/dev-cpp/commoncpp2/files/1.8.1-libgcrypt.patch
deleted file mode 100644
index 08e24e1a06a9..000000000000
--- a/dev-cpp/commoncpp2/files/1.8.1-libgcrypt.patch
+++ /dev/null
@@ -1,48 +0,0 @@
---- a/src/ssl.cpp
-+++ b/src/ssl.cpp
-@@ -99,35 +99,7 @@
- return 0;
- }
-
--extern "C" {
-- static int _wrap_mutex_init(void **priv)
-- {
-- return _gcry_mutex_init((Mutex **)(priv));
-- }
--
-- static int _wrap_mutex_destroy(void **priv)
-- {
-- return _gcry_mutex_destroy((Mutex **)(priv));
-- }
--
-- static int _wrap_mutex_lock(void **priv)
-- {
-- return _gcry_mutex_lock((Mutex **)(priv));
-- }
--
-- static int _wrap_mutex_unlock(void **priv)
-- {
-- return _gcry_mutex_unlock((Mutex **)(priv));
-- }
--
-- static struct gcry_thread_cbs _gcry_threads =
-- {
-- GCRY_THREAD_OPTION_PTHREAD, NULL,
-- _wrap_mutex_init, _wrap_mutex_destroy,
-- _wrap_mutex_lock, _wrap_mutex_unlock
-- };
--
--};
-+GCRY_THREAD_OPTION_PTHREAD_IMPL;
-
- #endif
-
-@@ -135,7 +107,7 @@
- public:
- _ssl_global() {
- #ifndef WIN32
-- gcry_control(GCRYCTL_SET_THREAD_CBS, &_gcry_threads);
-+ gcry_control(GCRYCTL_SET_THREAD_CBS, &gcry_threads_pthread);
- #endif
- gnutls_global_init();
- }
diff --git a/dev-cpp/commoncpp2/files/1.8.1-parallel-build.patch b/dev-cpp/commoncpp2/files/1.8.1-parallel-build.patch
deleted file mode 100644
index 149677ca89b4..000000000000
--- a/dev-cpp/commoncpp2/files/1.8.1-parallel-build.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/src/Makefile.am
-+++ b/src/Makefile.am
-@@ -47,6 +47,7 @@
-
- if EXTRAS
- libccext2_la_LIBADD = @THREAD_LIBS@ @BASE_LIB@ @SSL_LIBS@ @ZSTREAM_LIBS@
-+libccext2_la_DEPENDENCIES = libccgnu2.la
- libccext2_la_LDFLAGS = $(RELEASE) $(SHARED_FLAGS)
-
- if GETOPT_LONG
-