commit:     4110bf6d3bb1a0fb87abd50ef0cdcb5a60de33d3
Author:     Andreas Sturmlechner <andreas.sturmlechner <AT> gmail <DOT> com>
AuthorDate: Sat May 14 12:45:33 2016 +0000
Commit:     Michael Palimaka <kensington <AT> gentoo <DOT> org>
CommitDate: Thu Jun 16 17:56:24 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4110bf6d

kde5.eclass: Add handling of building plugins for Qt5Designer

KDE_DESIGNERPLUGIN toggles dependencies and configure with USE=designer

 eclass/kde5.eclass | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/eclass/kde5.eclass b/eclass/kde5.eclass
index d081814..9fecdb7 100644
--- a/eclass/kde5.eclass
+++ b/eclass/kde5.eclass
@@ -56,6 +56,13 @@ EXPORT_FUNCTIONS pkg_setup src_unpack src_prepare 
src_configure src_compile src_
 # Otherwise, add debug to IUSE to control building with that flag.
 : ${KDE_DEBUG:=true}
 
+# @ECLASS-VARIABLE: KDE_DESIGNERPLUGIN
+# @DESCRIPTION:
+# If set to "false", do nothing.
+# Otherwise, add "designer" to IUSE to toggle build of designer plugins
+# and add the necessary DEPENDs.
+: ${KDE_DESIGNERPLUGIN:=false}
+
 # @ECLASS-VARIABLE: KDE_DOXYGEN
 # @DESCRIPTION:
 # If set to "false", do nothing.
@@ -192,6 +199,17 @@ case ${KDE_DEBUG} in
                ;;
 esac
 
+case ${KDE_DESIGNERPLUGIN} in
+       false)  ;;
+       *)
+               IUSE+=" designer"
+               DEPEND+=" designer? (
+                       $(add_frameworks_dep kdesignerplugin)
+                       $(add_qt_dep designer)
+               )"
+               ;;
+esac
+
 case ${KDE_EXAMPLES} in
        false)  ;;
        *)
@@ -484,6 +502,10 @@ kde5_src_configure() {
                cmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_KF5DocTools=ON )
        fi
 
+       if ! use_if_iuse designer && [[ ${KDE_DESIGNERPLUGIN} != false ]] ; then
+               cmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Designer=ON )
+       fi
+
        # install mkspecs in the same directory as qt stuff
        cmakeargs+=(-DKDE_INSTALL_USE_QT_SYS_PATHS=ON)
 

Reply via email to