public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] proj/kde:master commit in: kde-frameworks/kholidays/, kde-frameworks/kunitconversion/, ...
@ 2019-11-10 17:11 Andreas Sturmlechner
  0 siblings, 0 replies; only message in thread
From: Andreas Sturmlechner @ 2019-11-10 17:11 UTC (permalink / raw
  To: gentoo-commits

commit:     cc403116185501b65c67ccfb61515cec1141e668
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Mon Nov  4 15:50:11 2019 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sun Nov 10 17:06:53 2019 +0000
URL:        https://gitweb.gentoo.org/proj/kde.git/commit/?id=cc403116

kde-frameworks: Port 9999 to ecm.eclass and kde.org.eclass

Package-Manager: Portage-2.3.78, Repoman-2.3.17
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 kde-frameworks/attica/attica-9999.ebuild           |  7 +-
 kde-frameworks/baloo/baloo-9999.ebuild             | 33 ++++----
 kde-frameworks/bluez-qt/bluez-qt-9999.ebuild       | 13 +--
 .../extra-cmake-modules-9999.ebuild                |  7 +-
 .../frameworkintegration-9999.ebuild               | 34 ++++----
 .../kactivities-stats-9999.ebuild                  | 12 +--
 kde-frameworks/kactivities/kactivities-9999.ebuild | 19 +++--
 kde-frameworks/karchive/karchive-9999.ebuild       |  4 +-
 kde-frameworks/kauth/kauth-9999.ebuild             | 18 +++--
 kde-frameworks/kbookmarks/kbookmarks-9999.ebuild   | 28 ++++---
 .../kcalendarcore/kcalendarcore-9999.ebuild        |  7 +-
 kde-frameworks/kcmutils/kcmutils-9999.ebuild       | 36 +++++----
 kde-frameworks/kcodecs/kcodecs-9999.ebuild         |  5 +-
 kde-frameworks/kcompletion/kcompletion-9999.ebuild | 15 ++--
 kde-frameworks/kconfig/kconfig-9999.ebuild         | 15 ++--
 .../kconfigwidgets/kconfigwidgets-9999.ebuild      | 28 ++++---
 kde-frameworks/kcontacts/kcontacts-9999.ebuild     | 18 +++--
 kde-frameworks/kcoreaddons/kcoreaddons-9999.ebuild | 11 +--
 kde-frameworks/kcrash/kcrash-9999.ebuild           | 16 ++--
 kde-frameworks/kdbusaddons/kdbusaddons-9999.ebuild | 11 +--
 .../kdeclarative/kdeclarative-9999.ebuild          | 34 ++++----
 kde-frameworks/kded/kded-9999.ebuild               | 30 +++----
 .../kdelibs4support/kdelibs4support-9999.ebuild    | 94 +++++++++++-----------
 .../kdesignerplugin/kdesignerplugin-9999.ebuild    | 16 ++--
 kde-frameworks/kdesu/kdesu-9999.ebuild             | 17 ++--
 kde-frameworks/kdewebkit/kdewebkit-9999.ebuild     | 34 ++++----
 kde-frameworks/kdnssd/kdnssd-9999.ebuild           | 11 +--
 kde-frameworks/kdoctools/kdoctools-9999.ebuild     | 13 +--
 kde-frameworks/kemoticons/kemoticons-9999.ebuild   | 18 +++--
 .../kfilemetadata/kfilemetadata-9999.ebuild        | 21 ++---
 .../kglobalaccel/kglobalaccel-9999.ebuild          | 24 +++---
 kde-frameworks/kguiaddons/kguiaddons-9999.ebuild   |  7 +-
 kde-frameworks/kholidays/kholidays-9999.ebuild     | 13 +--
 kde-frameworks/khtml/khtml-9999.ebuild             | 66 +++++++--------
 kde-frameworks/ki18n/ki18n-9999.ebuild             | 11 +--
 kde-frameworks/kiconthemes/kiconthemes-9999.ebuild | 26 +++---
 kde-frameworks/kidletime/kidletime-9999.ebuild     | 17 ++--
 .../kimageformats/kimageformats-9999.ebuild        | 14 ++--
 kde-frameworks/kinit/kinit-9999.ebuild             | 30 +++----
 kde-frameworks/kio/kio-9999.ebuild                 | 72 +++++++++--------
 kde-frameworks/kirigami/kirigami-9999.ebuild       | 29 +++----
 kde-frameworks/kitemmodels/kitemmodels-9999.ebuild |  5 +-
 kde-frameworks/kitemviews/kitemviews-9999.ebuild   |  9 ++-
 kde-frameworks/kjobwidgets/kjobwidgets-9999.ebuild | 20 ++---
 kde-frameworks/kjs/kjs-9999.ebuild                 |  6 +-
 kde-frameworks/kjsembed/kjsembed-9999.ebuild       | 24 +++---
 .../kmediaplayer/kmediaplayer-9999.ebuild          | 14 ++--
 kde-frameworks/knewstuff/knewstuff-9999.ebuild     | 44 +++++-----
 .../knotifications/knotifications-9999.ebuild      | 28 ++++---
 .../knotifyconfig/knotifyconfig-9999.ebuild        | 20 ++---
 kde-frameworks/kpackage/kpackage-9999.ebuild       | 15 ++--
 kde-frameworks/kparts/kparts-9999.ebuild           | 30 +++----
 kde-frameworks/kpeople/kpeople-9999.ebuild         | 28 ++++---
 kde-frameworks/kplotting/kplotting-9999.ebuild     |  8 +-
 kde-frameworks/kpty/kpty-9999.ebuild               |  9 ++-
 kde-frameworks/kross/kross-9999.ebuild             | 34 ++++----
 kde-frameworks/krunner/krunner-9999.ebuild         | 30 +++----
 kde-frameworks/kservice/kservice-9999.ebuild       | 26 +++---
 kde-frameworks/ktexteditor/ktexteditor-9999.ebuild | 56 ++++++-------
 .../ktextwidgets/ktextwidgets-9999.ebuild          | 32 ++++----
 .../kunitconversion/kunitconversion-9999.ebuild    | 10 ++-
 kde-frameworks/kwallet/kwallet-9999.ebuild         | 32 ++++----
 kde-frameworks/kwayland/kwayland-9999.ebuild       | 12 +--
 .../kwidgetsaddons/kwidgetsaddons-9999.ebuild      | 13 +--
 .../kwindowsystem/kwindowsystem-9999.ebuild        | 13 +--
 kde-frameworks/kxmlgui/kxmlgui-9999.ebuild         | 44 +++++-----
 .../kxmlrpcclient/kxmlrpcclient-9999.ebuild        | 14 ++--
 .../modemmanager-qt/modemmanager-qt-9999.ebuild    |  8 +-
 .../networkmanager-qt-9999.ebuild                  |  9 ++-
 .../oxygen-icons/oxygen-icons-9999.ebuild          |  6 +-
 kde-frameworks/plasma/plasma-9999.ebuild           | 64 ++++++++-------
 kde-frameworks/prison/prison-9999.ebuild           |  9 ++-
 kde-frameworks/purpose/purpose-9999.ebuild         | 30 +++----
 .../qqc2-desktop-style-9999.ebuild                 | 22 ++---
 kde-frameworks/solid/solid-9999.ebuild             | 17 ++--
 kde-frameworks/sonnet/sonnet-9999.ebuild           | 13 +--
 kde-frameworks/syndication/syndication-9999.ebuild | 14 ++--
 .../syntax-highlighting-9999.ebuild                | 15 ++--
 .../threadweaver/threadweaver-9999.ebuild          |  4 +-
 79 files changed, 925 insertions(+), 796 deletions(-)

diff --git a/kde-frameworks/attica/attica-9999.ebuild b/kde-frameworks/attica/attica-9999.ebuild
index e4c52d3d9b..3677f01051 100644
--- a/kde-frameworks/attica/attica-9999.ebuild
+++ b/kde-frameworks/attica/attica-9999.ebuild
@@ -3,7 +3,8 @@
 
 EAPI=7
 
-inherit kde5
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Framework providing access to Open Collaboration Services"
 LICENSE="LGPL-2.1+"
@@ -11,7 +12,7 @@ KEYWORDS=""
 IUSE=""
 
 RDEPEND="
-	$(add_qt_dep qtnetwork)
+	>=dev-qt/qtnetwork-${QTMIN}:5
 "
 DEPEND="${RDEPEND}"
 
@@ -21,5 +22,5 @@ src_test() {
 		-E "(providertest)"
 	)
 
-	kde5_src_test
+	ecm_src_test
 }

diff --git a/kde-frameworks/baloo/baloo-9999.ebuild b/kde-frameworks/baloo/baloo-9999.ebuild
index 17c1032a13..f53254658c 100644
--- a/kde-frameworks/baloo/baloo-9999.ebuild
+++ b/kde-frameworks/baloo/baloo-9999.ebuild
@@ -3,28 +3,31 @@
 
 EAPI=7
 
-KDE_TEST="forceoptional"
+ECM_TEST="forceoptional"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework for searching and managing metadata"
+LICENSE="LGPL-2+"
 KEYWORDS=""
 IUSE=""
 
 DEPEND="
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep kcrash)
-	$(add_frameworks_dep kdbusaddons)
-	$(add_frameworks_dep kfilemetadata)
-	$(add_frameworks_dep ki18n)
-	$(add_frameworks_dep kidletime)
-	$(add_frameworks_dep kio)
-	$(add_frameworks_dep solid)
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtdeclarative)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtwidgets)
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/kcrash-${PVCUT}:5
+	>=kde-frameworks/kdbusaddons-${PVCUT}:5
+	>=kde-frameworks/kfilemetadata-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=kde-frameworks/kidletime-${PVCUT}:5
+	>=kde-frameworks/kio-${PVCUT}:5
+	>=kde-frameworks/solid-${PVCUT}:5
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtdeclarative-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
 	>=dev-db/lmdb-0.9.17
 "
 RDEPEND="${DEPEND}

diff --git a/kde-frameworks/bluez-qt/bluez-qt-9999.ebuild b/kde-frameworks/bluez-qt/bluez-qt-9999.ebuild
index bb563902ed..fb63ec999e 100644
--- a/kde-frameworks/bluez-qt/bluez-qt-9999.ebuild
+++ b/kde-frameworks/bluez-qt/bluez-qt-9999.ebuild
@@ -3,8 +3,9 @@
 
 EAPI=7
 
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5 udev
+inherit ecm kde.org udev
 
 DESCRIPTION="Qt wrapper for Bluez 5 DBus API"
 LICENSE="LGPL-2"
@@ -12,9 +13,9 @@ KEYWORDS=""
 IUSE=""
 
 DEPEND="
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtdeclarative)
-	$(add_qt_dep qtnetwork)
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtdeclarative-${QTMIN}:5
+	>=dev-qt/qtnetwork-${QTMIN}:5
 "
 RDEPEND="${DEPEND}"
 
@@ -23,7 +24,7 @@ src_configure() {
 		-DUDEV_RULES_INSTALL_DIR="$(get_udevdir)/rules.d"
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }
 
 src_test() {
@@ -33,5 +34,5 @@ src_test() {
 		-E "(managertest)"
 	)
 
-	kde5_src_test
+	ecm_src_test
 }

diff --git a/kde-frameworks/extra-cmake-modules/extra-cmake-modules-9999.ebuild b/kde-frameworks/extra-cmake-modules/extra-cmake-modules-9999.ebuild
index 14fce598df..fc943920c5 100644
--- a/kde-frameworks/extra-cmake-modules/extra-cmake-modules-9999.ebuild
+++ b/kde-frameworks/extra-cmake-modules/extra-cmake-modules-9999.ebuild
@@ -4,6 +4,7 @@
 EAPI=7
 
 PYTHON_COMPAT=( python3_{6,7} )
+QTMIN=5.12.3
 inherit cmake-utils kde.org python-any-r1
 
 DESCRIPTION="Extra modules and scripts for CMake"
@@ -17,11 +18,11 @@ BDEPEND="
 	doc? (
 		${PYTHON_DEPS}
 		$(python_gen_any_dep 'dev-python/sphinx[${PYTHON_USEDEP}]')
-		dev-qt/qthelp:5
+		>=dev-qt/qthelp-${QTMIN}:5
 	)
 	test? (
-		dev-qt/linguist-tools:5
-		dev-qt/qtcore:5
+		>=dev-qt/linguist-tools-${QTMIN}:5
+		>=dev-qt/qtcore-${QTMIN}:5
 	)
 "
 RDEPEND="

diff --git a/kde-frameworks/frameworkintegration/frameworkintegration-9999.ebuild b/kde-frameworks/frameworkintegration/frameworkintegration-9999.ebuild
index 95ab7cbc86..b5801ca000 100644
--- a/kde-frameworks/frameworkintegration/frameworkintegration-9999.ebuild
+++ b/kde-frameworks/frameworkintegration/frameworkintegration-9999.ebuild
@@ -3,9 +3,11 @@
 
 EAPI=7
 
-KDE_QTHELP="false"
+ECM_QTHELP="false"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework for integrating Qt applications with KDE Plasma workspaces"
 LICENSE="LGPL-2+"
@@ -14,22 +16,22 @@ IUSE="appstream X"
 
 # drop qtwidgets subslot operator when QT_MINIMAL >= 5.14.0
 DEPEND="
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kconfigwidgets)
-	$(add_frameworks_dep ki18n)
-	$(add_frameworks_dep kiconthemes)
-	$(add_frameworks_dep knewstuff)
-	$(add_frameworks_dep knotifications)
-	$(add_frameworks_dep kpackage)
-	$(add_frameworks_dep kwidgetsaddons)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtwidgets '' '' '5=')
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kconfigwidgets-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=kde-frameworks/kiconthemes-${PVCUT}:5
+	>=kde-frameworks/knewstuff-${PVCUT}:5
+	>=kde-frameworks/knotifications-${PVCUT}:5
+	>=kde-frameworks/kpackage-${PVCUT}:5
+	>=kde-frameworks/kwidgetsaddons-${PVCUT}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5=
 	appstream? (
 		app-admin/packagekit-qt
 		dev-libs/appstream[qt5]
 	)
 	X? (
-		$(add_qt_dep qtx11extras)
+		>=dev-qt/qtx11extras-${QTMIN}:5
 		x11-libs/libxcb
 	)
 "
@@ -39,8 +41,8 @@ RDEPEND="${DEPEND}"
 RESTRICT+=" test"
 
 src_prepare() {
-	punt_bogus_dep Qt5 DBus
-	kde5_src_prepare
+	ecm_punt_bogus_dep Qt5 DBus
+	ecm_src_prepare
 }
 
 src_configure() {
@@ -50,5 +52,5 @@ src_configure() {
 		$(cmake-utils_use_find_package X XCB)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }

diff --git a/kde-frameworks/kactivities-stats/kactivities-stats-9999.ebuild b/kde-frameworks/kactivities-stats/kactivities-stats-9999.ebuild
index ad2f137677..5eaa535484 100644
--- a/kde-frameworks/kactivities-stats/kactivities-stats-9999.ebuild
+++ b/kde-frameworks/kactivities-stats/kactivities-stats-9999.ebuild
@@ -3,7 +3,9 @@
 
 EAPI=7
 
-inherit kde5
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Framework for getting the usage statistics collected by the activities service"
 LICENSE="LGPL-2+"
@@ -11,10 +13,10 @@ KEYWORDS=""
 IUSE=""
 
 RDEPEND="
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtsql)
-	$(add_frameworks_dep kactivities)
-	$(add_frameworks_dep kconfig)
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtsql-${QTMIN}:5
+	>=kde-frameworks/kactivities-${PVCUT}:5
+	>=kde-frameworks/kconfig-${PVCUT}:5
 "
 DEPEND="${RDEPEND}
 	>=dev-libs/boost-1.54

diff --git a/kde-frameworks/kactivities/kactivities-9999.ebuild b/kde-frameworks/kactivities/kactivities-9999.ebuild
index 16b7b62f1d..4a69e3f847 100644
--- a/kde-frameworks/kactivities/kactivities-9999.ebuild
+++ b/kde-frameworks/kactivities/kactivities-9999.ebuild
@@ -3,7 +3,10 @@
 
 EAPI=7
 
