]> git.pld-linux.org Git - packages/Mesa.git/blobdiff - Mesa.spec
up to 20.0.7
[packages/Mesa.git] / Mesa.spec
index 3b460bdbfc88abea69ba91e9e0997074a91ba5a8..2abb1425a07e19784b9405e1070fa413f7fceafe 100644 (file)
--- a/Mesa.spec
+++ b/Mesa.spec
@@ -1,42 +1,50 @@
+# TODO: libtizonia >= 0.10.0 as an alternative for bellagio?
 #
 # Conditional build:
 %bcond_without gallium         # gallium drivers
+%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  ocl_icd         # OpenCL as ICD (installable client driver)
+%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.95
+%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                6.0.0
+%define                llvm_ver                8.0.0
 %define                gcc_ver                 6:4.8.0
 
 %if %{without gallium}
+%undefine      with_gallium_i915
 %undefine      with_gallium_nouveau
 %undefine      with_gallium_radeon
 %undefine      with_nine
 %undefine      with_omx
 %undefine      with_opencl
+%undefine      with_swr
 %undefine      with_xa
 %endif
 
 %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:       18.3.1
-Release:       0.1
+Version:       20.0.7
+Release:       1
 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: 2ab9559b111f10d1a7617970626172e3
+# Source0-md5: 1939a279f9683a4ca6573872ed77a070
 Patch0:                nouveau_no_rtti.patch
+Patch1:                i9x5-tex-ignore-the-diff-between-GL_TEXTURE_2D-and-GL_TEXTURE_RECTANGLE.patch
+Patch2:                llvm10.patch
 URL:           http://www.mesa3d.org/
-BuildRequires: meson >= 0.45
-BuildRequires:  ninja
+%{?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.51
+BuildRequires: ninja >= 1.5
 BuildRequires: pkgconfig
 BuildRequires: pkgconfig(talloc) >= 2.0.1
 BuildRequires: pkgconfig(xcb-dri2) >= 1.8
@@ -88,10 +109,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}
@@ -99,15 +121,18 @@ BuildRequires:     sed >= 4.0
 BuildRequires: xorg-lib-libXdamage-devel >= 1.1
 BuildRequires: xorg-lib-libXext-devel >= 1.0.5
 BuildRequires: xorg-lib-libXfixes-devel
-BuildRequires: xorg-lib-libXvMC-devel >= 1.0.6
+BuildRequires: xorg-lib-libXrandr-devel >= 1.3
+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}
 BuildRequires: xorg-proto-glproto-devel >= %{glproto_ver}
 %if %{with gallium}
-%{?with_lm_sensors:BuildRequires:      lm_sensors-devel >= 4.0}
+%{?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:
@@ -171,7 +196,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.
@@ -202,7 +229,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
@@ -218,7 +245,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
@@ -228,7 +255,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
@@ -246,8 +273,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
@@ -266,7 +295,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
@@ -293,7 +322,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: <http://www.khronos.org/opengles/>. 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
@@ -301,7 +330,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:
 <http://www.khronos.org/opengles/>. 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
@@ -311,10 +340,12 @@ Requires: %{name}-khrplatform-devel = %{version}-%{release}
 # <EGL/egl.h> for <GLES/egl.h>
 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.
@@ -327,6 +358,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
@@ -650,6 +682,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}
@@ -675,6 +708,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}
@@ -700,6 +734,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}
@@ -710,51 +745,56 @@ Requires: zlib >= %{zlib_ver}
 X.org Gallium DRI driver for ATI Southern Islands card family (Radeon
 HD 7700-8000, R9, APU). It supports TAHITI, PITCAIRN, VERDE, OLAND,
 HAINAN, BONAIRE, KABINI, MULLINS, KAVERI, HAWAII, ICELAND, TONGA,
-CARRIZO, FIJI, POLARIS, STONEY chips.
+CARRIZO, FIJI, POLARIS, STONEY, VEGA, RAVEN chips.
 
 %description dri-driver-ati-radeon-SI -l pl.UTF-8
 Sterownik X.org DRI Gallium dla rodziny kart ATI Southern Islands
 (Radeon HD 7700-8000, R9, APU). Obsługuje układy TAHITI, PITCAIRN,
 VERDE, OLAND, HAINAN, BONAIRE, KABINI, MULLINS, KAVERI, HAWAII,
-ICELAND, TONGA, CARRIZO, FIJI, POLARIS, STONEY.
+ICELAND, TONGA, CARRIZO, FIJI, POLARIS, STONEY, VEGA, RAVEN.
 
 %package dri-driver-etnaviv
 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}
 Requires:      zlib >= %{zlib_ver}
 
 %description dri-driver-etnaviv
