@@ -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
@@ -141,6 +141,39 @@ 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 \
+ xcb-util-wm \
+ xcb-util-image \
+ xcb-util-keysyms \
+ xcb-util-renderutil \
+ xlib_libX11 \
+ libxkbcommon
+QT6BASE_DEPENDENCIES += xlib_libXext
+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