-inherit kde5
+PVCUT=$(ver_cut 1-2)
+PLASMA_MINIMAL=5.16.5
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Framework for working with KDE activities"
 LICENSE="|| ( LGPL-2.1 LGPL-3 )"
@@ -11,15 +14,15 @@ KEYWORDS=""
 IUSE=""
 
 COMMON_DEPEND="
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtdeclarative widgets)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtsql)
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtdeclarative-${QTMIN}:5[widgets]
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtsql-${QTMIN}:5
 "
 RDEPEND="${COMMON_DEPEND}
-	$(add_plasma_dep kactivitymanagerd)
+	>=kde-plasma/kactivitymanagerd-${PLASMA_MINIMAL}:5
 "
 DEPEND="${COMMON_DEPEND}
 	>=dev-libs/boost-1.54

diff --git a/kde-frameworks/karchive/karchive-9999.ebuild b/kde-frameworks/karchive/karchive-9999.ebuild
index d82b471c01..92296f3d7b 100644
--- a/kde-frameworks/karchive/karchive-9999.ebuild
+++ b/kde-frameworks/karchive/karchive-9999.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=7
 
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework for reading, creation, and manipulation of various archive formats"
 LICENSE="GPL-2 LGPL-2.1"
@@ -23,5 +23,5 @@ src_configure() {
 		$(cmake-utils_use_find_package lzma LibLZMA)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }

diff --git a/kde-frameworks/kauth/kauth-9999.ebuild b/kde-frameworks/kauth/kauth-9999.ebuild
index da7c0979dd..8b5dddf69b 100644
--- a/kde-frameworks/kauth/kauth-9999.ebuild
+++ b/kde-frameworks/kauth/kauth-9999.ebuild
@@ -3,8 +3,10 @@
 
 EAPI=7
 
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework to let applications perform actions as a privileged user"
 LICENSE="LGPL-2.1+"
@@ -12,13 +14,13 @@ KEYWORDS=""
 IUSE="nls +policykit"
 
 BDEPEND="
-	nls? ( $(add_qt_dep linguist-tools) )
+	nls? ( >=dev-qt/linguist-tools-${QTMIN}:5 )
 "
 DEPEND="
-	$(add_frameworks_dep kcoreaddons)
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtwidgets)
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
 	policykit? ( sys-auth/polkit-qt[qt5(+)] )
 "
 RDEPEND="${DEPEND}"
@@ -29,7 +31,7 @@ src_configure() {
 		$(cmake-utils_use_find_package policykit PolkitQt5-1)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }
 
 src_test() {
@@ -38,5 +40,5 @@ src_test() {
 		-E "(KAuthHelperTest)"
 	)
 
-	kde5_src_test
+	ecm_src_test
 }

diff --git a/kde-frameworks/kbookmarks/kbookmarks-9999.ebuild b/kde-frameworks/kbookmarks/kbookmarks-9999.ebuild
index 40a36966c9..421b04048b 100644
--- a/kde-frameworks/kbookmarks/kbookmarks-9999.ebuild
+++ b/kde-frameworks/kbookmarks/kbookmarks-9999.ebuild
@@ -3,8 +3,10 @@
 
 EAPI=7
 
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework for managing bookmarks stored in XBEL format"
 LICENSE="LGPL-2+"
@@ -12,20 +14,20 @@ KEYWORDS=""
 IUSE="nls"
 
 BDEPEND="
-	nls? ( $(add_qt_dep linguist-tools) )
+	nls? ( >=dev-qt/linguist-tools-${QTMIN}:5 )
 "
 RDEPEND="
-	$(add_frameworks_dep kcodecs)
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep kiconthemes)
-	$(add_frameworks_dep kwidgetsaddons)
-	$(add_frameworks_dep kxmlgui)
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtwidgets)
-	$(add_qt_dep qtxml)
+	>=kde-frameworks/kcodecs-${PVCUT}:5
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/kiconthemes-${PVCUT}:5
+	>=kde-frameworks/kwidgetsaddons-${PVCUT}:5
+	>=kde-frameworks/kxmlgui-${PVCUT}:5
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
+	>=dev-qt/qtxml-${QTMIN}:5
 "
 DEPEND="${RDEPEND}
-	$(add_frameworks_dep kconfigwidgets)
+	>=kde-frameworks/kconfigwidgets-${PVCUT}:5
 "

diff --git a/kde-frameworks/kcalendarcore/kcalendarcore-9999.ebuild b/kde-frameworks/kcalendarcore/kcalendarcore-9999.ebuild
index 5c71da5833..aadd0bc161 100644
--- a/kde-frameworks/kcalendarcore/kcalendarcore-9999.ebuild
+++ b/kde-frameworks/kcalendarcore/kcalendarcore-9999.ebuild
@@ -3,9 +3,10 @@
 
 EAPI=7
 
-KDE_TEST="true"
+ECM_TEST="true"
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Library for interfacing with calendars"
 LICENSE="GPL-2+ test? ( LGPL-3+ )"
@@ -16,7 +17,7 @@ BDEPEND="
 	sys-devel/bison
 "
 DEPEND="
-	$(add_qt_dep qtgui)
+	>=dev-qt/qtgui-${QTMIN}:5
 	dev-libs/libical:=
 "
 RDEPEND="${DEPEND}

diff --git a/kde-frameworks/kcmutils/kcmutils-9999.ebuild b/kde-frameworks/kcmutils/kcmutils-9999.ebuild
index 5aee0a3ebd..c0ac5e2d4e 100644
--- a/kde-frameworks/kcmutils/kcmutils-9999.ebuild
+++ b/kde-frameworks/kcmutils/kcmutils-9999.ebuild
@@ -3,8 +3,10 @@
 
 EAPI=7
 
-KDE_TEST="false"
-inherit kde5
+ECM_TEST="false"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Framework to work with KDE System Settings modules"
 LICENSE="LGPL-2"
@@ -12,20 +14,20 @@ KEYWORDS=""
 IUSE=""
 
 DEPEND="
-	$(add_frameworks_dep kauth)
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kconfigwidgets)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep kdeclarative)
-	$(add_frameworks_dep ki18n)
-	$(add_frameworks_dep kiconthemes)
-	$(add_frameworks_dep kitemviews)
-	$(add_frameworks_dep kservice)
-	$(add_frameworks_dep kwidgetsaddons)
-	$(add_frameworks_dep kxmlgui)
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtdeclarative 'widgets')
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtwidgets)
+	>=kde-frameworks/kauth-${PVCUT}:5
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kconfigwidgets-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/kdeclarative-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=kde-frameworks/kiconthemes-${PVCUT}:5
+	>=kde-frameworks/kitemviews-${PVCUT}:5
+	>=kde-frameworks/kservice-${PVCUT}:5
+	>=kde-frameworks/kwidgetsaddons-${PVCUT}:5
+	>=kde-frameworks/kxmlgui-${PVCUT}:5
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtdeclarative-${QTMIN}:5[widgets]
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
 "
 RDEPEND="${DEPEND}"

diff --git a/kde-frameworks/kcodecs/kcodecs-9999.ebuild b/kde-frameworks/kcodecs/kcodecs-9999.ebuild
index 2d2b211f71..72a66627c7 100644
--- a/kde-frameworks/kcodecs/kcodecs-9999.ebuild
+++ b/kde-frameworks/kcodecs/kcodecs-9999.ebuild
@@ -3,7 +3,8 @@
 
 EAPI=7
 
-inherit kde5
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Framework for manipulating strings using various encodings"
 LICENSE="GPL-2+ LGPL-2+"
@@ -12,5 +13,5 @@ IUSE="nls"
 
 BDEPEND="
 	dev-util/gperf
-	nls? ( $(add_qt_dep linguist-tools) )
+	nls? ( >=dev-qt/linguist-tools-${QTMIN}:5 )
 "

diff --git a/kde-frameworks/kcompletion/kcompletion-9999.ebuild b/kde-frameworks/kcompletion/kcompletion-9999.ebuild
index a428857b7e..dcee2ea10a 100644
--- a/kde-frameworks/kcompletion/kcompletion-9999.ebuild
+++ b/kde-frameworks/kcompletion/kcompletion-9999.ebuild
@@ -4,20 +4,23 @@
 EAPI=7
 
 ECM_DESIGNERPLUGIN="true"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework for common completion tasks such as filename or URL completion"
+LICENSE="LGPL-2+"
 KEYWORDS=""
 IUSE="nls"
 
 BDEPEND="
-	nls? ( $(add_qt_dep linguist-tools) )
+	nls? ( >=dev-qt/linguist-tools-${QTMIN}:5 )
 "
 DEPEND="
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kwidgetsaddons)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtwidgets)
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kwidgetsaddons-${PVCUT}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
 "
 RDEPEND="${DEPEND}"

diff --git a/kde-frameworks/kconfig/kconfig-9999.ebuild b/kde-frameworks/kconfig/kconfig-9999.ebuild
index a6d1b9ccac..adec6f43e6 100644
--- a/kde-frameworks/kconfig/kconfig-9999.ebuild
+++ b/kde-frameworks/kconfig/kconfig-9999.ebuild
@@ -3,8 +3,9 @@
 
 EAPI=7
 
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework for reading and writing configuration"
 LICENSE="LGPL-2+"
@@ -12,15 +13,15 @@ KEYWORDS=""
 IUSE="dbus nls"
 
 BDEPEND="
-	nls? ( $(add_qt_dep linguist-tools) )
+	nls? ( >=dev-qt/linguist-tools-${QTMIN}:5 )
 "
 RDEPEND="
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtxml)
-	dbus? ( $(add_qt_dep qtdbus) )
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtxml-${QTMIN}:5
+	dbus? ( >=dev-qt/qtdbus-${QTMIN}:5 )
 "
 DEPEND="${RDEPEND}
-	test? ( $(add_qt_dep qtconcurrent) )
+	test? ( >=dev-qt/qtconcurrent-${QTMIN}:5 )
 "
 
 # bug 560086
@@ -32,5 +33,5 @@ src_configure() {
 	local mycmakeargs=(
 		-DKCONFIG_USE_DBUS=$(usex dbus)
 	)
-	kde5_src_configure
+	ecm_src_configure
 }

diff --git a/kde-frameworks/kconfigwidgets/kconfigwidgets-9999.ebuild b/kde-frameworks/kconfigwidgets/kconfigwidgets-9999.ebuild
index cc32dab035..08d76577eb 100644
--- a/kde-frameworks/kconfigwidgets/kconfigwidgets-9999.ebuild
+++ b/kde-frameworks/kconfigwidgets/kconfigwidgets-9999.ebuild
@@ -4,8 +4,10 @@
 EAPI=7
 
 ECM_DESIGNERPLUGIN="true"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework providing an assortment of configuration-related widgets"
 LICENSE="LGPL-2+"
@@ -13,19 +15,19 @@ KEYWORDS=""
 IUSE="+man"
 
 BDEPEND="
-	man? ( $(add_frameworks_dep kdoctools) )
+	man? ( >=kde-frameworks/kdoctools-${PVCUT}:5 )
 "
 DEPEND="
-	$(add_frameworks_dep kauth)
-	$(add_frameworks_dep kcodecs)
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep kguiaddons)
-	$(add_frameworks_dep ki18n)
-	$(add_frameworks_dep kwidgetsaddons)
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtwidgets)
+	>=kde-frameworks/kauth-${PVCUT}:5
+	>=kde-frameworks/kcodecs-${PVCUT}:5
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/kguiaddons-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=kde-frameworks/kwidgetsaddons-${PVCUT}:5
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
 "
 RDEPEND="${DEPEND}"
 
@@ -34,5 +36,5 @@ src_configure() {
 		$(cmake-utils_use_find_package man KF5DocTools)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }

diff --git a/kde-frameworks/kcontacts/kcontacts-9999.ebuild b/kde-frameworks/kcontacts/kcontacts-9999.ebuild
index d02670721a..deb522b689 100644
--- a/kde-frameworks/kcontacts/kcontacts-9999.ebuild
+++ b/kde-frameworks/kcontacts/kcontacts-9999.ebuild
@@ -3,9 +3,11 @@
 
 EAPI=7
 
-KDE_TEST="true"
+ECM_TEST="true"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Address book API based on KDE Frameworks"
 LICENSE="GPL-2+"
@@ -13,11 +15,11 @@ KEYWORDS=""
 IUSE=""
 
 DEPEND="
-	$(add_frameworks_dep kcodecs)
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep ki18n)
-	$(add_qt_dep qtgui)
+	>=kde-frameworks/kcodecs-${PVCUT}:5
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=dev-qt/qtgui-${QTMIN}:5
 "
 RDEPEND="${DEPEND}
 	!kde-apps/kcontacts:5
@@ -30,5 +32,5 @@ src_test() {
 	local myctestargs=(
 		-E "(kcontacts-addresstest|kcontacts-picturetest)"
 	)
-	kde5_src_test
+	ecm_src_test
 }

diff --git a/kde-frameworks/kcoreaddons/kcoreaddons-9999.ebuild b/kde-frameworks/kcoreaddons/kcoreaddons-9999.ebuild
index aefadaa652..7c386b6a36 100644
--- a/kde-frameworks/kcoreaddons/kcoreaddons-9999.ebuild
+++ b/kde-frameworks/kcoreaddons/kcoreaddons-9999.ebuild
@@ -3,7 +3,8 @@
 
 EAPI=7
 
-inherit kde5
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Framework for solving common problems such as caching, randomisation, and more"
 LICENSE="LGPL-2+"
@@ -11,10 +12,10 @@ KEYWORDS=""
 IUSE="fam nls"
 
 BDEPEND="
-	nls? ( $(add_qt_dep linguist-tools) )
+	nls? ( >=dev-qt/linguist-tools-${QTMIN}:5 )
 "
 DEPEND="
-	$(add_qt_dep qtcore 'icu')
+	>=dev-qt/qtcore-${QTMIN}:5[icu]
 	fam? ( virtual/fam )
 "
 RDEPEND="${DEPEND}"
@@ -25,7 +26,7 @@ src_configure() {
 		$(cmake-utils_use_find_package fam FAM)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }
 
 src_test() {
@@ -35,5 +36,5 @@ src_test() {
 		-E "(kautosavefiletest|kdirwatch_qfswatch_unittest|kdirwatch_stat_unittest|kformattest)"
 	)
 
-	kde5_src_test
+	ecm_src_test
 }

diff --git a/kde-frameworks/kcrash/kcrash-9999.ebuild b/kde-frameworks/kcrash/kcrash-9999.ebuild
index edb3fad0e2..f832798613 100644
--- a/kde-frameworks/kcrash/kcrash-9999.ebuild
+++ b/kde-frameworks/kcrash/kcrash-9999.ebuild
@@ -3,8 +3,10 @@
 
 EAPI=7
 
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework for intercepting and handling application crashes"
 LICENSE="LGPL-2+"
@@ -15,16 +17,16 @@ IUSE="nls"
 RESTRICT+=" test"
 
 BDEPEND="
-	nls? ( $(add_qt_dep linguist-tools) )
+	nls? ( >=dev-qt/linguist-tools-${QTMIN}:5 )
 "
 RDEPEND="
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep kwindowsystem)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtx11extras)
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/kwindowsystem-${PVCUT}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtx11extras-${QTMIN}:5
 	x11-libs/libX11
 "
 DEPEND="${RDEPEND}
 	x11-base/xorg-proto
-	test? ( $(add_qt_dep qtwidgets) )
+	test? ( >=dev-qt/qtwidgets-${QTMIN}:5 )
 "

diff --git a/kde-frameworks/kdbusaddons/kdbusaddons-9999.ebuild b/kde-frameworks/kdbusaddons/kdbusaddons-9999.ebuild
index 5b6b51eacc..d024381c9a 100644
--- a/kde-frameworks/kdbusaddons/kdbusaddons-9999.ebuild
+++ b/kde-frameworks/kdbusaddons/kdbusaddons-9999.ebuild
@@ -3,8 +3,9 @@
 
 EAPI=7
 
+QTMIN=5.12.3
 VIRTUALDBUS_TEST="true"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework for registering services and applications per freedesktop standards"
 LICENSE="LGPL-2+"
@@ -12,11 +13,11 @@ KEYWORDS=""
 IUSE="nls X"
 
 BDEPEND="
