From 28e20b497bfbc42c4ffc5abced934791f282e0c8 Mon Sep 17 00:00:00 2001 From: David Seifert Date: Sun, 18 Sep 2016 20:29:49 +0200 Subject: [PATCH] dev-libs/xml-security-c: Allow for compiling with GCC 6 Gentoo-bug: 594234 * EAPI=6 Package-Manager: portage-2.3.0 --- ...ecurity-c-1.6.1-nss-compilation-fix.patch} | 0 .../xml-security-c-1.7.3-fix-c++14.patch | 36 +++++++++++++++++++ .../xml-security-c-1.7.3.ebuild | 17 ++++----- 3 files changed, 43 insertions(+), 10 deletions(-) rename dev-libs/xml-security-c/files/{1.6.1-nss-compilation-fix.patch => xml-security-c-1.6.1-nss-compilation-fix.patch} (100%) create mode 100644 dev-libs/xml-security-c/files/xml-security-c-1.7.3-fix-c++14.patch diff --git a/dev-libs/xml-security-c/files/1.6.1-nss-compilation-fix.patch b/dev-libs/xml-security-c/files/xml-security-c-1.6.1-nss-compilation-fix.patch similarity index 100% rename from dev-libs/xml-security-c/files/1.6.1-nss-compilation-fix.patch rename to dev-libs/xml-security-c/files/xml-security-c-1.6.1-nss-compilation-fix.patch diff --git a/dev-libs/xml-security-c/files/xml-security-c-1.7.3-fix-c++14.patch b/dev-libs/xml-security-c/files/xml-security-c-1.7.3-fix-c++14.patch new file mode 100644 index 0000000000000..40783bf21b298 --- /dev/null +++ b/dev-libs/xml-security-c/files/xml-security-c-1.7.3-fix-c++14.patch @@ -0,0 +1,36 @@ +Fix building with C++14, which errors out due to bool -> T* conversions +See also: https://bugs.gentoo.org/show_bug.cgi?id=594234 + +--- a/xsec/enc/OpenSSL/OpenSSLCryptoSymmetricKey.hpp ++++ b/xsec/enc/OpenSSL/OpenSSLCryptoSymmetricKey.hpp +@@ -151,7 +151,7 @@ + SymmetricKeyMode mode = MODE_CBC, + const unsigned char * iv = NULL, + const unsigned char* tag = NULL, +- unsigned int taglen = NULL); ++ unsigned int taglen = 0); + + /** + * \brief Continue an decrypt operation using this key. +--- a/xsec/enc/XSECCryptoSymmetricKey.hpp ++++ b/xsec/enc/XSECCryptoSymmetricKey.hpp +@@ -185,7 +185,7 @@ + SymmetricKeyMode mode = MODE_CBC, + const unsigned char* iv = NULL, + const unsigned char* tag = NULL, +- unsigned int taglen = NULL) = 0; ++ unsigned int taglen = 0) = 0; + + /** + * \brief Continue a decrypt operation using this key. +--- a/xsec/tools/checksig/InteropResolver.cpp ++++ b/xsec/tools/checksig/InteropResolver.cpp +@@ -645,7 +645,7 @@ + + } + +- return false; ++ return NULL; + + } + diff --git a/dev-libs/xml-security-c/xml-security-c-1.7.3.ebuild b/dev-libs/xml-security-c/xml-security-c-1.7.3.ebuild index 7058fa18d4d47..ecd3748b1f619 100644 --- a/dev-libs/xml-security-c/xml-security-c-1.7.3.ebuild +++ b/dev-libs/xml-security-c/xml-security-c-1.7.3.ebuild @@ -2,9 +2,7 @@ # Distributed under the terms of the GNU General Public License v2 # $Id$ -EAPI=5 - -inherit eutils +EAPI=6 DESCRIPTION="Apache C++ XML security libraries" HOMEPAGE="http://santuario.apache.org/" @@ -25,11 +23,10 @@ DEPEND="${RDEPEND} virtual/pkgconfig" DOCS=( CHANGELOG.txt NOTICE.txt ) - -src_prepare() { - epatch "${FILESDIR}/1.6.1-nss-compilation-fix.patch" - epatch_user -} +PATCHES=( + "${FILESDIR}/${PN}-1.6.1-nss-compilation-fix.patch" + "${FILESDIR}/${PN}-1.7.3-fix-c++14.patch" +) src_configure() { econf \ @@ -43,7 +40,7 @@ src_configure() { src_install() { default if use examples ; then - insinto /usr/share/doc/${PF}/examples - doins xsec/samples/*.cpp + docinto examples + dodoc xsec/samples/*.cpp fi }