summaryrefslogtreecommitdiffstats
path: root/meta/recipes-graphics/mesa
Commit message (Collapse)AuthorAgeFilesLines
* The poky repository master branch is no longer being updated.Richard Purdie2025-11-078-659/+0
| | | | | | | | | | | | | | | | | | | | | You can either: a) switch to individual clones of bitbake, openembedded-core, meta-yocto and yocto-docs b) use the new bitbake-setup You can find information about either approach in our documentation: https://docs.yoctoproject.org/ Note that "poky" the distro setting is still available in meta-yocto as before and we continue to use and maintain that. Long live Poky! Some further information on the background of this change can be found in: https://lists.openembedded.org/g/openembedded-architecture/message/2179 Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: upgrade 25.2.4 -> 25.2.5Quentin Schulz2025-10-272-44/+2
| | | | | | | | | | | | | | See https://docs.mesa3d.org/relnotes/25.2.5.html. 0001-glx-provide-glx.pc.patch is in 25.2.5 via commit 293a26135d83 ("glx: provide glx.pc") so can be dropped. (From OE-Core rev: 33498005ff8099b743efaf1ae431ba1a0ba597a0) Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: provide glx.pcDmitry Baryshkov2025-10-162-1/+43
| | | | | | | | | | | | 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. (From OE-Core rev: 15c02892d9c00de3c9879d5ffcecfeba6f5ee1ab) Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: sort out driver listsDmitry Baryshkov2025-10-131-66/+69
| | | | | | | | | | | | Sort the lists of VUKAN_DRIVERS, GALLIUMDRIVERS and driver-related PACAKGECONFIG entries, making it easier to add new drivers or to find out the correct dependencies for the driver. (From OE-Core rev: 64108679ada885b74fcc6ac49f9e5e983f34e663) Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: be more explicit about gallium-llvm dependencyDmitry Baryshkov2025-10-131-14/+13
| | | | | | | | | | | | | | Historically mesa recipe had separate variables for drivers that depended on gallium-llvm PACKAGECONFIG. Since that time we started listing other dependencies explicitly (e.g. libclc). Drop the intermediate variables and make the dependency on gallium-llvm more explicit. (From OE-Core rev: d3ce0b8a9964d2a0afe98701ee4d51b2dbd8d64e) Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: drop asahi -> opencl dependencyDmitry Baryshkov2025-10-131-2/+2
| | | | | | | | | | | The Asahi drivers depend on the clc to be available, but not on the RustiCL. Make it possible to build asahi drivers with opencl disabled. (From OE-Core rev: c869128ba34d1c9c9952206fb6814e6fdbd39bef) Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: add opencl -> clang build dependencyDmitry Baryshkov2025-10-131-1/+1
| | | | | | | | | | | | | | | | With the commits 448f4a84cb22 ("llvm: add recipe for just the LLVM libraries") and d76dc362c8e1 ("clang: use llvm recipe") the 'llvm' dependency inside mesa.inc does no longer pull in the clang libraries, failing RustiCL build as it can not find Clang libaries. Add direct dependency on the clang in order to fulfill build-time deps. Fixes: d76dc362c8e1 ("clang: use llvm recipe") (From OE-Core rev: b8fa4a0ac33638b599ee169db11b5e77b2483148) Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: update 25.2.3 -> 25.2.4Zoltán Böszörményi2025-10-061-2/+2
| | | | | | | | | | | Announcement: https://lists.freedesktop.org/archives/mesa-dev/2025-October/226554.html (From OE-Core rev: cc69445dc24117785d2237b2460bff8bd768ab5c) Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa-demos: split info tools to a separate packageDmitry Baryshkov2025-10-061-0/+4
| | | | | | | | | | | | | | While the rest of programs inside mesa-demos are really "demos", several *info utilities have separate value as they allow gathering information about the running system in a manner similar to clinfo or vulkaninfo. Split them into a separate package in order to allow picking them info the images without picking up the rest of "demos". (From OE-Core rev: 153e33193b51868768e86be9a1d17b25b25f346a) Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: upgrade 25.2.2 -> 25.2.3Quentin Schulz2025-09-222-46/+2
| | | | | | | | | | | | | Changelog and sha256sum: https://docs.mesa3d.org/relnotes/25.2.3.html 0001-meson-fix-libcl-assert-reproducibility.patch was merged in 25.2.3 (see commit 3445cb5577058262a2648cff6fdcdbd289ce1147) so can be removed. (From OE-Core rev: c5662684f38912dcc470592c4f00a13775d60871) Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: clean up libopencl-mesa dependenciesRoss Burton2025-09-181-1/+1
| | | | | | | | | | | The libraries in spirv-tools and spirv-llvm-translator are linked to libopencl, so the correct dependencies are generated automatically. (From OE-Core rev: 2daec34fac49a8ab6b22590da3ca4b3ae65e774b) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: add opencl DISTRO_FEATUREDmitry Baryshkov2025-09-182-1/+2
| | | | | | | | | | | | | | | | | | | | | OpenCL is an important part of the GPU-related world. It makes sense to be able to provide headless environment (without OpenGL and Vulkan), but having just OpenCL as a GPU user. Currently it is not possible since mesa requires either of those to be enabled for the DISTRO. Add new 'opencl' DISTRO_FEATURE, controlling enablement of OpenCL. Note: Mesa, if built with the libclc packageconfig (which is required for OpenCL driver) depends on the mesa-clc tool from the mesa-native package. It is required to propagate opencl DISTRO_FEATURE to the native set in order to be able to fulfill mesa -> mesa-native dependency as otherwise mesa-native package will be skipped. (From OE-Core rev: 3061d6061e74a545b7a190fd13b52ac181994dd1) Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: add PROVIDES for Vulkan and OpenCL ICDsDmitry Baryshkov2025-09-181-0/+4
| | | | | | | | | | | | In order to let BSPs easily select OpenCL and Vulkan Installable Client Drivers, add two virtual package names: virtual-opencl-icd and virtual-vulkan-icd. (From OE-Core rev: 6f01f029ef6fed96e257d6a88de42edaa437de3e) Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: upgrade 25.2.0 -> 25.2.2Quentin Schulz2025-09-111-2/+2
| | | | | | | | | | | Changelog for 25.2.1: https://docs.mesa3d.org/relnotes/25.2.1.html Changelog and sha256sum: https://docs.mesa3d.org/relnotes/25.2.2.html (From OE-Core rev: 6315f54c1eedd18155a54c98d0b5872a7d74c6d4) Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: fix panfrost driver buildQuentin Schulz2025-09-111-2/+2
| | | | | | | | | | | | | | Panfrost drivers require libclc, so let's force libclc to be present in the PACKAGECONFIG to build the drivers. Reported-by: Trevor Woerner <twoerner@gmail.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Tested-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> (From OE-Core rev: 4dc35b0194e30b321976da2f09cf70028346936d) Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: avoid host path poisoning when enabling OpenCLQuentin Schulz2025-09-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When enabling rusticl (and the shared-llvm meson feature via the gallium-llvm PACKAGECONFIG documented dependency), the clc headers are looked on the filesystem at runtime. Unfortunately, part of the lookup path contains LLVM_LIB_DIR, a variable derived from llvm_libdir meson variable. The latter is required to figure out where the clang/llvm libraries are for the cross-compiler but the former is used when running on the target. When in a cross-compiling environment, LLVM_LIB_DIR would actually point at a non-existing path (the sysroot path on the build host) instead of the target path. This sadly triggers a buildpaths QA error in addition of being incorrect. Another option is to bundle the clc headers directly inside the binary instead of looking them up at runtime, something we can do with mesa-clc-bundle-headers meson feature. So let's do that to fix the issue and buildpaths QA error. Suggested-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Tested-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> (From OE-Core rev: cd0e70d6cee5ccb698bbcfd4dbc10675649556e7) Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: avoid host paths poisoningQuentin Schulz2025-09-112-0/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | At least panfrost and asahi drivers are prone to host paths poisoning due to unpatched __FILE__ macro in assert() of libcl. The compilation units for files including this file all are passed specific arguments via the cl_args meson variable which currently only contains one fmacro-prefix-map entry for relative paths. However, there are also absolute build and source paths that seem to make it to the generated files and libraries so this patches mesa to also strip those paths. Note that out of the four paths in the default DEBUG_PREFIX_MAP, only the source and build directories make it to the fmacro-prefix-map and they aren't mapped like they are when used with ffile-prefix-map in DEBUG_PREFIX_MAP as I'm not sure if it is at all possible for meson to fetch this Yocto-provided path we should be mapping to in the current mesa code base. I guess this is good enough for now. Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Tested-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> (From OE-Core rev: 5948e618b7746ac333c1ec3ca99b66bd3faeb2ba) Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: allow to disable xmlconfig supportQuentin Schulz2025-09-113-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | >From my understanding, xmlconfig is useful for "dynamic" driconf support, i.e. driconf the user specifies at runtime. According to the wiki[1], driconf is useful for OpenGL drivers. I wager we mostly don't need xmlconfig at all which may allow us to also get rid (in most cases) of the expat dependency. But that is an optimization to investigate later, so let's keep xmlconfig enabled for now as it is the default whenever the meson feature is not disabled (defaults to auto) and expat is found (currently part of DEPENDS in mesa.inc). This will be useful for mesa-tools-native which isn't meant to compile drivers and thus shouldn't try to compile driconf support and install driconf example files. Technically, xmlconfig depends on the expat meson feature (and the presence of the expat build dependency) but the feature is default auto so having expat dependency in xmlconfig PACKAGECONFIG seems enough instead of having one PACKAGECONFIG depend on another PACKAGECONFIG's presence. [1] https://dri.freedesktop.org/wiki/DriConf/ Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Tested-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> (From OE-Core rev: b1fae868569cabfef6c2160c7a3cfe0c13421bbc) Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: add asahi to TOOLS when selected in PACKAGECONFIGQuentin Schulz2025-09-111-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Similarly to panfrost and other PACKAGECONFIG, mesa has tools for asahi. So let's build the tools whenever asked. While the tools are often built regardless of their presence in the "tools" mesa option whenever the appropriate gallium or vulkan driver is built, this allows to build the tool(s) without building the drivers which can be beneficial for native recipes where it makes little sense to build drivers. This will be useful for building asahi_clc precomp-compiler in native mesa for example which only builds if: - one enables the asahi gallium driver, or - one enables the asahi vulkan driver, or - one builds the asahi tools c.f. https://gitlab.freedesktop.org/mesa/mesa/-/blob/mesa-25.1.5/src/asahi/meson.build?ref_type=tags#L12-L17 Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Tested-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> (From OE-Core rev: df1fea34fa55d21f0a228167bfc44518f07508a0) Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa-gl: make recipe target onlyQuentin Schulz2025-09-111-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | According to the introducing commit log[1] and Dmitry's recollection[2], the whole point of mesa-gl recipe is to provide GL library in case there are vendor-provided GLES libraries. Therefore, let's make this recipe target only by removing the BBCLASSEXTEND variable. No intended change in behavior for the target recipe. [1] https://git.yoctoproject.org/poky/commit/?id=015cb13a67c672de30f5384dab5ab4b8db305281 [2] https://lore.kernel.org/openembedded-core/5ebxxyvkcur3zpef5krvyizomgdgtls4qau7s2i2mgcmvs2loy@ilcud37qk6sn/ Suggested-by: Ross Burton <ross.burton@arm.com> Suggested-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Tested-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> (From OE-Core rev: 1796b2d2edcadf181795181ada48d1aa64e4da24) Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: assign S in include fileRoss Burton2025-09-112-2/+2
| | | | | | | | | | | | | | | | | | | | | | | Anything including mesa.inc will have the sources extracted in ${UNPACKDIR}/mesa-${PV}. The default for S is ${UNPACKDIR}/${BP}. ${BP} is ${BPN}-${PV}. Because mesa.bb is named mesa, BPN will be mesa and thus S wasn't required for mesa.bb but only for mesa-gl.bb. This also explains why this change is fine for mesa.bb as the value of S won't have changed, the ${BPN} part is now just hardcoded to "mesa" for mesa.bb instead. No intended change in behavior. (From OE-Core rev: a77c0f5919fbef6e076d2b085f71c8bbbfc9188a) Signed-off-by: Ross Burton <ross.burton@arm.com> [added commit log and title] Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Tested-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: move BBCLASSEXTEND out of the include fileQuentin Schulz2025-09-113-2/+4
| | | | | | | | | | | | | | | | | We're going to have a new mesa-tools-native recipe include mesa.inc soon. We don't need a target mesa-tools recipe for now so we'll go with a native-only recipe which this BBCLASSEXTEND prevents us to do properly, so let's move them to the recipes instead. No intended change in behavior. Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Tested-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> (From OE-Core rev: 8bf89f19b7b18b81f4dc59e89a16f4136c914137) Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: move PROVIDES out of include fileQuentin Schulz2025-09-112-10/+11
| | | | | | | | | | | | | | | | | | | | | There currently are two recipes including mesa.inc: mesa-gl and mesa. Because mesa-gl.bb already sets PROVIDES, overriding the value it should be getting from mesa.inc, move PROVIDES from mesa.inc to mesa.bb, keeping the value in mesa-gl.bb intact. Because GLPROVIDES is not used in mesa-gl.bb, it also is only moved to mesa.bb. No intended change in behavior. Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Tested-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> (From OE-Core rev: c5add09c735d4a6686b2dc826f065dac2dd191bf) Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: move PACKAGECONFIG defaults to recipesQuentin Schulz2025-09-113-13/+17
| | | | | | | | | | | | | | | | | | | | | | We're planning on reusing mesa.inc for a new mesa-tools-native recipe which will require much less in terms of PACKAGECONFIG than the actual mesa recipes. It also doesn't make a lot of sense to have a default PACKAGECONFIG in an include file inherited by multiple recipes (here mesa and mesa-gl) which is highlighted by the fact that the only other recipe that includes mesa.inc (mesa-gl) overrides PACKAGECONFIG (hence why mesa-gl only gets a partial migration of PACKAGECONFIG defaults. No intended change in behavior. Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Tested-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> (From OE-Core rev: 9f80d5bc49f46b371c62405ec3f974b4eee2caee) Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa-gl: use bb.utils.filter to improve readabilityQuentin Schulz2025-09-111-1/+1
| | | | | | | | | | | | | | | ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}" is exactly the same as ${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)} so use the latter to make it easier on the eyes. Suggested-by: Khem Raj <raj.khem@gmail.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Tested-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> (From OE-Core rev: 1522c7d371d989d42bd992017a784d6b319d3f38) Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa-gl: make mesa-gl really openGL-onlyQuentin Schulz2025-09-111-3/+1
| | | | | | | | | | | | | | | | | | | | | | The ??= operator for PACKAGECONFIG doesn't actually do anything because the recipe includes mesa.inc which already sets this variable (with the = operator). This probably wasn't noticed until now because mesa-gl is likely only ever built in its target flavor which was already set correctly thanks to the :class-target override. This essentially only make mesa-gl-native and nativesdk-mesa-gl follow the same configuration as the target. Suggested-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Tested-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> (From OE-Core rev: ab44fa12223b126fe7d337a2eb7489f5fba94901) Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: upgrade 25.1.6 -> 25.2.0Dmitry Baryshkov2025-08-114-78/+8
| | | | | | | | | | | Upgrade Mesa to the latest release. Refresh remaining patches and drop ones applied upstream. (From OE-Core rev: 4000f9ec48d87e0ac765205c1b8096c352d2a301) Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: Fix a build issue with clang-21Khem Raj2025-07-312-0/+40
| | | | | | | | | | This is a backport, helps compiling with upcoming clang-21 (From OE-Core rev: 5b25a4fa6ab3a149e1dcf18826b78617f8c1acf7) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: Upgrade 25.1.5 -> 25.1.6Leon Anavi2025-07-281-2/+2
| | | | | | | | | | | | | | | | | | | | | | | - v3dv: regression in vkAllocateMemory importing gbm bo - Vulkan WSI (and zink) use threads on X11 even when the X connection isn't thread-safe - sddm-greeter-qt segfault when using nvk+zink - [regression][bisected] [FirePro W4100]: crashing/rebooting - Descriptor set layout with binding flags fails due to indices not matching bindings - piglit bindless texture tests crash - [radeonsi] Artifacts in Team Fortress 2 (bisected) - eglgears_wayland segfault on zink+nvk with PRIME - vn_renderer_virtgpu.c:13:10: fatal error: 'xf86drm.h' file not found - brw: mad instruction printing broken on Gfx11 - radv: RGB9E5 rendering does not ignore alpha write mask (From OE-Core rev: 0f43573fce7074dfe462e8f6df50404e7dc391c8) Signed-off-by: Leon Anavi <leon.anavi@konsulko.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: upgrade 25.1.4 -> 25.1.5Wang Mingyu2025-07-171-2/+2
| | | | | | | | (From OE-Core rev: 9109961657e6e96fde59b6e07e70af16a4ddfdfd) Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: upgrade 25.1.3 -> 25.1.4Wang Mingyu2025-07-031-2/+2
| | | | | | | (From OE-Core rev: c1d7829b9873f1037dab1ddc200a3da68337f909) Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: enable glvnd if it is enabled in DISTRO_FEATURESDmitry Baryshkov2025-06-241-1/+1
| | | | | | | | | | | Let the distro to be a central authority regarding GLVND feature. Make mesa.inc enable glvnd PACKAGECONFIG if it is enabled in DISTRO_FEATURES. (From OE-Core rev: 25d29420919caadae4d35e7eb0291dd3504d8552) Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: fix RPROVIDEd package namesDmitry Baryshkov2025-06-241-1/+1
| | | | | | | | | | | | The BCP for virtual runtime package names is virtual-foo. Make mesa follow the established convention and change the names of the provied packages to virtual-foo-icd. Fixes: 9d3b4c9bc403 ("mesa: sort out PROVIDES for the glvnd case") (From OE-Core rev: d69e06dbd8575e258a4542f34c5eaba413da7750) Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* meta: remove consecutive blank linesAlexander Kanavin2025-06-201-1/+0
| | | | | | | | | | | | | | | | | Some of them were introduced by mass-removal of S = WORKDIR/git assignments; rather than try to fix up (or redo) just these, I've run this sed command over the whole tree: sed -i -z -E 's/([ \t\f\v\r]*\n){3,}/\n\n/g' `find . -name *.bb -o -name *.inc` The rationale is that more than one empty line is wasting vertical screen space, and does nothing for readability. (From OE-Core rev: cedc4ff7c9bcfb22a20e43e47f9759f4007a4f1a) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* meta: set S to be in UNPACKDIR in recipes that explicitly set SAlexander Kanavin2025-06-202-2/+2
| | | | | | | | (From OE-Core rev: 7321cc17ae5483f17fe9cdffea7b62acd9d9c3a2) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: do not build nouveau NVIDIA gallium-llvm driver if not requestedQuentin Schulz2025-06-161-5/+7
| | | | | | | | | | | | | | | | | | The Nouveau driver is used for NVIDIA GPUs and thus doesn't really need to be always enabled when building gallium-llvm drivers. So let's guard it with a nouveau PACKAGECONFIG. The only intended change is nouveau not being build on target mesa on non-x86/i686 machines when building gallium-llvm drivers as I assume NVIDIA GPUs aren't that common on other CPU architectures (tegra already bringing in the nouveau driver should handle the NVIDIA SoCs that would benefit from nouveau driver and thus are not impacted by this change). (From OE-Core rev: 22e7f562fb4b5becc342fe7d60c37c70e42ccf6b) Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: do not build r300 AMD gallium-llvm driver if not requestedQuentin Schulz2025-06-161-1/+2
| | | | | | | | | | | | | | | | It doesn't make much sense to always build the r300 AMD gallium LLVM driver as that's HW-specific. Instead, let's guard it with the amd PACKAGECONFIG. This will only disable R300 for target mesa on non-x86/i686 machines where gallium-llvm PACKAGECONFIG is selected but not amd, otherwise behavior is left unchanged. (From OE-Core rev: 28d41017ffd03d0bcc4ef0272a95d19412488624) Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: update 25.1.1 -> 25.1.3Markus Volk2025-06-092-36/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Mesa 25.1.3 Release Notes / 2025-06-07 Mesa 25.1.3 is a bug fix release which fixes bugs found since the 25.1.2 release. Mesa 25.1.3 implements the OpenGL 4.6 API, but the version reported by glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) / glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used. Some drivers don’t support all the features required in OpenGL 4.6. OpenGL 4.6 is only available if requested at context creation. Compatibility contexts may report a lower version depending on each driver. Mesa 25.1.3 implements the Vulkan 1.4 API, but the version reported by the apiVersion property of the VkPhysicalDeviceProperties struct depends on the particular driver being used. New features None Bug fixes 25.1.2 - instant crash on upgrade, very first attempt at a new surface Mesa 25.1.2 Release Notes / 2025-06-04 Mesa 25.1.2 is a bug fix release which fixes bugs found since the 25.1.1 release. Mesa 25.1.2 implements the OpenGL 4.6 API, but the version reported by glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) / glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used. Some drivers don’t support all the features required in OpenGL 4.6. OpenGL 4.6 is only available if requested at context creation. Compatibility contexts may report a lower version depending on each driver. Mesa 25.1.2 implements the Vulkan 1.4 API, but the version reported by the apiVersion property of the VkPhysicalDeviceProperties struct depends on the particular driver being used. New features None Bug fixes Confidential issue #13281 anv, regression: Missing terrain in It Takes Two on BMG “breaking-limit” benchmark will Freeze before starting. rusticl: CL_MEM_HOST_READ_ONLY cl_image2d reads zeroes from host on AMD Vega8 Bug (bad code optimization?) in the GLSL (compute) shader compiler nvk: Broken lighting in Trine 5 RX9070 hard crash with Mafia Definitive Edition RADV: Potential bug with vulkan fragment shader interpolation (on outputs from mesh shaders?) In the game “Foundation” a buildings areas of effect is missing ANV: Dota 2 May 22 2025 update crashing in vkCmdBindDescriptorSets with no validation error Vulkan Video engages during playback of format which is not supported by my Fiji GPU Weston hangs on virtio (non-accelerated version) on QEMU with Mesa main KVM/qemu: GDM fails to start / gnome-shell crashes after update to mesa-dri-drivers-25.0.3 (From OE-Core rev: da2c318f530a29b42c36fe8d5015fcdd3e1c1420) Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa-demos: drop osmesa PACKAGECONFIGDmitry Baryshkov2025-06-091-1/+0
| | | | | | | | | | | | | Support for OSMesa has been removed in the latest Mesa versions, drop corresponding PACKAGECONFIG option from mesa-demos. Note, there is no need to pass -Dosmesa=disabled, meson will detect that the library is not available. Suggested-by: Khem Raj <raj.khem@gmail.com> (From OE-Core rev: 27e7e3bff40a884044a19e52d0eaa35a80880464) Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa-gl: drop obsolete commentDmitry Baryshkov2025-06-091-1/+0
| | | | | | | | | | Drop comment mentioning OSMesa (which was removed from mesa). Fixes: 7ee8e99a5204 ("mesa-gl: Remove osmesa dependency") (From OE-Core rev: f1b96c3009a2c21cf6f63cd07b7eee60da5cad34) Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: add support for Teflon, TFLite delegateDmitry Baryshkov2025-05-291-0/+4
| | | | | | | | | | | | | Extend mesa PACKAGECONFIG with new option, teflon, enabling building of the TFLite delegate, libteflon.so. Currently it supports only VeriSilicon NPUs. Suggested-by: Fathi Boudra <fathi.boudra@linaro.org> (From OE-Core rev: d639f2e3e6922efe845cf84fb35d729167693adb) Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: remove XA tracker supportDmitry Baryshkov2025-05-292-6/+34
| | | | | | | | | | | | | XA tracker is unmaintained and deprecated. It has been removed in 25.2 branch and it is going to be disabled by default in the 25.1.2 release. Be slightly more proactive, pick up the patch disabling XA by default and drop support for XA tracker in the recipe. (From OE-Core rev: e8bba3efd72bf90d70e674b0686d13639a44f0ad) Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa-gl: Remove osmesa dependencyKhem Raj2025-05-291-2/+2
| | | | | | | | | | | osmesa has been removed from recently upgrade mesa recipes remove it from the fallback for non-x11 systems (From OE-Core rev: 7ee8e99a52044e18cd35bde8d280274ce44e26d4) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: move dri_internal header to mesa-devDmitry Baryshkov2025-05-271-2/+2
| | | | | | | | | | | | The GL/internal/dri_internal.h header is not a part of the OpenGL API. Instead it defines Mesa interface with DRI drivers. Move it to mesa-dev package to reside next to dri.pc. (From OE-Core rev: 72ad9950f0b6c44068e52be3bb3a015bd3affa06) Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: drop .so files for GLVND ICD librariesDmitry Baryshkov2025-05-271-1/+4
| | | | | | | | | | | | | | | If GLVND is enabled, Mesa provides two ICD libaries, libEGL_mesa.so.0 and libGLX_mesa.so.0. During the installation it also creates two extra symlinks, libEGL_mesa.so and libGLX_mesa.so, however those symliks are unnecessary and useless as nothing will ever link to those ICD archives. Remove them from the install dir, which also makes package libglx-mesa-dev disappear (it contained only this symlink). (From OE-Core rev: badb1ee13ec87923aa6c4cdeb90756cc370e10bc) Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: sort out PROVIDES for the glvnd caseDmitry Baryshkov2025-05-271-3/+9
| | | | | | | | | | | | | | | If mesa is built with GLVND enabled, it doesn't provide GL / GL ES / EGL libraries directly. Instead it provides two ICD libraries: libEGL_mesa.0 and libGLX_mesa.so.0. Remove virtual provides from the glvnd case (dropping incorrect virtual/libglx provider while we are at it) and replace those with runtime providers (to be used by libglvnd in order to pull corresponding ICDs). (From OE-Core rev: 9d3b4c9bc40392ba87f110ec5db0dedf381b8c4a) Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: don't set RCONFLICTS / PROVIDES if glvnd is enabledDmitry Baryshkov2025-05-271-21/+21
| | | | | | | | | | | | | | If glvnd is enabled, mesa packages do not provide full library implementations (instead it provides two ICDs, one for EGL, one for GLX). This means that there is no more conflict between mesa packages and other vendor packages. Stop setting those extra tags for mesa packages. (From OE-Core rev: b1b8a0f69dafe23c992754cffb7aaf575753e564) Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: drop gallium-pipe supportDmitry Baryshkov2025-05-271-4/+1
| | | | | | | | | | | With Clover being gone, there are no more separate gallium-pipe libraries. Drop corresponding parts of the recipe. (From OE-Core rev: b668f51f0384029892e8a87935c5fad26dd4e690) Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: don't add extra tags to the libopencl-mesa packageDmitry Baryshkov2025-05-271-6/+9
| | | | | | | | | | | | | | The libopencl-mesa package provides OpenCL ICDs (Installable Client Drivers). As such, there is no conflict between several packages providing ICDs for different vendors. Split the loop that modifies package metadata and stop adding extra RPROVIDES / RCONFLICTS / RREPLACES tags to the libopencl-mesa package. (From OE-Core rev: 6849af6df74f4a30ab7820a698598932832498dc) Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mesa: drop the libopencl-mesa-dev packageDmitry Baryshkov2025-05-271-3/+5
| | | | | | | | | | | | | | Thre is no "development" package for libopencl-mesa. The main package contains Installable Client Drivers, for which there are no headers and the extra .so file isn't supposed to be linked with anything. Drop the useless and confusing libopencl-mesa-dev package. (From OE-Core rev: 2f9ee74eb7dfce569e9c49dca54e0ed4b5b8596d) Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>