-X.org DRI driver for Vivante 3D chips.
+X.org Gallium DRI driver for Vivante 3D chips.
 
 %description dri-driver-etnaviv -l pl.UTF-8
-Sterownik X.org DRI dla układów Vivante 3D.
+Sterownik X.org DRI Gallium dla układów Vivante 3D.
 
 %package dri-driver-freedreno
 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}
 Requires:      zlib >= %{zlib_ver}
 
 %description dri-driver-freedreno
-X.org DRI driver for Adreno chips.
+X.org Gallium DRI driver for Adreno chips.
 
 %description dri-driver-freedreno -l pl.UTF-8
-Sterownik X.org DRI dla układów Adreno.
+Sterownik X.org DRI Gallium dla układów Adreno.
 
 %package dri-driver-intel-i915
 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}
@@ -784,19 +824,81 @@ Obsoletes:        X11-driver-i810-dri < 1:7.0.0
 X.org (non-Gallium) DRI driver for Intel i965 card family (946GZ,
 965G, 965Q, 965GM, 965GME, GM45, G41, B43, Q45/Q43, G45/G43, Ironlake,
 Sandybridge, Ivybridge, Haswell, Ray Trail, Broadwell, Cherrytrail,
-Braswell, Cherryview, Skylake, Broxton, Kabylake, Geminilake);
+Braswell, Cherryview, Skylake, Broxton, Kabylake, Coffeelake,
+Geminilake, Whiskey Lake, Comet Lake, Cannonlake, Ice Lake, Elkhart
+Lake).
 
 %description dri-driver-intel-i965 -l pl.UTF-8
 Sterownik X.org DRI (nie Gallium) dla rodziny kart Intel i965 (946GZ,
 965G, 965Q, 965GM, 965GME, GM45, G41, B43, Q45/Q43, G45/G43, Ironlake,
 Sandybridge, Ivybridge, Haswell, Ray Trail, Broadwell, Cherrytrail,
-Braswell, Cherryview, Skylake, Broxton, Kabylake, Geminilake);
+Braswell, Cherryview, Skylake, Broxton, Kabylake, Coffeelake,
+Geminilake, Whiskey Lake, Comet Lake, Cannonlake, Ice Lake, Elkhart
+Lake).
+
+%package dri-driver-intel-iris
+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}
+
+%description dri-driver-intel-iris
+X.org Gallium DRI driver for Intel Iris (Gen8+) card family
+(Broadwell, Skylake, Broxton, Kabylake, Coffeelake, Geminilake,
+Whiskey Lake, Comet Lake, Cannonlake, Ice Lake, Elkhart Lake).
+
+%description dri-driver-intel-iris -l pl.UTF-8
+Sterownik X.org DRI Gallium dla rodziny kart Intel Iris (Gen8+:
+Broadwell, Skylake, Broxton, Kabylake, Coffeelake, Geminilake,
+Whiskey Lake, Comet Lake, Cannonlake, Ice Lake, Elkhart Lake).
+
+%package dri-driver-kmsro
+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}
+Requires:      zlib >= %{zlib_ver}
+
+%description dri-driver-kmsro
+X.org Gallium DRI driver using KMS Render-Only architecture.
+
+%description dri-driver-kmsro -l pl.UTF-8
+Sterownik X.org DRI Gallium wykorzystujący architekturę KMS
+Render-Only.
+
+%package dri-driver-lima
+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}
+Requires:      zlib >= %{zlib_ver}
+
+%description dri-driver-lima
+X.org Gallium DRI driver for Mali Utgard chips.
+
+%description dri-driver-lima -l pl.UTF-8
+Sterownik X.org DRI Gallium dla układów Mali Utgard.
 
 %package dri-driver-nouveau
 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}
@@ -808,11 +910,29 @@ X.org DRI drivers for NVIDIA card family.
 %description dri-driver-nouveau -l pl.UTF-8
 Sterowniki X.org DRI dla rodziny kart NVIDIA.
 
+%package dri-driver-panfrost
+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}
+Requires:      zlib >= %{zlib_ver}
+
+%description dri-driver-panfrost
+X.org Gallium DRI driver for Mali Midgard/Bifrost chips.
+
+%description dri-driver-panfrost -l pl.UTF-8
+Sterownik X.org DRI Gallium dla układów Mali Midgard/Bifrost.
+
 %package dri-driver-swrast
 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}
@@ -823,52 +943,120 @@ X.org DRI software rasterizer driver.
 %description dri-driver-swrast -l pl.UTF-8
 Sterownik X.org DRI obsługujący rysowanie programowe.
 
