Browse Source

Added qca snapshot ebuild

Sergey Ilinykh 7 years ago
parent
commit
d909e23962

+ 13 - 0
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)

+ 26 - 0
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>

+ 122 - 0
app-crypt/qca/qca-2.1.4_alpha1.ebuild

@@ -0,0 +1,122 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils multibuild qmake-utils
+
+DESCRIPTION="Qt Cryptographic Architecture (QCA)"
+HOMEPAGE="https://userbase.kde.org/QCA"
+COMMIT=d58e20ee652038dc4ec4fe4765dc3639ed735526
+SRC_URI="https://github.com/KDE/qca/archive/${COMMIT}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="2"
+KEYWORDS="~amd64 ~x86"
+
+IUSE="botan debug doc examples gcrypt gpg libressl logger nss pkcs11 +qt4 qt5 sasl softstore +ssl test"
+REQUIRED_USE="|| ( qt4 qt5 )"
+
+S="${WORKDIR}/${PN}-${COMMIT}"
+
+RDEPEND="
+	!app-crypt/qca-cyrus-sasl
+	!app-crypt/qca-gnupg
+	!app-crypt/qca-logger
+	!app-crypt/qca-ossl
+	!app-crypt/qca-pkcs11
+	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
+	)
+	qt4? ( dev-qt/qtcore:4 )
+	qt5? (
+		dev-qt/qtcore:5
+		dev-qt/qtconcurrent:5
+		dev-qt/qtnetwork:5
+	)
+	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? (
+		qt4? ( dev-qt/qttest:4 )
+		qt5? ( dev-qt/qttest:5 )
+	)
+"
+
+DOCS=( README TODO )
+
+PATCHES=( "${FILESDIR}/${PN}-disable-pgp-test.patch" )
+
+qca_plugin_use() {
+	echo -DWITH_${2:-$1}_PLUGIN=$(usex "$1")
+}
+
+pkg_setup() {
+	MULTIBUILD_VARIANTS=( $(usev qt4) $(usev qt5) )
+}
+
+src_configure() {
+	myconfigure() {
+		local mycmakeargs=(
+			-DQCA_FEATURE_INSTALL_DIR="${EPREFIX}$(${MULTIBUILD_VARIANT}_get_mkspecsdir)/features"
+			-DQCA_PLUGINS_INSTALL_DIR="${EPREFIX}$(${MULTIBUILD_VARIANT}_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)
+		)
+
+		if [[ ${MULTIBUILD_VARIANT} == qt4 ]]; then
+			mycmakeargs+=(-DQT4_BUILD=ON)
+		fi
+
+		cmake-utils_src_configure
+	}
+
+	multibuild_foreach_variant myconfigure
+}
+
+src_compile() {
+	multibuild_foreach_variant cmake-utils_src_compile
+}
+
+src_test() {
+	mytest() {
+		local -x QCA_PLUGIN_PATH="${BUILD_DIR}/lib/qca"
+		cmake-utils_src_test
+	}
+
+	multibuild_foreach_variant mytest
+}
+
+src_install() {
+	multibuild_foreach_variant cmake-utils_src_install
+
+	if use doc; then
+		pushd "${BUILD_DIR}" >/dev/null || die
+		doxygen Doxyfile.in || die
+		dodoc -r apidocs/html
+		popd >/dev/null || die
+	fi
+
+	if use examples; then
+		dodoc -r "${S}"/examples
+	fi
+}

+ 2 - 1
net-im/psi-omemo/psi-omemo-9999.ebuild

@@ -11,5 +11,6 @@ DESCRIPTION="Psi plugin for OMEMO"
 KEYWORDS=""
 IUSE=""
 
-RDEPEND="=app-crypt/libsignal-protocol-c-2.3.2_alpha1"
+RDEPEND=">=app-crypt/libsignal-protocol-c-2.3.2_alpha1
+	>=app-crypt/qca-2.1.4_alpha1"
 DEPEND="$RDEPEND"