-	nls? ( $(add_qt_dep linguist-tools) )
+	nls? ( >=dev-qt/linguist-tools-${QTMIN}:5 )
 "
 DEPEND="
-	$(add_qt_dep qtdbus)
-	X? ( $(add_qt_dep qtx11extras) )
+	>=dev-qt/qtdbus-${QTMIN}:5
+	X? ( >=dev-qt/qtx11extras-${QTMIN}:5 )
 "
 RDEPEND="${DEPEND}"
 
@@ -25,5 +26,5 @@ src_configure() {
 		$(cmake-utils_use_find_package X Qt5X11Extras)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }

diff --git a/kde-frameworks/kdeclarative/kdeclarative-9999.ebuild b/kde-frameworks/kdeclarative/kdeclarative-9999.ebuild
index 78894d6e78..cdb59d8d8e 100644
--- a/kde-frameworks/kdeclarative/kdeclarative-9999.ebuild
+++ b/kde-frameworks/kdeclarative/kdeclarative-9999.ebuild
@@ -3,8 +3,10 @@
 
 EAPI=7
 
-KDE_TEST="false"
-inherit kde5
+ECM_TEST="false"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Framework providing integration of QML and KDE work spaces"
 LICENSE="LGPL-2+"
@@ -13,20 +15,20 @@ IUSE=""
 
 # drop qtgui subslot operator when QT_MINIMAL >= 5.14.0
 DEPEND="
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep kglobalaccel)
-	$(add_frameworks_dep ki18n)
-	$(add_frameworks_dep kiconthemes)
-	$(add_frameworks_dep kio)
-	$(add_frameworks_dep kpackage)
-	$(add_frameworks_dep kservice)
-	$(add_frameworks_dep kwidgetsaddons)
-	$(add_frameworks_dep kwindowsystem)
-	$(add_qt_dep qtdeclarative)
-	$(add_qt_dep qtgui '' '' '5=')
-	$(add_qt_dep qtnetwork)
-	$(add_qt_dep qtwidgets)
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/kglobalaccel-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=kde-frameworks/kiconthemes-${PVCUT}:5
+	>=kde-frameworks/kio-${PVCUT}:5
+	>=kde-frameworks/kpackage-${PVCUT}:5
+	>=kde-frameworks/kservice-${PVCUT}:5
+	>=kde-frameworks/kwidgetsaddons-${PVCUT}:5
+	>=kde-frameworks/kwindowsystem-${PVCUT}:5
+	>=dev-qt/qtdeclarative-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5=
+	>=dev-qt/qtnetwork-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
 	media-libs/libepoxy
 "
 RDEPEND="${DEPEND}"

diff --git a/kde-frameworks/kded/kded-9999.ebuild b/kde-frameworks/kded/kded-9999.ebuild
index 4826f9e65c..65fd0cb9ef 100644
--- a/kde-frameworks/kded/kded-9999.ebuild
+++ b/kde-frameworks/kded/kded-9999.ebuild
@@ -3,9 +3,11 @@
 
 EAPI=7
 
-KDE_QTHELP="false"
-KDE_TEST="false"
-inherit kde5
+ECM_QTHELP="false"
+ECM_TEST="false"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Central daemon of KDE workspaces"
 LICENSE="LGPL-2+"
@@ -13,18 +15,18 @@ KEYWORDS=""
 IUSE="+man"
 
 BDEPEND="
-	man? ( $(add_frameworks_dep kdoctools) )
+	man? ( >=kde-frameworks/kdoctools-${PVCUT}:5 )
 "
 DEPEND="
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep kcrash)
-	$(add_frameworks_dep kdbusaddons)
-	$(add_frameworks_dep kinit)
-	$(add_frameworks_dep kservice)
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtwidgets)
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/kcrash-${PVCUT}:5
+	>=kde-frameworks/kdbusaddons-${PVCUT}:5
+	>=kde-frameworks/kinit-${PVCUT}:5
+	>=kde-frameworks/kservice-${PVCUT}:5
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
 "
 RDEPEND="${DEPEND}"
 
@@ -33,5 +35,5 @@ src_configure() {
 		$(cmake-utils_use_find_package man KF5DocTools)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }

diff --git a/kde-frameworks/kdelibs4support/kdelibs4support-9999.ebuild b/kde-frameworks/kdelibs4support/kdelibs4support-9999.ebuild
index d6bbf6e924..873bb4581e 100644
--- a/kde-frameworks/kdelibs4support/kdelibs4support-9999.ebuild
+++ b/kde-frameworks/kdelibs4support/kdelibs4support-9999.ebuild
@@ -3,10 +3,12 @@
 
 EAPI=7
 
-KDE_HANDBOOK="true"
-KDE_QTHELP="false"
+ECM_HANDBOOK="true"
+ECM_QTHELP="false"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework easing the development transition from KDELibs 4 to KF 5"
 LICENSE="LGPL-2+"
@@ -18,47 +20,47 @@ BDEPEND="
 	dev-perl/URI
 "
 COMMON_DEPEND="
-	$(add_frameworks_dep kauth)
-	$(add_frameworks_dep kcodecs)
-	$(add_frameworks_dep kcompletion)
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kconfigwidgets)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep kcrash)
-	$(add_frameworks_dep kdbusaddons)
-	$(add_frameworks_dep kded)
-	$(add_frameworks_dep kdesignerplugin)
-	$(add_frameworks_dep kdoctools)
-	$(add_frameworks_dep kemoticons)
-	$(add_frameworks_dep kglobalaccel)
-	$(add_frameworks_dep kguiaddons)
-	$(add_frameworks_dep ki18n)
-	$(add_frameworks_dep kiconthemes)
-	$(add_frameworks_dep kio)
-	$(add_frameworks_dep kitemviews)
-	$(add_frameworks_dep kjobwidgets)
-	$(add_frameworks_dep knotifications)
-	$(add_frameworks_dep kparts)
-	$(add_frameworks_dep kservice)
-	$(add_frameworks_dep ktextwidgets)
-	$(add_frameworks_dep kunitconversion)
-	$(add_frameworks_dep kwidgetsaddons)
-	$(add_frameworks_dep kwindowsystem)
-	$(add_frameworks_dep kxmlgui)
-	$(add_frameworks_dep solid)
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtnetwork 'ssl')
-	$(add_qt_dep qtprintsupport)
-	$(add_qt_dep qtsvg)
-	$(add_qt_dep qttest)
-	$(add_qt_dep qtwidgets)
+	>=kde-frameworks/kauth-${PVCUT}:5
+	>=kde-frameworks/kcodecs-${PVCUT}:5
+	>=kde-frameworks/kcompletion-${PVCUT}:5
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kconfigwidgets-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/kcrash-${PVCUT}:5
+	>=kde-frameworks/kdbusaddons-${PVCUT}:5
+	>=kde-frameworks/kded-${PVCUT}:5
+	>=kde-frameworks/kdesignerplugin-${PVCUT}:5
+	>=kde-frameworks/kdoctools-${PVCUT}:5
+	>=kde-frameworks/kemoticons-${PVCUT}:5
+	>=kde-frameworks/kglobalaccel-${PVCUT}:5
+	>=kde-frameworks/kguiaddons-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=kde-frameworks/kiconthemes-${PVCUT}:5
+	>=kde-frameworks/kio-${PVCUT}:5
+	>=kde-frameworks/kitemviews-${PVCUT}:5
+	>=kde-frameworks/kjobwidgets-${PVCUT}:5
+	>=kde-frameworks/knotifications-${PVCUT}:5
+	>=kde-frameworks/kparts-${PVCUT}:5
+	>=kde-frameworks/kservice-${PVCUT}:5
+	>=kde-frameworks/ktextwidgets-${PVCUT}:5
+	>=kde-frameworks/kunitconversion-${PVCUT}:5
+	>=kde-frameworks/kwidgetsaddons-${PVCUT}:5
+	>=kde-frameworks/kwindowsystem-${PVCUT}:5
+	>=kde-frameworks/kxmlgui-${PVCUT}:5
+	>=kde-frameworks/solid-${PVCUT}:5
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtnetwork-${QTMIN}:5[ssl]
+	>=dev-qt/qtprintsupport-${QTMIN}:5
+	>=dev-qt/qtsvg-${QTMIN}:5
+	>=dev-qt/qttest-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
 	app-text/docbook-xml-dtd:4.2
 	virtual/libintl
 	!libressl? ( dev-libs/openssl:0 )
 	libressl? ( dev-libs/libressl )
 	X? (
-		$(add_qt_dep qtx11extras)
+		>=dev-qt/qtx11extras-${QTMIN}:5
 		x11-libs/libICE
 		x11-libs/libSM
 		x11-libs/libX11
@@ -66,20 +68,20 @@ COMMON_DEPEND="
 	)
 "
 DEPEND="${COMMON_DEPEND}
-	$(add_qt_dep designer)
-	test? ( $(add_qt_dep qtconcurrent) )
+	>=dev-qt/designer-${QTMIN}:5
+	test? ( >=dev-qt/qtconcurrent-${QTMIN}:5 )
 	X? ( x11-base/xorg-proto )
 "
 RDEPEND="${COMMON_DEPEND}
-	$(add_frameworks_dep kinit)
-	$(add_frameworks_dep kitemmodels)
-	$(add_qt_dep qtxml)
+	>=kde-frameworks/kinit-${PVCUT}:5
+	>=kde-frameworks/kitemmodels-${PVCUT}:5
+	>=dev-qt/qtxml-${QTMIN}:5
 "
 
 RESTRICT+=" test"
 
 src_prepare() {
-	kde5_src_prepare
+	ecm_src_prepare
 	if ! use handbook; then
 		sed -e "/kdoctools_install/ s/^/#DONT/" -i CMakeLists.txt || die
 	fi
@@ -90,5 +92,5 @@ src_configure() {
 		$(cmake-utils_use_find_package X X11)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }

diff --git a/kde-frameworks/kdesignerplugin/kdesignerplugin-9999.ebuild b/kde-frameworks/kdesignerplugin/kdesignerplugin-9999.ebuild
index 16d62206b2..298b9484b8 100644
--- a/kde-frameworks/kdesignerplugin/kdesignerplugin-9999.ebuild
+++ b/kde-frameworks/kdesignerplugin/kdesignerplugin-9999.ebuild
@@ -3,10 +3,12 @@
 
 EAPI=7
 
-KDE_HANDBOOK="optional"
-KDE_QTHELP="false"
-KDE_TEST="false"
-inherit kde5
+ECM_HANDBOOK="optional"
+ECM_QTHELP="false"
+ECM_TEST="false"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Framework providing plugins to use KDE frameworks widgets in QtDesigner"
 LICENSE="LGPL-2.1+"
@@ -14,10 +16,10 @@ KEYWORDS=""
 IUSE="nls"
 
 BDEPEND="
-	nls? ( $(add_qt_dep linguist-tools) )
+	nls? ( >=dev-qt/linguist-tools-${QTMIN}:5 )
 "
 DEPEND="
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kcoreaddons)
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
 "
 RDEPEND="${DEPEND}"

diff --git a/kde-frameworks/kdesu/kdesu-9999.ebuild b/kde-frameworks/kdesu/kdesu-9999.ebuild
index 38f57476db..b7008c0d92 100644
--- a/kde-frameworks/kdesu/kdesu-9999.ebuild
+++ b/kde-frameworks/kdesu/kdesu-9999.ebuild
@@ -3,8 +3,9 @@
 
 EAPI=7
 
-KDE_TEST="true"
-inherit kde5
+ECM_TEST="true"
+PVCUT=$(ver_cut 1-2)
+inherit ecm kde.org
 
 DESCRIPTION="Framework to handle super user actions"
 LICENSE="LGPL-2"
@@ -12,11 +13,11 @@ KEYWORDS=""
 IUSE="X"
 
 RDEPEND="
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep ki18n)
-	$(add_frameworks_dep kpty)
-	$(add_frameworks_dep kservice)
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=kde-frameworks/kpty-${PVCUT}:5
+	>=kde-frameworks/kservice-${PVCUT}:5
 	X? ( x11-libs/libX11 )
 "
 DEPEND="${RDEPEND}
@@ -28,5 +29,5 @@ src_configure() {
 		$(cmake-utils_use_find_package X X11)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }

diff --git a/kde-frameworks/kdewebkit/kdewebkit-9999.ebuild b/kde-frameworks/kdewebkit/kdewebkit-9999.ebuild
index 1803d8265c..bb5aa74a60 100644
--- a/kde-frameworks/kdewebkit/kdewebkit-9999.ebuild
+++ b/kde-frameworks/kdewebkit/kdewebkit-9999.ebuild
@@ -3,9 +3,11 @@
 
 EAPI=7
 
-KDE_QTHELP="false"
-KDE_TEST="false"
-inherit kde5
+ECM_QTHELP="false"
+ECM_TEST="false"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Framework providing KDE integration of QtWebKit"
 LICENSE="LGPL-2+"
@@ -13,26 +15,26 @@ KEYWORDS=""
 IUSE="designer"
 
 RDEPEND="
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep kio)
-	$(add_frameworks_dep kjobwidgets)
-	$(add_frameworks_dep kparts)
-	$(add_frameworks_dep kservice)
-	$(add_frameworks_dep kwallet)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtnetwork)
-	$(add_qt_dep qtwidgets)
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/kio-${PVCUT}:5
+	>=kde-frameworks/kjobwidgets-${PVCUT}:5
+	>=kde-frameworks/kparts-${PVCUT}:5
+	>=kde-frameworks/kservice-${PVCUT}:5
+	>=kde-frameworks/kwallet-${PVCUT}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtnetwork-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
 	>=dev-qt/qtwebkit-5.212.0_pre20180120:5
-	designer? ( $(add_frameworks_dep kdesignerplugin) )
+	designer? ( >=kde-frameworks/kdesignerplugin-${PVCUT}:5 )
 "
 DEPEND="${RDEPEND}
-	$(add_qt_dep qtnetwork)
+	>=dev-qt/qtnetwork-${QTMIN}:5
 "
 
 src_configure() {
 	local mycmakeargs=(
 		-DBUILD_DESIGNERPLUGIN=$(usex designer)
 	)
-	kde5_src_configure
+	ecm_src_configure
 }

diff --git a/kde-frameworks/kdnssd/kdnssd-9999.ebuild b/kde-frameworks/kdnssd/kdnssd-9999.ebuild
index 13a447ef88..c5407108e1 100644
--- a/kde-frameworks/kdnssd/kdnssd-9999.ebuild
+++ b/kde-frameworks/kdnssd/kdnssd-9999.ebuild
@@ -3,7 +3,8 @@
 
 EAPI=7
 
-inherit kde5
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Framework for network service discovery using Zeroconf"
 LICENSE="LGPL-2+"
@@ -11,12 +12,12 @@ KEYWORDS=""
 IUSE="nls zeroconf"
 
 BDEPEND="
-	nls? ( $(add_qt_dep linguist-tools) )
+	nls? ( >=dev-qt/linguist-tools-${QTMIN}:5 )
 "
 DEPEND="
-	$(add_qt_dep qtnetwork)
+	>=dev-qt/qtnetwork-${QTMIN}:5
 	zeroconf? (
-		$(add_qt_dep qtdbus)
+		>=dev-qt/qtdbus-${QTMIN}:5
 		net-dns/avahi[mdnsresponder-compat]
 	)
 "
@@ -28,5 +29,5 @@ src_configure() {
 		$(cmake-utils_use_find_package zeroconf Avahi)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }

diff --git a/kde-frameworks/kdoctools/kdoctools-9999.ebuild b/kde-frameworks/kdoctools/kdoctools-9999.ebuild
index 678d1d1cca..41bf4c9458 100644
--- a/kde-frameworks/kdoctools/kdoctools-9999.ebuild
+++ b/kde-frameworks/kdoctools/kdoctools-9999.ebuild
@@ -3,8 +3,9 @@
 
 EAPI=7
 
-KDE_QTHELP="false"
-inherit kde5
+ECM_QTHELP="false"
+PVCUT=$(ver_cut 1-2)
+inherit ecm kde.org
 
 DESCRIPTION="Tools to generate documentation in various formats from DocBook files"
 LICENSE="MIT"
@@ -14,10 +15,10 @@ IUSE="nls"
 BDEPEND="
 	dev-lang/perl
 	dev-perl/URI
-	nls? ( $(add_frameworks_dep ki18n) )
+	nls? ( >=kde-frameworks/ki18n-${PVCUT}:5 )
 "
 DEPEND="
-	$(add_frameworks_dep karchive)
+	>=kde-frameworks/karchive-${PVCUT}:5
 	app-text/docbook-xml-dtd:4.5
 	app-text/docbook-xsl-stylesheets
 	app-text/sgml-common
@@ -33,7 +34,7 @@ src_configure() {
 		$(cmake-utils_use_find_package nls KF5I18n)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }
 
 src_test() {
@@ -42,5 +43,5 @@ src_test() {
 		-E "(kdoctools_install)"
 	)
 
-	kde5_src_test
+	ecm_src_test
 }

diff --git a/kde-frameworks/kemoticons/kemoticons-9999.ebuild b/kde-frameworks/kemoticons/kemoticons-9999.ebuild
index c4818fb314..b50e9e6049 100644
--- a/kde-frameworks/kemoticons/kemoticons-9999.ebuild
+++ b/kde-frameworks/kemoticons/kemoticons-9999.ebuild
@@ -3,8 +3,10 @@
 
 EAPI=7
 
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework for converting text emoticons to graphical representations"
 LICENSE="LGPL-2.1+"
@@ -12,13 +14,13 @@ KEYWORDS=""
 IUSE=""
 
 DEPEND="
-	$(add_frameworks_dep karchive)
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep kservice)
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtxml)
+	>=kde-frameworks/karchive-${PVCUT}:5
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/kservice-${PVCUT}:5
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtxml-${QTMIN}:5
 "
 RDEPEND="${DEPEND}"
 

diff --git a/kde-frameworks/kfilemetadata/kfilemetadata-9999.ebuild b/kde-frameworks/kfilemetadata/kfilemetadata-9999.ebuild
index 248aa0e8ae..69d180092e 100644
--- a/kde-frameworks/kfilemetadata/kfilemetadata-9999.ebuild
+++ b/kde-frameworks/kfilemetadata/kfilemetadata-9999.ebuild
@@ -4,9 +4,12 @@
 EAPI=7
 
 PYTHON_COMPAT=( python3_{6,7} )
-inherit kde5 python-any-r1
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
+inherit ecm kde.org python-any-r1
 
 DESCRIPTION="Library for extracting file metadata"
+LICENSE="LGPL-2+"
 KEYWORDS=""
 IUSE="epub exif ffmpeg kernel_linux libav office pdf taglib"
 
@@ -14,16 +17,16 @@ BDEPEND="
 	test? ( ${PYTHON_DEPS} )
 "
 RDEPEND="
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep ki18n)
-	$(add_qt_dep qtxml)
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=dev-qt/qtxml-${QTMIN}:5
 	epub? ( app-text/ebook-tools )
 	exif? ( media-gfx/exiv2:= )
 	ffmpeg? (
 		libav? ( >=media-video/libav-12.2:= )
 		!libav? ( media-video/ffmpeg:0= )
 	)
-	office? ( $(add_frameworks_dep karchive) )
+	office? ( >=kde-frameworks/karchive-${PVCUT}:5 )
 	pdf? ( app-text/poppler[qt5] )
 	taglib? ( media-libs/taglib )
 "
@@ -35,7 +38,7 @@ RESTRICT+=" test"
 
 pkg_setup() {
 	use test && python-any-r1_pkg_setup
-	kde5_pkg_setup
+	ecm_pkg_setup
 }
 
 src_configure() {
@@ -48,17 +51,17 @@ src_configure() {
 		$(cmake-utils_use_find_package taglib Taglib)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }
 
 src_test() {
 	# FIXME: bug 644650, fails on tmpfs (but not for everyone)
 	local myctestargs=( -E "(usermetadatawritertest)" )
-	kde5_src_test
+	ecm_src_test
 }
 
 pkg_postinst() {
-	kde5_pkg_postinst
+	ecm_pkg_postinst
 
 	if ! has_version app-text/catdoc || ! has_version dev-libs/libxls; then
 		elog "To get additional features, optional runtime dependencies may be installed:"

diff --git a/kde-frameworks/kglobalaccel/kglobalaccel-9999.ebuild b/kde-frameworks/kglobalaccel/kglobalaccel-9999.ebuild
index e9f5777314..ac38478a67 100644
--- a/kde-frameworks/kglobalaccel/kglobalaccel-9999.ebuild
+++ b/kde-frameworks/kglobalaccel/kglobalaccel-9999.ebuild
@@ -3,8 +3,10 @@
 
 EAPI=7
 
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework to handle global shortcuts"
 KEYWORDS=""
@@ -12,18 +14,18 @@ LICENSE="LGPL-2+"
 IUSE="nls"
 
 BDEPEND="
-	nls? ( $(add_qt_dep linguist-tools) )
+	nls? ( >=dev-qt/linguist-tools-${QTMIN}:5 )
 "
 DEPEND="
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep kcrash)
-	$(add_frameworks_dep kdbusaddons)
-	$(add_frameworks_dep kwindowsystem X)
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtwidgets)
-	$(add_qt_dep qtx11extras)
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/kcrash-${PVCUT}:5
+	>=kde-frameworks/kdbusaddons-${PVCUT}:5
+	>=kde-frameworks/kwindowsystem-${PVCUT}:5[X]
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
+	>=dev-qt/qtx11extras-${QTMIN}:5
 	x11-libs/libxcb
 	x11-libs/xcb-util-keysyms
 "

diff --git a/kde-frameworks/kguiaddons/kguiaddons-9999.ebuild b/kde-frameworks/kguiaddons/kguiaddons-9999.ebuild
index 453b4d319f..71945154df 100644
--- a/kde-frameworks/kguiaddons/kguiaddons-9999.ebuild
+++ b/kde-frameworks/kguiaddons/kguiaddons-9999.ebuild
@@ -3,8 +3,9 @@
 
 EAPI=7
 
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework providing assorted high-level user interface components"
 LICENSE="LGPL-2+"
@@ -12,8 +13,8 @@ KEYWORDS=""
 IUSE=""
 
 RDEPEND="
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtx11extras)
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtx11extras-${QTMIN}:5
 	x11-libs/libX11
 "
 DEPEND="${RDEPEND}

diff --git a/kde-frameworks/kholidays/kholidays-9999.ebuild b/kde-frameworks/kholidays/kholidays-9999.ebuild
index cbc5a95fa2..f787df8413 100644
--- a/kde-frameworks/kholidays/kholidays-9999.ebuild
+++ b/kde-frameworks/kholidays/kholidays-9999.ebuild
@@ -3,9 +3,10 @@
 
 EAPI=7
 
-KDE_QTHELP="false"
-KDE_TEST="true"
-inherit kde5
+ECM_QTHELP="false"
+ECM_TEST="true"
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Library to determine holidays and other special events for a geographical region"
 LICENSE="LGPL-2.1+"
@@ -13,10 +14,10 @@ KEYWORDS=""
 IUSE="nls"
 
 BDEPEND="
-	nls? ( $(add_qt_dep linguist-tools) )
+	nls? ( >=dev-qt/linguist-tools-${QTMIN}:5 )
 "
 DEPEND="
-	$(add_qt_dep qtdeclarative)
+	>=dev-qt/qtdeclarative-${QTMIN}:5
 "
 RDEPEND="${DEPEND}
 	!kde-apps/kholidays:5
@@ -26,5 +27,5 @@ src_test() {
 	# bug 624214
 	mkdir -p "${HOME}/.local/share/kf5/libkholidays" || die
 	cp -r "${S}/holidays/plan2" "${HOME}/.local/share/kf5/libkholidays/" || die
-	kde5_src_test
+	ecm_src_test
 }

diff --git a/kde-frameworks/khtml/khtml-9999.ebuild b/kde-frameworks/khtml/khtml-9999.ebuild
index ccf59c3f4e..83a28f6d6e 100644
--- a/kde-frameworks/khtml/khtml-9999.ebuild
+++ b/kde-frameworks/khtml/khtml-9999.ebuild
@@ -3,9 +3,11 @@
 
 EAPI=7
 
-KDE_QTHELP="false"
+ECM_QTHELP="false"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="KHTML web rendering engine"
 LICENSE="LGPL-2"
@@ -17,33 +19,33 @@ BDEPEND="
 	dev-util/gperf
 "
 RDEPEND="
-	$(add_frameworks_dep karchive)
-	$(add_frameworks_dep kcodecs)
-	$(add_frameworks_dep kcompletion)
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kconfigwidgets)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep kglobalaccel)
-	$(add_frameworks_dep ki18n)
-	$(add_frameworks_dep kiconthemes)
-	$(add_frameworks_dep kio)
-	$(add_frameworks_dep kjobwidgets)
-	$(add_frameworks_dep kjs)
-	$(add_frameworks_dep knotifications)
-	$(add_frameworks_dep kparts)
-	$(add_frameworks_dep kservice)
-	$(add_frameworks_dep ktextwidgets)
-	$(add_frameworks_dep kwallet)
-	$(add_frameworks_dep kwidgetsaddons)
-	$(add_frameworks_dep kwindowsystem)
-	$(add_frameworks_dep kxmlgui)
-	$(add_frameworks_dep sonnet)
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtnetwork 'ssl')
-	$(add_qt_dep qtprintsupport)
-	$(add_qt_dep qtwidgets)
-	$(add_qt_dep qtxml)
+	>=kde-frameworks/karchive-${PVCUT}:5
+	>=kde-frameworks/kcodecs-${PVCUT}:5
+	>=kde-frameworks/kcompletion-${PVCUT}:5
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kconfigwidgets-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/kglobalaccel-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=kde-frameworks/kiconthemes-${PVCUT}:5
+	>=kde-frameworks/kio-${PVCUT}:5
+	>=kde-frameworks/kjobwidgets-${PVCUT}:5
+	>=kde-frameworks/kjs-${PVCUT}:5
+	>=kde-frameworks/knotifications-${PVCUT}:5
+	>=kde-frameworks/kparts-${PVCUT}:5
+	>=kde-frameworks/kservice-${PVCUT}:5
+	>=kde-frameworks/ktextwidgets-${PVCUT}:5
+	>=kde-frameworks/kwallet-${PVCUT}:5
+	>=kde-frameworks/kwidgetsaddons-${PVCUT}:5
+	>=kde-frameworks/kwindowsystem-${PVCUT}:5
+	>=kde-frameworks/kxmlgui-${PVCUT}:5
+	>=kde-frameworks/sonnet-${PVCUT}:5
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtnetwork-${QTMIN}:5[ssl]
+	>=dev-qt/qtprintsupport-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
+	>=dev-qt/qtxml-${QTMIN}:5
 	media-libs/giflib:=
 	media-libs/libpng:0=
 	media-libs/phonon[qt5(+)]
@@ -52,12 +54,12 @@ RDEPEND="
 	!libressl? ( dev-libs/openssl:0 )
 	libressl? ( dev-libs/libressl )
 	X? (
-		$(add_qt_dep qtx11extras)
+		>=dev-qt/qtx11extras-${QTMIN}:5
 		x11-libs/libX11
 	)
 "
 DEPEND="${RDEPEND}
-	test? ( $(add_qt_dep qtx11extras) )
+	test? ( >=dev-qt/qtx11extras-${QTMIN}:5 )
 	X? ( x11-base/xorg-proto )
 "
 
@@ -66,5 +68,5 @@ src_configure() {
 		$(cmake-utils_use_find_package X X11)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }

diff --git a/kde-frameworks/ki18n/ki18n-9999.ebuild b/kde-frameworks/ki18n/ki18n-9999.ebuild
index cc4534f988..a9cfb678d9 100644
--- a/kde-frameworks/ki18n/ki18n-9999.ebuild
+++ b/kde-frameworks/ki18n/ki18n-9999.ebuild
@@ -4,7 +4,8 @@
 EAPI=7
 
 PYTHON_COMPAT=( python3_{6,7} )
-inherit kde5 python-single-r1
+QTMIN=5.12.3
+inherit ecm kde.org python-single-r1
 
 DESCRIPTION="Framework based on Gettext for internationalizing user interface text"
 LICENSE="LGPL-2+"
@@ -14,18 +15,18 @@ IUSE=""
 REQUIRED_USE="${PYTHON_REQUIRED_USE}"
 
 RDEPEND="${PYTHON_DEPS}
-	$(add_qt_dep qtdeclarative)
+	>=dev-qt/qtdeclarative-${QTMIN}:5
 	sys-devel/gettext
 	virtual/libintl
 "
 DEPEND="${RDEPEND}
-	test? ( $(add_qt_dep qtconcurrent) )
+	test? ( >=dev-qt/qtconcurrent-${QTMIN}:5 )
 "
 
 PATCHES=( "${FILESDIR}/${PN}-5.57.0-python.patch" )
 
 pkg_setup() {
-	kde5_pkg_setup
+	ecm_pkg_setup
 	python-single-r1_pkg_setup
 }
 
@@ -33,5 +34,5 @@ src_configure() {
 	local mycmakeargs=(
 		-DPYTHON_EXECUTABLE="${PYTHON}"
 	)
-	kde5_src_configure
+	ecm_src_configure
 }

diff --git a/kde-frameworks/kiconthemes/kiconthemes-9999.ebuild b/kde-frameworks/kiconthemes/kiconthemes-9999.ebuild
index ac92fca1a9..c342f611be 100644
--- a/kde-frameworks/kiconthemes/kiconthemes-9999.ebuild
+++ b/kde-frameworks/kiconthemes/kiconthemes-9999.ebuild
@@ -4,8 +4,10 @@
 EAPI=7
 
 ECM_DESIGNERPLUGIN="true"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework for icon theming and configuration"
 LICENSE="LGPL-2+"
@@ -13,17 +15,17 @@ KEYWORDS=""
 IUSE=""
 
 DEPEND="
-	$(add_frameworks_dep karchive)
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kconfigwidgets)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep ki18n)
-	$(add_frameworks_dep kitemviews)
-	$(add_frameworks_dep kwidgetsaddons)
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtsvg)
-	$(add_qt_dep qtwidgets)
+	>=kde-frameworks/karchive-${PVCUT}:5
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kconfigwidgets-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=kde-frameworks/kitemviews-${PVCUT}:5
+	>=kde-frameworks/kwidgetsaddons-${PVCUT}:5
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtsvg-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
 "
 RDEPEND="${DEPEND}"
 

diff --git a/kde-frameworks/kidletime/kidletime-9999.ebuild b/kde-frameworks/kidletime/kidletime-9999.ebuild
index fb8366f8e8..35e2f491f6 100644
--- a/kde-frameworks/kidletime/kidletime-9999.ebuild
+++ b/kde-frameworks/kidletime/kidletime-9999.ebuild
@@ -3,8 +3,9 @@
 
 EAPI=7
 
-KDE_TEST="false"
-inherit kde5
+ECM_TEST="false"
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Framework for detection and notification of device idle time"
 LICENSE="LGPL-2+"
