[Buildroot] [PATCH] package/x11r7/xserver_xorg-server: fix runtime problem when libgbm is in use

Waldemar Brodkorb wbx at openadk.org
Mon Sep 22 05:25:40 UTC 2025


When running Qemu X86_64 with libgbm active in the Buildroot config
the Xorg server does not start because of missing libgbm symbol in
the modesetting driver.

Fix this with a small patch against modesettings driver Makefile.am.

We need to add font-util for successful autoreconf.

Signed-off-by: Waldemar Brodkorb <wbx at openadk.org>
---
 ...02-modesetting-driver-needs-GBM_LIBS.patch | 33 +++++++++++++++++++
 package/x11r7/xserver_xorg-server/Config.in   |  1 +
 .../xserver_xorg-server.mk                    |  2 ++
 3 files changed, 36 insertions(+)
 create mode 100644 package/x11r7/xserver_xorg-server/0002-modesetting-driver-needs-GBM_LIBS.patch

diff --git a/package/x11r7/xserver_xorg-server/0002-modesetting-driver-needs-GBM_LIBS.patch b/package/x11r7/xserver_xorg-server/0002-modesetting-driver-needs-GBM_LIBS.patch
new file mode 100644
index 0000000000..5b9bba270b
--- /dev/null
+++ b/package/x11r7/xserver_xorg-server/0002-modesetting-driver-needs-GBM_LIBS.patch
@@ -0,0 +1,33 @@
+From fb22307f7e28127bae19e7e394c7f3784bb8dd97 Mon Sep 17 00:00:00 2001
+From: Waldemar Brodkorb <wbx at openadk.org>
+Date: Sun, 21 Sep 2025 20:49:56 +0200
+Subject: [PATCH 274/274] modesetting driver needs GBM_LIBS
+
+When libgbm.so is around the modesetting driver needs to link against
+the library. Otherwise you get an undefined symbol.
+
+See here for a bug report:
+https://gitlab.freedesktop.org/xorg/xserver/-/issues/1378
+
+Signed-off-by: Waldemar Brodkorb <wbx at openadk.org>
+Upstream: N/A (closed gitlab)
+---
+ hw/xfree86/drivers/modesetting/Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/hw/xfree86/drivers/modesetting/Makefile.am b/hw/xfree86/drivers/modesetting/Makefile.am
+index 961c57408..ac5091be3 100644
+--- a/hw/xfree86/drivers/modesetting/Makefile.am
++++ b/hw/xfree86/drivers/modesetting/Makefile.am
+@@ -41,7 +41,7 @@ AM_CPPFLAGS = \
+ 
+ modesetting_drv_la_LTLIBRARIES = modesetting_drv.la
+ modesetting_drv_la_LDFLAGS = -module -avoid-version
+-modesetting_drv_la_LIBADD = $(UDEV_LIBS) $(DRM_LIBS)
++modesetting_drv_la_LIBADD = $(UDEV_LIBS) $(DRM_LIBS) $(GBM_LIBS)
+ modesetting_drv_ladir = @moduledir@/drivers
+ 
+ modesetting_drv_la_SOURCES = \
+-- 
+2.47.3
+
diff --git a/package/x11r7/xserver_xorg-server/Config.in b/package/x11r7/xserver_xorg-server/Config.in
index 89410f22bb..3ab3de2731 100644
--- a/package/x11r7/xserver_xorg-server/Config.in
+++ b/package/x11r7/xserver_xorg-server/Config.in
@@ -10,6 +10,7 @@ config BR2_PACKAGE_XSERVER_XORG_SERVER
 	select BR2_PACKAGE_XFONT_FONT_ALIAS
 	select BR2_PACKAGE_XFONT_FONT_MISC_MISC
 	select BR2_PACKAGE_XFONT_FONT_CURSOR_MISC
+	select BR2_PACKAGE_XFONT_FONT_UTIL
 	select BR2_PACKAGE_XLIB_LIBX11
 	select BR2_PACKAGE_XLIB_LIBXAU
 	select BR2_PACKAGE_XLIB_LIBXCURSOR
diff --git a/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk b/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk
index 2ce02ade36..168213dd94 100644
--- a/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk
+++ b/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk
@@ -13,9 +13,11 @@ XSERVER_XORG_SERVER_CPE_ID_VENDOR = x.org
 XSERVER_XORG_SERVER_CPE_ID_PRODUCT = x_server
 XSERVER_XORG_SERVER_SELINUX_MODULES = xdg xserver
 XSERVER_XORG_SERVER_INSTALL_STAGING = YES
+XSERVER_XORG_SERVER_AUTORECONF = YES
 
 XSERVER_XORG_SERVER_DEPENDENCIES = \
 	xutil_util-macros \
+	xfont_font-util \
 	xlib_libX11 \
 	xlib_libXau \
 	xlib_libXdmcp \
-- 
2.47.3



More information about the buildroot mailing list