Improve handling of host tools

Summary:
We now no longer need the corresponding native variants of the frameworks
added as explicit dependencies, the target ones take care of this. The
approach is inspired by how the Wayland recipe handles its code generator.

This also uncovered an issue with KAuth, which can't build its host tools
yet. This uses the target version as a placeholder for now, to not block
the build of everything else.

Reviewers: cordlandwehr

Reviewed By: cordlandwehr

Differential Revision: https://phabricator.kde.org/D7023
This commit is contained in:
Volker Krause
2017-07-31 20:04:03 +02:00
parent e2daf3c78b
commit 3385fb91d4
19 changed files with 47 additions and 23 deletions

View File

@@ -2,7 +2,6 @@ inherit cmake_qt5
EXTRA_OECMAKE += " \
-DOE_KF5_PATH_HOST_ROOT=${STAGING_DIR_HOST} \
-DKF5_HOST_TOOLING=${STAGING_DIR_NATIVE}/usr/lib/cmake \
-DBUILD_TESTING=OFF \
"

View File

@@ -8,7 +8,7 @@ LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \
"
PR = "r0"
DEPENDS = "qtbase"
DEPENDS = "qtbase kconfig-native"
SRC_URI = " \
git://anongit.kde.org/kconfig;nobranch=1 \
@@ -18,7 +18,14 @@ S = "${WORKDIR}/git"
inherit cmake_kf5
# we need the config compiler for the host, but kconf_update for the target
# the latter also needs to be in the sysroot to silence the cmake config files checking its existence
sysroot_stage_all_append_class-target () {
mkdir -p ${SYSROOT_DESTDIR}${libexecdir}/kf5
cp ${D}${libexecdir}/kf5/kconf_update ${SYSROOT_DESTDIR}${libexecdir}/kf5
cp ${STAGING_LIBEXECDIR_NATIVE}/kf5/kconfig_compiler_kf5 ${SYSROOT_DESTDIR}/${libexecdir}/kf5
}
FILES_${PN}-dev += " \
${libexecdir}/kf5/kconfig_compiler_kf5 \
"

View File

@@ -5,14 +5,24 @@ LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \
"
PR = "r0"
DEPENDS = "qtbase"
DEPENDS = "qtbase kcoreaddons-native"
SRC_URI = "git://anongit.kde.org/kcoreaddons;nobranch=1"
S = "${WORKDIR}/git"
inherit cmake_kf5
# put the native version of dekstoptojson into the sysroot, we want to execute that during the build
sysroot_stage_all_append_class-target() {
mkdir -p ${SYSROOT_DESTDIR}/${bindir}
cp ${STAGING_BINDIR_NATIVE}/desktoptojson ${SYSROOT_DESTDIR}/${bindir}/
}
FILES_${PN} += " \
/usr/share/mime/packages/kde5.xml \
/usr/share/kf5/licenses/* \
${datadir}/mime/packages/kde5.xml \
${datadir}/kf5/licenses/* \
"
FILES_${PN}-dev += " \
${bindir}/desktoptojson \
"

View File

@@ -4,7 +4,7 @@ LICENSE = "LGPL-2.1"
LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c"
PR = "r0"
DEPENDS = "qtbase qtdeclarative kcoreaddons kcoreaddons-native kconfig kconfig-native kwindowsystem boost"
DEPENDS = "qtbase qtdeclarative kcoreaddons kconfig kwindowsystem boost"
SRC_URI = "git://anongit.kde.org/kactivities;nobranch=1"
S = "${WORKDIR}/git"

View File

@@ -5,19 +5,31 @@ LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \
"
PR = "r0"
DEPENDS = "qtbase kcoreaddons kcoreaddons-native polkit-qt-1"
DEPENDS = "qtbase kcoreaddons polkit-qt-1"
SRC_URI = "git://anongit.kde.org/kauth;nobranch=1"
S = "${WORKDIR}/git"
inherit cmake_kf5
sysroot_stage_all_append_class-target () {
mkdir -p ${SYSROOT_DESTDIR}${libexecdir}/kauth
# FIXME use the host generator not the target one
# this requires kauth-native to build first though, at least to the extend giving us the generator...
#cp ${STAGING_LIBEXECDIR_NATIVE}/kauth/kauth-policy-gen ${SYSROOT_DESTDIR}/${libexecdir}/kauth
cp ${D}${libexecdir}/kauth/kauth-policy-gen ${SYSROOT_DESTDIR}/${libexecdir}/kauth
}
FILES_${PN} += " \
${libdir}/plugins/kauth/helper/kauth_helper_plugin.so \
${libdir}/plugins/kauth/backend/kauth_backend_plugin.so \
${datadir}/kf5/kauth/*.stub \
"
FILES_${PN}-dev += " \
${libexecdir}/kauth/kauth-policy-gen \
"
FILES_${PN}-dbg += " \
${libdir}/plugins/kauth/helper/.debug/kauth_helper_plugin.so \
"

View File

@@ -5,7 +5,7 @@ LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \
"
PR = "r0"
DEPENDS = "qtbase kwidgetsaddons kconfig kconfig-native"
DEPENDS = "qtbase kwidgetsaddons kconfig"
SRC_URI = "git://anongit.kde.org/kcompletion;nobranch=1"
S = "${WORKDIR}/git"

View File

@@ -5,7 +5,7 @@ LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \
"
PR = "r0"
DEPENDS = "kcoreaddons kwindowsystem kcoreaddons-native"
DEPENDS = "kcoreaddons kwindowsystem"
SRC_URI = " \
git://anongit.kde.org/kcrash \

View File

@@ -5,7 +5,7 @@ LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \
"
PR = "r0"
DEPENDS = "qtbase kcoreaddons kwidgetsaddons kcoreaddons-native"
DEPENDS = "qtbase kcoreaddons kwidgetsaddons"
SRC_URI = "git://anongit.kde.org/kjobwidgets;nobranch=1"
S = "${WORKDIR}/git"

View File

@@ -5,7 +5,7 @@ LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \
"
PR = "r0"
DEPENDS = "qtbase kwindowsystem kconfig kconfig-native kcodecs kcoreaddons kcoreaddons-native phonon"
DEPENDS = "qtbase kwindowsystem kconfig kcodecs kcoreaddons phonon"
SRC_URI = "git://anongit.kde.org/knotifications;nobranch=1"
S = "${WORKDIR}/git"

View File

@@ -5,7 +5,7 @@ LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \
"
PR = "r0"
DEPENDS = "qtbase karchive kcoreaddons kcoreaddons-native ki18n"
DEPENDS = "qtbase karchive kcoreaddons ki18n"
SRC_URI = "git://anongit.kde.org/kpackage;nobranch=1"
S = "${WORKDIR}/git"

View File

@@ -5,7 +5,7 @@ LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \
"
PR = "r0"
DEPENDS = "ki18n kcoreaddons kcoreaddons-native"
DEPENDS = "ki18n kcoreaddons"
SRC_URI = "git://anongit.kde.org/kpty;nobranch=1"
S = "${WORKDIR}/git"

View File

@@ -4,7 +4,7 @@ LICENSE = "LGPL-2.1"
LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1"
PR = "r0"
DEPENDS = "qtbase kconfig kconfig-native kcoreaddons kcoreaddons-native kcodecs kconfigwidgets kiconthemes kwidgetsaddons kxmlgui"
DEPENDS = "qtbase kconfig kcoreaddons kcodecs kconfigwidgets kiconthemes kwidgetsaddons kxmlgui"
SRC_URI = "git://anongit.kde.org/kbookmarks;nobranch=1"
S = "${WORKDIR}/git"

View File

@@ -4,7 +4,7 @@ LICENSE = "LGPL-2.1"
LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1"
PR = "r0"
DEPENDS = "qtbase kauth kcoreaddons kcoreaddons-native kcodecs kconfig kconfig-native kguiaddons ki18n kwidgetsaddons"
DEPENDS = "qtbase kauth kcoreaddons kcodecs kconfig kguiaddons ki18n kwidgetsaddons"
SRC_URI = "git://anongit.kde.org/kconfigwidgets;nobranch=1"
S = "${WORKDIR}/git"

View File

@@ -8,9 +8,7 @@ PR = "r0"
DEPENDS = " \
qtbase \
kcoreaddons \
kcoreaddons-native \
kconfig \
kconfig-native \
kcrash \
kdbusaddons \
${@bb.utils.contains("DISTRO_FEATURES", "x11", "qtx11extras", "", d)} \

View File

@@ -4,7 +4,7 @@ LICENSE = "LGPL-2.1"
LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1"
PR = "r0"
DEPENDS = "qtbase qtsvg karchive ki18n kcoreaddons kcoreaddons-native kconfigwidgets kconfig-native kwidgetsaddons kitemviews"
DEPENDS = "qtbase qtsvg karchive ki18n kcoreaddons kconfigwidgets kwidgetsaddons kitemviews"
SRC_URI = "git://anongit.kde.org/kiconthemes;nobranch=1"
S = "${WORKDIR}/git"

View File

@@ -8,9 +8,7 @@ DEPENDS = " \
qtbase \
karchive \
kconfig \
kconfig-native \
kcoreaddons \
kcoreaddons-native \
kdbusaddons \
ki18n \
kservice \

View File

@@ -4,7 +4,7 @@ LICENSE = "LGPL-2.1"
LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1"
PR = "r0"
DEPENDS = "qtbase kconfig kconfig-native kcoreaddons kcoreaddons-native kcrash kdbusaddons ki18n"
DEPENDS = "qtbase kconfig kcoreaddons kcrash kdbusaddons ki18n"
SRC_URI = "git://anongit.kde.org/kservice;nobranch=1"
S = "${WORKDIR}/git"

View File

@@ -4,7 +4,7 @@ LICENSE = "LGPL-2.1"
LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1"
PR = "r0"
DEPENDS = "qtbase kcompletion kconfig kconfig-native kconfigwidgets ki18n kiconthemes kservice kwidgetsaddons kwindowsystem sonnet kcoreaddons-native"
DEPENDS = "qtbase kcompletion kconfig kconfigwidgets ki18n kiconthemes kservice kwidgetsaddons kwindowsystem sonnet"
SRC_URI = "git://anongit.kde.org/ktextwidgets;nobranch=1"
S = "${WORKDIR}/git"

View File

@@ -4,7 +4,7 @@ LICENSE = "LGPL-2.1"
LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1"
PR = "r0"
DEPENDS = "qtbase kcoreaddons kcoreaddons-native kitemviews kconfig kconfig-native kconfigwidgets ki18n kiconthemes ktextwidgets kwidgetsaddons kwindowsystem kglobalaccel"
DEPENDS = "qtbase kcoreaddons kitemviews kconfig kconfigwidgets ki18n kiconthemes ktextwidgets kwidgetsaddons kwindowsystem kglobalaccel"
SRC_URI = "git://anongit.kde.org/kxmlgui;nobranch=1"
S = "${WORKDIR}/git"