@@ -14,23 +15,23 @@ IUSE="X xscreensaver"
 REQUIRED_USE="xscreensaver? ( X )"
 
 DEPEND="
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtwidgets)
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
 	X? (
-		$(add_qt_dep qtx11extras)
+		>=dev-qt/qtx11extras-${QTMIN}:5
 		x11-libs/libX11
 		x11-libs/libxcb
 		x11-libs/libXext
 	)
 	xscreensaver? (
-		$(add_qt_dep qtdbus)
+		>=dev-qt/qtdbus-${QTMIN}:5
 		x11-libs/libXScrnSaver
 	)
 "
 RDEPEND="${DEPEND}"
 
 src_prepare() {
-	kde5_src_prepare
+	ecm_src_prepare
 	if ! use xscreensaver; then
 		sed -i -e "s/\${X11_Xscreensaver_FOUND}/0/" CMakeLists.txt || die
 	fi
@@ -42,5 +43,5 @@ src_configure() {
 		$(cmake-utils_use_find_package X XCB)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }

diff --git a/kde-frameworks/kimageformats/kimageformats-9999.ebuild b/kde-frameworks/kimageformats/kimageformats-9999.ebuild
index 835c06f83d..95dad24205 100644
--- a/kde-frameworks/kimageformats/kimageformats-9999.ebuild
+++ b/kde-frameworks/kimageformats/kimageformats-9999.ebuild
@@ -3,9 +3,11 @@
 
 EAPI=7
 
-KDE_QTHELP="false"
+ECM_QTHELP="false"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework providing additional format plugins for Qt's image I/O system"
 LICENSE="LGPL-2+"
@@ -13,9 +15,9 @@ KEYWORDS=""
 IUSE="eps openexr"
 
 DEPEND="
-	$(add_frameworks_dep karchive)
-	$(add_qt_dep qtgui)
-	eps? ( $(add_qt_dep qtprintsupport) )
+	>=kde-frameworks/karchive-${PVCUT}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	eps? ( >=dev-qt/qtprintsupport-${QTMIN}:5 )
 	openexr? (
 		media-libs/ilmbase:=
 		media-libs/openexr:=
@@ -31,5 +33,5 @@ src_configure() {
 		$(cmake-utils_use_find_package openexr OpenEXR)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }

diff --git a/kde-frameworks/kinit/kinit-9999.ebuild b/kde-frameworks/kinit/kinit-9999.ebuild
index 29b77247ef..c6030685aa 100644
--- a/kde-frameworks/kinit/kinit-9999.ebuild
+++ b/kde-frameworks/kinit/kinit-9999.ebuild
@@ -3,9 +3,11 @@
 
 EAPI=7
 
-KDE_QTHELP="false"
-KDE_TEST="false"
-inherit kde5
+ECM_QTHELP="false"
+ECM_TEST="false"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Helper library to speed up start of applications on KDE work spaces"
 LICENSE="LGPL-2+"
@@ -13,18 +15,18 @@ KEYWORDS=""
 IUSE="+caps +man X"
 
 BDEPEND="
-	man? ( $(add_frameworks_dep kdoctools) )
+	man? ( >=kde-frameworks/kdoctools-${PVCUT}:5 )
 "
 RDEPEND="
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep kcrash)
-	$(add_frameworks_dep ki18n)
-	$(add_frameworks_dep kio)
-	$(add_frameworks_dep kservice)
-	$(add_frameworks_dep kwindowsystem)
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtgui)
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/kcrash-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=kde-frameworks/kio-${PVCUT}:5
+	>=kde-frameworks/kservice-${PVCUT}:5
+	>=kde-frameworks/kwindowsystem-${PVCUT}:5
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5
 	caps? ( sys-libs/libcap )
 	X? (
 		x11-libs/libX11
@@ -43,5 +45,5 @@ src_configure() {
 		$(cmake-utils_use_find_package X XCB)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }

diff --git a/kde-frameworks/kio/kio-9999.ebuild b/kde-frameworks/kio/kio-9999.ebuild
index 31997abcd5..a927a86938 100644
--- a/kde-frameworks/kio/kio-9999.ebuild
+++ b/kde-frameworks/kio/kio-9999.ebuild
@@ -4,9 +4,11 @@
 EAPI=7
 
 ECM_DESIGNERPLUGIN="true"
-KDE_TEST="forceoptional"
+ECM_TEST="forceoptional"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework providing transparent file and data management"
 LICENSE="LGPL-2+"
@@ -14,46 +16,46 @@ KEYWORDS=""
 IUSE="acl +handbook kerberos +kwallet X"
 
 RDEPEND="
-	$(add_frameworks_dep kauth)
-	$(add_frameworks_dep karchive)
-	$(add_frameworks_dep kbookmarks)
-	$(add_frameworks_dep kcodecs)
-	$(add_frameworks_dep kcompletion)
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kconfigwidgets)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep kcrash)
-	$(add_frameworks_dep kdbusaddons)
-	$(add_frameworks_dep ki18n)
-	$(add_frameworks_dep kiconthemes)
-	$(add_frameworks_dep kitemviews)
-	$(add_frameworks_dep kjobwidgets)
-	$(add_frameworks_dep knotifications)
-	$(add_frameworks_dep kservice)
-	$(add_frameworks_dep ktextwidgets)
-	$(add_frameworks_dep kwidgetsaddons)
-	$(add_frameworks_dep kwindowsystem)
-	$(add_frameworks_dep kxmlgui)
-	$(add_frameworks_dep solid)
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtdeclarative)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtnetwork 'ssl')
-	$(add_qt_dep qtwidgets)
-	$(add_qt_dep qtxml)
+	>=kde-frameworks/kauth-${PVCUT}:5
+	>=kde-frameworks/karchive-${PVCUT}:5
+	>=kde-frameworks/kbookmarks-${PVCUT}:5
+	>=kde-frameworks/kcodecs-${PVCUT}:5
+	>=kde-frameworks/kcompletion-${PVCUT}:5
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kconfigwidgets-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/kcrash-${PVCUT}:5
+	>=kde-frameworks/kdbusaddons-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=kde-frameworks/kiconthemes-${PVCUT}:5
+	>=kde-frameworks/kitemviews-${PVCUT}:5
+	>=kde-frameworks/kjobwidgets-${PVCUT}:5
+	>=kde-frameworks/knotifications-${PVCUT}:5
+	>=kde-frameworks/kservice-${PVCUT}:5
+	>=kde-frameworks/ktextwidgets-${PVCUT}:5
+	>=kde-frameworks/kwidgetsaddons-${PVCUT}:5
+	>=kde-frameworks/kwindowsystem-${PVCUT}:5
+	>=kde-frameworks/kxmlgui-${PVCUT}:5
+	>=kde-frameworks/solid-${PVCUT}:5
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtdeclarative-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtnetwork-${QTMIN}:5[ssl]
+	>=dev-qt/qtwidgets-${QTMIN}:5
+	>=dev-qt/qtxml-${QTMIN}:5
 	dev-libs/libxml2
 	dev-libs/libxslt
 	acl? (
 		sys-apps/attr
 		virtual/acl
 	)
-	handbook? ( $(add_frameworks_dep kdoctools) )
+	handbook? ( >=kde-frameworks/kdoctools-${PVCUT}:5 )
 	kerberos? ( virtual/krb5 )
-	kwallet? ( $(add_frameworks_dep kwallet) )
-	X? ( $(add_qt_dep qtx11extras) )
+	kwallet? ( >=kde-frameworks/kwallet-${PVCUT}:5 )
+	X? ( >=dev-qt/qtx11extras-${QTMIN}:5 )
 "
 DEPEND="${RDEPEND}
-	$(add_qt_dep qtconcurrent)
+	>=dev-qt/qtconcurrent-${QTMIN}:5
 	test? ( sys-libs/zlib )
 	X? (
 		x11-base/xorg-proto
@@ -62,7 +64,7 @@ DEPEND="${RDEPEND}
 	)
 "
 PDEPEND="
-	$(add_frameworks_dep kded)
+	>=kde-frameworks/kded-${PVCUT}:5
 "
 
 # tests hang
@@ -77,5 +79,5 @@ src_configure() {
 		$(cmake-utils_use_find_package X X11)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }

diff --git a/kde-frameworks/kirigami/kirigami-9999.ebuild b/kde-frameworks/kirigami/kirigami-9999.ebuild
index 6cd0a68cac..ad7a4dd7fd 100644
--- a/kde-frameworks/kirigami/kirigami-9999.ebuild
+++ b/kde-frameworks/kirigami/kirigami-9999.ebuild
@@ -3,11 +3,12 @@
 
 EAPI=7
 
-KDE_EXAMPLES="true"
-KDE_QTHELP="false"
-KDE_TEST="true"
-KMNAME="${PN}2"
-inherit kde5
+ECM_EXAMPLES="true"
+ECM_QTHELP="false"
+ECM_TEST="true"
+KDE_ORG_NAME="${PN}2"
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Lightweight user interface framework for mobile and convergent applications"
 HOMEPAGE="https://techbase.kde.org/Kirigami"
@@ -19,18 +20,18 @@ IUSE=""
 
 # drop qtgui subslot operator when QT_MINIMAL >= 5.14.0
 BDEPEND="
-	$(add_qt_dep linguist-tools)
+	>=dev-qt/linguist-tools-${QTMIN}:5
 "
 DEPEND="
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtdeclarative)
-	$(add_qt_dep qtgui '' '' '5=')
-	$(add_qt_dep qtnetwork)
-	$(add_qt_dep qtquickcontrols2)
-	$(add_qt_dep qtsvg)
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtdeclarative-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5=
+	>=dev-qt/qtnetwork-${QTMIN}:5
+	>=dev-qt/qtquickcontrols2-${QTMIN}:5
+	>=dev-qt/qtsvg-${QTMIN}:5
 "
 RDEPEND="${DEPEND}
-	$(add_qt_dep qtgraphicaleffects)
+	>=dev-qt/qtgraphicaleffects-${QTMIN}:5
 "
 
 # requires package to already be installed
@@ -41,5 +42,5 @@ src_configure() {
 		-DBUILD_EXAMPLES=$(usex examples)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }

diff --git a/kde-frameworks/kitemmodels/kitemmodels-9999.ebuild b/kde-frameworks/kitemmodels/kitemmodels-9999.ebuild
index d213e59310..bae692156f 100644
--- a/kde-frameworks/kitemmodels/kitemmodels-9999.ebuild
+++ b/kde-frameworks/kitemmodels/kitemmodels-9999.ebuild
@@ -3,12 +3,13 @@
 
 EAPI=7
 
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework providing data models to help with tasks such as sorting and filtering"
 LICENSE="LGPL-2+"
 KEYWORDS=""
 IUSE=""
 
-DEPEND="test? ( $(add_qt_dep qtwidgets) )"
+DEPEND="test? ( >=dev-qt/qtwidgets-${QTMIN}:5 )"

diff --git a/kde-frameworks/kitemviews/kitemviews-9999.ebuild b/kde-frameworks/kitemviews/kitemviews-9999.ebuild
index 2f1f8c2f20..aae0aca9ba 100644
--- a/kde-frameworks/kitemviews/kitemviews-9999.ebuild
+++ b/kde-frameworks/kitemviews/kitemviews-9999.ebuild
@@ -4,8 +4,9 @@
 EAPI=7
 
 ECM_DESIGNERPLUGIN="true"
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework providing additional widgets for item models"
 LICENSE="LGPL-2+"
@@ -14,10 +15,10 @@ IUSE="nls"
 
 # drop qtgui subslot operator when QT_MINIMAL >= 5.14.0
 BDEPEND="
-	nls? ( $(add_qt_dep linguist-tools) )
+	nls? ( >=dev-qt/linguist-tools-${QTMIN}:5 )
 "
 DEPEND="
-	$(add_qt_dep qtgui '' '' '5=')
-	$(add_qt_dep qtwidgets)
+	>=dev-qt/qtgui-${QTMIN}:5=
+	>=dev-qt/qtwidgets-${QTMIN}:5
 "
 RDEPEND="${DEPEND}"

diff --git a/kde-frameworks/kjobwidgets/kjobwidgets-9999.ebuild b/kde-frameworks/kjobwidgets/kjobwidgets-9999.ebuild
index dd10d4b05e..06e2b7cd81 100644
--- a/kde-frameworks/kjobwidgets/kjobwidgets-9999.ebuild
+++ b/kde-frameworks/kjobwidgets/kjobwidgets-9999.ebuild
@@ -3,7 +3,9 @@
 
 EAPI=7
 
-inherit kde5
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Framework providing assorted widgets for showing the progress of jobs"
 LICENSE="LGPL-2+"
@@ -11,15 +13,15 @@ KEYWORDS=""
 IUSE="nls X"
 
 BDEPEND="
-	nls? ( $(add_qt_dep linguist-tools) )
+	nls? ( >=dev-qt/linguist-tools-${QTMIN}:5 )
 "
 RDEPEND="
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep kwidgetsaddons)
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtwidgets)
-	X? ( $(add_qt_dep qtx11extras) )
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/kwidgetsaddons-${PVCUT}:5
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
+	X? ( >=dev-qt/qtx11extras-${QTMIN}:5 )
 "
 DEPEND="${RDEPEND}
 	X? (
@@ -33,5 +35,5 @@ src_configure() {
 		$(cmake-utils_use_find_package X X11)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }

diff --git a/kde-frameworks/kjs/kjs-9999.ebuild b/kde-frameworks/kjs/kjs-9999.ebuild
index e87be3afea..dcc8d506d1 100644
--- a/kde-frameworks/kjs/kjs-9999.ebuild
+++ b/kde-frameworks/kjs/kjs-9999.ebuild
@@ -3,9 +3,9 @@
 
 EAPI=7
 
-KDE_HANDBOOK="optional"
-KDE_QTHELP="false"
-inherit kde5
+ECM_HANDBOOK="optional"
+ECM_QTHELP="false"
+inherit ecm kde.org
 
 DESCRIPTION="ECMAScipt compatible parser and engine"
 LICENSE="BSD-2 LGPL-2+"

diff --git a/kde-frameworks/kjsembed/kjsembed-9999.ebuild b/kde-frameworks/kjsembed/kjsembed-9999.ebuild
index 362ee2cee1..45e91e158f 100644
--- a/kde-frameworks/kjsembed/kjsembed-9999.ebuild
+++ b/kde-frameworks/kjsembed/kjsembed-9999.ebuild
@@ -3,10 +3,12 @@
 
 EAPI=7
 
-KDE_HANDBOOK="optional"
-KDE_QTHELP="false"
-KDE_TEST="false"
-inherit kde5
+ECM_HANDBOOK="optional"
+ECM_QTHELP="false"
+ECM_TEST="false"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Framework binding JavaScript objects to QObjects"
 LICENSE="LGPL-2+"
@@ -14,13 +16,13 @@ KEYWORDS=""
 IUSE=""
 
 RDEPEND="
-	$(add_frameworks_dep ki18n)
-	$(add_frameworks_dep kjs)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtsvg)
-	$(add_qt_dep qtwidgets)
-	$(add_qt_dep qtxml)
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=kde-frameworks/kjs-${PVCUT}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtsvg-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
+	>=dev-qt/qtxml-${QTMIN}:5
 "
 DEPEND="${RDEPEND}
-	$(add_qt_dep designer)
+	>=dev-qt/designer-${QTMIN}:5
 "

diff --git a/kde-frameworks/kmediaplayer/kmediaplayer-9999.ebuild b/kde-frameworks/kmediaplayer/kmediaplayer-9999.ebuild
index fa08ad0977..0982e75339 100644
--- a/kde-frameworks/kmediaplayer/kmediaplayer-9999.ebuild
+++ b/kde-frameworks/kmediaplayer/kmediaplayer-9999.ebuild
@@ -3,9 +3,11 @@
 
 EAPI=7
 
-KDE_QTHELP="false"
+ECM_QTHELP="false"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework providing a common interface for KParts that can play media files"
 LICENSE="MIT"
@@ -13,9 +15,9 @@ KEYWORDS=""
 IUSE=""
 
 DEPEND="
-	$(add_frameworks_dep kparts)
-	$(add_frameworks_dep kxmlgui)
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtwidgets)
+	>=kde-frameworks/kparts-${PVCUT}:5
+	>=kde-frameworks/kxmlgui-${PVCUT}:5
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
 "
 RDEPEND="${DEPEND}"

diff --git a/kde-frameworks/knewstuff/knewstuff-9999.ebuild b/kde-frameworks/knewstuff/knewstuff-9999.ebuild
index b73bec687a..6a53808df9 100644
--- a/kde-frameworks/knewstuff/knewstuff-9999.ebuild
+++ b/kde-frameworks/knewstuff/knewstuff-9999.ebuild
@@ -3,8 +3,10 @@
 
 EAPI=7
 
-KDE_TEST="false"
-inherit kde5
+ECM_TEST="false"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Framework for downloading and sharing additional application data"
 LICENSE="LGPL-2+"
@@ -12,25 +14,25 @@ KEYWORDS=""
 IUSE=""
 
 DEPEND="