+%package dri-driver-tegra
+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}
+Requires:      zlib >= %{zlib_ver}
+
+%description dri-driver-tegra
+X.org Gallium DRI driver for Tegra SoC chips.
+
+%description dri-driver-tegra -l pl.UTF-8
+Sterownik X.org DRI Gallium dla układów Tegra SoC.
+
+%package dri-driver-v3d
+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}
+Requires:      zlib >= %{zlib_ver}
+
+%description dri-driver-v3d
+X.org Gallium DRI driver for Broadcom VC5 chips.
+
+%description dri-driver-v3d -l pl.UTF-8
+Sterownik X.org DRI Gallium dla układów Broadcom VC5.
+
 %package dri-driver-vc4
 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}
 Requires:      zlib >= %{zlib_ver}
 
 %description dri-driver-vc4
-X.org DRI driver for Broadcom VC4 chips.
+X.org Gallium DRI driver for Broadcom VC4 chips.
 
 %description dri-driver-vc4 -l pl.UTF-8
-Sterownik X.org DRI dla układów Broadcom VC4.
+Sterownik X.org DRI Gallium dla układów Broadcom VC4.
 
 %package dri-driver-virgl
 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
+Summary(pl.UTF-8):     Sterownik i915 dla dynamicznego systemu potoków szkieletu Mesa Gallium
+Group:        Libraries
+Requires:      zlib >= %{zlib_ver}
+Obsoletes:     Mesa-gbm-driver-i915
+Obsoletes:     Mesa-opencl-driver-i915
+
+%description pipe-driver-i915
+i915 driver for Mesa Gallium dynamic pipe loader. It supports Intel
+915/945/G33/Q33/Q35/Pineview chips.
+
+%description pipe-driver-i915 -l pl.UTF-8
+Sterownik i915 dla dynamicznego systemu potoków szkieletu Mesa
+Gallium. Obsługuje układy Intela z serii 915/945/G33/Q33/Q35/Pineview.
 
 %package pipe-driver-msm
 Summary:       msm (freedreno) driver for Mesa Gallium dynamic pipe loader
@@ -957,6 +1145,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
@@ -1125,6 +1314,7 @@ License:  MIT
 Group:         Libraries
 Requires:      libdrm >= %{libdrm_ver}
 Requires:      libxcb >= 1.13
+Requires:      xorg-lib-libXrandr >= 1.3
 Requires:      xorg-lib-libxshmfence >= 1.1
 # wayland-client
 Requires:      wayland >= %{wayland_ver}
@@ -1158,6 +1348,7 @@ License:  MIT
 Group:         Libraries
 Requires:      libdrm >= %{libdrm_ver}
 Requires:      libxcb >= 1.13
+Requires:      xorg-lib-libXrandr >= 1.3
 Requires:      xorg-lib-libxshmfence >= 1.1
 # wayland-client
 Requires:      wayland >= %{wayland_ver}
@@ -1173,11 +1364,11 @@ radv - eksperymentalny sterownik Vulkan dla GPU firmy AMD.
 
 %prep
 %setup -q -n mesa-mesa-%{version}
-
 %patch0 -p1
+%patch1 -p1
+%patch2 -p1
 
 %build
-
 %if %{with opencl}
 if [ "$(llvm-config --has-rtti)" != "YES" ] ; then
        echo "Clover (gallium OpenCL) requires LLVM with RTTI!"
@@ -1190,24 +1381,30 @@ dri_drivers="nouveau r100 r200 \
 swrast
 %endif
 %ifarch %{ix86} %{x8664} x32
-i965 i915 \
+i965 %{!?with_gallium_i915:i915} \
 %endif
 "
 
 dri_drivers=$(echo $dri_drivers | xargs | tr ' ' ',')
 
-gallium_drivers="svga virgl \
-swrast
+gallium_drivers="virgl swrast %{?with_gallium_zink:zink} \
+%ifarch %{ix86} %{x8664} x32
+svga iris %{?with_swr:swr} %{?with_gallium_i915:i915} \
+%endif
 %if %{with gallium_radeon}
 r300 r600 radeonsi \
 %endif
 %if %{with gallium_nouveau}
 nouveau
 %endif
-%ifarch %{arm}
+%ifarch %{arm} aarch64
 etnaviv \
 freedreno \
-imx \
+kmsro \
+lima \
+panfrost \
+%{?with_gallium_nouveau:tegra} \
+v3d \
 vc4 \
 %endif
 "
@@ -1223,19 +1420,15 @@ 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 \
+       -Degl=%{?with_egl:true}%{!?with_egl:false} \
        -Dgallium-drivers=${gallium_drivers} \
        %{?with_hud_extra:-Dgallium-extra-hud=true} \
-       -Dgallium-vdpau=true \
-       -Dgallium-xvmc=true \
-       -Dgallium-omx=%{?with_omx:bellagio}%{?!with_omx:disabled} \
-       -Dgallium-va=%{?with_va:true}%{?!with_va:false} \
-       -Dva-libs-path=%{_libdir}/libva/dri \
-       -Dgallium-xa=%{?with_xa:true}%{?!with_xa:false} \
-       -Dgallium-nine=%{?with_nine:true}%{?!with_nine:false} \
+       -Dgallium-nine=%{?with_nine:true}%{!?with_nine:false} \
+       -Dgallium-omx=%{?with_omx:bellagio}%{!?with_omx:disabled} \
 %if %{with opencl}
 %if %{with ocl_icd}
        -Dgallium-opencl=icd \
@@ -1245,15 +1438,20 @@ vulkan_drivers=$(echo $vulkan_drivers | xargs | tr ' ' ',')
 %else
        -Dgallium-opencl=disabled \
 %endif
-       -Dvulkan-drivers=${vulkan_drivers} \
-       -Dvulkan-icd-dir=/usr/share/vulkan/icd.d \
-       -Dgbm=%{?with_gbm:true}%{?!with_gbm:false} \
-       -Degl=%{?with_egl:true}%{?!with_egl:false} \
-       -Dglvnd=%{?with_glvnd:true}%{?!with_glvnd:false} \
+       -Dgallium-va=%{?with_va:true}%{!?with_va:false} \
+       %{?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} \
+       -Dlmsensors=%{?with_lm_sensors:true}%{!?with_lm_sensors:false} \
+       %{?with_opencl_spirv:-Dopencl-spirv=true} \
+       -Dosmesa=%{?with_gallium:gallium}%{!?with_gallium:classic} \
        -Dselinux=true \
-       -Dosmesa=%{?with_gallium:gallium}%{?!with_gallium:classic}
+       -Dva-libs-path=%{_libdir}/libva/dri \
+       -Dvulkan-drivers=${vulkan_drivers} \
+       -Dvulkan-icd-dir=/usr/share/vulkan/icd.d
 
 %meson_build -C build
 
@@ -1323,15 +1521,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)
@@ -1352,28 +1550,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
@@ -1381,6 +1582,7 @@ rm -rf $RPM_BUILD_ROOT
 %{_includedir}/GLES3
 %{_pkgconfigdir}/glesv1_cm.pc
 %{_pkgconfigdir}/glesv2.pc
+%endif
 
 %files libOSMesa
 %defattr(644,root,root,755)
@@ -1489,11 +1691,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)
@@ -1519,6 +1723,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
@@ -1527,6 +1732,13 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/xorg/modules/dri/i965_dri.so
 
+%if %{with gallium}
+%files dri-driver-intel-iris
+%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)
 %attr(755,root,root) %{_libdir}/xorg/modules/dri/nouveau_vieux_dri.so
@@ -1542,17 +1754,55 @@ 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)
 %attr(755,root,root) %{_libdir}/xorg/modules/dri/kgsl_dri.so
 %attr(755,root,root) %{_libdir}/xorg/modules/dri/msm_dri.so
 
+%files dri-driver-kmsro
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/xorg/modules/dri/armada-drm_dri.so
+%attr(755,root,root) %{_libdir}/xorg/modules/dri/exynos_dri.so
+%attr(755,root,root) %{_libdir}/xorg/modules/dri/hx8357d_dri.so
+%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
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/xorg/modules/dri/lima_dri.so
+
+%files dri-driver-panfrost
+%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)
+%attr(755,root,root) %{_libdir}/xorg/modules/dri/v3d_dri.so
+
 %files dri-driver-vc4
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/xorg/modules/dri/vc4_dri.so
@@ -1562,13 +1812,27 @@ 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
+%if %{with gallium_i915}
+%attr(755,root,root) %{_libdir}/gallium-pipe/pipe_i915.so
+%endif
+%endif
+
 %ifarch %{arm}
 %files pipe-driver-msm
 %defattr(644,root,root,755)
@@ -1605,13 +1869,11 @@ rm -rf $RPM_BUILD_ROOT
 %endif
 
 # currently disabled as cannot be built with swrast
-%if 0
-%ifarch %{x8664}
+%if %{with swr}
 %files swr
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libswrAVX.so
-%attr(755,root,root) %{_libdir}/libswrAVX2.so
-%endif
+%attr(755,root,root) %{_libdir}/libswrAVX.so*
+%attr(755,root,root) %{_libdir}/libswrAVX2.so*
 %endif
 %endif
 
@@ -1668,6 +1930,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
@@ -1676,6 +1939,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
This page took 0.081306 seconds and 4 git commands to generate.