mirror of
https://github.com/thead-yocto-mirror/meta-qt5
synced 2026-09-04 05:04:36 +02:00
qtwayland: Rework recipe to allow PACKAGECONFIG use
The Qt Wayland uses some modules which can be enabled/disabled depending on users needs, however this must be deterministic. So we now use PACKAGECONFIG to enable/disable those features. Following options are available: - brcm-egl - compositor-api - drm-egl - glx - libhybris-egl - wayland-egl - xcompositor - xkb Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Acked-by: Tom Hochstein <tom.hochstein@nxp.com>
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
require qt5.inc
|
||||
require qt5-git.inc
|
||||
|
||||
DEPENDS += "qtbase qtdeclarative wayland wayland-native qtwayland-native"
|
||||
|
||||
# There are no LGPLv3-only licensed files in this component.
|
||||
LICENSE = "BSD & (LGPL-2.1 & The-Qt-Company-Qt-LGPL-Exception-1.1 | LGPL-3.0)"
|
||||
LIC_FILES_CHKSUM = " \
|
||||
@@ -11,18 +13,25 @@ LIC_FILES_CHKSUM = " \
|
||||
file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \
|
||||
"
|
||||
|
||||
# wayland-native is already in wayland DEPENDS, but add it here
|
||||
# explicitly, because it's native wayland-scanner we're looking for
|
||||
# libxkbcommon isn't mandatory make it easier to remove by .bbappend
|
||||
# (e.g. for building qtwayland with danny which doesn't have libxkbcommon in oe-core).
|
||||
XKB_DEPENDS = "libxkbcommon xproto"
|
||||
DEPENDS += "qtbase qtdeclarative wayland wayland-native qtwayland-native ${XKB_DEPENDS} ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'libxcomposite', '', d)}"
|
||||
#FIXME: xkb should be optional; we add it here to fix the build error without it
|
||||
# (https://bugreports.qt.io/browse/QTBUG-54851)
|
||||
PACKAGECONFIG ?= " \
|
||||
compositor-api \
|
||||
wayland-egl \
|
||||
xkb \
|
||||
${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'xcompositor xkb glx', '', d)} \
|
||||
"
|
||||
|
||||
QT_WAYLAND_CONFIG ?= "wayland-compositor"
|
||||
QT_WAYLAND_DEFINES ?= ""
|
||||
PACKAGECONFIG[compositor-api] = "CONFIG+=wayland-compositor"
|
||||
PACKAGECONFIG[xcompositor] = "CONFIG+=config_xcomposite CONFIG+=done_config_xcomposite,CONFIG+=done_config_xcomposite,libxcomposite"
|
||||
PACKAGECONFIG[glx] = "CONFIG+=config_glx CONFIG+=done_config_glx,CONFIG+=done_config_glx,virtual/mesa"
|
||||
PACKAGECONFIG[xkb] = "CONFIG+=config_xkbcommon CONFIG+=done_config_xkbcommon,CONFIG+=done_config_xkbcommon,libxkbcommon xproto"
|
||||
PACKAGECONFIG[wayland-egl] = "CONFIG+=config_wayland_egl CONFIG+=done_config_wayland_egl,CONFIG+=done_config_wayland_egl,virtual/egl"
|
||||
PACKAGECONFIG[brcm-egl] = "CONFIG+=config_brcm_egl CONFIG+=done_config_brcm_egl,CONFIG+=done_config_brcm_egl,virtual/egl"
|
||||
PACKAGECONFIG[drm-egl] = "CONFIG+=config_drm_egl_server CONFIG+=done_config_drm_egl_server,CONFIG+=done_config_drm_egl_server,libdrm virtual/egl"
|
||||
PACKAGECONFIG[libhybris-egl] = "CONFIG+=config_libhybris_egl_server CONFIG+=done_config_libhybris_egl_server,CONFIG+=done_config_libhybris_egl_server,libhybris"
|
||||
|
||||
EXTRA_QMAKEVARS_PRE += "CONFIG+=${QT_WAYLAND_CONFIG}"
|
||||
EXTRA_QMAKEVARS_PRE += "DEFINES+=${QT_WAYLAND_DEFINES}"
|
||||
EXTRA_QMAKEVARS_PRE += "${PACKAGECONFIG_CONFARGS}"
|
||||
|
||||
FILES_${PN}-plugins += " \
|
||||
${OE_QMAKE_PATH_PLUGINS}/*/*/*${SOLIBSDEV} \
|
||||
|
||||
Reference in New Issue
Block a user