Compare commits

...

1 Commits

30 changed files with 1073 additions and 163 deletions

View File

@@ -1,3 +1,609 @@
-------------------------------------------------------------------
Sat Jan 4 20:46:28 UTC 2025 - Stefan Dirsch <sndirsch@suse.com>
- Update to release 24.3.3
--> https://docs.mesa3d.org/relnotes/24.3.3
-------------------------------------------------------------------
Sat Jan 4 20:08:17 UTC 2025 - Stefan Dirsch <sndirsch@suse.com>
- Update to release 24.3.2
--> https://docs.mesa3d.org/relnotes/24.3.2
- supersedes the following patches:
* 0001-dri-don-t-fetch-X11-modifiers-if-we-don-t-support-th.patch
* 0002-egl-wayland-only-supply-LINEAR-modifier-when-support.patch
* 0003-egl-wayland-fallback-to-implicit-modifiers-if-advert.patch
-------------------------------------------------------------------
Thu Dec 12 19:59:52 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- require llvm19/clang19 on sle15 >= sp6
-------------------------------------------------------------------
Mon Dec 9 19:04:25 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- aarch64: disable build of etnaviv driver on sle15-sp7 due to
python3-pycparser >= 2.20 not available
-------------------------------------------------------------------
Mon Dec 9 14:36:46 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- don't apply patches of previous changelog for s390x; Mesa 24.1.7
doesn't suffer from this issue, only Mesa 24.3.1 ...
-------------------------------------------------------------------
Sun Dec 8 21:58:37 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- 0001-dri-don-t-fetch-X11-modifiers-if-we-don-t-support-th.patch
0002-egl-wayland-only-supply-LINEAR-modifier-when-support.patch
0003-egl-wayland-fallback-to-implicit-modifiers-if-advert.patch
* fixes mesa 24.3.1 gallium crash/segfault on GPUs without
format modifiers (mesa issue#12253, mesa MR#32535, boo#1234302)
-------------------------------------------------------------------
Thu Dec 5 03:00:23 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- Update to release 24.3.1
--> https://docs.mesa3d.org/relnotes/24.3.1
-------------------------------------------------------------------
Wed Nov 27 23:10:50 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- trying to make buildservice happy by adding both tarballs to
specfile ...
-------------------------------------------------------------------
Tue Nov 26 18:20:06 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- on s390x build Mesa 24.1.7 to fix colors with Xvnc (boo#1233167)
- adjusted patches for Mesa 24.1.7:
* python36-buildfix1-s390x.patch
* u_dep_xcb-s390x.patch
* u_mesa-CVE-2023-45913-s390x.patch
-------------------------------------------------------------------
Fri Nov 22 10:35:29 UTC 2024 - Marcus Rueckert <mrueckert@suse.de>
- Update to release 24.3.0
--> https://docs.mesa3d.org/relnotes/24.3.0
-------------------------------------------------------------------
Thu Nov 21 05:09:35 UTC 2024 - Marcus Rueckert <mrueckert@suse.de>
- Update to release 24.3.0~rc2
--> https://www.phoronix.com/news/Mesa-24.3-rc2
- Update to release 24.3.0~rc1
--> https://www.phoronix.com/news/Mesa-24.3-rc1-Released
- refreshed patches:
* n_drirc-disable-rgb10-for-chromium-on-amd.patch
* python36-buildfix1.patch
* python36-buildfix2.patch
* tlsdesc_test.patch
* u_mesa-CVE-2023-45913.patch
* u_mesa-CVE-2023-45919.patch
* u_mesa-CVE-2023-45922.patch
* u_dep_xcb.patch
- drop no longer supported options:
* -Ddri3=enabled
* -Ddri-search-path=%{_libdir}/dri
- new files added in this update currently packaged as part of
Mesa-dri:
* %{_libdir}/gbm/dri_gbm.so
-------------------------------------------------------------------
Tue Nov 19 12:48:59 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- Update to release 24.2.7
--> https://docs.mesa3d.org/relnotes/24.2.7
- supersedes 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
-------------------------------------------------------------------
Wed Nov 6 17:34:15 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- 0001-dril-Fixup-order-of-pixel-formats-in-drilConfigs.patch
* fixes colors for 'swrast' driver (boo#1230637, gitlab issue#11840)
-------------------------------------------------------------------
Thu Oct 31 19:35:20 UTC 2024 - Marcus Rueckert <mrueckert@suse.de>
- Update to release 24.2.6
--> https://docs.mesa3d.org/relnotes/24.2.6
-------------------------------------------------------------------
Thu Oct 31 19:15:10 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- added -32bit package for Mesa-libva since it's needed by Steam;
reported on packman ML:
https://lists.links2linux.de/pipermail/packman/2024-October/017985.html
-------------------------------------------------------------------
Fri Oct 18 11:00:17 UTC 2024 - Andreas Färber <afaerber@suse.de>
- Enable intel Vulkan backends on riscv64 (boo#1231756)
- Enable iris Gallium backend on riscv64, Power and on Arm, too
-------------------------------------------------------------------
Thu Oct 17 10:16:01 UTC 2024 - Marcus Rueckert <mrueckert@suse.de>
- Update to release 24.2.5
--> https://docs.mesa3d.org/relnotes/24.2.5
- drop u_fix-llvm19-build.patch
included in upstream
-------------------------------------------------------------------
Thu Oct 3 19:00:29 UTC 2024 - Marcus Rueckert <mrueckert@suse.de>
- Update to release 24.2.4
--> https://docs.mesa3d.org/relnotes/24.2.4
-------------------------------------------------------------------
Tue Oct 1 11:08:36 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- u_mesa-CVE-2023-45913.patch
* NULL pointer dereference via dri2GetGlxDrawableFromXDrawableId()
(CVE-2023-45913, bsc#1222040)
- u_mesa-CVE-2023-45919.patch
* buffer over-read in glXQueryServerString()
(CVE-2023-45919, bsc#1222041)
- u_mesa-CVE-2023-45922.patch
* segmentation violation in __glXGetDrawableAttribute()
(CVE-2023-45922, bsc#1222042)
-------------------------------------------------------------------
Mon Sep 23 16:56:40 UTC 2024 - Marcus Rueckert <mrueckert@suse.de>
- libvdpau_gallium was linked directly into libgallium-*.so.*.
Drop the subpackage and provides/obsolete it via Mesa-dri which
ships libgallium-*.so.*.
-------------------------------------------------------------------
Mon Sep 23 16:37:33 UTC 2024 - Marcus Rueckert <mrueckert@suse.de>
- drop u_fix_rust_bindgen.patch
included in update
-------------------------------------------------------------------
Mon Sep 23 16:32:05 UTC 2024 - Marcus Rueckert <mrueckert@suse.de>
- Update to release 24.2.3
--> https://docs.mesa3d.org/relnotes/24.2.3
-------------------------------------------------------------------
Mon Sep 23 10:58:19 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- disable build of rusticl on sle15; meson is just too old ...
-------------------------------------------------------------------
Mon Sep 23 10:51:31 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- buildrequires: rusticl needs mesa >= 1.4.0
-------------------------------------------------------------------
Mon Sep 23 10:40:35 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- tlsdesc_test.patch: disable LTO in tlsdesc_test to suppress TLS
relaxation (patch by Andreas Schwab <schwab@suse.de>); see also
https://gitlab.freedesktop.org/mesa/mesa/-/issues/11929
-------------------------------------------------------------------
Mon Sep 23 10:36:35 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- buildrequire llvm19-devel/clang19-devel on sle15-sp7
-------------------------------------------------------------------
Sun Sep 22 12:02:17 UTC 2024 - Aaron Puchert <aaronpuchert@alice-dsl.net>
- Add u_fix-llvm19-build.patch to fix build with LLVM 19 on ARM.
- Update minimum version requirements based on meson.build.
- Fix build on s390x: apparently we don't have libvdpau_gallium.so.
-------------------------------------------------------------------
Fri Sep 13 17:39:59 UTC 2024 - Marcus Rueckert <mrueckert@suse.de>
- drop U_egl-x11-sw-fix-partial-image-uploads.patch:
the code in the function saw further fixes later on in the 24.2
branch.
-------------------------------------------------------------------
Fri Sep 13 15:42:12 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- U_egl-x11-sw-fix-partial-image-uploads.patch
* culprit for the regression in 24.1.4; reverse apply this for
now (boo#1228164)
-------------------------------------------------------------------
Tue Sep 10 14:35:00 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- integrated changes by Andreas Schwab <schwab@suse.de>
* enable glamor also for driver build
* update rust crates
+ syn 2.0.39
+ proc_macro2 1.0.86
* enable valgrind also on riscv64
* added libvdpau_gallium package for generic VDPAU state tracker
* switch from "swrast" to "softpipe,llvmpipe" drivers
* use "-Dllvm-orcjit=true" for riscv64 build
* added libgallium to Mesa-dri package
-------------------------------------------------------------------
Tue Sep 10 13:38:59 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- re-disable llvm for non-driver build by switching from "swrast"
to "softpipe" for gallium drivers in that case
- make previous changelog a bit nicer
-------------------------------------------------------------------
Sun Sep 8 17:39:10 UTC 2024 - Marcus Rueckert <mrueckert@suse.de>
- Update to release 24.2.2
--> https://docs.mesa3d.org/relnotes/24.2.2
--> https://docs.mesa3d.org/relnotes/24.2.1
--> https://docs.mesa3d.org/relnotes/24.2.0
- refreshed the following patches with quilt:
* U_fix-mpeg1_2-decode-mesa-20.2.patch
* n_add-Mesa-headers-again.patch
* n_stop-iris-flicker.patch
* u_dep_xcb.patch
* u_fix_rust_bindgen.patch
- dropped U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- New BuildRequires:
* python3-PyYAML
- enable llvm also for non-driver build to fix:
"llvmpipe requires LLVM and is enabled, but LLVM is disabled".
-------------------------------------------------------------------
Thu Sep 5 19:20:59 UTC 2024 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to bugfix release 24.1.7
--> https://docs.mesa3d.org/relnotes/24.1.7
- Supersedes the following patch:
* U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
- Rebase patches with quilt.
-------------------------------------------------------------------
Sun Aug 25 09:04:57 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- Fix random GPU crash with AMDGPU (bsc#1229050):
U_radeonsi-vcn-Add-decode-DPB-buffers-as-CS-dependency.patch
(credits go to Takashi Iwai!)
-------------------------------------------------------------------
Wed Aug 21 16:53:28 UTC 2024 - Andreas Stieger <andreas.stieger@gmx.de>
- fix build with current rust-bindgen
* u_fix_rust_bindgen.patch
-------------------------------------------------------------------
Thu Jul 4 12:26:06 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- Update to bugfix release 24.1.3
--> https://docs.mesa3d.org/relnotes/24.1.3
- supersedes the following patches:
* u_dri-Fix-BGR-format-exclusion.patch
* u_egl-gbm-Enable-RGBA-configs.patch
* u_egl-surfaceless-Enable-RGBA-configs.patch
* boo1226725-test-fix1.patch
-------------------------------------------------------------------
Thu Jul 4 09:47:12 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- use gcc-13 on SLE 15/Leap 15.x in order to fix build; credits
go to "Friedrich Haubensak" <hsk17@mail.de> to figure this out!
-------------------------------------------------------------------
Fri Jun 28 12:48:56 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- boo1226725-test-fix1.patch
* another try to fix coloring on s390x and other platforms
- re-enabled patches only applied on s390x with previous change
on all platforms again
-------------------------------------------------------------------
Thu Jun 27 08:55:00 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- apply patches below to get GL on s390x working again only on
s390x, because they break colors during YaST installation
also on x86_64 platform (QT/GTK using GL backend?) (boo#1226725)
-------------------------------------------------------------------
Wed Jun 26 08:27:46 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- u_egl-gbm-Enable-RGBA-configs.patch,
u_egl-surfaceless-Enable-RGBA-configs.patch
* these are needed now after applying previous patch
u_dri-Fix-BGR-format-exclusion.patch also on other platforms
than s390x? (boo#1226725)
-------------------------------------------------------------------
Tue Jun 25 11:14:15 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- u_dri-Fix-BGR-format-exclusion.patch
* fixes glxinfo/eglxinfo on s390x (boo#1226725, comment#6)
-------------------------------------------------------------------
Sun Jun 23 00:24:07 UTC 2024 - Soc Virnyl Estela <obs@uncomfyhalomacro.pl>
- Specfile cleanup
* copy rust crate sources into subprojects folder
* remove supplements. nvk is still new
- Specfile changes for Rust crates. Also added this to README-suse-maintenance.md
* Since Rust crates are not installed or discouraged to be installed
as system dependencies because of the maintenance burden of being the
next crates.io, we will have to download the following crates as vendored
dependencies. Hence, do not be scared if the dependencies are done like
this To check new crates or update the versions, just go to the subprojects
folder and run `grep -r crates .` then set versions appropriately.
-------------------------------------------------------------------
Fri Jun 21 08:41:10 UTC 2024 - Soc Virnyl Estela <obs@uncomfyhalomacro.pl>
- Update baselibs.conf
- Build requires rust-cbindgen >= 0.25. However, this means
we cannot build libvulkan_nouveau on Leap.
- Enable libvulkan_nouveau including the following depencencies
* add rust crate paste-1.0.14.tar.gz
* add rust crate proc-macro2-1.0.70.tar.gz
* add rust crate quote-1.0.33.tar.gz
* add rust crate syn-2.0.39.tar.gz
* add rust crate unicode-ident-1.0.12.tar.gz
-------------------------------------------------------------------
Thu Jun 20 13:39:48 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- Update to bugfix release 24.1.2
--> https://docs.mesa3d.org/relnotes/24.1.2
-------------------------------------------------------------------
Wed Jun 19 17:31:26 UTC 2024 - Mikhail Paulyshka <me@mixaill.net>
- Disable LTO on %ix86/x86_64 due to rendering bugs on Radeon
graphics (boo#1226462)
-------------------------------------------------------------------
Tue Jun 18 06:18:47 UTC 2024 - Dominique Leuenberger <dimstar@opensuse.org>
- BuildRequire python3-pycparser when building drivers on ARM:
etnaviv drm module requires this module to build.
-------------------------------------------------------------------
Fri Jun 14 18:20:50 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- Update to bugfix release 24.1.1
--> https://docs.mesa3d.org/relnotes/24.1.1
-------------------------------------------------------------------
Fri Jun 14 09:24:21 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- Update to new feature release 24.1.0
--> https://docs.mesa3d.org/relnotes/24.1.0
- Some interesting highlights include:
* NVIDIA Vulkan driver NVK is now considered ready for prime time.
Distro packagers are now recommended to include `nouveau` in the
`vulkan-drivers` list so that their users can have the option of using it
instead of the proprietary NVIDIA driver.
* Intel Vulkan driver Anv switched to truly asynchronous VM bind, and Xe
support for error dump to debug GPU hangs was added.
* Apple OpenGL driver Asahi has reached OpenGL 4.6 and OpenGL ES 3.2
support.
* Broadcom Vulkan driver V3DV gained support for VK_KHR_dynamic_rendering.
* Arm Mali OpenGL driver Panfrost was prepared for Gen10 (Gxxx), and
Vulkan driver PanVK was modernised for better Midgard (Txxx) and
Bifrost (Gxxx) support.
* All Vulkan drivers have gained support for explicit synchronisation on
Wayland and X11.
- adjusted patches:
* n_stop-iris-flicker.patch
* python36-buildfix1.patch
- supersedes patches:
* 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch
* 0002-glx-fix-some-indentation.patch
* 0003-glx-add-an-implicit-param-to-createScreen.patch
* 0004-glx-pass-implicit-load-param-through-allocation.patch
* 0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch
* 0006-gbm-plumb-an-implicit-param-through-device-creation.patch
* 0007-frontends-dri-plumb-an-implicit-param-through-screen.patch
* 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
* 0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
* 0010-glx-silence-more-implicit-load-zink-errors.patch
- added libvdpau_d3d12 package
- small cleanup in specfile
-------------------------------------------------------------------
Thu Jun 13 13:26:14 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- Update to bugfix release 24.0.9
--> https://docs.mesa3d.org/relnotes/24.0.9.html
* This is the last release of the 24.0 series. Users are encouraged
to switch to the 24.1 series to continue receiving bugfixes.
-------------------------------------------------------------------
Sun Jun 2 16:27:55 UTC 2024 - Yunhe Guo <i@guoyunhe.me>
- Restrict all internal depencency version to match the exact Mesa build,
so that users won't install Mesa packages partly from other repos and
make the system broken.
-------------------------------------------------------------------
Thu May 23 11:05:09 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- Update to bugfix release 24.0.8
--> https://docs.mesa3d.org/relnotes/24.0.8.html
- refreshed 0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch
-------------------------------------------------------------------
Thu May 16 10:38:33 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- Update to bugfix release 24.0.7
--> https://docs.mesa3d.org/relnotes/24.0.7.html
-------------------------------------------------------------------
Thu May 16 10:29:38 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- Update to bugfix release 24.0.6
--> https://docs.mesa3d.org/relnotes/24.0.6.html
-------------------------------------------------------------------
Tue May 14 07:22:05 UTC 2024 - Guillaume GARDET <guillaume.gardet@opensuse.org>
- Enable libvulkan_intel on arm
-------------------------------------------------------------------
Sat Apr 20 12:23:09 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- Update to bugfix release 24.0.5
- supersedes mesa-fix-llvm18.patch
- adjusted 0004-glx-pass-implicit-load-param-through-allocation.patch,
0010-glx-silence-more-implicit-load-zink-errors.patch
-------------------------------------------------------------------
Wed Apr 3 06:55:12 UTC 2024 - Fei Yang <io@feiyang.eu.org>
- fix missing free codecs in builds with non-free codecs enabled
-------------------------------------------------------------------
Tue Mar 26 01:44:52 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- enable vulkan-beta meson flag for vulkan video support (suggested
by "llyyr" <llyyr.public@gmail.com>; adding C flag
-Wno-error=missing-prototypes for this wasn't necessary)
-------------------------------------------------------------------
Mon Mar 25 09:55:48 UTC 2024 - Andreas Schwab <schwab@suse.de>
- Add zink driver by default
-------------------------------------------------------------------
Wed Mar 20 07:18:13 UTC 2024 - Guillaume GARDET <guillaume.gardet@opensuse.org>
- Add patch to fix boo#1221664:
* mesa-fix-llvm18.patch
-------------------------------------------------------------------
Tue Mar 19 12:59:16 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- 0010-glx-silence-more-implicit-load-zink-errors.patch
* glx: silence more implicit-load zink errors [gitlab mesa issue #10802]
-------------------------------------------------------------------
Tue Mar 19 02:20:03 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- 0001-loader-delete-unused-param-from-pipe_loader_sw_probe.patch,
0002-glx-fix-some-indentation.patch,
0003-glx-add-an-implicit-param-to-createScreen.patch,
0004-glx-pass-implicit-load-param-through-allocation.patch,
0005-dri-plumb-a-implicit-param-through-createNewScreen-i.patch,
0006-gbm-plumb-an-implicit-param-through-device-creation.patch,
0007-frontends-dri-plumb-an-implicit-param-through-screen.patch,
0008-pipe-loader-plumb-a-flag-for-implicit-driver-load-th.patch,
0009-zink-don-t-print-error-messages-when-failing-an-impl.patch
* get rid of error message:
'MESA: error: ZINK: vkEnumeratePhysicalDevices failed
(VK_ERROR_INITIALIZATION_FAILED)'
[gitlab mesa issue #10802]
-------------------------------------------------------------------
Tue Mar 19 02:10:26 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- adjusted and re-enabled python36-buildfix1.patch
-------------------------------------------------------------------
Mon Mar 18 23:55:51 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- Update to new feature release 24.0.3
* Some interesting highlights include:
+ New PowerVR Vulkan driver for Imagination's GPU
+ NVIDIA Vulkan driver NVK has seen many improvements
+ AMD Vulkan driver RADV ray-tracing performance improvements
+ Microsoft OpenGL driver D3D12 has reached OpenGL 4.6 support
* New extensions & features (in no particular order):
+ VK_EXT_image_compression_control on RADV
+ VK_EXT_device_fault on RADV
+ OpenGL 3.3 on Asahi
+ Geometry shaders on Asahi
+ GL_ARB_texture_cube_map_array on Asahi
+ GL_ARB_clip_control on Asahi
+ GL_ARB_timer_query on Asahi
+ GL_EXT_disjoint_timer_query on Asahi
+ GL_ARB_base_instance on Asahi
+ OpenGL 4.6 (up from 4.2) on d3d12
+ VK_EXT_depth_clamp_zero_one on RADV
+ GL_ARB_shader_texture_image_samples on Asahi
+ GL_ARB_indirect_parameters on Asahi
+ GL_ARB_viewport_array on Asahi
+ GL_ARB_fragment_layer_viewport on Asahi
+ GL_ARB_cull_distance on Asahi
+ GL_ARB_transform_feedback_overflow_query on Asahi
+ VK_KHR_calibrated_timestamps on RADV
+ VK_KHR_vertex_attribute_divisor on RADV
+ VK_KHR_maintenance6 on RADV
+ VK_KHR_ray_tracing_position_fetch on RADV
+ EGL_EXT_query_reset_notification_strategy
- supersedes U_fix-ac-llvm-LLVM-18-remove-useless-passes.patch
- adjusted n_add-Mesa-headers-again.patch, u_dep_xcb.patch
- disabled python36-buildfix1.patch
- removed disabled patch u_fix-build-on-ppc64le.patch
-------------------------------------------------------------------
Sat Mar 16 18:44:50 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- get rid of u_zink-dont-print-error-messages-when-failing-an-implicit.patch
completely
-------------------------------------------------------------------
Thu Mar 14 04:48:32 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- buildrequires llvm18-devel/clang18-devel on Leap 15.5/15.6
-------------------------------------------------------------------
Thu Mar 14 04:40:06 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- disabled u_zink-dont-print-error-messages-when-failing-an-implicit.patch
for now, since it breaks driver build; this patch needs other patches
below to build ...
-------------------------------------------------------------------
Tue Mar 12 20:13:17 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- u_zink-dont-print-error-messages-when-failing-an-implicit.patch
* zink: don't print error messages when failing an implicit
driver load (Mesa gitlab issue #10802)
-------------------------------------------------------------------
Sat Mar 9 22:17:33 UTC 2024 - Aaron Puchert <aaronpuchert@alice-dsl.net>
- Add U_fix-ac-llvm-LLVM-18-remove-useless-passes.patch to fix
build with LLVM 18.
-------------------------------------------------------------------
Tue Mar 5 04:33:37 UTC 2024 - Jianhua Lu <lujianhua000@gmail.com>
- Enable zink driver build on aarch64, this is needed for Qualcomm Adreno a7xx
to use hw accelerated GL.
-------------------------------------------------------------------
Mon Mar 4 03:10:33 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- buildrequire llvm17 also on sle15-sp5/Leap15.5
-------------------------------------------------------------------
Sat Feb 17 01:01:22 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- Update to bugfix release 23.3.6
--> https://docs.mesa3d.org/relnotes/23.3.6.html
-------------------------------------------------------------------
Sun Feb 4 21:26:26 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- Update to bugfix release 23.3.5
--> https://docs.mesa3d.org/relnotes/23.3.5.html
-------------------------------------------------------------------
Wed Jan 31 17:40:11 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>
- re-enabled rusticl on sle15-sp6 after linkpac'ing rust-bindgen
in X11:XOrg project
-------------------------------------------------------------------
Thu Jan 25 05:19:47 UTC 2024 - Stefan Dirsch <sndirsch@suse.com>

255
Mesa.spec
View File

@@ -1,7 +1,7 @@
#
# spec file
# spec file for package Mesa
#
# Copyright (c) 2024 SUSE LLC
# Copyright (c) 2025 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -25,7 +25,7 @@
%global psuffix %{nil}
%endif
%ifarch armv6l armv6hl
%ifarch %{ix86} x86_64 armv6l armv6hl
%define _lto_cflags %{nil}
%endif
@@ -42,7 +42,11 @@
%define glamor 1
%define _name_archive mesa
%define _version 23.3.4
%ifnarch s390x
%define _version 24.3.3
%else
%define _version 24.1.7
%endif
%define with_opencl 0
%define with_rusticl 0
%define with_vulkan 0
@@ -57,11 +61,15 @@
%define vdpau_nouveau 0
%define vdpau_radeon 0
%define vdpau_virtio_gpu 0
%define vdpau_d3d12 0
%ifarch %{ix86} x86_64 aarch64 %{arm} ppc64 ppc64le riscv64
%define vdpau_nouveau 1
%define vdpau_radeon 1
%define vdpau_virtio_gpu 1
%ifarch %{ix86} x86_64
%define vdpau_d3d12 1
%endif
%endif
%ifarch %{ix86} x86_64
@@ -72,19 +80,27 @@
%define with_opencl 1
%ifarch %{ix86} x86_64
%define with_vulkan 1
%if 0%{?suse_version} > 1600
%define vulkan_drivers swrast,amd,intel,intel_hasvk,nouveau
%else
%define vulkan_drivers swrast,amd,intel,intel_hasvk
%endif
%endif
%ifarch %{arm} aarch64
%define with_vulkan 1
%define vulkan_drivers swrast,amd,broadcom,freedreno
%if 0%{?suse_version} > 1600
%define vulkan_drivers swrast,amd,broadcom,freedreno,intel,intel_hasvk,nouveau
%else
%define vulkan_drivers swrast,amd,broadcom,freedreno,intel,intel_hasvk
%endif
%endif
%ifarch riscv64
%define with_vulkan 1
%define vulkan_drivers swrast,amd
%define vulkan_drivers swrast,amd,intel,intel_hasvk
%endif
%endif
%ifarch aarch64 %{arm} ppc64 ppc64le riscv64 s390x %{ix86} x86_64
%ifarch aarch64 %{arm} ppc64 ppc64le riscv64 s390x %{ix86} x86_64 ix86
%define with_llvm 1
%endif
@@ -95,8 +111,8 @@
%endif
%if "%{flavor}" == "drivers"
%define glamor 0
%if 0%{?suse_version} > 1550 && 0%{with_opencl}
%define glamor 1
%if 0%{?suse_version} >= 1550 && 0%{with_opencl}
%define with_rusticl 1
%endif
%else
@@ -118,45 +134,91 @@
# Not built because virtio_gpu driver is not built.
%define vdpau_virtio_gpu 0
# Not built because d3d12 driver is not built.
%define vdpau_d3d12 0
# Vulkan includes radv driver which requires llvm
%define with_vulkan 0
%endif
# NVK aka Vulkan Nouveau dependencies
%global _unicode_ident_crate_ver 1.0.12
%global _syn_crate_ver 2.0.68
%global _quote_crate_ver 1.0.33
%global _proc_macro2_ver 1.0.86
%global _paste_crate_ver 1.0.14
Name: Mesa%{psuffix}
Version: 23.3.4
%ifnarch s390x
Version: 24.3.3
%else
Version: 24.1.7
%endif
Release: 0
Summary: System for rendering 3-D graphics
License: MIT
Group: System/Libraries
URL: https://www.mesa3d.org
#Git-Clone: git://anongit.freedesktop.org/mesa/mesa
Source: https://archive.mesa3d.org/%{_name_archive}-%{_version}.tar.xz
Source0: https://archive.mesa3d.org/%{_name_archive}-%{_version}.tar.xz
Source1: https://archive.mesa3d.org/%{_name_archive}-%{_version}.tar.xz.sig
Source2: baselibs.conf
Source3: README.updates
Source4: manual-pages.tar.bz2
Source6: Mesa-rpmlintrc
Source7: Mesa.keyring
# NVK aka Vulkan Nouveau dependencies
# Explainer:
# Since Rust crates are not installed or discouraged to be installed as system
# dependencies because of the maintenance burden of being the next crates.io,
# we will have to download the following crates as vendored dependencies.
# Hence, do not be scared if the dependencies are done like this
# To check new crates or update the versions, just go to the subprojects folder and
# run `grep -r crates .` then set versions appropriately.
Source2: http://crates.io/api/v1/crates/unicode-ident/%{_unicode_ident_crate_ver}/download#/unicode-ident-%{_unicode_ident_crate_ver}.tar.gz
Source3: http://crates.io/api/v1/crates/syn/%{_syn_crate_ver}/download#/syn-%{_syn_crate_ver}.tar.gz
Source4: http://crates.io/api/v1/crates/quote/%{_quote_crate_ver}/download#/quote-%{_quote_crate_ver}.tar.gz
Source5: http://crates.io/api/v1/crates/proc-macro2/%{_proc_macro2_ver}/download#/proc-macro2-%{_proc_macro2_ver}.tar.gz
Source6: http://crates.io/api/v1/crates/paste/%{_paste_crate_ver}/download#/paste-%{_paste_crate_ver}.tar.gz
Source7: baselibs.conf
Source8: README.updates
Source9: manual-pages.tar.bz2
Source10: Mesa-rpmlintrc
Source11: Mesa.keyring
Source12: README-suse-maintenance.md
Source20: https://archive.mesa3d.org/%{_name_archive}-24.3.3.tar.xz
Source21: https://archive.mesa3d.org/%{_name_archive}-24.3.3.tar.xz.sig
Patch2: n_add-Mesa-headers-again.patch
Patch11: u_0001-intel-genxml-Drop-from-__future__-import-annotations.patch
Patch12: u_0002-intel-genxml-Add-a-untyped-OrderedDict-fallback-for-.patch
%ifnarch s390x
Patch13: python36-buildfix1.patch
%else
Patch13: python36-buildfix1-s390x.patch
%endif
Patch14: python36-buildfix2.patch
Patch17: tlsdesc_test.patch
# never to be upstreamed
Patch54: n_drirc-disable-rgb10-for-chromium-on-amd.patch
Patch58: u_dep_xcb.patch
Patch100: U_fix-mpeg1_2-decode-mesa-20.2.patch
Patch200: u_fix-build-on-ppc64le.patch
Patch400: n_stop-iris-flicker.patch
%ifnarch s390x
Patch500: u_dep_xcb.patch
%else
Patch500: u_dep_xcb-s390x.patch
%endif
%ifnarch s390x
Patch1222040: u_mesa-CVE-2023-45913.patch
%else
Patch1222040: u_mesa-CVE-2023-45913-s390x.patch
%endif
Patch1222041: u_mesa-CVE-2023-45919.patch
Patch1222042: u_mesa-CVE-2023-45922.patch
%ifarch %{ix86} x86_64
BuildRequires: DirectX-Headers
BuildRequires: DirectX-Headers >= 1.613.0
%endif
BuildRequires: bison
BuildRequires: cmake
BuildRequires: fdupes
BuildRequires: flex
%if 0%{?sle_version} >= 150400
BuildRequires: gcc12-c++
BuildRequires: gcc13-c++
%else
BuildRequires: gcc-c++
%endif
@@ -164,7 +226,11 @@ BuildRequires: glslang-devel
BuildRequires: imake
BuildRequires: libtool
BuildRequires: memory-constraints
BuildRequires: meson >= 0.60
%if 0%{with_rusticl}
BuildRequires: meson >= 1.4.0
%else
BuildRequires: meson >= 1.1.0
%endif
BuildRequires: pkgconfig
BuildRequires: python3-base
# dataclasses is in standard library of python >= 3.7
@@ -172,23 +238,24 @@ BuildRequires: python3-base
BuildRequires: python3-dataclasses
%endif
BuildRequires: python3-Mako
BuildRequires: python3-PyYAML
BuildRequires: python3-xml
BuildRequires: pkgconfig(dri2proto)
BuildRequires: pkgconfig(dri3proto)
BuildRequires: pkgconfig(expat)
BuildRequires: pkgconfig(glproto)
BuildRequires: pkgconfig(libdrm) >= 2.4.75
BuildRequires: pkgconfig(libdrm_amdgpu) >= 2.4.95
BuildRequires: pkgconfig(libdrm) >= 2.4.109
BuildRequires: pkgconfig(libdrm_amdgpu) >= 2.4.121
BuildRequires: pkgconfig(libdrm_nouveau) >= 2.4.66
BuildRequires: pkgconfig(libdrm_radeon) >= 2.4.71
BuildRequires: pkgconfig(libglvnd) >= 0.1.0
%ifarch aarch64 x86_64 ppc64le s390x
BuildRequires: pkgconfig(libglvnd) >= 1.3.2
%ifarch aarch64 x86_64 ppc64le s390x riscv64
BuildRequires: pkgconfig(valgrind)
%endif
BuildRequires: pkgconfig(libva)
BuildRequires: pkgconfig(presentproto)
%if "%{flavor}" == "drivers"
BuildRequires: pkgconfig(vdpau) >= 1.1
BuildRequires: pkgconfig(vdpau) >= 1.5
%ifarch %{ix86} x86_64
BuildRequires: pkgconfig(vulkan)
%endif
@@ -225,11 +292,14 @@ Obsoletes: libXvMC_r600 < %{version}
Provides: libtxc_dxtn = %{version}
Obsoletes: libtxc_dxtn < %{version}
%ifarch %{arm} aarch64
%if 0%{?suse_version} >= 1550
BuildRequires: python3-pycparser >= 2.20
BuildRequires: pkgconfig(libdrm_etnaviv) >= 2.4.89
%endif
BuildRequires: pkgconfig(libdrm_freedreno) >= 2.4.74
BuildRequires: pkgconfig(libelf)
%endif
%ifarch x86_64 %{ix86}
%ifarch x86_64 %{ix86} aarch64 %{arm} riscv64
BuildRequires: libelf-devel
BuildRequires: pkgconfig(libdrm_intel) >= 2.4.75
%else
@@ -243,10 +313,10 @@ BuildRequires: pkgconfig(wayland-protocols) >= 1.8
BuildRequires: pkgconfig(wayland-server) >= 1.11
%if 0%{with_llvm}
%if 0%{?suse_version} >= 1550
BuildRequires: llvm-devel
BuildRequires: llvm-devel >= 15
%else
%if 0%{?sle_version} >= 150600
BuildRequires: llvm17-devel
BuildRequires: llvm19-devel
%endif
%endif
%endif
@@ -256,12 +326,18 @@ BuildRequires: llvm17-devel
BuildRequires: clang-devel
%else
%if 0%{?sle_version} >= 150600
BuildRequires: clang17-devel
BuildRequires: clang19-devel
%endif
%endif
BuildRequires: libclc
BuildRequires: pkgconfig(LLVMSPIRVLib)
BuildRequires: pkgconfig(SPIRV-Tools)
# For NVK or libvulkan_nouveau.so
# Rust Cbindgen >=0.25 is required
# but it's only available on tumbleweed
%if 0%{?suse_version} > 1600
BuildRequires: rust-cbindgen >= 0.25
%endif
%if 0%{with_rusticl}
BuildRequires: rust
BuildRequires: rust-bindgen
@@ -306,7 +382,7 @@ Requires: Mesa-libGLESv1_CM-devel = %{version}
Requires: Mesa-libGLESv2-devel = %{version}
Requires: Mesa-libglapi-devel = %{version}
Requires: libOSMesa-devel = %{version}
Requires: libgbm-devel
Requires: libgbm-devel = %{version}
Provides: Mesa-devel-static = %{version}
Provides: xorg-x11-Mesa-devel = %{version}
Requires: libglvnd-devel >= 1.2.0
@@ -509,6 +585,9 @@ Group: System/Libraries
Requires: Mesa = %{version}
Requires: libvulkan1
Supplements: Mesa
# merged into libgallium in 24.2.3
Provides: libvdpau_gallium = %{version}-%{release}
Obsoletes: libvdpau_gallium < %{version}-%{release}
%description -n Mesa-dri
This package contains Mesa DRI drivers for 3D acceleration.
@@ -632,6 +711,13 @@ Group: System/Libraries
%description -n libvdpau_virtio_gpu
This package contains the VDPAU state tracker for VirtIO GPU.
%package -n libvdpau_d3d12
Summary: VDPAU state tracker for d3d12
Group: System/Libraries
%description -n libvdpau_d3d12
This package contains the VDPAU state tracker for d3d12
%package -n Mesa-libOpenCL
Summary: Mesa OpenCL implementation (Clover)
Group: System/Libraries
@@ -668,7 +754,7 @@ This package contains the Mesa VA-API implementation provided through gallium.
Summary: Mesa vulkan driver for Intel GPU
Group: System/Libraries
Supplements: modalias(pci:v00008086d*sv*sd*bc03sc*i*)
Requires: Mesa-vulkan-device-select
Requires: Mesa-vulkan-device-select = %{version}
# get rid of this package, which is no longer neeeded at all
Provides: Mesa-libVulkan-devel = 22.0.0
Obsoletes: Mesa-libVulkan-devel < 22.0.0
@@ -676,11 +762,22 @@ Obsoletes: Mesa-libVulkan-devel < 22.0.0
%description -n libvulkan_intel
This package contains the Vulkan parts for Mesa.
# Only available on Tumbleweed because of rust-cbindgen >= 1.25 requirement
%if 0%{?suse_version} > 1600
%package -n libvulkan_nouveau
Summary: Mesa vulkan driver for NVK (Nouveau Vulkan)
Group: System/Libraries
Requires: Mesa-vulkan-device-select = %{version}
%description -n libvulkan_nouveau
This package contains the Vulkan parts for Mesa.
%endif
%package -n libvulkan_radeon
Summary: Mesa vulkan driver for AMD GPU
Group: System/Libraries
Supplements: modalias(pci:v00001002d*sv*sd*bc03sc*i*)
Requires: Mesa-vulkan-device-select
Requires: Mesa-vulkan-device-select = %{version}
%description -n libvulkan_radeon
This package contains the Vulkan parts for Mesa.
@@ -688,7 +785,7 @@ This package contains the Vulkan parts for Mesa.
%package -n libvulkan_lvp
Summary: Mesa vulkan driver for LVP
Group: System/Libraries
Requires: Mesa-vulkan-device-select
Requires: Mesa-vulkan-device-select = %{version}
%description -n libvulkan_lvp
This package contains the Vulkan parts for Mesa.
@@ -750,10 +847,18 @@ This package provides the development environment for compiling
programs against the XA state tracker.
%prep
%setup -q -n %{_name_archive}-%{_version} -b4
%setup -q -n %{_name_archive}-%{_version} -b9
# remove some docs
rm -rf docs/README.{VMS,WIN32,OS2}
# Rust crates to subprojects
mkdir -p subprojects/packagecache
cp %{SOURCE2} subprojects/packagecache/
cp %{SOURCE3} subprojects/packagecache/
cp %{SOURCE4} subprojects/packagecache/
cp %{SOURCE5} subprojects/packagecache/
cp %{SOURCE6} subprojects/packagecache/
%patch -P 2 -p1
# fixes build against python 3.6
%patch -P 11 -p1
@@ -762,15 +867,17 @@ rm -rf docs/README.{VMS,WIN32,OS2}
%if 0%{?suse_version} < 1550
%patch -P 14 -p1
%endif
%patch -P 17 -p1
# no longer needed since gstreamer-plugins-vaapi 1.18.4
%if 0%{?suse_version} < 1550
%patch -P 54 -p1
%endif
%patch -P 58 -p1
%patch -P 100 -p1
#%patch -P 200 -p1
%patch -P 400 -p1
%patch -P 500 -p1
%patch -P 1222040 -p1
%patch -P 1222041 -p1
%patch -P 1222042 -p1
# Remove requires to vulkan libs from baselibs.conf on platforms
# where vulkan build is disabled; ugly ...
%if 0%{?with_vulkan} == 0
@@ -784,8 +891,8 @@ grep -v -i vulkan "%{_sourcedir}/baselibs.conf" >"%{_sourcedir}/temp" && \
%limit_build -m 1024
%endif
%if 0%{?sle_version} >= 150400
export CC=gcc-12
export CXX=g++-12
export CC=gcc-13
export CXX=g++-13
%endif
egl_platforms=x11,wayland
@@ -812,13 +919,12 @@ egl_platforms=x11,wayland
-Dvulkan-drivers= \
%endif
-Dxlib-lease=enabled \
-Dglvnd=true \
-Dglvnd=enabled \
-Dgles1=enabled \
-Dgles2=enabled \
-Degl=enabled \
-Dallow-kcmp=enabled \
-Dplatforms=$egl_platforms \
-Ddri3=enabled \
-Dshared-glapi=enabled \
%if 0%{?with_nine}
-Dgallium-nine=true \
@@ -836,14 +942,13 @@ egl_platforms=x11,wayland
-Drust_std=2021 \
%endif
%endif
-Ddri-search-path=%{_libdir}/dri \
%if 0%{with_llvm}
-Dllvm=enabled \
-Dshared-llvm=enabled \
%endif
%if "%{flavor}" == "drivers"
%if %{video_codecs}
-Dvideo-codecs=h264dec,h264enc,h265dec,h265enc,vc1dec \
-Dvideo-codecs=all \
%endif
%if %{gallium_loader}
-Dgallium-vdpau=enabled \
@@ -853,26 +958,40 @@ egl_platforms=x11,wayland
%if 0%{with_vulkan}
-Dvulkan-drivers=%{?vulkan_drivers} \
-Dvulkan-layers=device-select,overlay \
-Dvulkan-beta=true \
%else
-Dvulkan-drivers= \
%endif
%ifarch %{ix86} x86_64
-Dgallium-drivers=r300,r600,radeonsi,nouveau,swrast,svga,virgl,iris,crocus,i915,d3d12,zink \
-Dgallium-drivers=r300,r600,radeonsi,nouveau,softpipe,llvmpipe,svga,virgl,iris,crocus,i915,d3d12,zink \
-Dgallium-d3d12-video=enabled \
-Dgallium-d3d12-graphics=enabled \
%else
%ifarch %{arm} aarch64
-Dgallium-drivers=r300,r600,radeonsi,nouveau,swrast,virgl,freedreno,vc4,etnaviv,lima,panfrost,v3d,svga,tegra \
%if 0%{?suse_version} >= 1550
-Dgallium-drivers=r300,r600,radeonsi,nouveau,softpipe,llvmpipe,virgl,iris,freedreno,vc4,etnaviv,lima,panfrost,v3d,svga,tegra,zink \
%else
-Dgallium-drivers=r300,r600,radeonsi,nouveau,softpipe,llvmpipe,virgl,iris,freedreno,vc4,lima,panfrost,v3d,svga,tegra,zink \
%endif
%else
%ifarch ppc64 ppc64le riscv64
-Dgallium-drivers=r300,r600,radeonsi,nouveau,swrast,virgl \
-Dgallium-drivers=r300,r600,radeonsi,nouveau,softpipe,llvmpipe,virgl,iris,zink \
%else
-Dgallium-drivers=swrast \
%endif
%endif
%endif
%ifarch riscv64
-Dllvm-orcjit=true \
%endif
%else
%ifnarch s390x
-Dgallium-drivers=softpipe \
%else
-Dgallium-drivers=swrast \
%endif
%ifarch aarch64 x86_64 ppc64le s390x
%endif
%ifarch aarch64 x86_64 ppc64le s390x riscv64
-Dvalgrind=enabled \
%endif
-Db_ndebug=true \
@@ -886,6 +1005,7 @@ egl_platforms=x11,wayland
%meson_build
%install
export MESON_PACKAGE_CACHE_DIR="%{_sourcedir}"
%meson_install
find %{buildroot} -type f -name "*.la" -delete -print
@@ -934,14 +1054,18 @@ rm %{buildroot}/%{_libdir}/pkgconfig/dri.pc
# in KHR-devel
rm -rf %{buildroot}/%{_includedir}/KHR
# workaround needed since Mesa 19.0.2
rm -f %{buildroot}/%{_libdir}/vdpau/libvdpau_gallium.so
# in libgbm-devel
rm -f %{buildroot}%{_includedir}/gbm.h
rm -f %{buildroot}%{_libdir}/libgbm.so*
rm -f %{buildroot}%{_libdir}/pkgconfig/gbm.pc
%else
# package in Mesa-dri
rm -rf %{buildroot}/%{_datadir}/drirc.d
rm -f %{buildroot}/%{_libdir}/dri/*_dri.so
rm -f %{buildroot}%{_libdir}/libgallium-*.so
rm -rf %{buildroot}%{_libdir}/gbm/
rm -f %{buildroot}%{_libdir}/libGLES*
# glvnd needs a default provider for indirect rendering where it cannot
@@ -1068,6 +1192,7 @@ echo "The \"Mesa\" package does not have the ability to render, but is supplemen
%{_includedir}/xa_*.h
%{_libdir}/libxatracker.so
%{_libdir}/pkgconfig/xatracker.pc
%endif
%if %{vdpau_nouveau}
@@ -1084,16 +1209,13 @@ echo "The \"Mesa\" package does not have the ability to render, but is supplemen
%{_libdir}/vdpau/libvdpau_r600.so.1
%{_libdir}/vdpau/libvdpau_r600.so.1.0
%{_libdir}/vdpau/libvdpau_r600.so.1.0.0
%endif
%ifarch %{ix86} x86_64 ppc64 ppc64le %{arm} aarch64 riscv64
%files -n libvdpau_radeonsi
%{_libdir}/vdpau/libvdpau_radeonsi.so
%{_libdir}/vdpau/libvdpau_radeonsi.so.1
%{_libdir}/vdpau/libvdpau_radeonsi.so.1.0
%{_libdir}/vdpau/libvdpau_radeonsi.so.1.0.0
%endif
%endif
%if %{vdpau_virtio_gpu}
%files -n libvdpau_virtio_gpu
@@ -1103,6 +1225,15 @@ echo "The \"Mesa\" package does not have the ability to render, but is supplemen
%{_libdir}/vdpau/libvdpau_virtio_gpu.so.1.0.0
%endif
%if %{vdpau_d3d12}
%files -n libvdpau_d3d12
%{_libdir}/vdpau/libvdpau_d3d12.so
%{_libdir}/vdpau/libvdpau_d3d12.so.1
%{_libdir}/vdpau/libvdpau_d3d12.so.1.0
%{_libdir}/vdpau/libvdpau_d3d12.so.1.0.0
%endif
%endif
%if "%{flavor}" != "drivers"
%files libglapi0
%{_libdir}/libglapi.so.0*
@@ -1123,6 +1254,11 @@ echo "The \"Mesa\" package does not have the ability to render, but is supplemen
%ifarch %{arm} aarch64
%exclude %{_libdir}/dri/vc4_dri.so
%endif
%ifnarch s390x
%{_libdir}/libgallium-%{_version}.so
%dir %{_libdir}/gbm/
%{_libdir}/gbm/dri_gbm.so
%endif
%if 0%{with_opencl}
# only built with opencl
@@ -1202,7 +1338,7 @@ echo "The \"Mesa\" package does not have the ability to render, but is supplemen
%endif
%if 0%{with_vulkan}
%ifarch %{ix86} x86_64
%ifarch %{ix86} x86_64 aarch64 %{arm} riscv64
%files -n libvulkan_intel
%dir %{_datadir}/vulkan
%dir %{_datadir}/vulkan/icd.d
@@ -1212,6 +1348,17 @@ echo "The \"Mesa\" package does not have the ability to render, but is supplemen
%{_libdir}/libvulkan_intel_hasvk.so
%endif
%ifarch %{ix86} x86_64 aarch64 %{arm}
# Only available on Tumbleweed because of rust-cbindgen >= 1.25 requirement
%if 0%{?suse_version} > 1600
%files -n libvulkan_nouveau
%{_libdir}/libvulkan_nouveau.so
%{_datadir}/vulkan/icd.d/nouveau_icd.*.json
%dir %{_datadir}/vulkan
%dir %{_datadir}/vulkan/icd.d
%endif
%endif
%files -n libvulkan_radeon
%{_libdir}/libvulkan_radeon.so
%dir %{_datadir}/vulkan

View File

@@ -0,0 +1,8 @@
Since Rust crates are not installed or discouraged to be installed
as system dependencies because of the maintenance burden of being the
next crates.io, we will have to download the following crates as vendored
dependencies. Hence, do not be scared if the dependencies are done like
this.
To check new crates or update the versions, just go to the subprojects
folder and run `grep -r crates .` then set versions appropriately.

View File

@@ -3,11 +3,11 @@
src/gallium/drivers/r600/evergreen_state.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
Index: mesa-23.3.0/src/gallium/drivers/r600/evergreen_state.c
Index: mesa-24.2.2/src/gallium/drivers/r600/evergreen_state.c
===================================================================
--- mesa-23.3.0.orig/src/gallium/drivers/r600/evergreen_state.c
+++ mesa-23.3.0/src/gallium/drivers/r600/evergreen_state.c
@@ -598,7 +598,8 @@ static void *evergreen_create_sampler_st
--- mesa-24.2.2.orig/src/gallium/drivers/r600/evergreen_state.c
+++ mesa-24.2.2/src/gallium/drivers/r600/evergreen_state.c
@@ -584,7 +584,8 @@ static void *evergreen_create_sampler_st
: state->max_anisotropy;
unsigned max_aniso_ratio = r600_tex_aniso_filter(max_aniso);
bool trunc_coord = state->min_img_filter == PIPE_TEX_FILTER_NEAREST &&

View File

@@ -85,6 +85,10 @@ libvulkan_intel
requires "Mesa-vulkan-device-select-<targettype> = <version>"
provides "Mesa-libVulkan-devel-<targettype> = 22.0.0"
obsoletes "Mesa-libVulkan-devel-<targettype> < 22.0.0"
libvulkan_nouveau
targetarch aarch64 +/usr/share/vulkan/icd.d/nouveau_icd.*.json
targetarch x86_64 +/usr/share/vulkan/icd.d/nouveau_icd.*.json
requires "Mesa-vulkan-device-select-<targettype> = <version>"
libvulkan_radeon
targetarch aarch64 +/usr/share/vulkan/icd.d/radeon_icd.*.json
targetarch ppc64 +/usr/share/vulkan/icd.d/radeon_icd.*.json
@@ -103,3 +107,4 @@ Mesa-dri
supplements "Mesa-<targettype> = <version>"
Mesa-gallium
supplements "Mesa-<targettype> = <version>"
Mesa-libva

BIN
mesa-23.3.4.tar.xz (Stored with Git LFS)

Binary file not shown.

Binary file not shown.

BIN
mesa-24.1.7.tar.xz (Stored with Git LFS) Normal file

Binary file not shown.

BIN
mesa-24.1.7.tar.xz.sig Normal file

Binary file not shown.

BIN
mesa-24.3.3.tar.xz (Stored with Git LFS) Normal file

Binary file not shown.

BIN
mesa-24.3.3.tar.xz.sig Normal file

Binary file not shown.

View File

@@ -1,15 +1,20 @@
Index: mesa-23.3.0/include/meson.build
Index: mesa-24.2.2/include/meson.build
===================================================================
--- mesa-23.3.0.orig/include/meson.build
+++ mesa-23.3.0/include/meson.build
@@ -28,10 +28,8 @@ if with_android_stub
--- mesa-24.2.2.orig/include/meson.build
+++ mesa-24.2.2/include/meson.build
@@ -12,7 +12,6 @@ if with_android_stub
inc_include += [include_directories('android_stub')]
endif
-if not with_glvnd
-if not with_glvnd and host_machine.system() != 'windows'
if with_gles1 or with_gles2 or with_opengl or with_egl
install_headers('KHR/khrplatform.h', subdir : 'KHR')
- endif
endif
@@ -68,7 +67,6 @@ if not with_glvnd and host_machine.syste
subdir : 'EGL',
)
endif
-endif
if with_gles1
install_headers(
# Non-upstream headers
if with_egl

View File

@@ -1,8 +1,8 @@
Index: mesa-23.2.0-rc4/src/util/00-mesa-defaults.conf
Index: mesa-24.3.0-rc1/src/util/00-mesa-defaults.conf
===================================================================
--- mesa-23.2.0-rc4.orig/src/util/00-mesa-defaults.conf
+++ mesa-23.2.0-rc4/src/util/00-mesa-defaults.conf
@@ -956,6 +956,14 @@ TODO: document the other workarounds.
--- mesa-24.3.0-rc1.orig/src/util/00-mesa-defaults.conf
+++ mesa-24.3.0-rc1/src/util/00-mesa-defaults.conf
@@ -1040,6 +1040,14 @@ TODO: document the other workarounds.
<application name="Rocket League" executable="RocketLeague">
<option name="radeonsi_zerovram" value="true" />
</application>

View File

@@ -4,17 +4,15 @@ Date: Tue May 24 14:47:53 2022 -0400
Adjusting 'iris_batch.c' per 'https://gitlab.freedesktop.org/mesa/mesa/-/issues/5731'.
Index: mesa-23.3.0/src/gallium/drivers/iris/i915/iris_kmd_backend.c
Index: mesa-24.2.2/src/gallium/drivers/iris/i915/iris_kmd_backend.c
===================================================================
--- mesa-23.3.0.orig/src/gallium/drivers/iris/i915/iris_kmd_backend.c
+++ mesa-23.3.0/src/gallium/drivers/iris/i915/iris_kmd_backend.c
@@ -308,8 +308,7 @@ i915_batch_submit(struct iris_batch *bat
(struct drm_i915_gem_exec_object2) {
.handle = bo->gem_handle,
.offset = bo->address,
- .flags = bo->real.kflags | (written ? EXEC_OBJECT_WRITE : 0) |
- (iris_bo_is_external(bo) ? 0 : EXEC_OBJECT_ASYNC),
+ .flags = bo->real.kflags | (written ? EXEC_OBJECT_WRITE : 0),
};
++validation_count;
}
--- mesa-24.2.2.orig/src/gallium/drivers/iris/i915/iris_kmd_backend.c
+++ mesa-24.2.2/src/gallium/drivers/iris/i915/iris_kmd_backend.c
@@ -318,7 +318,6 @@ i915_batch_submit(struct iris_batch *bat
uint32_t flags = EXEC_OBJECT_SUPPORTS_48B_ADDRESS | EXEC_OBJECT_PINNED;
flags |= bo->real.capture ? EXEC_OBJECT_CAPTURE : 0;
flags |= bo == batch->screen->workaround_bo ? EXEC_OBJECT_ASYNC : 0;
- flags |= iris_bo_is_external(bo) ? 0 : EXEC_OBJECT_ASYNC;
flags |= written ? EXEC_OBJECT_WRITE : 0;
index_for_handle[bo->gem_handle] = validation_count;

BIN
paste-1.0.14.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

BIN
proc-macro2-1.0.86.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

View File

@@ -0,0 +1,67 @@
Index: mesa-24.1.7/src/nouveau/headers/class_parser.py
===================================================================
--- mesa-24.1.7.orig/src/nouveau/headers/class_parser.py
+++ mesa-24.1.7/src/nouveau/headers/class_parser.py
@@ -9,6 +9,16 @@ import sys
from mako.template import Template
+def removeprefix(s, prefix):
+ if s.startswith(prefix):
+ return s[len(prefix):]
+ return s
+
+def removesuffix(s, suffix):
+ if s.endswith(suffix):
+ return s[:-len(suffix)]
+ return s
+
METHOD_ARRAY_SIZES = {
'BIND_GROUP_CONSTANT_BUFFER' : 16,
'CALL_MME_DATA' : 256,
@@ -293,7 +303,7 @@ def parse_header(nvcl, f):
if ":" in list[2]:
state = 1
elif teststr in list[1]:
- curmthd.field_defs[curfield][list[1].removeprefix(teststr)] = list[2]
+ curmthd.field_defs[curfield][removeprefix(list[1], teststr)] = list[2]
else:
state = 1
@@ -303,7 +313,7 @@ def parse_header(nvcl, f):
if ("0x" in list[2]):
state = 1
else:
- field = list[1].removeprefix(teststr)
+ field = removeprefix(list[1], teststr)
bitfield = list[2].split(":")
curmthd.field_name_start[field] = bitfield[1]
curmthd.field_name_end[field] = bitfield[0]
@@ -324,13 +334,13 @@ def parse_header(nvcl, f):
is_array = 0
if (':' in list[2]):
continue
- name = list[1].removeprefix(teststr)
+ name = removeprefix(list[1], teststr)
if name.endswith("(i)"):
is_array = 1
- name = name.removesuffix("(i)")
+ name = removesuffix(name, "(i)")
if name.endswith("(j)"):
is_array = 1
- name = name.removesuffix("(j)")
+ name = removesuffix(name, "(j)")
x = method()
x.name = name
x.addr = list[2]
@@ -357,8 +367,8 @@ def main():
clheader = os.path.basename(args.in_h)
nvcl = clheader
- nvcl = nvcl.removeprefix("cl")
- nvcl = nvcl.removesuffix(".h")
+ nvcl = removeprefix(nvcl, "cl")
+ nvcl = removesuffix(nvcl, ".h")
nvcl = nvcl.upper()
nvcl = "NV" + nvcl

View File

@@ -1,6 +1,8 @@
--- mesa-23.3.3/src/nouveau/nvidia-headers/class_parser.py.orig 2024-01-20 12:47:36.464476669 +0100
+++ mesa-23.3.3/src/nouveau/nvidia-headers/class_parser.py 2024-01-20 13:04:30.212851443 +0100
@@ -9,6 +9,16 @@
Index: mesa-24.3.0-rc1/src/nouveau/headers/class_parser.py
===================================================================
--- mesa-24.3.0-rc1.orig/src/nouveau/headers/class_parser.py
+++ mesa-24.3.0-rc1/src/nouveau/headers/class_parser.py
@@ -11,6 +11,16 @@ import subprocess
from mako.template import Template
@@ -15,9 +17,9 @@
+ return s
+
METHOD_ARRAY_SIZES = {
'BIND_GROUP_CONSTANT_BUFFER' : 16,
'CALL_MME_DATA' : 256,
@@ -273,7 +283,7 @@
'BIND_GROUP_CONSTANT_BUFFER' : 16,
'CALL_MME_DATA' : 256,
@@ -425,7 +435,7 @@ def parse_header(nvcl, f):
if ":" in list[2]:
state = 1
elif teststr in list[1]:
@@ -26,7 +28,7 @@
else:
state = 1
@@ -283,7 +293,7 @@
@@ -435,7 +445,7 @@ def parse_header(nvcl, f):
if ("0x" in list[2]):
state = 1
else:
@@ -35,7 +37,7 @@
bitfield = list[2].split(":")
curmthd.field_name_start[field] = bitfield[1]
curmthd.field_name_end[field] = bitfield[0]
@@ -304,13 +314,13 @@
@@ -456,13 +466,13 @@ def parse_header(nvcl, f):
is_array = 0
if (':' in list[2]):
continue
@@ -52,7 +54,7 @@
x = method()
x.name = name
x.addr = list[2]
@@ -336,8 +346,8 @@
@@ -552,8 +562,8 @@ def main():
clheader = os.path.basename(args.in_h)
nvcl = clheader

View File

@@ -1,6 +1,8 @@
--- mesa-23.3.3/src/freedreno/registers/gen_header.py.orig 2024-01-20 14:01:30.261999839 +0100
+++ mesa-23.3.3/src/freedreno/registers/gen_header.py 2024-01-20 14:01:57.678558692 +0100
@@ -781,7 +781,7 @@ def main():
Index: mesa-24.3.0-rc1/src/freedreno/registers/gen_header.py
===================================================================
--- mesa-24.3.0-rc1.orig/src/freedreno/registers/gen_header.py
+++ mesa-24.3.0-rc1/src/freedreno/registers/gen_header.py
@@ -957,7 +957,7 @@ def main():
parser.add_argument('--rnn', type=str, required=True)
parser.add_argument('--xml', type=str, required=True)

BIN
quote-1.0.33.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

BIN
syn-2.0.68.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

15
tlsdesc_test.patch Normal file
View File

@@ -0,0 +1,15 @@
LTO defeats the -fpic workaround and enables TLS relaxation anyway
Index: mesa-24.3.0-rc1/meson.build
===================================================================
--- mesa-24.3.0-rc1.orig/meson.build
+++ mesa-24.3.0-rc1/meson.build
@@ -516,7 +516,7 @@ if not have_mtls_dialect
foreach tlsdesc_arg : ['-mtls-dialect=gnu2', '-mtls-dialect=desc']
# -fpic to force dynamic tls, otherwise TLS relaxation defeats check
tlsdesc_test = cc.run('int __thread x; int main() { return x; }',
- args: [tlsdesc_arg, '-fpic'],
+ args: [tlsdesc_arg, '-fpic', '-fno-lto'],
name: tlsdesc_arg)
if tlsdesc_test.returncode() == 0 and (
# check for lld 13 bug: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5665

16
u_dep_xcb-s390x.patch Normal file
View File

@@ -0,0 +1,16 @@
Index: mesa-24.2.2/meson.build
===================================================================
--- mesa-24.2.2.orig/meson.build
+++ mesa-24.2.2/meson.build
@@ -2145,9 +2145,11 @@ if with_platform_x11
endif
endif
if with_any_vk or with_egl or (with_glx == 'dri' and with_dri_platform == 'drm')
+ dep_x11_xcb = dependency('x11-xcb')
dep_xcb_dri2 = dependency('xcb-dri2', version : '>= 1.8')
if with_dri3
+ dep_xcb = dependency('xcb')
dep_xcb_dri3 = dependency('xcb-dri3')
dep_xcb_present = dependency('xcb-present')
# until xcb-dri3 has been around long enough to make a hard-dependency:

View File

@@ -1,28 +1,15 @@
Index: mesa-23.3.0/meson.build
Index: mesa-24.3.0/meson.build
===================================================================
--- mesa-23.3.0.orig/meson.build
+++ mesa-23.3.0/meson.build
@@ -2022,9 +2022,11 @@ if with_platform_x11
--- mesa-24.3.0.orig/meson.build
+++ mesa-24.3.0/meson.build
@@ -2103,8 +2103,10 @@ if with_platform_x11
endif
endif
if with_any_vk or with_egl or (with_glx == 'dri' and with_dri_platform == 'drm')
if with_dri_platform == 'drm'
+ dep_x11_xcb = dependency('x11-xcb')
dep_xcb_dri2 = dependency('xcb-dri2', version : '>= 1.8')
dep_xcb_dri2 = dependency('xcb-dri2', version : '>= 1.8', required : with_x11_dri2)
if with_dri3
+ dep_xcb = dependency('xcb')
dep_xcb_dri3 = dependency('xcb-dri3')
dep_xcb_present = dependency('xcb-present')
# until xcb-dri3 has been around long enough to make a hard-dependency:
Index: mesa-23.3.0/src/loader/meson.build
===================================================================
--- mesa-23.3.0.orig/src/loader/meson.build
+++ mesa-23.3.0/src/loader/meson.build
@@ -47,6 +47,6 @@ libloader = static_library(
c_args : loader_c_args,
gnu_symbol_visibility : 'hidden',
include_directories : [inc_include, inc_src, inc_util],
- dependencies : [dep_libdrm, dep_thread, dep_xcb_xrandr],
+ dependencies : [dep_libdrm, dep_thread, dep_xcb_xrandr, dep_xcb],
build_by_default : false,
)
+ dep_xcb = dependency('xcb')
dep_xcb_dri3 = dependency('xcb-dri3', version : '>= 1.13')
dep_xcb_present = dependency('xcb-present', version : '>= 1.13')
if (dep_xcb_dri3.version().version_compare('>= 1.17') and

View File

@@ -1,42 +0,0 @@
Index: mesa-23.0.0/include/CL/cl_platform.h
===================================================================
--- mesa-23.0.0.orig/include/CL/cl_platform.h
+++ mesa-23.0.0/include/CL/cl_platform.h
@@ -385,7 +385,9 @@ typedef unsigned int cl_GLenum;
/* Define basic vector types */
#if defined( __VEC__ )
#if !defined(__clang__)
+ #ifndef __cplusplus
#include <altivec.h> /* may be omitted depending on compiler. AltiVec spec provides no way to detect whether the header is required. */
+ #endif
#endif
typedef __vector unsigned char __cl_uchar16;
typedef __vector signed char __cl_char16;
Index: mesa-23.0.0/src/gallium/drivers/llvmpipe/lp_rast_tri.c
===================================================================
--- mesa-23.0.0.orig/src/gallium/drivers/llvmpipe/lp_rast_tri.c
+++ mesa-23.0.0/src/gallium/drivers/llvmpipe/lp_rast_tri.c
@@ -488,7 +488,9 @@ lp_rast_triangle_32_3_4(struct lp_raster
#if defined(_ARCH_PWR8) && UTIL_ARCH_LITTLE_ENDIAN
+#ifndef __cplusplus
#include <altivec.h>
+#endif
#include "util/u_pwr8.h"
static inline void
Index: mesa-23.0.0/src/gallium/drivers/llvmpipe/lp_setup_tri.c
===================================================================
--- mesa-23.0.0.orig/src/gallium/drivers/llvmpipe/lp_setup_tri.c
+++ mesa-23.0.0/src/gallium/drivers/llvmpipe/lp_setup_tri.c
@@ -46,7 +46,9 @@
#if DETECT_ARCH_SSE
#include <emmintrin.h>
#elif defined(_ARCH_PWR8) && UTIL_ARCH_LITTLE_ENDIAN
+#ifndef __cplusplus
#include <altivec.h>
+#endif
#include "util/u_pwr8.h"
#endif

View File

@@ -0,0 +1,13 @@
src/glx/dri2_glx.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/src/glx/dri2_glx.c
+++ b/src/glx/dri2_glx.c
@@ -1399,7 +1399,7 @@ dri2GetGlxDrawableFromXDrawableId(Displa
struct dri2_display *pdp = (struct dri2_display *) d->dri2Display;
__GLXDRIdrawable *pdraw;
- if (__glxHashLookup(pdp->dri2Hash, id, (void *) &pdraw) == 0)
+ if (pdp && __glxHashLookup(pdp->dri2Hash, id, (void *) &pdraw) == 0)
return pdraw;
return NULL;

View File

@@ -0,0 +1,15 @@
src/glx/dri2_glx.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: mesa-24.3.0-rc1/src/glx/dri2_glx.c
===================================================================
--- mesa-24.3.0-rc1.orig/src/glx/dri2_glx.c
+++ mesa-24.3.0-rc1/src/glx/dri2_glx.c
@@ -756,7 +756,7 @@ dri2GetGlxDrawableFromXDrawableId(Displa
struct glx_display *d = __glXInitialize(dpy);
__GLXDRIdrawable *pdraw;
- if (__glxHashLookup(d->dri2Hash, id, (void *) &pdraw) == 0)
+ if (d && __glxHashLookup(d->dri2Hash, id, (void *) &pdraw) == 0)
return pdraw;
return NULL;

View File

@@ -0,0 +1,33 @@
src/glx/glx_query.c | 13 +++++++++++++
1 file changed, 13 insertions(+)
Index: mesa-24.3.0-rc1/src/glx/glx_query.c
===================================================================
--- mesa-24.3.0-rc1.orig/src/glx/glx_query.c
+++ mesa-24.3.0-rc1/src/glx/glx_query.c
@@ -56,6 +56,13 @@ __glXQueryServerString(Display * dpy, CA
/* The spec doesn't mention this, but the Xorg server replies with
* a string already terminated with '\0'. */
uint32_t len = xcb_glx_query_server_string_string_length(reply);
+ /* Allow a max of 64kb string length */
+ size_t reply_len = strnlen(xcb_glx_query_server_string_string(reply), 64*1024);
+ if (reply_len + 1 != len)
+ {
+ free(reply);
+ return(NULL);
+ }
char *buf = malloc(len);
memcpy(buf, xcb_glx_query_server_string_string(reply), len);
free(reply);
@@ -83,6 +90,12 @@ __glXGetString(Display * dpy, CARD32 con
/* The spec doesn't mention this, but the Xorg server replies with
* a string already terminated with '\0'. */
uint32_t len = xcb_glx_get_string_string_length(reply);
+ size_t reply_len = strnlen(xcb_glx_get_string_string(reply), 64*1024);
+ if (reply_len + 1 != len)
+ {
+ free(reply);
+ return(NULL);
+ }
char *buf = malloc(len);
memcpy(buf, xcb_glx_get_string_string(reply), len);
free(reply);

View File

@@ -0,0 +1,15 @@
src/glx/glx_pbuffer.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: mesa-24.3.0-rc1/src/glx/glx_pbuffer.c
===================================================================
--- mesa-24.3.0-rc1.orig/src/glx/glx_pbuffer.c
+++ mesa-24.3.0-rc1/src/glx/glx_pbuffer.c
@@ -338,7 +338,7 @@ __glXGetDrawableAttribute(Display * dpy,
/* Search the set of returned attributes for the attribute requested by
* the caller.
*/
- for (i = 0; i < num_attributes; i++) {
+ for (i = 0; i < num_attributes && i * 2 + 1 < length; i++) {
if (data[i * 2] == attribute) {
found = 1;
*value = data[(i * 2) + 1];

BIN
unicode-ident-1.0.12.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.