-	$(add_frameworks_dep attica)
-	$(add_frameworks_dep karchive)
-	$(add_frameworks_dep kcompletion)
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep ki18n)
-	$(add_frameworks_dep kiconthemes)
-	$(add_frameworks_dep kio)
-	$(add_frameworks_dep kitemviews)
-	$(add_frameworks_dep kservice)
-	$(add_frameworks_dep ktextwidgets)
-	$(add_frameworks_dep kwidgetsaddons)
-	$(add_frameworks_dep kxmlgui)
-	$(add_qt_dep qtdeclarative)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtnetwork)
-	$(add_qt_dep qtwidgets)
-	$(add_qt_dep qtxml)
+	>=kde-frameworks/attica-${PVCUT}:5
+	>=kde-frameworks/karchive-${PVCUT}:5
+	>=kde-frameworks/kcompletion-${PVCUT}:5
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=kde-frameworks/kiconthemes-${PVCUT}:5
+	>=kde-frameworks/kio-${PVCUT}:5
+	>=kde-frameworks/kitemviews-${PVCUT}:5
+	>=kde-frameworks/kservice-${PVCUT}:5
+	>=kde-frameworks/ktextwidgets-${PVCUT}:5
+	>=kde-frameworks/kwidgetsaddons-${PVCUT}:5
+	>=kde-frameworks/kxmlgui-${PVCUT}:5
+	>=dev-qt/qtdeclarative-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtnetwork-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
+	>=dev-qt/qtxml-${QTMIN}:5
 "
 RDEPEND="${DEPEND}
-	$(add_frameworks_dep kirigami)
+	>=kde-frameworks/kirigami-${PVCUT}:5
 "

diff --git a/kde-frameworks/knotifications/knotifications-9999.ebuild b/kde-frameworks/knotifications/knotifications-9999.ebuild
index 827a57e82a..ba48de689c 100644
--- a/kde-frameworks/knotifications/knotifications-9999.ebuild
+++ b/kde-frameworks/knotifications/knotifications-9999.ebuild
@@ -3,8 +3,10 @@
 
 EAPI=7
 
-KDE_TEST="false"
-inherit kde5
+ECM_TEST="false"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Framework for notifying the user of an event"
 LICENSE="LGPL-2.1+"
@@ -12,22 +14,22 @@ KEYWORDS=""
 IUSE="dbus nls phonon speech X"
 
 BDEPEND="
-	nls? ( $(add_qt_dep linguist-tools) )
+	nls? ( >=dev-qt/linguist-tools-${QTMIN}:5 )
 "
 RDEPEND="
-	$(add_frameworks_dep kcodecs)
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep kwindowsystem)
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtwidgets)
+	>=kde-frameworks/kcodecs-${PVCUT}:5
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/kwindowsystem-${PVCUT}:5
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
 	dbus? ( dev-libs/libdbusmenu-qt[qt5(+)] )
 	!phonon? ( media-libs/libcanberra )
 	phonon? ( media-libs/phonon[qt5(+)] )
-	speech? ( $(add_qt_dep qtspeech) )
+	speech? ( >=dev-qt/qtspeech-${QTMIN}:5 )
 	X? (
-		$(add_qt_dep qtx11extras)
+		>=dev-qt/qtx11extras-${QTMIN}:5
 		x11-libs/libX11
 		x11-libs/libXtst
 	)
@@ -44,5 +46,5 @@ src_configure() {
 		$(cmake-utils_use_find_package X X11)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }

diff --git a/kde-frameworks/knotifyconfig/knotifyconfig-9999.ebuild b/kde-frameworks/knotifyconfig/knotifyconfig-9999.ebuild
index 5e401555bd..a7095dcd4c 100644
--- a/kde-frameworks/knotifyconfig/knotifyconfig-9999.ebuild
+++ b/kde-frameworks/knotifyconfig/knotifyconfig-9999.ebuild
@@ -3,8 +3,10 @@
 
 EAPI=7
 
-KDE_TEST="false"
-inherit kde5
+ECM_TEST="false"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Framework for configuring desktop notifications"
 LICENSE="LGPL-2+"
@@ -12,13 +14,13 @@ KEYWORDS=""
 IUSE="phonon"
 
 DEPEND="
-	$(add_frameworks_dep kcompletion)
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep ki18n)
-	$(add_frameworks_dep kio)
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtwidgets)
+	>=kde-frameworks/kcompletion-${PVCUT}:5
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=kde-frameworks/kio-${PVCUT}:5
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
 	phonon? ( media-libs/phonon[qt5(+)] )
 "
 RDEPEND="${DEPEND}"

diff --git a/kde-frameworks/kpackage/kpackage-9999.ebuild b/kde-frameworks/kpackage/kpackage-9999.ebuild
index 5bed619d46..3462cb6816 100644
--- a/kde-frameworks/kpackage/kpackage-9999.ebuild
+++ b/kde-frameworks/kpackage/kpackage-9999.ebuild
@@ -3,7 +3,8 @@
 
 EAPI=7
 
-inherit kde5
+PVCUT=$(ver_cut 1-2)
+inherit ecm kde.org
 
 DESCRIPTION="Framework to install and load packages of non binary content"
 LICENSE="LGPL-2+"
@@ -11,12 +12,12 @@ KEYWORDS=""
 IUSE="man"
 
 BDEPEND="
-	man? ( $(add_frameworks_dep kdoctools) )
+	man? ( >=kde-frameworks/kdoctools-${PVCUT}:5 )
 "
 DEPEND="
-	$(add_frameworks_dep karchive)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep ki18n)
+	>=kde-frameworks/karchive-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
 "
 RDEPEND="${DEPEND}"
 
@@ -25,11 +26,11 @@ src_configure() {
 		$(cmake-utils_use_find_package man KF5DocTools)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }
 
 src_test() {
 	#bug 650214
 	local myctestargs=( -E "(plasma-plasmoidpackagetest)" )
-	kde5_src_test
+	ecm_src_test
 }

diff --git a/kde-frameworks/kparts/kparts-9999.ebuild b/kde-frameworks/kparts/kparts-9999.ebuild
index 6aadb39984..4418cf64ff 100644
--- a/kde-frameworks/kparts/kparts-9999.ebuild
+++ b/kde-frameworks/kparts/kparts-9999.ebuild
@@ -3,8 +3,10 @@
 
 EAPI=7
 
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework providing elaborate user-interface components"
 LICENSE="LGPL-2+"
@@ -12,19 +14,19 @@ KEYWORDS=""
 IUSE=""
 
 RDEPEND="
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep ki18n)
-	$(add_frameworks_dep kiconthemes)
-	$(add_frameworks_dep kio)
-	$(add_frameworks_dep kjobwidgets)
-	$(add_frameworks_dep kservice)
-	$(add_frameworks_dep kwidgetsaddons)
-	$(add_frameworks_dep kxmlgui)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtwidgets)
-	$(add_qt_dep qtxml)
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=kde-frameworks/kiconthemes-${PVCUT}:5
+	>=kde-frameworks/kio-${PVCUT}:5
+	>=kde-frameworks/kjobwidgets-${PVCUT}:5
+	>=kde-frameworks/kservice-${PVCUT}:5
+	>=kde-frameworks/kwidgetsaddons-${PVCUT}:5
+	>=kde-frameworks/kxmlgui-${PVCUT}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
+	>=dev-qt/qtxml-${QTMIN}:5
 "
 DEPEND="${RDEPEND}
-	$(add_frameworks_dep ktextwidgets)
+	>=kde-frameworks/ktextwidgets-${PVCUT}:5
 "

diff --git a/kde-frameworks/kpeople/kpeople-9999.ebuild b/kde-frameworks/kpeople/kpeople-9999.ebuild
index 815b6719c7..1433be40b9 100644
--- a/kde-frameworks/kpeople/kpeople-9999.ebuild
+++ b/kde-frameworks/kpeople/kpeople-9999.ebuild
@@ -3,8 +3,10 @@
 
 EAPI=7
 
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="KDE contact person abstraction library"
 HOMEPAGE="https://cgit.kde.org/kpeople.git"
@@ -14,17 +16,17 @@ KEYWORDS=""
 IUSE=""
 
 DEPEND="
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep ki18n)
-	$(add_frameworks_dep kitemviews)
-	$(add_frameworks_dep kservice)
-	$(add_frameworks_dep kwidgetsaddons)
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtdeclarative)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtsql)
-	$(add_qt_dep qtwidgets)
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=kde-frameworks/kitemviews-${PVCUT}:5
+	>=kde-frameworks/kservice-${PVCUT}:5
+	>=kde-frameworks/kwidgetsaddons-${PVCUT}:5
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtdeclarative-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtsql-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
 "
 RDEPEND="${DEPEND}"
 
@@ -35,5 +37,5 @@ src_test() {
 		-E "(persondatatest)"
 	)
 
-	kde5_src_test
+	ecm_src_test
 }

diff --git a/kde-frameworks/kplotting/kplotting-9999.ebuild b/kde-frameworks/kplotting/kplotting-9999.ebuild
index d802076f7a..e4731dea57 100644
--- a/kde-frameworks/kplotting/kplotting-9999.ebuild
+++ b/kde-frameworks/kplotting/kplotting-9999.ebuild
@@ -4,8 +4,10 @@
 EAPI=7
 
 ECM_DESIGNERPLUGIN="true"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework providing easy data-plotting functions"
 LICENSE="LGPL-2+"
@@ -13,7 +15,7 @@ KEYWORDS=""
 IUSE=""
 
 DEPEND="
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtwidgets)
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
 "
 RDEPEND="${DEPEND}"

diff --git a/kde-frameworks/kpty/kpty-9999.ebuild b/kde-frameworks/kpty/kpty-9999.ebuild
index cfe761d928..838a680d35 100644
--- a/kde-frameworks/kpty/kpty-9999.ebuild
+++ b/kde-frameworks/kpty/kpty-9999.ebuild
@@ -3,7 +3,8 @@
 
 EAPI=7
 
-inherit kde5
+PVCUT=$(ver_cut 1-2)
+inherit ecm kde.org
 
 DESCRIPTION="Framework for pseudo terminal devices and running child processes"
 LICENSE="LGPL-2+"
@@ -11,8 +12,8 @@ KEYWORDS=""
 IUSE=""
 
 DEPEND="
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep ki18n)
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
 	sys-libs/libutempter
 "
 RDEPEND="${DEPEND}"
@@ -22,5 +23,5 @@ src_configure() {
 		-DUTEMPTER_EXECUTABLE="${EPREFIX}/usr/sbin/utempter"
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }

diff --git a/kde-frameworks/kross/kross-9999.ebuild b/kde-frameworks/kross/kross-9999.ebuild
index 370a0d81fa..e0a10bdd9c 100644
--- a/kde-frameworks/kross/kross-9999.ebuild
+++ b/kde-frameworks/kross/kross-9999.ebuild
@@ -3,10 +3,12 @@
 
 EAPI=7
 
-KDE_HANDBOOK="forceoptional"
-KDE_QTHELP="false"
+ECM_HANDBOOK="forceoptional"
+ECM_QTHELP="false"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework for embedding scripting into applications"
 LICENSE="LGPL-2+"
@@ -14,19 +16,19 @@ KEYWORDS=""
 IUSE=""
 
 RDEPEND="
-	$(add_frameworks_dep kcompletion)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep ki18n)
-	$(add_frameworks_dep kiconthemes)
-	$(add_frameworks_dep kio)
-	$(add_frameworks_dep kparts)
-	$(add_frameworks_dep kwidgetsaddons)
-	$(add_frameworks_dep kxmlgui)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtscript)
-	$(add_qt_dep qtwidgets)
-	$(add_qt_dep qtxml)
+	>=kde-frameworks/kcompletion-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=kde-frameworks/kiconthemes-${PVCUT}:5
+	>=kde-frameworks/kio-${PVCUT}:5
+	>=kde-frameworks/kparts-${PVCUT}:5
+	>=kde-frameworks/kwidgetsaddons-${PVCUT}:5
+	>=kde-frameworks/kxmlgui-${PVCUT}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtscript-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
+	>=dev-qt/qtxml-${QTMIN}:5
 "
 DEPEND="${RDEPEND}
-	$(add_qt_dep designer)
+	>=dev-qt/designer-${QTMIN}:5
 "

diff --git a/kde-frameworks/krunner/krunner-9999.ebuild b/kde-frameworks/krunner/krunner-9999.ebuild
index 06f8f81192..59f82ac727 100644
--- a/kde-frameworks/krunner/krunner-9999.ebuild
+++ b/kde-frameworks/krunner/krunner-9999.ebuild
@@ -3,8 +3,10 @@
 
 EAPI=7
 
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework for providing different actions given a string query"
 LICENSE="LGPL-2+"
@@ -12,18 +14,18 @@ KEYWORDS=""
 IUSE=""
 
 DEPEND="
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep ki18n)
-	$(add_frameworks_dep kio)
-	$(add_frameworks_dep kservice)
-	$(add_frameworks_dep plasma)
-	$(add_frameworks_dep solid)
-	$(add_frameworks_dep threadweaver)
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtdeclarative)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtwidgets)
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=kde-frameworks/kio-${PVCUT}:5
+	>=kde-frameworks/kservice-${PVCUT}:5
+	>=kde-frameworks/plasma-${PVCUT}:5
+	>=kde-frameworks/solid-${PVCUT}:5
+	>=kde-frameworks/threadweaver-${PVCUT}:5
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtdeclarative-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
 "
 RDEPEND="${DEPEND}"
 
@@ -32,5 +34,5 @@ src_test() {
 	local myctestargs=(
 		-E "(dbusrunnertest)"
 	)
-	kde5_src_test
+	ecm_src_test
 }

diff --git a/kde-frameworks/kservice/kservice-9999.ebuild b/kde-frameworks/kservice/kservice-9999.ebuild
index bf3a52cb30..c8dbc71368 100644
--- a/kde-frameworks/kservice/kservice-9999.ebuild
+++ b/kde-frameworks/kservice/kservice-9999.ebuild
@@ -3,7 +3,9 @@
 
 EAPI=7
 
-inherit kde5
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Advanced plugin and service introspection"
 LICENSE="LGPL-2 LGPL-2.1+"
@@ -13,19 +15,19 @@ IUSE="+man"
 BDEPEND="
 	sys-devel/bison
 	sys-devel/flex
-	man? ( $(add_frameworks_dep kdoctools) )
+	man? ( >=kde-frameworks/kdoctools-${PVCUT}:5 )
 "
 RDEPEND="
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep kcrash)
-	$(add_frameworks_dep kdbusaddons)
-	$(add_frameworks_dep ki18n)
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtxml)
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/kcrash-${PVCUT}:5
+	>=kde-frameworks/kdbusaddons-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtxml-${QTMIN}:5
 "
 DEPEND="${RDEPEND}
-	test? ( $(add_qt_dep qtconcurrent) )
+	test? ( >=dev-qt/qtconcurrent-${QTMIN}:5 )
 "
 
 # requires running kde environment
@@ -37,11 +39,11 @@ src_configure() {
 		$(cmake-utils_use_find_package man KF5DocTools)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }
 
 src_install() {
-	kde5_src_install
+	ecm_src_install
 
 	# bug 596316
 	dosym kf5-applications.menu /etc/xdg/menus/applications.menu

diff --git a/kde-frameworks/ktexteditor/ktexteditor-9999.ebuild b/kde-frameworks/ktexteditor/ktexteditor-9999.ebuild
index c79fc8067b..337c2b364f 100644
--- a/kde-frameworks/ktexteditor/ktexteditor-9999.ebuild
+++ b/kde-frameworks/ktexteditor/ktexteditor-9999.ebuild
@@ -3,8 +3,10 @@
 
 EAPI=7
 
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework providing a full text editor component"
 LICENSE="LGPL-2+"
@@ -12,33 +14,33 @@ KEYWORDS=""
 IUSE="editorconfig git"
 
 BDEPEND="
-	test? ( $(add_frameworks_dep kservice) )
+	test? ( >=kde-frameworks/kservice-${PVCUT}:5 )
 "
 DEPEND="
-	$(add_frameworks_dep karchive)
-	$(add_frameworks_dep kauth)
-	$(add_frameworks_dep kcodecs)
-	$(add_frameworks_dep kcompletion)
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kconfigwidgets)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep kguiaddons)
-	$(add_frameworks_dep ki18n)
-	$(add_frameworks_dep kiconthemes)
-	$(add_frameworks_dep kio)
-	$(add_frameworks_dep kitemviews)
-	$(add_frameworks_dep kjobwidgets)
-	$(add_frameworks_dep kparts)
-	$(add_frameworks_dep ktextwidgets)
-	$(add_frameworks_dep kwidgetsaddons)
-	$(add_frameworks_dep kxmlgui)
-	$(add_frameworks_dep sonnet)
-	$(add_frameworks_dep syntax-highlighting)
-	$(add_qt_dep qtdeclarative)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtprintsupport)
-	$(add_qt_dep qtwidgets)
-	$(add_qt_dep qtxml)
+	>=kde-frameworks/karchive-${PVCUT}:5
+	>=kde-frameworks/kauth-${PVCUT}:5
+	>=kde-frameworks/kcodecs-${PVCUT}:5
+	>=kde-frameworks/kcompletion-${PVCUT}:5
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kconfigwidgets-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/kguiaddons-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=kde-frameworks/kiconthemes-${PVCUT}:5
+	>=kde-frameworks/kio-${PVCUT}:5
+	>=kde-frameworks/kitemviews-${PVCUT}:5
+	>=kde-frameworks/kjobwidgets-${PVCUT}:5
+	>=kde-frameworks/kparts-${PVCUT}:5
+	>=kde-frameworks/ktextwidgets-${PVCUT}:5
+	>=kde-frameworks/kwidgetsaddons-${PVCUT}:5
+	>=kde-frameworks/kxmlgui-${PVCUT}:5
+	>=kde-frameworks/sonnet-${PVCUT}:5
+	>=kde-frameworks/syntax-highlighting-${PVCUT}:5
+	>=dev-qt/qtdeclarative-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtprintsupport-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
+	>=dev-qt/qtxml-${QTMIN}:5
 	editorconfig? ( app-text/editorconfig-core-c )
 	git? ( dev-libs/libgit2:= )
 "
