summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Bettler <thomas.bettler@gmail.com>2023-06-11 10:56:21 +0200
committerAndreas Sturmlechner <asturm@gentoo.org>2023-06-13 14:12:24 +0200
commit08ca947f7a4c8d56f0e510e4112237e1fba32b1d (patch)
tree2e41236e29254389d01d8f036a07e2713c37459a /app-crypt/qca
parentqmake-utils.eclass: add qt6 support (diff)
downloadgentoo-08ca947f7a4c8d56f0e510e4112237e1fba32b1d.tar.gz
gentoo-08ca947f7a4c8d56f0e510e4112237e1fba32b1d.tar.bz2
gentoo-08ca947f7a4c8d56f0e510e4112237e1fba32b1d.zip
app-crypt/qca: add Qt6 support
Signed-off-by: Thomas Bettler <thomas.bettler@gmail.com> Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
Diffstat (limited to 'app-crypt/qca')
-rw-r--r--app-crypt/qca/qca-2.3.6-r2.ebuild115
1 files changed, 115 insertions, 0 deletions
diff --git a/app-crypt/qca/qca-2.3.6-r2.ebuild b/app-crypt/qca/qca-2.3.6-r2.ebuild
new file mode 100644
index 000000000000..0cdc05cdc7ad
--- /dev/null
+++ b/app-crypt/qca/qca-2.3.6-r2.ebuild
@@ -0,0 +1,115 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake kde.org multibuild qmake-utils
+
+DESCRIPTION="Qt Cryptographic Architecture (QCA)"
+HOMEPAGE="https://userbase.kde.org/QCA"
+SRC_URI="mirror://kde/stable/${PN}/${PV}/${P}.tar.xz"
+
+LICENSE="LGPL-2.1"
+SLOT="2"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="botan debug doc examples gcrypt gpg logger nss pkcs11 +qt5 qt6 sasl softstore +ssl test"
+REQUIRED_USE="|| ( qt5 qt6 )"
+
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ botan? ( dev-libs/botan:3= )
+ gcrypt? ( dev-libs/libgcrypt:= )
+ gpg? ( app-crypt/gnupg )
+ nss? ( dev-libs/nss )
+ pkcs11? (
+ >=dev-libs/openssl-1.1
+ dev-libs/pkcs11-helper
+ )
+ qt5? ( >=dev-qt/qtcore-5.14:5 )
+ qt6? (
+ dev-qt/qtbase:6
+ dev-qt/qt5compat:6
+ )
+ sasl? ( dev-libs/cyrus-sasl:2 )
+ ssl? ( >=dev-libs/openssl-1.1:= )
+"
+DEPEND="${RDEPEND}
+ test? (
+ qt5? (
+ dev-qt/qtnetwork:5
+ dev-qt/qttest:5
+ )
+ qt6? ( dev-qt/qtbase:6[network,test] )
+ )
+"
+BDEPEND="
+ doc? (
+ app-doc/doxygen[dot]
+ virtual/latex-base
+ )
+"
+
+PATCHES=( "${FILESDIR}/${PN}-disable-pgp-test.patch" )
+
+qca_plugin_use() {
+ echo -DWITH_${2:-$1}_PLUGIN=$(usex "$1")
+}
+
+pkg_setup() {
+ MULTIBUILD_VARIANTS=( $(usev qt5) $(usev qt6) )
+}
+
+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} == qt6 ]]; then
+ mycmakeargs+=( -DBUILD_WITH_QT6=ON )
+ else
+ mycmakeargs+=( -DBUILD_WITH_QT6=OFF )
+ fi
+ cmake_src_configure
+ }
+
+ multibuild_foreach_variant myconfigure
+}
+
+src_compile() {
+ multibuild_foreach_variant cmake_src_compile
+}
+
+src_test() {
+ mytest() {
+ local -x QCA_PLUGIN_PATH="${BUILD_DIR}/lib/qca"
+ cmake_src_test
+ }
+ multibuild_foreach_variant mytest
+}
+
+src_install() {
+ multibuild_foreach_variant cmake_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
+}