From a4c040060c1afde47d19d187772b9dbabb4e8c1b Mon Sep 17 00:00:00 2001
From: Janne Grunau <janne-fdr@jannau.net>
Date: Feb 22 2025 08:12:59 +0000
Subject: [PATCH 1/6] Bump to asahi-20250221


---

diff --git a/mesa.spec b/mesa.spec
index 256f851..578894e 100644
--- a/mesa.spec
+++ b/mesa.spec
@@ -115,9 +115,9 @@
 
 %global vulkan_drivers swrast%{?base_vulkan}%{?asahi_platform_vulkan}%{?intel_platform_vulkan}%{?extra_platform_vulkan}%{?with_nvk:,nouveau}
 
-%global asahi_mesa_ver 20241211
+%global asahi_mesa_ver 20250221
 %global git_tag asahi-%{asahi_mesa_ver}
-%global basever 25.0.0
+%global basever 25.1.0
 %global ver %{basever}-asahipre%{asahi_mesa_ver}
 
 
diff --git a/rpkg.conf b/rpkg.conf
index 58b1e93..becf206 100644
--- a/rpkg.conf
+++ b/rpkg.conf
@@ -1,2 +1,2 @@
 [lookaside]
-download_url = https://gitlab.freedesktop.org/asahi/mesa/-/archive/asahi-20241211/%(filename)s
+download_url = https://gitlab.freedesktop.org/asahi/mesa/-/archive/asahi-20250221/%(filename)s
diff --git a/sources b/sources
index b60e414..4a08cfe 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (mesa-asahi-20241211.tar.gz) = 3cffd24548a3303ad318f6ddf9a39d908c503090b1dcc389e4636565e27cdc69a7da28781d59bda092a07918863ac1938f34232b1554545ec5996cbcccaadab2
+SHA512 (mesa-asahi-20250221.tar.gz) = 2d2070582a2a5be90bbc437a51106aa677c191717877150e1351f714dd140a698326149b140f25216e8071202dba7a99cbda40299e9414f40b6ae01e41289d89

From 84151e0f4ac35e3aff54bfb58cebdf10d2f651fe Mon Sep 17 00:00:00 2001
From: Janne Grunau <janne-fdr@jannau.net>
Date: Feb 22 2025 08:53:37 +0000
Subject: [PATCH 2/6] Revert "Use spirv-llvm-translator18 on F41+"


This reverts commit cd235a6a03b69344f210d5db0dc3918f76abcb89.

---

diff --git a/mesa.spec b/mesa.spec
index 578894e..265293f 100644
--- a/mesa.spec
+++ b/mesa.spec
@@ -108,11 +108,6 @@
 %bcond_with valgrind
 %endif
 
-%if (0%{?fedora} && 0%{?fedora} >= 41)
-%global llvm_compat 18
-%global spirv_ver < 19
-%endif
-
 %global vulkan_drivers swrast%{?base_vulkan}%{?asahi_platform_vulkan}%{?intel_platform_vulkan}%{?extra_platform_vulkan}%{?with_nvk:,nouveau}
 
 %global asahi_mesa_ver 20250221
@@ -191,17 +186,17 @@ BuildRequires:  pkgconfig(libva) >= 0.38.0
 %endif
 BuildRequires:  pkgconfig(libelf)
 BuildRequires:  pkgconfig(libglvnd) >= 1.3.2
-BuildRequires:  llvm%{?llvm_compat}-devel >= 7.0.0
+BuildRequires:  llvm-devel >= 7.0.0
 %if 0%{?with_teflon}
 BuildRequires:  flatbuffers-devel
 BuildRequires:  flatbuffers-compiler
 BuildRequires:  xtensor-devel
 %endif
 %if 0%{?with_opencl} || 0%{?with_rusticl} || 0%{?with_asahi} || 0%{?with_nvk} || 0%{?with_intel_clc}
-BuildRequires:  clang%{?llvm_compat}-devel
+BuildRequires:  clang-devel
 BuildRequires:  pkgconfig(libclc)
 BuildRequires:  pkgconfig(SPIRV-Tools)
-BuildRequires:  pkgconfig(LLVMSPIRVLib) %{?spirv_ver}
+BuildRequires:  pkgconfig(LLVMSPIRVLib)
 %endif
 %if 0%{?with_rusticl} || 0%{?with_nvk}
 BuildRequires:  bindgen
@@ -479,10 +474,6 @@ export MESON_PACKAGE_CACHE_DIR="%{cargo_registry}/"
 # Disable LTO for now
 %define _lto_cflags %{nil}
 
-%if 0%{?llvm_compat}
-export LLVM_CONFIG=llvm-config-%{?llvm_compat}
-%endif
-
 %meson \
   -Dplatforms=x11,wayland \
   -Dosmesa=true \

From 407f5ce6cdb6bf22a9d5a371dc710886aac830f8 Mon Sep 17 00:00:00 2001
From: Janne Grunau <janne-fdr@jannau.net>
Date: Feb 22 2025 10:48:38 +0000
Subject: [PATCH 3/6] Drop glapi subpacke/library as it does not exists anymore


Adapted from Fedora's commit 6a1901d ("Update to 25.0.0-rc2").

---

diff --git a/mesa.spec b/mesa.spec
index 265293f..97cb15b 100644
--- a/mesa.spec
+++ b/mesa.spec
@@ -241,7 +241,6 @@ Obsoletes:      mesa-omx-drivers < %{?epoch:%{epoch}:}%{version}-%{release}
 
 %package libGL
 Summary:        Mesa libGL runtime libraries
-Requires:       %{name}-libglapi%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
 Requires:       libglvnd-glx%{?_isa} >= 1:1.3.2
 Recommends:     %{name}-dri-drivers%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
 
@@ -263,7 +262,6 @@ Recommends:     gl-manpages
 Summary:        Mesa libEGL runtime libraries
 Requires:       libglvnd-egl%{?_isa} >= 1:1.3.2
 Requires:       %{name}-libgbm%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
-Requires:       %{name}-libglapi%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
 Recommends:     %{name}-dri-drivers%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
 
 %description libEGL
@@ -283,7 +281,6 @@ Provides:       libEGL-devel%{?_isa}
 %package dri-drivers
 Summary:        Mesa-based DRI drivers
 Requires:       %{name}-filesystem%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
-Requires:       %{name}-libglapi%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
 %if 0%{?with_va}
 Recommends:     %{name}-va-drivers%{?_isa}
 %endif
@@ -312,7 +309,6 @@ Requires:       %{name}-filesystem%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{rel
 
 %package libOSMesa
 Summary:        Mesa offscreen rendering libraries
-Requires:       %{name}-libglapi%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
 Provides:       libOSMesa
 Provides:       libOSMesa%{?_isa}
 
@@ -367,18 +363,6 @@ Provides:       libxatracker-devel%{?_isa}
 %{summary}.
 %endif
 
-%package libglapi
-Summary:        Mesa shared glapi
-Provides:       libglapi
-Provides:       libglapi%{?_isa}
-# If mesa-dri-drivers are installed, they must match in version. This is here to prevent using
-# older mesa-dri-drivers together with a newer mesa-libglapi or its dependants.
-# See https://bugzilla.redhat.com/show_bug.cgi?id=2193135 .
-Requires:       (%{name}-dri-drivers%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} if %{name}-dri-drivers%{?_isa})
-
-%description libglapi
-%{summary}.
-
 %if 0%{?with_opencl}
 %package libOpenCL
 Summary:        Mesa OpenCL runtime library
@@ -566,11 +550,9 @@ ln -s ovl_dri "fexov/%{_libdir}/dri"
 %dnl GL/EGL ----------------------------
 install -Dpm0755 -s -t "fexov/%{_libdir}/" \
   %{buildroot}%{_libdir}/libEGL_mesa.so.0.0.0 \
-  %{buildroot}%{_libdir}/libGLX_mesa.so.0.0.0 \
-  %{buildroot}%{_libdir}/libglapi.so.0.0.0
+  %{buildroot}%{_libdir}/libGLX_mesa.so.0.0.0
 ln -s libEGL_mesa.so.0.0.0 "fexov/%{_libdir}/libEGL_mesa.so.0"
 ln -s libGLX_mesa.so.0.0.0 "fexov/%{_libdir}/libGLX_mesa.so.0"
-ln -s libglapi.so.0.0.0 "fexov/%{_libdir}/libglapi.so.0"
 ln -s libGLX_mesa.so.0 "fexov/%{_libdir}/libGLX_system.so.0"
 
 %dnl OpenCL ----------------------------
@@ -652,7 +634,6 @@ install -Dpm0644 -t %{buildroot}%{_datadir}/fex-emu/overlays/ mesa-%{_arch}.erof
 %dir %{_includedir}/GL/internal
 %{_includedir}/GL/internal/dri_interface.h
 %{_libdir}/pkgconfig/dri.pc
-%{_libdir}/libglapi.so
 
 %files libEGL
 %{_datadir}/glvnd/egl_vendor.d/50_mesa.json
@@ -662,10 +643,6 @@ install -Dpm0644 -t %{buildroot}%{_datadir}/fex-emu/overlays/ mesa-%{_arch}.erof
 %{_includedir}/EGL/eglext_angle.h
 %{_includedir}/EGL/eglmesaext.h
 
-%files libglapi
-%{_libdir}/libglapi.so.0
-%{_libdir}/libglapi.so.0.*
-
 %files libOSMesa
 %{_libdir}/libOSMesa.so.8*
 %files libOSMesa-devel

From 4818e8e052d0a205c04f8d48065e79e40aa64de3 Mon Sep 17 00:00:00 2001
From: José Expósito <jexposit@redhat.com>
Date: Feb 22 2025 10:48:38 +0000
Subject: [PATCH 4/6] Obsolete package libglapi