@@ -52,5 +54,5 @@ src_configure() {
 		$(cmake-utils_use_find_package git LibGit2)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }

diff --git a/kde-frameworks/ktextwidgets/ktextwidgets-9999.ebuild b/kde-frameworks/ktextwidgets/ktextwidgets-9999.ebuild
index f54de4a9a5..67ab356629 100644
--- a/kde-frameworks/ktextwidgets/ktextwidgets-9999.ebuild
+++ b/kde-frameworks/ktextwidgets/ktextwidgets-9999.ebuild
@@ -4,8 +4,10 @@
 EAPI=7
 
 ECM_DESIGNERPLUGIN="true"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework providing an assortment of widgets for displaying and editing text"
 LICENSE="LGPL-2+ LGPL-2.1+"
@@ -13,19 +15,19 @@ KEYWORDS=""
 IUSE="speech"
 
 DEPEND="
-	$(add_frameworks_dep kcompletion)
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kconfigwidgets)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep ki18n)
-	$(add_frameworks_dep kiconthemes)
-	$(add_frameworks_dep kservice)
-	$(add_frameworks_dep kwidgetsaddons)
-	$(add_frameworks_dep kwindowsystem)
-	$(add_frameworks_dep sonnet)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtwidgets)
-	speech? ( $(add_qt_dep qtspeech) )
+	>=kde-frameworks/kcompletion-${PVCUT}:5
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kconfigwidgets-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=kde-frameworks/kiconthemes-${PVCUT}:5
+	>=kde-frameworks/kservice-${PVCUT}:5
+	>=kde-frameworks/kwidgetsaddons-${PVCUT}:5
+	>=kde-frameworks/kwindowsystem-${PVCUT}:5
+	>=kde-frameworks/sonnet-${PVCUT}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
+	speech? ( >=dev-qt/qtspeech-${QTMIN}:5 )
 "
 RDEPEND="${DEPEND}"
 
@@ -34,5 +36,5 @@ src_configure() {
 		$(cmake-utils_use_find_package speech Qt5TextToSpeech)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }

diff --git a/kde-frameworks/kunitconversion/kunitconversion-9999.ebuild b/kde-frameworks/kunitconversion/kunitconversion-9999.ebuild
index d248355daa..ee5cb612d0 100644
--- a/kde-frameworks/kunitconversion/kunitconversion-9999.ebuild
+++ b/kde-frameworks/kunitconversion/kunitconversion-9999.ebuild
@@ -3,7 +3,9 @@
 
 EAPI=7
 
-inherit kde5
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Framework for converting units"
 LICENSE="LGPL-2+"
@@ -11,8 +13,8 @@ KEYWORDS=""
 IUSE=""
 
 DEPEND="
-	$(add_frameworks_dep ki18n)
-	$(add_qt_dep qtnetwork)
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=dev-qt/qtnetwork-${QTMIN}:5
 "
 RDEPEND="${DEPEND}"
 
@@ -22,5 +24,5 @@ src_test() {
 		-E "(convertertest)"
 	)
 
-	kde5_src_test
+	ecm_src_test
 }

diff --git a/kde-frameworks/kwallet/kwallet-9999.ebuild b/kde-frameworks/kwallet/kwallet-9999.ebuild
index 1331ea0690..bc839a1bb5 100644
--- a/kde-frameworks/kwallet/kwallet-9999.ebuild
+++ b/kde-frameworks/kwallet/kwallet-9999.ebuild
@@ -3,7 +3,9 @@
 
 EAPI=7
 
-inherit kde5
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Framework providing desktop-wide storage for passwords"
 LICENSE="LGPL-2+"
@@ -11,21 +13,21 @@ KEYWORDS=""
 IUSE="gpg +man"
 
 BDEPEND="
-	man? ( $(add_frameworks_dep kdoctools) )
+	man? ( >=kde-frameworks/kdoctools-${PVCUT}:5 )
 "
 DEPEND="
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kconfigwidgets)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep kdbusaddons)
-	$(add_frameworks_dep ki18n)
-	$(add_frameworks_dep knotifications)
-	$(add_frameworks_dep kservice)
-	$(add_frameworks_dep kwidgetsaddons)
-	$(add_frameworks_dep kwindowsystem)
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtwidgets)
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kconfigwidgets-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/kdbusaddons-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=kde-frameworks/knotifications-${PVCUT}:5
+	>=kde-frameworks/kservice-${PVCUT}:5
+	>=kde-frameworks/kwidgetsaddons-${PVCUT}:5
+	>=kde-frameworks/kwindowsystem-${PVCUT}:5
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
 	dev-libs/libgcrypt:0=
 	gpg? ( >=app-crypt/gpgme-1.7.1[cxx,qt5] )
 "
@@ -37,7 +39,7 @@ src_configure() {
 		$(cmake-utils_use_find_package man KF5DocTools)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }
 
 pkg_postinst() {

diff --git a/kde-frameworks/kwayland/kwayland-9999.ebuild b/kde-frameworks/kwayland/kwayland-9999.ebuild
index fb33d49984..f5a4e26b09 100644
--- a/kde-frameworks/kwayland/kwayland-9999.ebuild
+++ b/kde-frameworks/kwayland/kwayland-9999.ebuild
@@ -3,8 +3,10 @@
 
 EAPI=7
 
-KDE_TEST="true"
-inherit kde5
+ECM_TEST="true"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Qt-style client and server library wrapper for Wayland libraries"
 HOMEPAGE="https://cgit.kde.org/kwayland.git"
@@ -14,8 +16,8 @@ KEYWORDS=""
 IUSE=""
 
 COMMON_DEPEND="
-	$(add_qt_dep qtconcurrent)
-	$(add_qt_dep qtgui 'egl')
+	>=dev-qt/qtconcurrent-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5[egl]
 	>=dev-libs/wayland-1.15.0
 	media-libs/mesa[egl]
 "
@@ -23,7 +25,7 @@ DEPEND="${COMMON_DEPEND}
 	>=dev-libs/wayland-protocols-1.15
 "
 RDEPEND="${COMMON_DEPEND}
-	$(add_qt_dep qtwayland)
+	>=dev-qt/qtwayland-${QTMIN}:5
 "
 
 # All failing, I guess we need a virtual wayland server

diff --git a/kde-frameworks/kwidgetsaddons/kwidgetsaddons-9999.ebuild b/kde-frameworks/kwidgetsaddons/kwidgetsaddons-9999.ebuild
index 68c275142c..d3360b2899 100644
--- a/kde-frameworks/kwidgetsaddons/kwidgetsaddons-9999.ebuild
+++ b/kde-frameworks/kwidgetsaddons/kwidgetsaddons-9999.ebuild
@@ -4,26 +4,27 @@
 EAPI=7
 
 ECM_DESIGNERPLUGIN="true"
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="An assortment of high-level widgets for common tasks"
 LICENSE="LGPL-2.1+"
 KEYWORDS=""
 IUSE="nls"
 
-# drop qtwidgets subslot operator when QT_MINIMAL >= 5.14.0
+# drop qtgui subslot operator when QT_MINIMAL >= 5.14.0
 BDEPEND="
-	nls? ( $(add_qt_dep linguist-tools) )
+	nls? ( >=dev-qt/linguist-tools-${QTMIN}:5 )
 "
 DEPEND="
-	$(add_qt_dep qtgui '' '' '5=')
-	$(add_qt_dep qtwidgets)
+	>=dev-qt/qtgui-${QTMIN}:5=
+	>=dev-qt/qtwidgets-${QTMIN}:5
 "
 RDEPEND="${DEPEND}"
 
 src_test() {
 	# bug 650216, 653186
 	local myctestargs=( -E "(kdatecomboboxtest|ktooltipwidgettest)" )
-	kde5_src_test
+	ecm_src_test
 }

diff --git a/kde-frameworks/kwindowsystem/kwindowsystem-9999.ebuild b/kde-frameworks/kwindowsystem/kwindowsystem-9999.ebuild
index 97318a3a48..4f648a23c6 100644
--- a/kde-frameworks/kwindowsystem/kwindowsystem-9999.ebuild
+++ b/kde-frameworks/kwindowsystem/kwindowsystem-9999.ebuild
@@ -3,8 +3,9 @@
 
 EAPI=7
 
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework providing access to properties and features of the window manager"
 LICENSE="|| ( LGPL-2.1 LGPL-3 ) MIT"
@@ -12,13 +13,13 @@ KEYWORDS=""
 IUSE="nls X"
 
 BDEPEND="
-	nls? ( $(add_qt_dep linguist-tools) )
+	nls? ( >=dev-qt/linguist-tools-${QTMIN}:5 )
 "
 RDEPEND="
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtwidgets)
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
 	X? (
-		$(add_qt_dep qtx11extras)
+		>=dev-qt/qtx11extras-${QTMIN}:5
 		x11-libs/libX11
 		x11-libs/libXfixes
 		x11-libs/libxcb
@@ -38,5 +39,5 @@ src_configure() {
 		$(cmake-utils_use_find_package X X11)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }

diff --git a/kde-frameworks/kxmlgui/kxmlgui-9999.ebuild b/kde-frameworks/kxmlgui/kxmlgui-9999.ebuild
index f5a0058cba..f0134f8014 100644
--- a/kde-frameworks/kxmlgui/kxmlgui-9999.ebuild
+++ b/kde-frameworks/kxmlgui/kxmlgui-9999.ebuild
@@ -4,8 +4,10 @@
 EAPI=7
 
 ECM_DESIGNERPLUGIN="true"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework for managing menu and toolbar actions in an abstract way"
 KEYWORDS=""
@@ -14,24 +16,24 @@ IUSE="attica"
 
 # slot op: includes QtCore/private/qlocale_p.h
 DEPEND="
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kconfigwidgets)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep kglobalaccel)
-	$(add_frameworks_dep ki18n)
-	$(add_frameworks_dep kiconthemes)
-	$(add_frameworks_dep kitemviews)
-	$(add_frameworks_dep ktextwidgets)
-	$(add_frameworks_dep kwidgetsaddons)
-	$(add_frameworks_dep kwindowsystem)
-	$(add_qt_dep qtcore '' '' '5=')
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtnetwork 'ssl')
-	$(add_qt_dep qtprintsupport)
-	$(add_qt_dep qtwidgets)
-	$(add_qt_dep qtxml)
-	attica? ( $(add_frameworks_dep attica) )
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kconfigwidgets-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/kglobalaccel-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=kde-frameworks/kiconthemes-${PVCUT}:5
+	>=kde-frameworks/kitemviews-${PVCUT}:5
+	>=kde-frameworks/ktextwidgets-${PVCUT}:5
+	>=kde-frameworks/kwidgetsaddons-${PVCUT}:5
+	>=kde-frameworks/kwindowsystem-${PVCUT}:5
+	>=dev-qt/qtcore-${QTMIN}:5=
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtnetwork-${QTMIN}:5[ssl]
+	>=dev-qt/qtprintsupport-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
+	>=dev-qt/qtxml-${QTMIN}:5
+	attica? ( >=kde-frameworks/attica-${PVCUT}:5 )
 "
 RDEPEND="${DEPEND}"
 
@@ -40,7 +42,7 @@ src_configure() {
 		$(cmake-utils_use_find_package attica KF5Attica)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }
 
 src_test() {
@@ -49,5 +51,5 @@ src_test() {
 		-E "(ktoolbar_unittest|kxmlgui_unittest)"
 	)
 
-	kde5_src_test
+	ecm_src_test
 }

diff --git a/kde-frameworks/kxmlrpcclient/kxmlrpcclient-9999.ebuild b/kde-frameworks/kxmlrpcclient/kxmlrpcclient-9999.ebuild
index 80f6cea7e1..d609edf8dc 100644
--- a/kde-frameworks/kxmlrpcclient/kxmlrpcclient-9999.ebuild
+++ b/kde-frameworks/kxmlrpcclient/kxmlrpcclient-9999.ebuild
@@ -3,8 +3,10 @@
 
 EAPI=7
 
-KDE_TEST="true"
-inherit kde5
+ECM_TEST="true"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Framework providing client-side support for the XML-RPC protocol"
 LICENSE="BSD-2"
@@ -12,9 +14,9 @@ KEYWORDS=""
 IUSE=""
 
 DEPEND="
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep ki18n)
-	$(add_frameworks_dep kio)
-	$(add_qt_dep qtxml)
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=kde-frameworks/kio-${PVCUT}:5
+	>=dev-qt/qtxml-${QTMIN}:5
 "
 RDEPEND="${DEPEND}"

diff --git a/kde-frameworks/modemmanager-qt/modemmanager-qt-9999.ebuild b/kde-frameworks/modemmanager-qt/modemmanager-qt-9999.ebuild
index 6680ecab89..e80bfcf2f3 100644
--- a/kde-frameworks/modemmanager-qt/modemmanager-qt-9999.ebuild
+++ b/kde-frameworks/modemmanager-qt/modemmanager-qt-9999.ebuild
@@ -3,7 +3,9 @@
 
 EAPI=7
 
-inherit kde5
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="ModemManager bindings for Qt"
 LICENSE="LGPL-2"
@@ -14,8 +16,8 @@ BDEPEND="
 	virtual/pkgconfig
 "
 DEPEND="
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtxml)
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtxml-${QTMIN}:5
 	net-misc/modemmanager
 "
 RDEPEND="${DEPEND}"

diff --git a/kde-frameworks/networkmanager-qt/networkmanager-qt-9999.ebuild b/kde-frameworks/networkmanager-qt/networkmanager-qt-9999.ebuild
index 1ee1811148..31ecb5c798 100644
--- a/kde-frameworks/networkmanager-qt/networkmanager-qt-9999.ebuild
+++ b/kde-frameworks/networkmanager-qt/networkmanager-qt-9999.ebuild
@@ -3,7 +3,8 @@
 
 EAPI=7
 
-inherit kde5
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="NetworkManager bindings for Qt"
 LICENSE="LGPL-2"
@@ -14,8 +15,8 @@ BDEPEND="
 	virtual/pkgconfig
 "
 DEPEND="
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtnetwork)
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtnetwork-${QTMIN}:5
 	>=net-misc/networkmanager-1.4.0-r1[teamd=]
 "
 RDEPEND="${DEPEND}
@@ -30,5 +31,5 @@ src_test() {
 	# bug: 625276
 	local myctestargs=( -E "(managertest|settingstest|activeconnectiontest)" )
 
-	kde5_src_test
+	ecm_src_test
 }

