diff options
Diffstat (limited to 'dev-cpp/commoncpp2')
| -rw-r--r-- | dev-cpp/commoncpp2/Manifest | 1 | ||||
| -rw-r--r-- | dev-cpp/commoncpp2/commoncpp2-1.8.1-r1.ebuild | 76 | ||||
| -rw-r--r-- | dev-cpp/commoncpp2/files/1.8.0-glibc212.patch | 12 | ||||
| -rw-r--r-- | dev-cpp/commoncpp2/files/1.8.1-autoconf-update.patch | 49 | ||||
| -rw-r--r-- | dev-cpp/commoncpp2/files/1.8.1-configure_detect_netfilter.patch | 14 | ||||
| -rw-r--r-- | dev-cpp/commoncpp2/files/1.8.1-fix-buffer-overflow.patch | 13 | ||||
| -rw-r--r-- | dev-cpp/commoncpp2/files/1.8.1-parallel-build.patch | 11 | ||||
| -rw-r--r-- | dev-cpp/commoncpp2/metadata.xml | 5 |
8 files changed, 181 insertions, 0 deletions
diff --git a/dev-cpp/commoncpp2/Manifest b/dev-cpp/commoncpp2/Manifest new file mode 100644 index 000000000000..28191af1f23c --- /dev/null +++ b/dev-cpp/commoncpp2/Manifest @@ -0,0 +1 @@ +DIST commoncpp2-1.8.1.tar.gz 908678 SHA256 53ced4aff74e28a1d8018eb2b4974519028db3c12471ab6dff1c873578c9af4e SHA512 949823461d20429c2b0acfa22554a5a9dacc977e3ee097f34416f65d322df84fbdb27c644435c6c6caaed800347dfbe789cee7f19b39b306165c97b4f4012bfe WHIRLPOOL 1844cf39ce0a087aaea1cfac1e712b52f81de594278facb70306d68cd3e3343c0d2c581886b4fe3ce7607eb52150c5cf1c9558d0fac0ee7d8730eff39b46bb64 diff --git a/dev-cpp/commoncpp2/commoncpp2-1.8.1-r1.ebuild b/dev-cpp/commoncpp2/commoncpp2-1.8.1-r1.ebuild new file mode 100644 index 000000000000..721cee3d28d8 --- /dev/null +++ b/dev-cpp/commoncpp2/commoncpp2-1.8.1-r1.ebuild @@ -0,0 +1,76 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="5" + +inherit eutils autotools + +DESCRIPTION="C++ framework offering portable support for threading, sockets, file access, daemons, persistence, serial I/O, XML parsing, and system services" +SRC_URI="mirror://gnu/commoncpp/${P}.tar.gz" +HOMEPAGE="http://www.gnu.org/software/commoncpp/" +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 ppc ppc64 x86" +IUSE="debug doc examples ipv6 gnutls ssl static-libs" +REQUIRED_USE="gnutls? ( ssl )" + +RDEPEND="ssl? ( gnutls? ( dev-libs/libgcrypt:0 + net-libs/gnutls ) + !gnutls? ( dev-libs/openssl ) ) + sys-libs/zlib" +DEPEND="doc? ( >=app-doc/doxygen-1.3.6 ) + ${RDEPEND}" + +src_prepare() { + epatch \ + "${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" + eautoreconf +} + +src_configure() { + use doc || \ + sed -i "s/^DOXYGEN=.*/DOXYGEN=no/" configure || die "sed failed" + + local myconf + + if use gnutls; then + myconf="--with-gnutls" + else + use ssl && myconf="--with-openssl" + fi + + econf \ + $(use_enable debug) \ + $(use_with ipv6) \ + $(use_enable static-libs static) \ + ${myconf} +} + +src_install () { + default + prune_libtool_files + + dodoc COPYING.addendum + + # Only install html docs + # man and latex available, but seems a little wasteful + use doc && dohtml doc/html/* + + if use examples ; then + insinto /usr/share/doc/${PF}/examples + cd demo + doins *.cpp *.h *.xml README + fi +} + +# Some of the tests hang forever +#src_test() { +# cd "${S}/tests" +# emake || die "emake tests failed" +# ./test.sh || die "tests failed" +#} diff --git a/dev-cpp/commoncpp2/files/1.8.0-glibc212.patch b/dev-cpp/commoncpp2/files/1.8.0-glibc212.patch new file mode 100644 index 000000000000..a29e154a20ee --- /dev/null +++ b/dev-cpp/commoncpp2/files/1.8.0-glibc212.patch @@ -0,0 +1,12 @@ +http://bugs.gentoo.org/334135 + +--- src/applog.cpp ++++ 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 new file mode 100644 index 000000000000..d50a3405ee6c --- /dev/null +++ b/dev-cpp/commoncpp2/files/1.8.1-autoconf-update.patch @@ -0,0 +1,49 @@ +diff --git a/configure.ac b/configure.ac +index 80518db..64221e0 100644 +--- 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 @@ fi + 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 +@@ -408,10 +409,11 @@ LIB_MAJOR=`echo $LT_VERSION | sed -e 's/[:].*$//'` + 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 new file mode 100644 index 000000000000..b6ebf0e0f4a4 --- /dev/null +++ b/dev-cpp/commoncpp2/files/1.8.1-configure_detect_netfilter.patch @@ -0,0 +1,14 @@ +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 new file mode 100644 index 000000000000..e68b00576cdb --- /dev/null +++ b/dev-cpp/commoncpp2/files/1.8.1-fix-buffer-overflow.patch @@ -0,0 +1,13 @@ +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-parallel-build.patch b/dev-cpp/commoncpp2/files/1.8.1-parallel-build.patch new file mode 100644 index 000000000000..f131ee1c2c01 --- /dev/null +++ b/dev-cpp/commoncpp2/files/1.8.1-parallel-build.patch @@ -0,0 +1,11 @@ +--- src/Makefile.am ++++ 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 + diff --git a/dev-cpp/commoncpp2/metadata.xml b/dev-cpp/commoncpp2/metadata.xml new file mode 100644 index 000000000000..8434377a6047 --- /dev/null +++ b/dev-cpp/commoncpp2/metadata.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<herd>cpp</herd> +</pkgmetadata> |
