new file mode 100644
@@ -0,0 +1,41 @@
+From 4fed044aaed5911fdc58d2a634f34a7186836935 Mon Sep 17 00:00:00 2001
+From: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
+Date: Sun, 12 Oct 2025 23:54:25 +0300
+Subject: [PATCH] glx: provide glx.pc
+
+New Vulkan CTS 1.4.4 started requiring glx.pc pkg-config file. Provide
+one if GLVND is not used in order to let VK CTS and other programs find
+Mesa GLX implementation.
+
+Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
+Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37834]
+---
+ src/glx/meson.build | 12 ++++++++++++
+ 1 file changed, 12 insertions(+)
+
+diff --git a/src/glx/meson.build b/src/glx/meson.build
+index 04fdf26ba6a2..28313f83a783 100644
+--- a/src/glx/meson.build
++++ b/src/glx/meson.build
+@@ -134,6 +134,18 @@ libgl = shared_library(
+ install : true,
+ )
+
++if not with_glvnd
++ pkg.generate(
++ name : 'glx',
++ description : 'Mesa GLX Library',
++ version : meson.project_version(),
++ libraries : libgl,
++ libraries_private : gl_priv_libs,
++ requires_private : gl_priv_reqs,
++ variables : ['glx_tls=yes'],
++ )
++endif
++
+ if with_symbols_check
+ libgl_symbols_file = with_glvnd ? 'glvnd-symbols.txt' : 'libgl-symbols.txt'
+
+--
+2.51.0
+
@@ -17,6 +17,7 @@ PE = "2"
SRC_URI = "https://archive.mesa3d.org/mesa-${PV}.tar.xz \
file://0001-meson-misdetects-64bit-atomics-on-mips-clang.patch \
file://0001-freedreno-don-t-encode-build-path-into-binaries.patch \
+ file://0001-glx-provide-glx.pc.patch \
"
SRC_URI[sha256sum] = "a370b4c549cbfbe646b319e34d73edb50ed883978f5e95133f282f0eae39ab52"
@@ -334,7 +335,7 @@ FILES:libglapi = "${libdir}/libglapi.so.*"
FILES:${PN}-dev = "${libdir}/pkgconfig/dri.pc ${includedir}/GL/internal/dri_interface.h ${includedir}/vulkan ${libdir}/vdpau/*.so"
FILES:libegl-mesa-dev = "${libdir}/libEGL*.* ${includedir}/EGL ${includedir}/KHR ${libdir}/pkgconfig/egl.pc"
FILES:libgbm-dev = "${libdir}/libgbm.* ${libdir}/pkgconfig/gbm.pc ${includedir}/gbm.h ${includedir}/gbm_backend_abi.h"
-FILES:libgl-mesa-dev = "${libdir}/libGL.* ${includedir}/GL/*.h ${libdir}/pkgconfig/gl.pc"
+FILES:libgl-mesa-dev = "${libdir}/libGL.* ${includedir}/GL/*.h ${libdir}/pkgconfig/gl.pc ${libdir}/pkgconfig/glx.pc"
FILES:libglapi-dev = "${libdir}/libglapi.*"
FILES:libgles1-mesa-dev = "${libdir}/libGLESv1*.* ${includedir}/GLES ${libdir}/pkgconfig/glesv1*.pc"
FILES:libgles2-mesa-dev = "${libdir}/libGLESv2.* ${includedir}/GLES2 ${includedir}/GLES3 ${libdir}/pkgconfig/glesv2.pc"
New Vulkan CTS 1.4.4 started requiring glx.pc pkg-config file. Apply a patch adding one in order to let VK CTS and other programs find Mesa GLX implementation. Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> --- .../mesa/files/0001-glx-provide-glx.pc.patch | 41 +++++++++++++++++++ meta/recipes-graphics/mesa/mesa.inc | 3 +- 2 files changed, 43 insertions(+), 1 deletion(-) create mode 100644 meta/recipes-graphics/mesa/files/0001-glx-provide-glx.pc.patch