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
|
||||
#
|
||||
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
|
||||
|
|
|
|||
|
|
@ -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"
|
||||
|
||||
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"
|
||||
|
||||
|
|
|
|||
|
|
@ -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"
|
||||
|
||||
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)}"
|
||||
inherit qt-version
|
||||
|
||||
# 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} \
|
||||
"
|
||||
RDEPENDS:${PN} += "${@oe.utils.conditional('QT_VERSION', '', '', 'packagegroup-${QT_VERSION}-dey', d)}"
|
||||
|
|
|
|||
Loading…
Reference in New Issue