summaryrefslogtreecommitdiff
path: root/app-crypt/qca
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
commit8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 (patch)
tree7681bbd4e8b05407772df40a4bf04cbbc8afc3fa /app-crypt/qca
parent30a9caf154332f12ca60756e1b75d2f0e3e1822d (diff)
gentoo resync : 14.07.2018
Diffstat (limited to 'app-crypt/qca')
-rw-r--r--app-crypt/qca/Manifest8
-rw-r--r--app-crypt/qca/files/qca-2.1.3-c++11.patch97
-rw-r--r--app-crypt/qca/files/qca-2.1.3-deps.patch38
-rw-r--r--app-crypt/qca/files/qca-disable-pgp-test.patch13
-rw-r--r--app-crypt/qca/metadata.xml26
-rw-r--r--app-crypt/qca/qca-2.1.3-r2.ebuild96
-rw-r--r--app-crypt/qca/qca-2.2.0_pre20180606.ebuild85
7 files changed, 363 insertions, 0 deletions
diff --git a/app-crypt/qca/Manifest b/app-crypt/qca/Manifest
new file mode 100644
index 000000000000..41cc66a16e24
--- /dev/null
+++ b/app-crypt/qca/Manifest
@@ -0,0 +1,8 @@
+AUX qca-2.1.3-c++11.patch 3555 BLAKE2B 68b9e4a9e13543b2f98c564f19deef32090be25bb425d83bebf78bc0141411bd447223562c920aea80765811084360fbc964afb7841291081f80cc94060070b2 SHA512 605a602d184c86426d6d875954ad2cb3bee19252ce56e6581df7574a3e324f97ccfcb919fef32f6ff8a393683b8375d97586ed886ae01d87fbe015f2f83f0e3b
+AUX qca-2.1.3-deps.patch 1040 BLAKE2B 4bf0179bf2383328dd97f365c433ee40a87e465b8c0b5396d4cfde07f27a4aedfa2d229900e630606fc43e5a5a35042ffce999f59401c34439e656b0b6f1bf0e SHA512 e20a3a06fef8415287d8837ea5fa2acf3ef60f8a1da6aec7c994987f63336e52ac2460fa76694b82b59f30aa1d59cd22decac246423adbef8ae1658a7f7db78f
+AUX qca-disable-pgp-test.patch 446 BLAKE2B a98d5951d7b89c65787d7d586a5504949c51271ebe09c5e19b90a2e24f24fb6d03d6c1f76d7ad4234354bc2507cf7031c716b3b2bf8243b8c1d85065079dded4 SHA512 30bb6d31b9392166d6bbae39da2eeb1788ac9cccffb801b074468a3606a6e1a56d6a41ee276d3b8b8d39112bf6aea7025f07f4810bb835102bd00521ee9eb104
+DIST qca-2.1.3.tar.xz 686340 BLAKE2B 60ebf9add907632ed17426ee53c6c35a9aed279a4492012f1c174608cbe9579d366feb7ff7bff551d2e9e4ef2f271e8f340fcb4c9e1f67f209657d388567d44f SHA512 0aec277e0695da2e45298f0a9006213829fe4c449a79969e472947db54f45000ba6e22361b782465bdc03f269b7301d318c843f5a83db459a118e58a03f3116a
+DIST qca-2.2.0_pre20180606.tar.xz 700756 BLAKE2B 0204854a664f211e9289cd4609938fd21e62de5bec5d7f5a99843a12483c960b6f8cc7392dc84bcf0676220411106bf7f23c5059d4f7031791fe9a3259d21d2c SHA512 78f9f8ebc726e95768034c580d5ac30933f7c06e026b7daad04f11477dc623e4267895e409f7830c5149e620876dcc524278ef569956d03820b0864d629c4df8
+EBUILD qca-2.1.3-r2.ebuild 2180 BLAKE2B a74a2d7378bad48e8ad20c30ae91416b79e6f79393566e499a7821cf6fc904f6966c36751b285da4320da5a541fefadaf35df6df192ec4338dfc363323e20469 SHA512 ebca007f517945d9f26ca4fba9536418371013764c95f668774da8f23c1dce722ae1954e2e5505ea5b87446576ac757e2248f829ca515db7249c97d28e0d83b1
+EBUILD qca-2.2.0_pre20180606.ebuild 1967 BLAKE2B b67db5ec495c8bb1af48f65d2dd5b548f6a598b14be80c5691fd57d76a0950071b10d0370e1050c718ca7431c84bb48b6942b32b544f2912e90b1f867854eccf SHA512 4fdbe6f37d91bb2780d48fe720aa9356148965ca5f83085e63be54e46f4d5e30a3d7a150348a2b96528bdc0385b98136d1f405e74aef5c62cfd81c4b80eeef2c
+MISC metadata.xml 842 BLAKE2B 1732f7a0efeba7de6c54bfb817a69f9be88eab8bb37a75f5ee685ba7893ad9be13a10ea8b2a404954846e1ea73dc617d0a89ac3b1f69a83928275b9e8d5fc7ab SHA512 900de0e8b914d1970b3e4fcfbdbeea48c1e56ab596e6c959e4dce29a0fd0cb0b6969ab6899784a80b6c233a656f3a4501513d8af6b4acc8519a5ecf1c9a1a622
diff --git a/app-crypt/qca/files/qca-2.1.3-c++11.patch b/app-crypt/qca/files/qca-2.1.3-c++11.patch
new file mode 100644
index 000000000000..a12f96bfcf4a
--- /dev/null
+++ b/app-crypt/qca/files/qca-2.1.3-c++11.patch
@@ -0,0 +1,97 @@
+From 5f18ebc705ec98e883aa63cb537e36e6a08b7e34 Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <alon.barlev@gmail.com>
+Date: Tue, 21 Mar 2017 12:23:17 +0200
+Subject: [PATCH] build: fix C++11 throwing distructors
+
+For >=C++11, explicitly mark throwing destructors `noexcept(false)`
+
+Thanks: Peter-Levine <plevine457@gmail.com>
+---
+ Doxyfile.in | 2 +-
+ src/botantools/botan/alloc_mmap/mmap_mem.cpp | 2 +-
+ src/botantools/botan/botan/allocate.h | 8 +++++++-
+ src/botantools/botan/botan/mem_pool.h | 2 +-
+ src/botantools/botan/mem_pool.cpp | 2 +-
+ 5 files changed, 11 insertions(+), 5 deletions(-)
+
+diff --git a/Doxyfile.in b/Doxyfile.in
+index 59d9afe..844c234 100644
+--- a/Doxyfile.in
++++ b/Doxyfile.in
+@@ -1070,7 +1070,7 @@ PREDEFINED = DOXYGEN_SHOULD_SKIP_THIS \
+ # The macro definition that is found in the sources will be used.
+ # Use the PREDEFINED tag if you want to use a different macro definition.
+
+-EXPAND_AS_DEFINED = QCA_EXPORT
++EXPAND_AS_DEFINED = QCA_EXPORT QCA_NOEXCEPT
+
+ # If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then
+ # doxygen's preprocessor will remove all function-like macros that are alone
+diff --git a/src/botantools/botan/alloc_mmap/mmap_mem.cpp b/src/botantools/botan/alloc_mmap/mmap_mem.cpp
+index 362b688..54f0d23 100644
+--- a/src/botantools/botan/alloc_mmap/mmap_mem.cpp
++++ b/src/botantools/botan/alloc_mmap/mmap_mem.cpp
+@@ -107,7 +107,7 @@ void* MemoryMapping_Allocator::alloc_block(u32bit n)
+ umask(old_umask);
+ }
+
+- ~TemporaryFile()
++ ~TemporaryFile() QCA_NOEXCEPT(false)
+ {
+ delete[] filepath;
+ if(fd != -1 && close(fd) == -1)
+diff --git a/src/botantools/botan/botan/allocate.h b/src/botantools/botan/botan/allocate.h
+index 0ac351e..52bc397 100644
+--- a/src/botantools/botan/botan/allocate.h
++++ b/src/botantools/botan/botan/allocate.h
+@@ -40,6 +40,12 @@ namespace QCA { // WRAPNS_LINE
+ #include <string>
+ namespace QCA { // WRAPNS_LINE
+
++#if __cplusplus >= 201103L
++#define QCA_NOEXCEPT(x) noexcept(x)
++#else
++#define QCA_NOEXCEPT(x)
++#endif
++
+ namespace Botan {
+
+ /*************************************************
+@@ -58,7 +64,7 @@ class Allocator
+ virtual void init() {}
+ virtual void destroy() {}
+
+- virtual ~Allocator() {}
++ virtual ~Allocator() QCA_NOEXCEPT(false) {}
+ };
+
+ /*************************************************
+diff --git a/src/botantools/botan/botan/mem_pool.h b/src/botantools/botan/botan/mem_pool.h
+index 32834b8..1cb903e 100644
+--- a/src/botantools/botan/botan/mem_pool.h
++++ b/src/botantools/botan/botan/mem_pool.h
+@@ -63,7 +63,7 @@ class Pooling_Allocator : public Allocator
+ void destroy();
+
+ Pooling_Allocator(u32bit, bool);
+- ~Pooling_Allocator();
++ ~Pooling_Allocator() QCA_NOEXCEPT(false);
+ private:
+ void get_more_core(u32bit);
+ byte* allocate_blocks(u32bit);
+diff --git a/src/botantools/botan/mem_pool.cpp b/src/botantools/botan/mem_pool.cpp
+index 00280ec..baa47aa 100644
+--- a/src/botantools/botan/mem_pool.cpp
++++ b/src/botantools/botan/mem_pool.cpp
+@@ -171,7 +171,7 @@ Pooling_Allocator::Pooling_Allocator(u32bit p_size, bool) :
+ /*************************************************
+ * Pooling_Allocator Destructor *
+ *************************************************/
+-Pooling_Allocator::~Pooling_Allocator()
++Pooling_Allocator::~Pooling_Allocator() QCA_NOEXCEPT(false)
+ {
+ delete mutex;
+ if(blocks.size())
+--
+2.10.2
+
diff --git a/app-crypt/qca/files/qca-2.1.3-deps.patch b/app-crypt/qca/files/qca-2.1.3-deps.patch
new file mode 100644
index 000000000000..e1ef2e5c0e7e
--- /dev/null
+++ b/app-crypt/qca/files/qca-2.1.3-deps.patch
@@ -0,0 +1,38 @@
+From e854f357f4037e2c8c781ebd04ec5164a882b9b3 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Thu, 12 Apr 2018 00:45:50 +0200
+Subject: [PATCH] Make Qt5Network conditional on BUILD_TESTS
+
+Summary: I did not find it in use somewhere else.
+
+Reviewers: iromanov, sitter, rjvbb
+
+Reviewed By: rjvbb
+
+Subscribers: fvogt
+
+Differential Revision: https://phabricator.kde.org/D12129
+---
+ CMakeLists.txt | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 28b0169..65b95f8 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -59,7 +59,11 @@ if (Qt5Core_FOUND)
+ message(STATUS "Building with Qt5 support")
+ # Got from ECM
+ # Distros have no ECM. So I just copied required cmake modules.
+- find_package(Qt5Transitional REQUIRED Core Network)
++ if(BUILD_TESTS)
++ find_package(Qt5Transitional REQUIRED Core Network)
++ else()
++ find_package(Qt5Transitional REQUIRED Core)
++ endif()
+ include(ECMQt4To5Porting)
+
+ include(GNUInstallDirs)
+--
+2.17.1
+
diff --git a/app-crypt/qca/files/qca-disable-pgp-test.patch b/app-crypt/qca/files/qca-disable-pgp-test.patch
new file mode 100644
index 000000000000..7944e3c358ea
--- /dev/null
+++ b/app-crypt/qca/files/qca-disable-pgp-test.patch
@@ -0,0 +1,13 @@
+diff --git a/unittest/CMakeLists.txt b/unittest/CMakeLists.txt
+index f4d9eb9..67ef281 100644
+--- a/unittest/CMakeLists.txt
++++ b/unittest/CMakeLists.txt
+@@ -23,7 +23,7 @@ add_subdirectory(keylengthunittest)
+ add_subdirectory(keystore)
+ add_subdirectory(macunittest)
+ add_subdirectory(metatype)
+-add_subdirectory(pgpunittest)
++# add_subdirectory(pgpunittest)
+ add_subdirectory(pipeunittest)
+ add_subdirectory(pkits)
+ add_subdirectory(rsaunittest)
diff --git a/app-crypt/qca/metadata.xml b/app-crypt/qca/metadata.xml
new file mode 100644
index 000000000000..dff1320aa6b8
--- /dev/null
+++ b/app-crypt/qca/metadata.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>crypto@gentoo.org</email>
+ <name>Crypto</name>
+</maintainer>
+<maintainer type="project">
+ <email>qt@gentoo.org</email>
+ <name>Gentoo Qt Project</name>
+</maintainer>
+<maintainer type="project">
+ <email>kde@gentoo.org</email>
+ <name>Gentoo KDE Project</name>
+</maintainer>
+<use>
+ <flag name="botan">Enable botan plugin</flag>
+ <flag name="gcrypt">Enable gcrypt plugin</flag>
+ <flag name="gpg">Enable GnuPG plugin</flag>
+ <flag name="logger">Enable logger plugin</flag>
+ <flag name="nss">Enable NSS plugin</flag>
+ <flag name="pkcs11">Enable PKCS#11 plugin</flag>
+ <flag name="sasl">Enable SASL plugin</flag>
+ <flag name="softstore">Enable softstore plugin</flag>
+</use>
+</pkgmetadata>
diff --git a/app-crypt/qca/qca-2.1.3-r2.ebuild b/app-crypt/qca/qca-2.1.3-r2.ebuild
new file mode 100644
index 000000000000..a1d5bbb0df5f
--- /dev/null
+++ b/app-crypt/qca/qca-2.1.3-r2.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils qmake-utils
+
+DESCRIPTION="Qt Cryptographic Architecture (QCA)"
+HOMEPAGE="https://userbase.kde.org/QCA"
+SRC_URI="mirror://kde/stable/${PN}/${PV}/src/${P}.tar.xz"
+
+LICENSE="LGPL-2.1"
+SLOT="2"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris"
+
+IUSE="botan debug doc examples gcrypt gpg libressl logger nss pkcs11 sasl softstore +ssl test"
+
+COMMON_DEPEND="
+ dev-qt/qtcore:5
+ botan? ( dev-libs/botan:0 )
+ gcrypt? ( dev-libs/libgcrypt:= )
+ gpg? ( app-crypt/gnupg )
+ nss? ( dev-libs/nss )
+ pkcs11? (
+ !libressl? ( dev-libs/openssl:0 )
+ libressl? ( dev-libs/libressl )
+ dev-libs/pkcs11-helper
+ )
+ sasl? ( dev-libs/cyrus-sasl:2 )
+ ssl? (
+ !libressl? ( >=dev-libs/openssl-1.0.1:0= )
+ libressl? ( dev-libs/libressl:= )
+ )
+"
+DEPEND="${COMMON_DEPEND}
+ doc? ( app-doc/doxygen )
+ test? (
+ dev-qt/qtnetwork:5
+ dev-qt/qttest:5
+ )
+"
+RDEPEND="${COMMON_DEPEND}
+ !app-crypt/qca-cyrus-sasl
+ !app-crypt/qca-gnupg
+ !app-crypt/qca-logger
+ !app-crypt/qca-ossl
+ !app-crypt/qca-pkcs11
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-disable-pgp-test.patch"
+ "${FILESDIR}/${P}-c++11.patch"
+ "${FILESDIR}/${P}-deps.patch"
+)
+
+qca_plugin_use() {
+ echo -DWITH_${2:-$1}_PLUGIN=$(usex "$1")
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DQCA_FEATURE_INSTALL_DIR="${EPREFIX}$(qt5_get_mkspecsdir)/features"
+ -DQCA_PLUGINS_INSTALL_DIR="${EPREFIX}$(qt5_get_plugindir)"
+ $(qca_plugin_use botan)
+ $(qca_plugin_use gcrypt)
+ $(qca_plugin_use gpg gnupg)
+ $(qca_plugin_use logger)
+ $(qca_plugin_use nss)
+ $(qca_plugin_use pkcs11)
+ $(qca_plugin_use sasl cyrus-sasl)
+ $(qca_plugin_use softstore)
+ $(qca_plugin_use ssl ossl)
+ -DBUILD_TESTS=$(usex test)
+ )
+ cmake-utils_src_configure
+}
+
+src_test() {
+ local -x QCA_PLUGIN_PATH="${BUILD_DIR}/lib/qca"
+ cmake-utils_src_test
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ if use doc; then
+ pushd "${BUILD_DIR}" >/dev/null || die
+ doxygen Doxyfile || die
+ dodoc -r apidocs/html
+ popd >/dev/null || die
+ fi
+
+ if use examples; then
+ dodoc -r "${S}"/examples
+ fi
+}
diff --git a/app-crypt/qca/qca-2.2.0_pre20180606.ebuild b/app-crypt/qca/qca-2.2.0_pre20180606.ebuild
new file mode 100644
index 000000000000..3ed99ba69006
--- /dev/null
+++ b/app-crypt/qca/qca-2.2.0_pre20180606.ebuild
@@ -0,0 +1,85 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils qmake-utils
+
+DESCRIPTION="Qt Cryptographic Architecture (QCA)"
+HOMEPAGE="https://userbase.kde.org/QCA"
+SRC_URI="https://dev.gentoo.org/~asturm/distfiles/${P}.tar.xz"
+
+LICENSE="LGPL-2.1"
+SLOT="2"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris"
+
+IUSE="botan debug doc examples gcrypt gpg libressl logger nss pkcs11 sasl softstore +ssl test"
+
+RDEPEND="
+ dev-qt/qtcore:5
+ botan? ( dev-libs/botan:= )
+ gcrypt? ( dev-libs/libgcrypt:= )
+ gpg? ( app-crypt/gnupg )
+ nss? ( dev-libs/nss )
+ pkcs11? (
+ !libressl? ( dev-libs/openssl:0 )
+ libressl? ( dev-libs/libressl )
+ dev-libs/pkcs11-helper
+ )
+ sasl? ( dev-libs/cyrus-sasl:2 )
+ ssl? (
+ !libressl? ( >=dev-libs/openssl-1.0.1:0= )
+ libressl? ( dev-libs/libressl:= )
+ )
+"
+DEPEND="${RDEPEND}
+ doc? ( app-doc/doxygen )
+ test? (
+ dev-qt/qtnetwork:5
+ dev-qt/qttest:5
+ )
+"
+
+PATCHES=( "${FILESDIR}/${PN}-disable-pgp-test.patch" )
+
+qca_plugin_use() {
+ echo -DWITH_${2:-$1}_PLUGIN=$(usex "$1")
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DQCA_FEATURE_INSTALL_DIR="${EPREFIX}$(qt5_get_mkspecsdir)/features"
+ -DQCA_PLUGINS_INSTALL_DIR="${EPREFIX}$(qt5_get_plugindir)"
+ $(qca_plugin_use botan)
+ $(qca_plugin_use gcrypt)
+ $(qca_plugin_use gpg gnupg)
+ $(qca_plugin_use logger)
+ $(qca_plugin_use nss)
+ $(qca_plugin_use pkcs11)
+ $(qca_plugin_use sasl cyrus-sasl)
+ $(qca_plugin_use softstore)
+ $(qca_plugin_use ssl ossl)
+ -DBUILD_TESTS=$(usex test)
+ )
+ cmake-utils_src_configure
+}
+
+src_test() {
+ local -x QCA_PLUGIN_PATH="${BUILD_DIR}/lib/qca"
+ cmake-utils_src_test
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ if use doc; then
+ pushd "${BUILD_DIR}" >/dev/null || die
+ doxygen Doxyfile || die
+ dodoc -r apidocs/html
+ popd >/dev/null || die
+ fi
+
+ if use examples; then
+ dodoc -r "${S}"/examples
+ fi
+}