From 0c189e7462103591eb17d34a6e33430ddc636c84 Mon Sep 17 00:00:00 2001 From: Jesse Van Gavere Date: Tue, 7 Feb 2023 18:17:09 +0100 Subject: [PATCH] package/qt6/qt6base: add support for gui module Signed-off-by: Jesse Van Gavere Signed-off-by: Angelo Compagnucci Signed-off-by: Thomas Petazzoni --- package/qt6/qt6base/Config.in | 31 ++++++++++++++++++++++++++++ package/qt6/qt6base/qt6base.mk | 37 +++++++++++++++++++++++++++++++++- 2 files changed, 67 insertions(+), 1 deletion(-) diff --git a/package/qt6/qt6base/Config.in b/package/qt6/qt6base/Config.in index e8357a675c..1810b1586d 100644 --- a/package/qt6/qt6base/Config.in +++ b/package/qt6/qt6base/Config.in @@ -30,6 +30,37 @@ config BR2_PACKAGE_QT6BASE_DBUS help This option enables the D-Bus module. +config BR2_PACKAGE_QT6BASE_GUI + bool "gui module" + select BR2_PACKAGE_FREETYPE + # At least one graphic backend must be enabled, so enable + # linuxfb if nothing is enabled. + select BR2_PACKAGE_QT6BASE_LINUXFB if \ + !BR2_PACKAGE_QT6BASE_XCB + help + This option enables the Qt6Gui library. + +if BR2_PACKAGE_QT6BASE_GUI + +config BR2_PACKAGE_QT6BASE_LINUXFB + bool "linuxfb support" + +config BR2_PACKAGE_QT6BASE_XCB + bool "X.org XCB support" + depends on BR2_PACKAGE_XORG7 + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_LIBXCB + select BR2_PACKAGE_XCB_UTIL_IMAGE + select BR2_PACKAGE_XCB_UTIL_KEYSYMS + select BR2_PACKAGE_XCB_UTIL_RENDERUTIL + select BR2_PACKAGE_XCB_UTIL_WM + select BR2_PACKAGE_LIBXKBCOMMON + +comment "X.org XCB backend available if X.org is enabled" + depends on !BR2_PACKAGE_XORG7 + +endif + config BR2_PACKAGE_QT6BASE_NETWORK bool "network module" help diff --git a/package/qt6/qt6base/qt6base.mk b/package/qt6/qt6base/qt6base.mk index 2f159f380b..bcf2464590 100644 --- a/package/qt6/qt6base/qt6base.mk +++ b/package/qt6/qt6base/qt6base.mk @@ -40,7 +40,6 @@ QT6BASE_INSTALL_STAGING = YES QT6BASE_CONF_OPTS = \ -GNinja \ -DQT_HOST_PATH=$(HOST_DIR) \ - -DFEATURE_gui=OFF \ -DFEATURE_concurrent=OFF \ -DFEATURE_xml=OFF \ -DFEATURE_sql=OFF \ @@ -141,6 +140,42 @@ else QT6BASE_CONF_OPTS += -DFEATURE_glib=OFF endif +ifeq ($(BR2_PACKAGE_QT6BASE_GUI),y) +QT6BASE_CONF_OPTS += \ + -DFEATURE_gui=ON \ + -DFEATURE_freetype=ON \ + -DINPUT_opengl=no \ + -DFEATURE_vulkan=OFF +QT6BASE_DEPENDENCIES += freetype + +ifeq ($(BR2_PACKAGE_QT6BASE_LINUXFB),y) +QT6BASE_CONF_OPTS += -DFEATURE_linuxfb=ON +else +QT6BASE_CONF_OPTS += -DFEATURE_linuxfb=OFF +endif + +ifeq ($(BR2_PACKAGE_QT6BASE_XCB),y) +QT6BASE_CONF_OPTS += \ + -DFEATURE_xcb=ON \ + -DFEATURE_xcb_xlib=ON \ + -DFEATURE_xkbcommon=ON \ + -DFEATURE_xkbcommon_x11=ON +QT6BASE_DEPENDENCIES += \ + libxcb \ + libxkbcommon \ + xcb-util-wm \ + xcb-util-image \ + xcb-util-keysyms \ + xcb-util-renderutil \ + xlib_libX11 +else +QT6BASE_CONF_OPTS += -DFEATURE_xcb=OFF +endif + +else +QT6BASE_CONF_OPTS += -DFEATURE_gui=OFF +endif + ifeq ($(BR2_PACKAGE_OPENSSL),y) QT6BASE_CONF_OPTS += -DINPUT_openssl=yes QT6BASE_DEPENDENCIES += openssl