diff --git a/kde-frameworks/oxygen-icons/oxygen-icons-9999.ebuild b/kde-frameworks/oxygen-icons/oxygen-icons-9999.ebuild
index 32fcd37b8c..9710f8abda 100644
--- a/kde-frameworks/oxygen-icons/oxygen-icons-9999.ebuild
+++ b/kde-frameworks/oxygen-icons/oxygen-icons-9999.ebuild
@@ -4,6 +4,8 @@
 EAPI=7
 
 KDE_ORG_NAME="oxygen-icons5"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
 inherit cmake-utils kde.org
 
 DESCRIPTION="Oxygen SVG icon theme"
@@ -12,8 +14,8 @@ KEYWORDS=""
 IUSE="test"
 
 BDEPEND="
-	dev-qt/qtcore:5
-	kde-frameworks/extra-cmake-modules:5
+	>=dev-qt/qtcore-${QTMIN}:5
+	>=kde-frameworks/extra-cmake-modules-${PVCUT}:5
 	test? ( app-misc/fdupes )
 "
 DEPEND="test? ( dev-qt/qttest:5 )"

diff --git a/kde-frameworks/plasma/plasma-9999.ebuild b/kde-frameworks/plasma/plasma-9999.ebuild
index 9707d9a30f..aa2428d7a0 100644
--- a/kde-frameworks/plasma/plasma-9999.ebuild
+++ b/kde-frameworks/plasma/plasma-9999.ebuild
@@ -3,9 +3,11 @@
 
 EAPI=7
 
-KMNAME="${PN}-framework"
+KDE_ORG_NAME="${PN}-framework"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Plasma framework"
 LICENSE="LGPL-2+"
@@ -14,41 +16,41 @@ IUSE="gles2 wayland X"
 
 # drop qtgui subslot operator when QT_MINIMAL >= 5.14.0
 BDEPEND="
-	$(add_frameworks_dep kdoctools)
+	>=kde-frameworks/kdoctools-${PVCUT}:5
 "
 RDEPEND="
-	$(add_frameworks_dep kactivities)
-	$(add_frameworks_dep karchive)
-	$(add_frameworks_dep kconfig)
-	$(add_frameworks_dep kconfigwidgets)
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep kdeclarative)
-	$(add_frameworks_dep kglobalaccel)
-	$(add_frameworks_dep kguiaddons)
-	$(add_frameworks_dep ki18n)
-	$(add_frameworks_dep kiconthemes)
-	$(add_frameworks_dep kio)
-	$(add_frameworks_dep kirigami)
-	$(add_frameworks_dep knotifications)
-	$(add_frameworks_dep kpackage)
-	$(add_frameworks_dep kservice)
-	$(add_frameworks_dep kwidgetsaddons)
-	$(add_frameworks_dep kwindowsystem)
-	$(add_frameworks_dep kxmlgui)
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtdeclarative)
-	$(add_qt_dep qtgui 'gles2=' '' '5=')
-	$(add_qt_dep qtquickcontrols)
-	$(add_qt_dep qtsql)
-	$(add_qt_dep qtsvg)
-	$(add_qt_dep qtwidgets)
+	>=kde-frameworks/kactivities-${PVCUT}:5
+	>=kde-frameworks/karchive-${PVCUT}:5
+	>=kde-frameworks/kconfig-${PVCUT}:5
+	>=kde-frameworks/kconfigwidgets-${PVCUT}:5
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/kdeclarative-${PVCUT}:5
+	>=kde-frameworks/kglobalaccel-${PVCUT}:5
+	>=kde-frameworks/kguiaddons-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=kde-frameworks/kiconthemes-${PVCUT}:5
+	>=kde-frameworks/kio-${PVCUT}:5
+	>=kde-frameworks/kirigami-${PVCUT}:5
+	>=kde-frameworks/knotifications-${PVCUT}:5
+	>=kde-frameworks/kpackage-${PVCUT}:5
+	>=kde-frameworks/kservice-${PVCUT}:5
+	>=kde-frameworks/kwidgetsaddons-${PVCUT}:5
+	>=kde-frameworks/kwindowsystem-${PVCUT}:5
+	>=kde-frameworks/kxmlgui-${PVCUT}:5
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtdeclarative-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5=[gles2=]
+	>=dev-qt/qtquickcontrols-${QTMIN}:5
+	>=dev-qt/qtsql-${QTMIN}:5
+	>=dev-qt/qtsvg-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
 	!gles2? ( virtual/opengl )
 	wayland? (
-		$(add_frameworks_dep kwayland)
+		>=kde-frameworks/kwayland-${PVCUT}:5
 		media-libs/mesa[egl]
 	)
 	X? (
-		$(add_qt_dep qtx11extras)
+		>=dev-qt/qtx11extras-${QTMIN}:5
 		x11-libs/libX11
 		x11-libs/libxcb
 	)
@@ -68,5 +70,5 @@ src_configure() {
 		$(cmake-utils_use_find_package X XCB)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }

diff --git a/kde-frameworks/prison/prison-9999.ebuild b/kde-frameworks/prison/prison-9999.ebuild
index 1d3c384466..f9671a6980 100644
--- a/kde-frameworks/prison/prison-9999.ebuild
+++ b/kde-frameworks/prison/prison-9999.ebuild
@@ -3,7 +3,8 @@
 
 EAPI=7
 
-inherit kde5
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="QRCode and data matrix barcode library"
 HOMEPAGE="https://cgit.kde.org/prison.git"
@@ -13,10 +14,10 @@ KEYWORDS=""
 IUSE="qml"
 
 DEPEND="
-	$(add_qt_dep qtgui)
+	>=dev-qt/qtgui-${QTMIN}:5
 	media-gfx/qrencode:=
 	media-libs/libdmtx
-	qml? ( $(add_qt_dep qtdeclarative) )
+	qml? ( >=dev-qt/qtdeclarative-${QTMIN}:5 )
 "
 RDEPEND="${DEPEND}"
 
@@ -25,5 +26,5 @@ src_configure() {
 		$(cmake-utils_use_find_package qml Qt5Quick)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }

diff --git a/kde-frameworks/purpose/purpose-9999.ebuild b/kde-frameworks/purpose/purpose-9999.ebuild
index 8b0d4c8d43..ef6702aa29 100644
--- a/kde-frameworks/purpose/purpose-9999.ebuild
+++ b/kde-frameworks/purpose/purpose-9999.ebuild
@@ -3,9 +3,11 @@
 
 EAPI=7
 
-KDE_QTHELP="false"
-KDE_TEST="forceoptional"
-inherit kde5
+ECM_QTHELP="false"
+ECM_TEST="forceoptional"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Library for providing abstractions to get the developer's purposes fulfilled"
 LICENSE="LGPL-2.1+"
@@ -13,16 +15,16 @@ KEYWORDS=""
 IUSE="+kaccounts"
 
 DEPEND="
-	$(add_frameworks_dep kcoreaddons)
-	$(add_frameworks_dep ki18n)
-	$(add_frameworks_dep kio)
-	$(add_frameworks_dep kirigami)
-	$(add_qt_dep qtdeclarative)
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtnetwork)
-	$(add_qt_dep qtwidgets)
+	>=kde-frameworks/kcoreaddons-${PVCUT}:5
+	>=kde-frameworks/ki18n-${PVCUT}:5
+	>=kde-frameworks/kio-${PVCUT}:5
+	>=kde-frameworks/kirigami-${PVCUT}:5
+	>=dev-qt/qtdeclarative-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtnetwork-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
 	kaccounts? (
-		$(add_kdeapps_dep kaccounts-integration)
+		>=kde-apps/kaccounts-integration-19.04.3:5
 		net-libs/accounts-qt
 	)
 "
@@ -36,11 +38,11 @@ src_configure() {
 		$(cmake-utils_use_find_package kaccounts KAccounts)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }
 
 pkg_postinst(){
-	kde5_pkg_postinst
+	ecm_pkg_postinst
 
 	if ! has_version "kde-misc/kdeconnect[app]" ; then
 		elog "Optional runtime dependency:"

diff --git a/kde-frameworks/qqc2-desktop-style/qqc2-desktop-style-9999.ebuild b/kde-frameworks/qqc2-desktop-style/qqc2-desktop-style-9999.ebuild
index 21322083d0..60f0428ed6 100644
--- a/kde-frameworks/qqc2-desktop-style/qqc2-desktop-style-9999.ebuild
+++ b/kde-frameworks/qqc2-desktop-style/qqc2-desktop-style-9999.ebuild
@@ -3,8 +3,10 @@
 
 EAPI=7
 
-KDE_QTHELP="false"
-inherit kde5
+ECM_QTHELP="false"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Style for QtQuickControls 2 that uses QWidget's QStyle for painting"
 KEYWORDS=""
@@ -12,14 +14,14 @@ LICENSE="|| ( GPL-2+ LGPL-3+ )"
 IUSE=""
 
 DEPEND="
-	$(add_frameworks_dep kconfigwidgets)
-	$(add_frameworks_dep kiconthemes)
-	$(add_frameworks_dep kirigami)
-	$(add_qt_dep qtdeclarative '' '' '5=')
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtwidgets)
+	>=kde-frameworks/kconfigwidgets-${PVCUT}:5
+	>=kde-frameworks/kiconthemes-${PVCUT}:5
+	>=kde-frameworks/kirigami-${PVCUT}:5
+	>=dev-qt/qtdeclarative-${QTMIN}:5=
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
 "
 RDEPEND="${DEPEND}
-	$(add_qt_dep qtgraphicaleffects)
-	$(add_qt_dep qtquickcontrols2)
+	>=dev-qt/qtgraphicaleffects-${QTMIN}:5
+	>=dev-qt/qtquickcontrols2-${QTMIN}:5
 "

diff --git a/kde-frameworks/solid/solid-9999.ebuild b/kde-frameworks/solid/solid-9999.ebuild
index 38a83063b2..eb19f87ae8 100644
--- a/kde-frameworks/solid/solid-9999.ebuild
+++ b/kde-frameworks/solid/solid-9999.ebuild
@@ -3,8 +3,9 @@
 
 EAPI=7
 
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Provider for platform independent hardware discovery, abstraction and management"
 LICENSE="LGPL-2.1+"
@@ -12,22 +13,22 @@ KEYWORDS=""
 IUSE="nls"
 
 BDEPEND="
-	nls? ( $(add_qt_dep linguist-tools) )
+	nls? ( >=dev-qt/linguist-tools-${QTMIN}:5 )
 "
 RDEPEND="
-	$(add_qt_dep qtdbus)
-	$(add_qt_dep qtdeclarative)
-	$(add_qt_dep qtwidgets)
-	$(add_qt_dep qtxml)
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtdeclarative-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
+	>=dev-qt/qtxml-${QTMIN}:5
 	sys-fs/udisks:2
 	virtual/libudev:=
 "
 DEPEND="${RDEPEND}
-	test? ( $(add_qt_dep qtconcurrent) )
+	test? ( >=dev-qt/qtconcurrent-${QTMIN}:5 )
 "
 
 pkg_postinst() {
-	kde5_pkg_postinst
+	ecm_pkg_postinst
 
 	if [[ -z "${REPLACING_VERSIONS}" ]] && ! has_version "app-misc/media-player-info" ; then
 		elog "For media player support, install app-misc/media-player-info"

diff --git a/kde-frameworks/sonnet/sonnet-9999.ebuild b/kde-frameworks/sonnet/sonnet-9999.ebuild
index d708303c5d..61c74789ac 100644
--- a/kde-frameworks/sonnet/sonnet-9999.ebuild
+++ b/kde-frameworks/sonnet/sonnet-9999.ebuild
@@ -4,8 +4,9 @@
 EAPI=7
 
 ECM_DESIGNERPLUGIN="true"
+QTMIN=5.12.3
 VIRTUALX_REQUIRED="test"
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework for providing spell-checking through abstraction of popular backends"
 LICENSE="LGPL-2+ LGPL-2.1+"
@@ -13,11 +14,11 @@ KEYWORDS=""
 IUSE="aspell +hunspell nls"
 
 BDEPEND="
-	nls? ( $(add_qt_dep linguist-tools) )
+	nls? ( >=dev-qt/linguist-tools-${QTMIN}:5 )
 "
 DEPEND="
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtwidgets)
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
 	aspell? ( app-text/aspell )
 	hunspell? ( app-text/hunspell:= )
 "
@@ -29,7 +30,7 @@ src_configure() {
 		$(cmake-utils_use_find_package hunspell HUNSPELL)
 	)
 
-	kde5_src_configure
+	ecm_src_configure
 }
 
 src_test() {
@@ -38,5 +39,5 @@ src_test() {
 		-E "(sonnet-test_settings|sonnet-test_highlighter)"
 	)
 
-	kde5_src_test
+	ecm_src_test
 }

diff --git a/kde-frameworks/syndication/syndication-9999.ebuild b/kde-frameworks/syndication/syndication-9999.ebuild
index 9045049854..f178861620 100644
--- a/kde-frameworks/syndication/syndication-9999.ebuild
+++ b/kde-frameworks/syndication/syndication-9999.ebuild
@@ -3,8 +3,10 @@
 
 EAPI=7
 
-KDE_TEST="true"
-inherit kde5
+ECM_TEST="true"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Library for parsing RSS and Atom feeds"
 LICENSE="LGPL-2+"
@@ -12,13 +14,13 @@ KEYWORDS=""
 IUSE=""
 
 COMMON_DEPEND="
-	$(add_frameworks_dep kcodecs)
-	$(add_qt_dep qtxml)
+	>=kde-frameworks/kcodecs-${PVCUT}:5
+	>=dev-qt/qtxml-${QTMIN}:5
 "
 DEPEND="${COMMON_DEPEND}
 	test? (
-		$(add_qt_dep qtnetwork)
-		$(add_qt_dep qtwidgets)
+		>=dev-qt/qtnetwork-${QTMIN}:5
+		>=dev-qt/qtwidgets-${QTMIN}:5
 	)
 "
 RDEPEND="${COMMON_DEPEND}

diff --git a/kde-frameworks/syntax-highlighting/syntax-highlighting-9999.ebuild b/kde-frameworks/syntax-highlighting/syntax-highlighting-9999.ebuild
index cc8218f4ba..1fb339c168 100644
--- a/kde-frameworks/syntax-highlighting/syntax-highlighting-9999.ebuild
+++ b/kde-frameworks/syntax-highlighting/syntax-highlighting-9999.ebuild
@@ -3,8 +3,9 @@
 
 EAPI=7
 
-KDE_TEST="forceoptional"
-inherit kde5
+ECM_TEST="forceoptional"
+QTMIN=5.12.3
+inherit ecm kde.org
 
 DESCRIPTION="Framework for syntax highlighting"
 LICENSE="LGPL-2+ LGPL-2.1+"
@@ -13,16 +14,16 @@ IUSE="nls"
 
 BDEPEND="
 	dev-lang/perl
-	nls? ( $(add_qt_dep linguist-tools) )
+	nls? ( >=dev-qt/linguist-tools-${QTMIN}:5 )
 "
 DEPEND="
-	$(add_qt_dep qtgui)
-	$(add_qt_dep qtnetwork)
-	$(add_qt_dep qtxmlpatterns)
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtnetwork-${QTMIN}:5
+	>=dev-qt/qtxmlpatterns-${QTMIN}:5
 "
 RDEPEND="${DEPEND}"
 
 src_install() {
-	kde5_src_install
+	ecm_src_install
 	dobin "${BUILD_DIR}"/bin/katehighlightingindexer
 }

diff --git a/kde-frameworks/threadweaver/threadweaver-9999.ebuild b/kde-frameworks/threadweaver/threadweaver-9999.ebuild
index 33784f81a2..b155d00f9a 100644
--- a/kde-frameworks/threadweaver/threadweaver-9999.ebuild
+++ b/kde-frameworks/threadweaver/threadweaver-9999.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=7
 
-inherit kde5
+inherit ecm kde.org
 
 DESCRIPTION="Framework for managing threads using job and queue-based interfaces"
 LICENSE="LGPL-2+"
@@ -12,5 +12,5 @@ IUSE=""
 
 src_prepare() {
 	cmake_comment_add_subdirectory benchmarks
-	kde5_src_prepare
+	ecm_src_prepare
 }


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2019-11-10 17:11 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-11-10 17:11 [gentoo-commits] proj/kde:master commit in: kde-frameworks/kholidays/, kde-frameworks/kunitconversion/, Andreas Sturmlechner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox