meta-digi-dey: make QT5 optional
Remove the 'qt5-layer' hardcoded dependence for 'digi-dey' and dynamically get whether QT5 is being used in the project. This is done with a new class _qt-version.bbclass_ that is able to get that information from the project. https://onedigi.atlassian.net/browse/DEL-8347 Signed-off-by: Javier Viguera <javier.viguera@digi.com>
This commit is contained in:
parent
ae55a43695
commit
14e504344f
|
|
@ -25,7 +25,8 @@ EXTRA_USERS_PARAMS += "\
|
||||||
#
|
#
|
||||||
# Create QT5 capable toolchain/SDK if 'dey-qt' image feature is enabled
|
# Create QT5 capable toolchain/SDK if 'dey-qt' image feature is enabled
|
||||||
#
|
#
|
||||||
inherit ${@bb.utils.contains("IMAGE_FEATURES", "dey-qt", "populate_sdk_qt5", "",d)}
|
inherit qt-version
|
||||||
|
inherit ${@bb.utils.contains("IMAGE_FEATURES", "dey-qt", "${QT_POPULATE_SDK}", "",d)}
|
||||||
|
|
||||||
#
|
#
|
||||||
# Generate ZIP installer if configured in the project's local.conf
|
# Generate ZIP installer if configured in the project's local.conf
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,12 @@
|
||||||
|
#
|
||||||
|
# Abstract QT related metadata in this class with two purposes:
|
||||||
|
#
|
||||||
|
# - Remove the mandatory dependence of DEY in meta-qtX
|
||||||
|
# - Support multiple QT versions
|
||||||
|
#
|
||||||
|
# Copyright (c) 2023, Digi International Inc.
|
||||||
|
#
|
||||||
|
|
||||||
|
QT_AVAILABLE = "${@bb.utils.contains_any('BBFILE_COLLECTIONS', 'qt5-layer', 'true', 'false', d)}"
|
||||||
|
QT_VERSION = "${@bb.utils.contains('BBFILE_COLLECTIONS', 'qt5-layer', 'qt5', '', d)}"
|
||||||
|
QT_POPULATE_SDK = "${@oe.utils.vartrue('QT_AVAILABLE', 'populate_sdk_${QT_VERSION}', '', d)}"
|
||||||
|
|
@ -25,7 +25,7 @@ BBFILE_PATTERN_digi-dey := "^${LAYERDIR}/"
|
||||||
BBFILE_PRIORITY_digi-dey = "6"
|
BBFILE_PRIORITY_digi-dey = "6"
|
||||||
|
|
||||||
LAYERDEPENDS_digi-dey = "core digi-arm"
|
LAYERDEPENDS_digi-dey = "core digi-arm"
|
||||||
LAYERDEPENDS_digi-dey += "openembedded-layer networking-layer webserver qt5-layer swupdate"
|
LAYERDEPENDS_digi-dey += "openembedded-layer networking-layer webserver swupdate"
|
||||||
|
|
||||||
LAYERSERIES_COMPAT_digi-dey = "kirkstone"
|
LAYERSERIES_COMPAT_digi-dey = "kirkstone"
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,44 @@
|
||||||
|
#
|
||||||
|
# Copyright (C) 2013-2018, Digi International Inc.
|
||||||
|
#
|
||||||
|
SUMMARY = "QT packagegroup for DEY image"
|
||||||
|
|
||||||
|
PACKAGE_ARCH = "${MACHINE_ARCH}"
|
||||||
|
inherit packagegroup
|
||||||
|
|
||||||
|
# Install Freescale QT demo applications
|
||||||
|
QT5_APPS = ""
|
||||||
|
QT5_APPS:imxgpu3d = "${@bb.utils.contains("MACHINE_GSTREAMER_1_0_PLUGIN", "imx-gst1.0-plugin", "imx-qtapplications", "", d)}"
|
||||||
|
|
||||||
|
# Install fonts
|
||||||
|
QT5_FONTS = "ttf-dejavu-common ttf-dejavu-sans ttf-dejavu-sans-mono ttf-dejavu-serif "
|
||||||
|
|
||||||
|
# Install Freescale QT demo applications for X11 backend only
|
||||||
|
MACHINE_QT5_MULTIMEDIA_APPS = ""
|
||||||
|
QT5_RDEPENDS = ""
|
||||||
|
QT5_RDEPENDS_common = " \
|
||||||
|
packagegroup-qt5-demos \
|
||||||
|
${QT5_FONTS} \
|
||||||
|
${QT5_APPS} \
|
||||||
|
${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'libxkbcommon', '', d)} \
|
||||||
|
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'qtwayland qtwayland-plugins', '', d)}\
|
||||||
|
"
|
||||||
|
|
||||||
|
QT5_RDEPENDS:imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES', 'x11','${QT5_RDEPENDS_common}', \
|
||||||
|
'qtbase qtbase-plugins', d)}"
|
||||||
|
|
||||||
|
QT5_RDEPENDS:imxpxp = "${@bb.utils.contains('DISTRO_FEATURES', 'x11','${QT5_RDEPENDS_common}', \
|
||||||
|
'qtbase qtbase-examples qtbase-plugins qtquickcontrols2 qtquickcontrols2-qmlplugins', d)}"
|
||||||
|
|
||||||
|
QT5_RDEPENDS:imxgpu3d = " \
|
||||||
|
${QT5_RDEPENDS_common} \
|
||||||
|
gstreamer1.0-plugins-good-qt \
|
||||||
|
"
|
||||||
|
|
||||||
|
# Add packagegroup-qt5-webengine to QT5_RDEPENDS and comment out the line below to install qtwebengine to the rootfs.
|
||||||
|
QT5_RDEPENDS:remove = " packagegroup-qt5-webengine"
|
||||||
|
|
||||||
|
RDEPENDS:${PN} += " \
|
||||||
|
liberation-fonts \
|
||||||
|
${QT5_RDEPENDS} \
|
||||||
|
"
|
||||||
|
|
@ -1,44 +1,11 @@
|
||||||
#
|
#
|
||||||
# Copyright (C) 2013-2018, Digi International Inc.
|
# Copyright (C) 2013-2023, Digi International Inc.
|
||||||
#
|
#
|
||||||
SUMMARY = "QT packagegroup for DEY image"
|
SUMMARY = "QT packagegroup for DEY image"
|
||||||
|
|
||||||
PACKAGE_ARCH = "${MACHINE_ARCH}"
|
PACKAGE_ARCH = "${MACHINE_ARCH}"
|
||||||
inherit packagegroup
|
inherit packagegroup
|
||||||
|
|
||||||
# Install Freescale QT demo applications
|
inherit qt-version
|
||||||
QT5_APPS = ""
|
|
||||||
QT5_APPS:imxgpu3d = "${@bb.utils.contains("MACHINE_GSTREAMER_1_0_PLUGIN", "imx-gst1.0-plugin", "imx-qtapplications", "", d)}"
|
|
||||||
|
|
||||||
# Install fonts
|
RDEPENDS:${PN} += "${@oe.utils.conditional('QT_VERSION', '', '', 'packagegroup-${QT_VERSION}-dey', d)}"
|
||||||
QT5_FONTS = "ttf-dejavu-common ttf-dejavu-sans ttf-dejavu-sans-mono ttf-dejavu-serif "
|
|
||||||
|
|
||||||
# Install Freescale QT demo applications for X11 backend only
|
|
||||||
MACHINE_QT5_MULTIMEDIA_APPS = ""
|
|
||||||
QT5_RDEPENDS = ""
|
|
||||||
QT5_RDEPENDS_common = " \
|
|
||||||
packagegroup-qt5-demos \
|
|
||||||
${QT5_FONTS} \
|
|
||||||
${QT5_APPS} \
|
|
||||||
${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'libxkbcommon', '', d)} \
|
|
||||||
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'qtwayland qtwayland-plugins', '', d)}\
|
|
||||||
"
|
|
||||||
|
|
||||||
QT5_RDEPENDS:imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES', 'x11','${QT5_RDEPENDS_common}', \
|
|
||||||
'qtbase qtbase-plugins', d)}"
|
|
||||||
|
|
||||||
QT5_RDEPENDS:imxpxp = "${@bb.utils.contains('DISTRO_FEATURES', 'x11','${QT5_RDEPENDS_common}', \
|
|
||||||
'qtbase qtbase-examples qtbase-plugins qtquickcontrols2 qtquickcontrols2-qmlplugins', d)}"
|
|
||||||
|
|
||||||
QT5_RDEPENDS:imxgpu3d = " \
|
|
||||||
${QT5_RDEPENDS_common} \
|
|
||||||
gstreamer1.0-plugins-good-qt \
|
|
||||||
"
|
|
||||||
|
|
||||||
# Add packagegroup-qt5-webengine to QT5_RDEPENDS and comment out the line below to install qtwebengine to the rootfs.
|
|
||||||
QT5_RDEPENDS:remove = " packagegroup-qt5-webengine"
|
|
||||||
|
|
||||||
RDEPENDS:${PN} += " \
|
|
||||||
liberation-fonts \
|
|
||||||
${QT5_RDEPENDS} \
|
|
||||||
"
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue