commit:     f1bc09d2cf978bf4005f8aede9bda2e6d9699f3d
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sun Dec 11 18:50:30 2022 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Nov 25 23:27:41 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f1bc09d2

ecm.eclass: Initial support for Qt6-based consumers

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

 eclass/ecm.eclass | 37 ++++++++++++++++++++++++++-----------
 1 file changed, 26 insertions(+), 11 deletions(-)

diff --git a/eclass/ecm.eclass b/eclass/ecm.eclass
index 0331273faae1..1bf11a946363 100644
--- a/eclass/ecm.eclass
+++ b/eclass/ecm.eclass
@@ -154,11 +154,12 @@ if [[ ${CATEGORY} = kde-frameworks ]]; then
 fi
 : "${KFMIN:=5.106.0}"
 
-# @ECLASS_VARIABLE: KFSLOT
+# @ECLASS_VARIABLE: _KFSLOT
 # @INTERNAL
 # @DESCRIPTION:
 # KDE Frameworks and Qt slot dependency, implied by KFMIN version.
-: "${KFSLOT:=5}"
+: ${_KFSLOT:=5}
+[[ ${KFMIN/.*} == 6 ]] && _KFSLOT=6
 
 case ${ECM_NONGUI} in
        true) ;;
@@ -189,7 +190,11 @@ esac
 case ${ECM_DESIGNERPLUGIN} in
        true)
                IUSE+=" designer"
-               BDEPEND+=" designer? ( dev-qt/designer:${KFSLOT} )"
+               if [[ ${_KFSLOT} == 6 ]]; then
+                       BDEPEND+=" designer? ( 
dev-qt/qttools:${_KFSLOT}[designer] )"
+               else
+                       BDEPEND+=" designer? ( dev-qt/designer:${_KFSLOT} )"
+               fi
                ;;
        false) ;;
        *)
@@ -212,7 +217,7 @@ esac
 case ${ECM_HANDBOOK} in
        true|optional|forceoptional)
                IUSE+=" +handbook"
-               BDEPEND+=" handbook? ( 
>=kde-frameworks/kdoctools-${KFMIN}:${KFSLOT} )"
+               BDEPEND+=" handbook? ( 
>=kde-frameworks/kdoctools-${KFMIN}:${_KFSLOT} )"
                ;;
        false) ;;
        *)
@@ -224,11 +229,13 @@ esac
 case ${ECM_QTHELP} in
        true)
                IUSE+=" doc"
-               COMMONDEPEND+=" doc? ( dev-qt/qt-docs:${KFSLOT} )"
-               BDEPEND+=" doc? (
-                       >=app-doc/doxygen-1.8.13-r1
-                       dev-qt/qthelp:${KFSLOT}
-               )"
+               COMMONDEPEND+=" doc? ( dev-qt/qt-docs:${_KFSLOT} )"
+               BDEPEND+=" doc? ( >=app-doc/doxygen-1.8.13-r1 )"
+               if [[ ${_KFSLOT} == 6 ]]; then
+                       BDEPEND+=" dev-qt/qttools:${_KFSLOT}[assistant]"
+               else
+                       BDEPEND+=" doc? ( dev-qt/qthelp:${_KFSLOT} )"
+               fi
                ;;
        false) ;;
        *)
@@ -240,7 +247,11 @@ esac
 case ${ECM_TEST} in
        true|optional|forceoptional|forceoptional-recursive)
                IUSE+=" test"
-               DEPEND+=" test? ( dev-qt/qttest:${KFSLOT} )"
+               if [[ ${_KFSLOT} == 6 ]]; then
+                       DEPEND+=" test? ( dev-qt/qtbase:${_KFSLOT}[test] )"
+               else
+                       DEPEND+=" test? ( dev-qt/qttest:${_KFSLOT} )"
+               fi
                RESTRICT+=" !test? ( test )"
                ;;
        false) ;;
@@ -255,7 +266,11 @@ BDEPEND+="
        >=kde-frameworks/extra-cmake-modules-${KFMIN}:${KFSLOT}
 "
 RDEPEND+=" >=kde-frameworks/kf-env-4"
-COMMONDEPEND+=" dev-qt/qtcore:${KFSLOT}"
+if [[ ${_KFSLOT} == 6 ]]; then
+       COMMONDEPEND+=" dev-qt/qtbase:${_KFSLOT}"
+else
+       COMMONDEPEND+=" dev-qt/qtcore:${_KFSLOT}"
+fi
 
 DEPEND+=" ${COMMONDEPEND}"
 RDEPEND+=" ${COMMONDEPEND}"

Reply via email to