commit: fbc10178e93c0498b1d77a40874d717699a90966 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> AuthorDate: Sat Aug 5 22:12:53 2017 +0000 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> CommitDate: Sat Aug 5 22:12:53 2017 +0000 URL: https://gitweb.gentoo.org/proj/kde.git/commit/?id=fbc10178
kde-frameworks/kidletime: Add IUSE X, xscreensaver x11-libs/libXScrnSaver is only used as a fallback, built as additional plugin that requires Qt5DBus. Upstream commit 79d45ca682b8ae59b839a5ee7341a97ba4122018 Package-Manager: Portage-2.3.6, Repoman-2.3.1 .../kidletime/files/kidletime-5.37.0-qtdbus.patch | 32 ++++++++++++++++++ kde-frameworks/kidletime/kidletime-9999.ebuild | 38 ++++++++++++++++++---- 2 files changed, 63 insertions(+), 7 deletions(-) diff --git a/kde-frameworks/kidletime/files/kidletime-5.37.0-qtdbus.patch b/kde-frameworks/kidletime/files/kidletime-5.37.0-qtdbus.patch new file mode 100644 index 0000000000..44d1bc4bea --- /dev/null +++ b/kde-frameworks/kidletime/files/kidletime-5.37.0-qtdbus.patch @@ -0,0 +1,32 @@ +commit e86d576d4030231617d191a569354e368a038384 +Author: Andreas Sturmlechner <[email protected]> +Date: Sat Aug 5 23:45:39 2017 +0200 + + Qt5DBus is only required with HAVE_XSCREENSAVER + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index e3c89d8..39cae72 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -32,10 +32,6 @@ include(KDECMakeSettings) + set(REQUIRED_QT_VERSION 5.6.0) + find_package(Qt5 ${REQUIRED_QT_VERSION} CONFIG REQUIRED Widgets) + +-if(NOT WIN32 AND NOT APPLE) +- find_package(Qt5 ${REQUIRED_QT_VERSION} CONFIG REQUIRED DBus) +-endif() +- + if(APPLE) + cmake_find_frameworks(CoreFoundation Carbon) + endif() +@@ -66,6 +62,10 @@ if(X11_FOUND) + set(HAVE_XSCREENSAVER ${X11_Xscreensaver_FOUND}) + add_feature_info("X-Screensaver based poller" HAVE_XSCREENSAVER "KIdleTime fallback mode (libXss)") + ++ if(HAVE_XSCREENSAVER AND NOT WIN32) ++ find_package(Qt5 ${REQUIRED_QT_VERSION} CONFIG REQUIRED DBus) ++ endif() ++ + if(NOT HAVE_XSCREENSAVER AND NOT HAVE_XSYNC) + message(FATAL_ERROR "\nNeither the XSync (libXext) nor XScreensaver (libXss) development package was found.\nPlease install one of them (XSync is recommended)") + endif() diff --git a/kde-frameworks/kidletime/kidletime-9999.ebuild b/kde-frameworks/kidletime/kidletime-9999.ebuild index 4779b3a045..812edf6821 100644 --- a/kde-frameworks/kidletime/kidletime-9999.ebuild +++ b/kde-frameworks/kidletime/kidletime-9999.ebuild @@ -9,16 +9,40 @@ inherit kde5 DESCRIPTION="Framework for detection and notification of device idle time" LICENSE="LGPL-2+" KEYWORDS="" -IUSE="" +IUSE="X xscreensaver" + +REQUIRED_USE="xscreensaver? ( X )" RDEPEND=" - $(add_qt_dep qtdbus) $(add_qt_dep qtgui) $(add_qt_dep qtwidgets) - $(add_qt_dep qtx11extras) - x11-libs/libX11 - x11-libs/libXScrnSaver - x11-libs/libXext - x11-libs/libxcb + X? ( + $(add_qt_dep qtx11extras) + x11-libs/libX11 + x11-libs/libxcb + x11-libs/libXext + ) + xscreensaver? ( + $(add_qt_dep qtdbus) + x11-libs/libXScrnSaver + ) " DEPEND="${RDEPEND}" + +PATCHES=( "${FILESDIR}/${PN}-5.37.0-qtdbus.patch" ) + +src_prepare() { + kde5_src_prepare + if ! use xscreensaver; then + sed -i -e "s/\${X11_Xscreensaver_FOUND}/0/" CMakeLists.txt || die + fi +} + +src_configure() { + local mycmakeargs=( + $(cmake-utils_use_find_package X X11) + $(cmake-utils_use_find_package X XCB) + ) + + kde5_src_configure +}
