X-Git-Url: https://git.pld-linux.org/?a=blobdiff_plain;f=Mesa.spec;h=c36db4b13099377585b7446b0c316800d87cb70f;hb=1afde4c028e4c0664f2e04d90c904b3d3056cc7d;hp=298c3d18b057deb934d05b84311a4ea38dc418dc;hpb=aa132af071343d9857323a6009b0cdb719772789;p=packages%2FMesa.git
diff --git a/Mesa.spec b/Mesa.spec
index 298c3d1..c36db4b 100644
--- a/Mesa.spec
+++ b/Mesa.spec
@@ -5,32 +5,36 @@
%bcond_with gallium_i915 # gallium i915 driver instead of dri i915 driver
%bcond_without gallium_nouveau # gallium nouveau driver
%bcond_without gallium_radeon # gallium radeon drivers
+%bcond_without gallium_zink # gallium zink driver (based on vulkan)
%bcond_without egl # EGL libraries
%bcond_without gbm # Graphics Buffer Manager
%bcond_without nine # Nine Direct3D 9+ state tracker (for Wine)
%bcond_without opencl # OpenCL support
+%bcond_without opencl_spirv # OpenCL SPIRV support
%bcond_without ocl_icd # OpenCL as ICD (installable client driver)
%bcond_with glvnd # OpenGL vendor neutral dispatcher support
%bcond_without omx # OpenMAX (Bellagio OMXIL) support
%bcond_without va # VA library
%bcond_without wayland # Wayland EGL
%bcond_without xa # XA state tracker (for vmwgfx xorg driver)
+%bcond_without radv # disable build of the radeon Vulkan driver
+%bcond_with swr # OpenSWR software rasterizer (x86 SIMD only; due to broken design
+ # propagates AVX code over Gallium DRI megadriver, swrast pipe driver and libOSMesa)
%bcond_with hud_extra # HUD block/NIC I/O HUD stats support
%bcond_with lm_sensors # HUD lm_sensors support
%bcond_with tests # tests
-%bcond_without radv # disable build of the radeon Vulkan driver
#
# glapi version (glapi tables in dri drivers and libglx must be in sync);
# set to current Mesa version on ABI break, when xserver tables get regenerated
# (until they start to be somehow versioned themselves)
%define glapi_ver 7.1.0
# other packages
-%define libdrm_ver 2.4.97
+%define libdrm_ver 2.4.100
%define dri2proto_ver 2.8
%define glproto_ver 1.4.14
%define zlib_ver 1.2.8
%define wayland_ver 1.11
-%define llvm_ver 7.0.0
+%define llvm_ver 8.0.0
%define gcc_ver 6:4.8.0
%if %{without gallium}
@@ -40,6 +44,7 @@
%undefine with_nine
%undefine with_omx
%undefine with_opencl
+%undefine with_swr
%undefine with_xa
%endif
@@ -52,39 +57,51 @@
%undefine with_ocl_icd
%endif
+%ifnarch %{ix86} %{x8664} x32
+%undefine with_swr
+%endif
+
+%if %{with gallium_radeon} || %{with gallium_nouveau}
+%define with_vdpau 1
+%define with_xvmc 1
+%endif
+
Summary: Free OpenGL implementation
Summary(pl.UTF-8): WolnodostÄpna implementacja standardu OpenGL
Name: Mesa
-Version: 19.1.6
-Release: 1
+Version: 20.0.7
+Release: 2
License: MIT (core) and others - see license.html file
Group: X11/Libraries
#Source0: ftp://ftp.freedesktop.org/pub/mesa/mesa-%{version}.tar.xz
## Source0-md5: 7c61a801311fb8d2f7b3cceb7b5cf308
Source0: https://gitlab.freedesktop.org/mesa/mesa/-/archive/mesa-%{version}/mesa-mesa-%{version}.tar.bz2
-# Source0-md5: 090aae399f31f7518f44be4a93a5f4b7
+# Source0-md5: 1939a279f9683a4ca6573872ed77a070
Patch0: nouveau_no_rtti.patch
Patch1: i9x5-tex-ignore-the-diff-between-GL_TEXTURE_2D-and-GL_TEXTURE_RECTANGLE.patch
-Patch2: bug111552.patch
+Patch2: llvm10.patch
+Patch3: gcc10.patch
URL: http://www.mesa3d.org/
+%{?with_opencl_spirv:BuildRequires: SPIRV-LLVM-Translator-devel >= 0.2.1}
+%{?with_gallium_zink:BuildRequires: Vulkan-Loader-devel}
%{?with_opencl:BuildRequires: clang-devel >= %{llvm_ver}}
BuildRequires: elfutils-devel
BuildRequires: expat-devel >= 1.95
BuildRequires: gcc >= %{gcc_ver}
BuildRequires: libdrm-devel >= %{libdrm_ver}
-%{?with_glvnd:BuildRequires: libglvnd-devel >= 0.2.0}
+%{?with_glvnd:BuildRequires: libglvnd-devel >= 1.2.0}
BuildRequires: libselinux-devel
BuildRequires: libstdc++-devel >= %{gcc_ver}
BuildRequires: libunwind-devel
%{?with_va:BuildRequires: libva-devel}
%{?with_va:BuildRequires: pkgconfig(libva) >= 0.39.0}
-BuildRequires: libvdpau-devel >= 1.1
+%{?with_vdpau:BuildRequires: libvdpau-devel >= 1.1}
BuildRequires: libxcb-devel >= 1.13
%{?with_gallium:BuildRequires: llvm-devel >= %{llvm_ver}}
%{?with_radv:BuildRequires: llvm-devel >= %{llvm_ver}}
%{?with_opencl:BuildRequires: llvm-libclc}
%{?with_omx:BuildRequires: libomxil-bellagio-devel}
-BuildRequires: meson >= 0.46
+BuildRequires: meson >= 0.51
BuildRequires: ninja >= 1.5
BuildRequires: pkgconfig
BuildRequires: pkgconfig(talloc) >= 2.0.1
@@ -93,10 +110,11 @@ BuildRequires: pkgconfig(xcb-dri3) >= 1.13
BuildRequires: pkgconfig(xcb-glx) >= 1.8.1
BuildRequires: pkgconfig(xcb-present) >= 1.13
BuildRequires: pkgconfig(xcb-randr) >= 1.12
-BuildRequires: python3
+BuildRequires: python3 >= 1:3.2
BuildRequires: python3-Mako >= 0.8.0
BuildRequires: rpmbuild(macros) >= 1.470
BuildRequires: sed >= 4.0
+%{?with_opencl_spirv:BuildRequires: spirv-tools-devel >= 2018.0}
# wayland-{client,server}
%{?with_wayland:BuildRequires: wayland-devel >= %{wayland_ver}}
%{?with_wayland:BuildRequires: wayland-protocols >= 1.8}
@@ -105,7 +123,8 @@ BuildRequires: xorg-lib-libXdamage-devel >= 1.1
BuildRequires: xorg-lib-libXext-devel >= 1.0.5
BuildRequires: xorg-lib-libXfixes-devel
BuildRequires: xorg-lib-libXrandr-devel >= 1.3
-BuildRequires: xorg-lib-libXvMC-devel >= 1.0.6
+BuildRequires: xorg-lib-libXv-devel
+%{?with_xvmc:BuildRequires: xorg-lib-libXvMC-devel >= 1.0.6}
BuildRequires: xorg-lib-libXxf86vm-devel
BuildRequires: xorg-lib-libxshmfence-devel >= 1.1
BuildRequires: xorg-proto-dri2proto-devel >= %{dri2proto_ver}
@@ -114,6 +133,7 @@ BuildRequires: xorg-proto-glproto-devel >= %{glproto_ver}
%{?with_lm_sensors:BuildRequires: lm_sensors-devel}
%endif
BuildRequires: zlib-devel >= %{zlib_ver}
+BuildRequires: zstd-devel
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
# libGLESv1_CM, libGLESv2, libGL, libOSMesa:
@@ -177,7 +197,9 @@ Requires: xorg-lib-libXfixes-devel
Requires: xorg-lib-libXxf86vm-devel
Requires: xorg-proto-dri2proto-devel >= %{dri2proto_ver}
Requires: xorg-proto-glproto-devel >= %{glproto_ver}
+%if %{without glvnd}
Provides: EGL-devel = 1.5
+%endif
%description libEGL-devel
Header files for Mesa implementation of EGL library.
@@ -208,7 +230,7 @@ Requires: %{name}-libglapi = %{version}-%{release}
Requires: libdrm >= %{libdrm_ver}
Requires: libxcb >= 1.13
Requires: xorg-lib-libXdamage >= 1.1
-Provides: OpenGL = 4.5
+Provides: OpenGL = 4.6
Provides: OpenGL-GLX = 1.4
Obsoletes: Mesa
Obsoletes: Mesa-dri
@@ -224,7 +246,7 @@ Silicon Graphics, Inc. However, the author does not possess an OpenGL
license from SGI, and makes no claim that Mesa is in any way a
compatible replacement for OpenGL or associated with SGI.
-This package contains libGL which implements OpenGL 4.5 and GLX 1.4
+This package contains libGL which implements OpenGL 4.6 and GLX 1.4
specifications. It uses DRI for rendering.
%description libGL -l pl.UTF-8
@@ -234,7 +256,7 @@ autoryzacjÄ
Silicon Graphics, Inc. Jednak autor nie posiada licencji
OpenGL od SGI i nie twierdzi, że Mesa jest kompatybilnym zamiennikiem
OpenGL ani powiÄ
zana z SGI.
-Ten pakiet zawiera libGL implementujÄ
cÄ
specyfikacje OpenGL 4.5 oraz
+Ten pakiet zawiera libGL implementujÄ
cÄ
specyfikacje OpenGL 4.6 oraz
GLX 1.4. Używa DRI do renderowania.
%package libGL-devel
@@ -252,8 +274,10 @@ Requires: xorg-lib-libXxf86vm-devel
Requires: xorg-proto-dri2proto-devel >= %{dri2proto_ver}
Requires: xorg-proto-glproto-devel >= %{glproto_ver}
Suggests: OpenGL-doc-man
+%if %{without glvnd}
Provides: OpenGL-GLX-devel = 1.4
-Provides: OpenGL-devel = 4.5
+Provides: OpenGL-devel = 4.6
+%endif
Obsoletes: Mesa-devel
Obsoletes: X11-OpenGL-devel < 1:7.0.0
Obsoletes: X11-OpenGL-devel-base < 1:7.0.0
@@ -272,7 +296,7 @@ Summary(pl.UTF-8): Statyczna biblioteka libGL z projektu Mesa3D
License: MIT
Group: X11/Development/Libraries
Requires: %{name}-libGL-devel = %{version}-%{release}
-Provides: OpenGL-static = 4.5
+Provides: OpenGL-static = 4.6
Obsoletes: Mesa-static
Obsoletes: X11-OpenGL-static < 1:7.0.0
Obsoletes: XFree86-OpenGL-static < 1:7.0.0
@@ -299,7 +323,7 @@ This package contains shared libraries of Mesa implementation of GLES
(OpenGL ES) - cross-platform API for full-function 2D and 3D graphics
on embedded systems. OpenGL ES specification can be found on Khronos
Group site: . Mesa implements OpenGL
-ES 1.1 and 2.0.
+ES 1.1 and 2.0/3.2.
%description libGLES -l pl.UTF-8
Ten pakiet zawiera biblioteki wspóÅdzielone implementacji Mesa
@@ -307,7 +331,7 @@ standardu GLES (OpenGL ES) - wieloplatformowego API do w peÅni
funkcjonalnej grafiki 2D i 3D na systemach wbudowanych. SpecyfikacjÄ
OpenGL ES można znaleÅºÄ na stronie Khronos Group:
. Mesa zawiera implementacjÄ
OpenGL
-ES 1.1 i 2.0.
+ES 1.1 i 2.0/3.2.
%package libGLES-devel
Summary: Header files for Mesa GLES libraries
@@ -317,10 +341,12 @@ Requires: %{name}-khrplatform-devel = %{version}-%{release}
# for
Requires: %{name}-libEGL-devel = %{version}-%{release}
Requires: %{name}-libGLES = %{version}-%{release}
+%if %{without glvnd}
Provides: OpenGLES-devel
Provides: OpenGLESv1-devel = 1.1
Provides: OpenGLESv2-devel = 2.0
Provides: OpenGLESv3-devel = 3.2
+%endif
%description libGLES-devel
Header files for Mesa GLES libraries.
@@ -333,6 +359,7 @@ Summary: OSMesa (off-screen renderer) library
Summary(pl.UTF-8): Biblioteka OSMesa (renderujÄ
ca bitmapy w pamiÄci)
License: MIT
Group: Libraries
+%{?with_swr:Requires: cpuinfo(avx)}
Requires: zlib >= %{zlib_ver}
%description libOSMesa
@@ -656,6 +683,7 @@ Summary: X.org DRI driver for ATI R300 card family
Summary(pl.UTF-8): Sterownik X.org DRI dla rodziny kart ATI R300
License: MIT
Group: X11/Libraries
+%{?with_swr:Requires: cpuinfo(avx)}
Requires: xorg-driver-video-ati
Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
Requires: xorg-xserver-server >= %{xserver_ver}
@@ -681,6 +709,7 @@ Summary: X.org DRI driver for ATI R600 card family
Summary(pl.UTF-8): Sterownik X.org DRI dla rodziny kart ATI R600
License: MIT
Group: X11/Libraries
+%{?with_swr:Requires: cpuinfo(avx)}
Requires: radeon-ucode
Requires: xorg-driver-video-ati
Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
@@ -706,6 +735,7 @@ Summary: X.org DRI driver for ATI Southern Islands card family
Summary(pl.UTF-8): Sterownik X.org DRI dla rodziny kart ATI Southern Islands
License: MIT
Group: X11/Libraries
+%{?with_swr:Requires: cpuinfo(avx)}
Requires: radeon-ucode
Requires: xorg-driver-video-ati
Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
@@ -729,6 +759,7 @@ Summary: X.org DRI driver for Vivante 3D chips
Summary(pl.UTF-8): Sterownik X.org DRI dla ukÅadów Vivante 3D
License: MIT
Group: X11/Libraries
+%{?with_swr:Requires: cpuinfo(avx)}
#Requires: xorg-driver-video-?
Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
Requires: xorg-xserver-server >= %{xserver_ver}
@@ -745,6 +776,7 @@ Summary: X.org DRI driver for Adreno chips
Summary(pl.UTF-8): Sterownik X.org DRI dla ukÅadów Adreno
License: MIT
Group: X11/Libraries
+%{?with_swr:Requires: cpuinfo(avx)}
Requires: xorg-driver-video-freedreno
Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
Requires: xorg-xserver-server >= %{xserver_ver}
@@ -761,6 +793,9 @@ Summary: X.org DRI driver for Intel i915 card family
Summary(pl.UTF-8): Sterownik X.org DRI dla rodziny kart Intel i915
License: MIT
Group: X11/Libraries
+%if %{with gallium_i915}
+%{?with_swr:Requires: cpuinfo(avx)}
+%endif
Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
Requires: xorg-xserver-server >= %{xserver_ver}
Requires: zlib >= %{zlib_ver}
@@ -807,6 +842,7 @@ Summary: X.org DRI driver for Intel Iris (Gen8+) card family
Summary(pl.UTF-8): Sterownik X.org DRI dla rodziny kart Intel Iris (Gen8+)
License: MIT
Group: X11/Libraries
+%{?with_swr:Requires: cpuinfo(avx)}
Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
Requires: xorg-xserver-server >= %{xserver_ver}
Requires: zlib >= %{zlib_ver}
@@ -826,6 +862,7 @@ Summary: X.org Gallium DRI driver using KMS Render-Only architecture
Summary(pl.UTF-8): Sterownik X.org DRI Gallium wykorzystujÄ
cy architekturÄ KMS Render-Only
License: MIT
Group: X11/Libraries
+%{?with_swr:Requires: cpuinfo(avx)}
#Requires: xorg-driver-video-?
Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
Requires: xorg-xserver-server >= %{xserver_ver}
@@ -843,6 +880,7 @@ Summary: X.org DRI driver for Mali Utgard chips
Summary(pl.UTF-8): Sterownik X.org DRI dla ukÅadów Mali Utgard
License: MIT
Group: X11/Libraries
+%{?with_swr:Requires: cpuinfo(avx)}
#Requires: xorg-driver-video-???
Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
Requires: xorg-xserver-server >= %{xserver_ver}
@@ -859,6 +897,9 @@ Summary: X.org DRI driver for NVIDIA card family
Summary(pl.UTF-8): Sterownik X.org DRI dla rodziny kart NVIDIA
License: MIT
Group: X11/Libraries
+%if %{with gallium_nouveau}
+%{?with_swr:Requires: cpuinfo(avx)}
+%endif
Requires: xorg-driver-video-nouveau
Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
Requires: xorg-xserver-server >= %{xserver_ver}
@@ -875,6 +916,7 @@ Summary: X.org DRI driver for Mali Midgard/Bifrost chips
Summary(pl.UTF-8): Sterownik X.org DRI dla ukÅadów Mali Midgard/Bifrost
License: MIT
Group: X11/Libraries
+%{?with_swr:Requires: cpuinfo(avx)}
#Requires: xorg-driver-video-???
Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
Requires: xorg-xserver-server >= %{xserver_ver}
@@ -891,6 +933,7 @@ Summary: X.org DRI software rasterizer driver
Summary(pl.UTF-8): Sterownik X.org DRI obsÅugujÄ
cy rysowanie programowe
License: MIT
Group: X11/Libraries
+%{?with_swr:Requires: cpuinfo(avx)}
Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
Requires: xorg-xserver-server >= %{xserver_ver}
Requires: zlib >= %{zlib_ver}
@@ -906,6 +949,7 @@ Summary: X.org DRI driver for Tegra SoC chips
Summary(pl.UTF-8): Sterownik X.org DRI dla ukÅadów SoC Tegra
License: MIT
Group: X11/Libraries
+%{?with_swr:Requires: cpuinfo(avx)}
#Requires: xorg-driver-video-???
Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
Requires: xorg-xserver-server >= %{xserver_ver}
@@ -922,6 +966,7 @@ Summary: X.org DRI driver for Broadcom VC5 chips
Summary(pl.UTF-8): Sterownik X.org DRI dla ukÅadów Broadcom VC5
License: MIT
Group: X11/Libraries
+%{?with_swr:Requires: cpuinfo(avx)}
Requires: xorg-driver-video-modesetting
Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
Requires: xorg-xserver-server >= %{xserver_ver}
@@ -938,6 +983,7 @@ Summary: X.org DRI driver for Broadcom VC4 chips
Summary(pl.UTF-8): Sterownik X.org DRI dla ukÅadów Broadcom VC4
License: MIT
Group: X11/Libraries
+%{?with_swr:Requires: cpuinfo(avx)}
Requires: xorg-driver-video-modesetting
Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
Requires: xorg-xserver-server >= %{xserver_ver}
@@ -954,31 +1000,48 @@ Summary: X.org DRI driver for QEMU VirGL
Summary(pl.UTF-8): Sterownik X.org DRI dla QEMU VirGL
License: MIT
Group: X11/Libraries
+%{?with_swr:Requires: cpuinfo(avx)}
Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
Requires: xorg-xserver-server >= %{xserver_ver}
Requires: zlib >= %{zlib_ver}
%description dri-driver-virgl
-X.org DRI driver for QEMU VirGL.
+X.org Gallium DRI driver for QEMU VirGL.
%description dri-driver-virgl -l pl.UTF-8
-Sterownik X.org DRI dla QEMU VirGL.
+Sterownik X.org DRI Gallium dla QEMU VirGL.
%package dri-driver-vmwgfx
Summary: X.org DRI driver for VMware
Summary(pl.UTF-8): Sterownik X.org DRI dla VMware
License: MIT
Group: X11/Libraries
+%{?with_swr:Requires: cpuinfo(avx)}
Requires: xorg-driver-video-vmware
Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
Requires: xorg-xserver-server >= %{xserver_ver}
Requires: zlib >= %{zlib_ver}
%description dri-driver-vmwgfx
-X.org DRI driver for VMWare.
+X.org Gallium DRI driver for VMWare.
%description dri-driver-vmwgfx -l pl.UTF-8
-Sterownik X.org DRI dla VMware.
+Sterownik X.org DRI Gallium dla VMware.
+
+%package dri-driver-zink
+Summary: X.org DRI driver based on Vulkan
+Summary(pl.UTF-8): Sterownik X.org DRI oparty na Vulkanie
+License: MIT
+Group: X11/Libraries
+Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
+Requires: xorg-xserver-server >= %{xserver_ver}
+Requires: zlib >= %{zlib_ver}
+
+%description dri-driver-zink
+X.org Gallium DRI driver based on Vulkan.
+
+%description dri-driver-zink -l pl.UTF-8
+Sterownik X.org DRI Gallium oparty na Vulkanie.
%package pipe-driver-i915
Summary: i915 driver for Mesa Gallium dynamic pipe loader
@@ -1083,6 +1146,7 @@ Southern Islands.
Summary: Software (swrast) driver for Mesa Gallium dynamic pipe loader
Summary(pl.UTF-8): Sterownik programowy (swrast) dla dynamicznego systemu potoków szkieletu Mesa Gallium
Group: Libraries
+%{?with_swr:Requires: cpuinfo(avx)}
Requires: zlib >= %{zlib_ver}
Obsoletes: Mesa-gbm-driver-swrast
Obsoletes: Mesa-opencl-driver-swrast
@@ -1304,9 +1368,9 @@ radv - eksperymentalny sterownik Vulkan dla GPU firmy AMD.
%patch0 -p1
%patch1 -p1
%patch2 -p1
+%patch3 -p1
%build
-
%if %{with opencl}
if [ "$(llvm-config --has-rtti)" != "YES" ] ; then
echo "Clover (gallium OpenCL) requires LLVM with RTTI!"
@@ -1325,9 +1389,9 @@ i965 %{!?with_gallium_i915:i915} \
dri_drivers=$(echo $dri_drivers | xargs | tr ' ' ',')
-gallium_drivers="virgl swrast \
+gallium_drivers="virgl swrast %{?with_gallium_zink:zink} \
%ifarch %{ix86} %{x8664} x32
-svga iris swr %{?with_gallium_i915:i915} \
+svga iris %{?with_swr:swr} %{?with_gallium_i915:i915} \
%endif
%if %{with gallium_radeon}
r300 r600 radeonsi \
@@ -1341,7 +1405,7 @@ freedreno \
kmsro \
lima \
panfrost \
-tegra \
+%{?with_gallium_nouveau:tegra} \
v3d \
vc4 \
%endif
@@ -1358,7 +1422,7 @@ intel \
vulkan_drivers=$(echo $vulkan_drivers | xargs | tr ' ' ',')
%meson build \
- -Dplatforms=x11,drm,%{?with_wayland:,wayland},surfaceless \
+ -Dplatforms=x11,drm%{?with_wayland:,wayland},surfaceless \
-Ddri3=true \
-Ddri-drivers=${dri_drivers} \
-Ddri-drivers-path=%{_libdir}/xorg/modules/dri \
@@ -1377,13 +1441,14 @@ vulkan_drivers=$(echo $vulkan_drivers | xargs | tr ' ' ',')
-Dgallium-opencl=disabled \
%endif
-Dgallium-va=%{?with_va:true}%{!?with_va:false} \
- -Dgallium-vdpau=true \
- -Dgallium-xvmc=true \
+ %{?with_vdpau:-Dgallium-vdpau=true} \
+ %{?with_xvmc:-Dgallium-xvmc=true} \
-Dgallium-xa=%{?with_xa:true}%{!?with_xa:false} \
-Dgbm=%{?with_gbm:true}%{!?with_gbm:false} \
-Dglvnd=%{?with_glvnd:true}%{!?with_glvnd:false} \
-Dlibunwind=true \
-Dlmsensors=%{?with_lm_sensors:true}%{!?with_lm_sensors:false} \
+ %{?with_opencl_spirv:-Dopencl-spirv=true} \
-Dosmesa=%{?with_gallium:gallium}%{!?with_gallium:classic} \
-Dselinux=true \
-Dva-libs-path=%{_libdir}/libva/dri \
@@ -1458,15 +1523,15 @@ rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_libdir}/libEGL_mesa.so
%else
%attr(755,root,root) %{_libdir}/libEGL.so
-%endif
%dir %{_includedir}/EGL
%{_includedir}/EGL/egl.h
%{_includedir}/EGL/eglext.h
-%{_includedir}/EGL/eglextchromium.h
-%{_includedir}/EGL/eglmesaext.h
%{_includedir}/EGL/eglplatform.h
%{_pkgconfigdir}/egl.pc
%endif
+%{_includedir}/EGL/eglextchromium.h
+%{_includedir}/EGL/eglmesaext.h
+%endif
%files libGL
%defattr(644,root,root,755)
@@ -1487,28 +1552,31 @@ rm -rf $RPM_BUILD_ROOT
%files libGL-devel
%defattr(644,root,root,755)
%doc docs/specs/*
+%if %{without glvnd}
%dir %{_includedir}/GL
%{_includedir}/GL/gl.h
%{_includedir}/GL/glcorearb.h
%{_includedir}/GL/glext.h
-%{_includedir}/GL/gl_mangle.h
%{_includedir}/GL/glx.h
%{_includedir}/GL/glxext.h
-%{_includedir}/GL/glx_mangle.h
+%{_pkgconfigdir}/gl.pc
+%endif
%dir %{_includedir}/GL/internal
%{_includedir}/GL/internal/dri_interface.h
%{_pkgconfigdir}/dri.pc
-%{_pkgconfigdir}/gl.pc
%files libGLES
%defattr(644,root,root,755)
+%if %{without glvnd}
%attr(755,root,root) %{_libdir}/libGLESv1_CM.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/libGLESv1_CM.so.1
%attr(755,root,root) %{_libdir}/libGLESv2.so.*.*
%attr(755,root,root) %ghost %{_libdir}/libGLESv2.so.2
+%endif
%files libGLES-devel
%defattr(644,root,root,755)
+%if %{without glvnd}
%attr(755,root,root) %{_libdir}/libGLESv1_CM.so
%attr(755,root,root) %{_libdir}/libGLESv2.so
%{_includedir}/GLES
@@ -1516,6 +1584,7 @@ rm -rf $RPM_BUILD_ROOT
%{_includedir}/GLES3
%{_pkgconfigdir}/glesv1_cm.pc
%{_pkgconfigdir}/glesv2.pc
+%endif
%files libOSMesa
%defattr(644,root,root,755)
@@ -1624,11 +1693,13 @@ rm -rf $RPM_BUILD_ROOT
%endif
%if %{with egl}
+%if %{without glvnd}
%files khrplatform-devel
%defattr(644,root,root,755)
%dir %{_includedir}/KHR
%{_includedir}/KHR/khrplatform.h
%endif
+%endif
%files dri-driver-ati-radeon-R100
%defattr(644,root,root,755)
@@ -1654,6 +1725,7 @@ rm -rf $RPM_BUILD_ROOT
%endif
%endif
+%ifarch %{ix86} %{x8664} x32
%files dri-driver-intel-i915
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/xorg/modules/dri/i915_dri.so
@@ -1667,6 +1739,7 @@ rm -rf $RPM_BUILD_ROOT
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/xorg/modules/dri/iris_dri.so
%endif
+%endif
%files dri-driver-nouveau
%defattr(644,root,root,755)
@@ -1683,11 +1756,10 @@ rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_libdir}/xorg/modules/dri/swrast_dri.so
%if %{with gallium}
-%ifarch %{arm}
+%ifarch %{arm} aarch64
%files dri-driver-etnaviv
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/xorg/modules/dri/etnaviv_dri.so
-%attr(755,root,root) %{_libdir}/xorg/modules/dri/imx-drm_dri.so
%files dri-driver-freedreno
%defattr(644,root,root,755)
@@ -1702,13 +1774,17 @@ rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_libdir}/xorg/modules/dri/ili9225_dri.so
%attr(755,root,root) %{_libdir}/xorg/modules/dri/ili9341_dri.so
%attr(755,root,root) %{_libdir}/xorg/modules/dri/imx-drm_dri.so
+%attr(755,root,root) %{_libdir}/xorg/modules/dri/ingenic-drm_dri.so
+%attr(755,root,root) %{_libdir}/xorg/modules/dri/mcde_dri.so
%attr(755,root,root) %{_libdir}/xorg/modules/dri/meson_dri.so
%attr(755,root,root) %{_libdir}/xorg/modules/dri/mi0283qt_dri.so
+%attr(755,root,root) %{_libdir}/xorg/modules/dri/mxsfb-drm_dri.so
%attr(755,root,root) %{_libdir}/xorg/modules/dri/pl111_dri.so
%attr(755,root,root) %{_libdir}/xorg/modules/dri/repaper_dri.so
%attr(755,root,root) %{_libdir}/xorg/modules/dri/rockchip_dri.so
%attr(755,root,root) %{_libdir}/xorg/modules/dri/st7586_dri.so
%attr(755,root,root) %{_libdir}/xorg/modules/dri/st7735r_dri.so
+%attr(755,root,root) %{_libdir}/xorg/modules/dri/stm_dri.so
%attr(755,root,root) %{_libdir}/xorg/modules/dri/sun4i-drm_dri.so
%files dri-driver-lima
@@ -1719,9 +1795,11 @@ rm -rf $RPM_BUILD_ROOT
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/xorg/modules/dri/panfrost_dri.so
+%if %{with gallium_nouveau}
%files dri-driver-tegra
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/xorg/modules/dri/tegra_dri.so
+%endif
%files dri-driver-v3d
%defattr(644,root,root,755)
@@ -1736,11 +1814,19 @@ rm -rf $RPM_BUILD_ROOT
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/xorg/modules/dri/virtio_gpu_dri.so
+%ifarch %{ix86} %{x8664} x32
%files dri-driver-vmwgfx
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/xorg/modules/dri/vmwgfx_dri.so
%endif
+%if %{with gallium_zink}
+%files dri-driver-zink
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/xorg/modules/dri/zink_dri.so
+%endif
+%endif
+
%if %{with gallium}
%if %{with opencl}
%ifarch %{ix86} %{x8664} x32
@@ -1785,7 +1871,7 @@ rm -rf $RPM_BUILD_ROOT
%endif
# currently disabled as cannot be built with swrast
-%ifarch %{ix86} %{x8664} x32
+%if %{with swr}
%files swr
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libswrAVX.so*
@@ -1846,6 +1932,7 @@ rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_libdir}/bellagio/libomx_mesa.so
%endif
+%ifarch %{ix86} %{x8664} x32
%files vulkan-icd-intel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libvulkan_intel.so
@@ -1854,6 +1941,7 @@ rm -rf $RPM_BUILD_ROOT
%files vulkan-icd-intel-devel
%defattr(644,root,root,755)
%{_includedir}/vulkan/vulkan_intel.h
+%endif
%if %{with radv}
%files vulkan-icd-radeon