commit:     18bbf0c4c9b94e3c41fc91a7c67a772737d9257c
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 11 15:56:17 2022 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Tue Oct 11 15:56:17 2022 +0000
URL:        https://gitweb.gentoo.org/proj/qt.git/commit/?id=18bbf0c4

app-crypt/qca: Add IUSE qt6

Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 app-crypt/qca/qca-9999.ebuild | 85 ++++++++++++++++++++++++++++++-------------
 1 file changed, 59 insertions(+), 26 deletions(-)

diff --git a/app-crypt/qca/qca-9999.ebuild b/app-crypt/qca/qca-9999.ebuild
index b44a8ff2..492d5b29 100644
--- a/app-crypt/qca/qca-9999.ebuild
+++ b/app-crypt/qca/qca-9999.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
 
-inherit cmake kde.org qmake-utils
+inherit cmake kde.org multibuild qmake-utils
 
 DESCRIPTION="Qt Cryptographic Architecture (QCA)"
 HOMEPAGE="https://userbase.kde.org/QCA";
@@ -11,12 +11,12 @@ HOMEPAGE="https://userbase.kde.org/QCA";
 LICENSE="LGPL-2.1"
 SLOT="2"
 KEYWORDS=""
-IUSE="botan debug doc examples gcrypt gpg logger nss pkcs11 sasl softstore 
+ssl test"
+IUSE="botan debug doc examples gcrypt gpg logger nss pkcs11 qt5 qt6 sasl 
softstore +ssl test"
+REQUIRED_USE="|| ( qt5 qt6 )"
 
 RESTRICT="!test? ( test )"
 
 RDEPEND="
-       >=dev-qt/qtcore-5.14:5
        botan? ( dev-libs/botan:= )
        gcrypt? ( dev-libs/libgcrypt:= )
        gpg? ( app-crypt/gnupg )
@@ -25,16 +25,29 @@ RDEPEND="
                >=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:0= )
+       ssl? ( >=dev-libs/openssl-1.1:= )
 "
 DEPEND="${RDEPEND}
        test? (
-               dev-qt/qtnetwork:5
-               dev-qt/qttest:5
+               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
        )
 "
-BDEPEND="doc? ( app-doc/doxygen )"
 
 PATCHES=( "${FILESDIR}/${PN}-disable-pgp-test.patch" )
 
@@ -42,31 +55,51 @@ qca_plugin_use() {
        echo -DWITH_${2:-$1}_PLUGIN=$(usex "$1")
 }
 
+pkg_setup() {
+       MULTIBUILD_VARIANTS=( $(usev qt5) $(usev qt6) )
+}
+
 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_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() {
-       local -x QCA_PLUGIN_PATH="${BUILD_DIR}/lib/qca"
-       cmake_src_test
+       mytest() {
+               local -x QCA_PLUGIN_PATH="${BUILD_DIR}/lib/qca"
+               cmake_src_test
+       }
+       multibuild_foreach_variant mytest
 }
 
 src_install() {
-       cmake_src_install
+       multibuild_foreach_variant cmake_src_install
 
        if use doc; then
                pushd "${BUILD_DIR}" >/dev/null || die

Reply via email to