In mesa 25.0 libglapi.*.so (shared-glapi) is merged into libgallium.*.so
and exported from it for libGL and libEGL:
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32789

Obsolete the libglapi package. Since libgallium.*.so is provided by
mesa-dri-drivers, add the obsoletes there.

---

diff --git a/mesa.spec b/mesa.spec
index 97cb15b..e226427 100644
--- a/mesa.spec
+++ b/mesa.spec
@@ -284,6 +284,7 @@ Requires:       %{name}-filesystem%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{rel
 %if 0%{?with_va}
 Recommends:     %{name}-va-drivers%{?_isa}
 %endif
+Obsoletes:      %{name}-libglapi < 25.0.0~rc2-1
 
 %description dri-drivers
 %{summary}.

From 409746e828ae912bf0eecf37f22f17b9fe5e397d Mon Sep 17 00:00:00 2001
From: José Expósito <jexposit@redhat.com>
Date: Feb 22 2025 10:48:38 +0000
Subject: [PATCH 5/6] Require mesa-dri-drivers from libGL and libEGL


In mesa 25.0 libglapi.*.so (shared-glapi) is merged into libgallium.*.so
and exported from it for libGL and libEGL:
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32789

Meaning that libGLX_mesa.so.0*:

    $ ldd libGLX_mesa.so | grep libgallium
    libgallium-25.1.0-devel.so => not found

And libEGL_mesa.so.0*:

    $ ldd libEGL_mesa.so | grep libgallium
    libgallium-25.1.0-devel.so => not found

Need libgallium-*.so, provided by mesa-dri-drivers.

Add a "Requires" to make sure the package is present.

---

diff --git a/mesa.spec b/mesa.spec
index e226427..7000be1 100644
--- a/mesa.spec
+++ b/mesa.spec
@@ -242,7 +242,7 @@ Obsoletes:      mesa-omx-drivers < %{?epoch:%{epoch}:}%{version}-%{release}
 %package libGL
 Summary:        Mesa libGL runtime libraries
 Requires:       libglvnd-glx%{?_isa} >= 1:1.3.2
-Recommends:     %{name}-dri-drivers%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
+Requires:       %{name}-dri-drivers%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
 
 %description libGL
 %{summary}.
@@ -262,7 +262,7 @@ Recommends:     gl-manpages
 Summary:        Mesa libEGL runtime libraries
 Requires:       libglvnd-egl%{?_isa} >= 1:1.3.2
 Requires:       %{name}-libgbm%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
-Recommends:     %{name}-dri-drivers%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
+Requires:       %{name}-dri-drivers%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
 
 %description libEGL
 %{summary}.

From f85292cf1009a64467eb5aa850d5ba54be737c48 Mon Sep 17 00:00:00 2001
From: Janne Grunau <janne-fdr@jannau.net>
Date: Feb 22 2025 11:11:03 +0000
Subject: [PATCH 6/6] Revert "Bundle libLLVMSPIRVLib with the mesa erofs"


This reverts commit dfdaaeb900f8a1a855650f41396f6004f0544c22.

---

diff --git a/mesa.spec b/mesa.spec
index 7000be1..f584b7a 100644
--- a/mesa.spec
+++ b/mesa.spec
@@ -424,7 +424,6 @@ Requires:       fex-emu
 Supplements:    fex-emu-rootfs-fedora
 Provides:       fex-emu-overlay(%{_arch})(mesa) = %{version}-%{release}
 Provides:       bundled(mesa) = %{version}-%{release}
-License:        MIT AND BSD-3-Clause AND SGI-B-2.0 AND NCSA
 
 %description fex-emu-overlay-%{_arch}
 Mesa EGL/GL libraries and Gallium/OpenCL/Vulkan drivers for FEX-emu roots file system images.
@@ -586,20 +585,12 @@ install -Dpm0755 -s -t "fexov/%{_libdir}/" \
   %{buildroot}%{_libdir}/libgbm.so.1.0.0
 install -Dpm0755 -s -t "fexov/%{_libdir}/gbm/" \
   %{buildroot}%{_libdir}/gbm/dri_gbm.so
-
 %dnl glvnd  ----------------------------
 install -Dpm0644 -t "fexov/%{_datadir}/glvnd/ovl_egl_vendor.d/" \
   %{buildroot}%{_datadir}/glvnd/egl_vendor.d/50_mesa.json
 ln -s ovl_egl_vendor.d "fexov/%{_datadir}/glvnd/egl_vendor.d"
 
-%dnl deps   ----------------------------
-# Ship this with the mesa erofs since it needs to work with the rawhide
-# rootfs and spirv-llvm-translator is not packaged for compat.
-# Make sure to remove the License: override for the subpackage
-# if this gets removed.
 %if 0%{?with_rusticl}
-install -Dpm0755 -s -t "fexov/%{_libdir}/" \
-  %{_libdir}/libLLVMSPIRVLib.so.18.1
 %endif
 
 # Hack to work around libcapsule bug:

