]> git.pld-linux.org Git - packages/Mesa.git/blobdiff - Mesa.spec
up to 20.0.7
[packages/Mesa.git] / Mesa.spec
index d381c747e7789ca39f913ca035b57abf1c568b84..2abb1425a07e19784b9405e1070fa413f7fceafe 100644 (file)
--- a/Mesa.spec
+++ b/Mesa.spec
@@ -1,57 +1,50 @@
-#
-# TODO:
-# - check if gallium_i915 note is still valid, switch the bcond if not
+# TODO: libtizonia >= 0.10.0 as an alternative for bellagio?
 #
 # Conditional build:
 %bcond_without gallium         # gallium drivers
-%bcond_with    gallium_i915    # gallium i915 Intel driver (instead of plain dri; doesn't work with AIGLX)
+%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_with    openvg          # OpenVG library [not building since 10.4, dropped in 10.6]
 %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    texture_float   # floating-point textures and renderbuffers (SGI patent in US)
-%bcond_with    static_libs     # static libraries [not supported for DRI, thus broken currently]
 %bcond_with    tests           # tests
-%bcond_without shared_llvm     # disable use of the shared LLVM libs
-%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
-# minimal supported xserver version
-%define                xserver_ver             1.5.0
 # other packages
-%ifarch %{arm}
-%define                libdrm_ver              2.4.80
-%else
-%define                libdrm_ver              2.4.79
-%endif
+%define                libdrm_ver              2.4.100
 %define                dri2proto_ver           2.8
-%define                dri3proto_ver           1.0
 %define                glproto_ver             1.4.14
-%define                presentproto_ver        1.0
 %define                zlib_ver                1.2.8
+%define                wayland_ver             1.11
+%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_ocl_icd
 %undefine      with_omx
 %undefine      with_opencl
+%undefine      with_swr
 %undefine      with_xa
 %endif
 
 %undefine      with_wayland
 %endif
 
+%if %{without opencl}
+%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:       17.2.2
+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: 1a157b5baefb5adf9f4fbb8a6632d74c
-Patch0:                %{name}-link.patch
-Patch1:                b101832.patch
+#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: 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: autoconf >= 2.60
-BuildRequires: automake
-%{?with_opencl:BuildRequires:  clang-devel >= 3.1}
+%{?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 >= 6:4.2.0
-%{?with_nine:BuildRequires:    gcc-c++ >= 6:4.6}
-%{?with_opencl:BuildRequires:  gcc-c++ >= 6:4.7}
+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 >= 6:4.2.0
-BuildRequires: libtalloc-devel >= 2:2.0.1
-BuildRequires: libtool >= 2:2.2
-%{?with_va:BuildRequires:      libva-devel >= 1.6.0}
-%{?with_va:BuildRequires:      pkgconfig(libva) >= 0.38.0}
-BuildRequires: libvdpau-devel >= 1.1
-BuildRequires: libxcb-devel >= 1.10
-%{?with_gallium_radeon:BuildRequires:  llvm-devel >= 3.8}
-# for swr driver
-%{?with_gallium:BuildRequires: llvm-devel >= 3.9}
-%{?with_radv:BuildRequires:    llvm-devel >= 3.9}
+BuildRequires: libstdc++-devel >= %{gcc_ver}
+BuildRequires: libunwind-devel
+%{?with_va:BuildRequires:      libva-devel}
+%{?with_va:BuildRequires:      pkgconfig(libva) >= 0.39.0}
+%{?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}
-# for SHA1 (could use also libmd/libsha1/libgcrypt/openssl instead)
-BuildRequires: nettle-devel
-%{?with_ocl_icd:BuildRequires: ocl-icd-devel}
 %{?with_omx:BuildRequires:     libomxil-bellagio-devel}
-BuildRequires: perl-base
-BuildRequires: pixman-devel
+BuildRequires: meson >= 0.51
+BuildRequires: ninja >= 1.5
 BuildRequires: pkgconfig
 BuildRequires: pkgconfig(talloc) >= 2.0.1
-BuildRequires: pkgconfig(xcb-dri3)
-BuildRequires: pkgconfig(xcb-present)
-BuildRequires: python >= 2
-BuildRequires: python-Mako >= 0.8.0
-BuildRequires: python-modules >= 2
+BuildRequires: pkgconfig(xcb-dri2) >= 1.8
+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 >= 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 >= 1.11.0}
+%{?with_wayland:BuildRequires: wayland-devel >= %{wayland_ver}}
 %{?with_wayland:BuildRequires: wayland-protocols >= 1.8}
+%{?with_wayland:BuildRequires: wayland-egl-devel >= %{wayland_ver}}
 BuildRequires: xorg-lib-libXdamage-devel >= 1.1
 BuildRequires: xorg-lib-libXext-devel >= 1.0.5
 BuildRequires: xorg-lib-libXfixes-devel
-BuildRequires: xorg-lib-libXt-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-dri3proto-devel >= %{dri3proto_ver}
 BuildRequires: xorg-proto-glproto-devel >= %{glproto_ver}
-BuildRequires: xorg-proto-presentproto-devel >= %{presentproto_ver}
-BuildRequires: xorg-util-makedepend
 %if %{with gallium}
-%{?with_lm_sensors:BuildRequires:      lm_sensors-devel >= 3.4}
-BuildRequires: xorg-proto-xextproto-devel >= 7.0.99.1
-BuildRequires: xorg-xserver-server-devel >= %{xserver_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:
 #  _glapi_tls_Dispatch is defined in libglapi, but it's some kind of symbol ldd -r doesn't notice(?)
-# libgbm: circular dependency with libEGL (wayland_buffer_is_drm symbol)
-%define                skip_post_check_so      libGLESv1_CM.so.1.* libGLESv2.so.2.* libGL.so.1.* libOSMesa.so.* libgbm.*.so.*
-
-# llvm build broken
-%define                filterout_ld    -Wl,--as-needed
+%define                skip_post_check_so      libGLESv1_CM.so.1.* libGLESv2.so.2.* libGL.so.1.* libOSMesa.so.* libGLX_mesa.so.0.*
 
 %description
 Mesa is a 3-D graphics library with an API which is very similar to
@@ -165,7 +163,7 @@ Requires:   %{name}-libglapi = %{version}-%{release}
 # glx driver in libEGL dlopens libGL.so
 Requires:      OpenGL >= 1.2
 Requires:      libdrm >= %{libdrm_ver}
-Requires:      libxcb >= 1.9
+Requires:      libxcb >= 1.13
 %{?with_wayland:Requires:      wayland >= 1.11.0}
 %if %{with gbm}
 Requires:      %{name}-libgbm = %{version}-%{release}
@@ -198,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.
@@ -227,8 +227,9 @@ License:    MIT
 Group:         X11/Libraries
 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
@@ -244,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
@@ -254,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
@@ -272,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
@@ -292,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
@@ -319,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
@@ -327,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
@@ -337,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.
@@ -353,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
@@ -463,43 +469,6 @@ Header files for Mesa OpenCL library.
 %description libOpenCL-devel -l pl.UTF-8
 Pliki nagłówkowe biblioteki Mesa OpenCL.
 
-%package libOpenVG
-Summary:       Mesa implementation of OpenVG (Vector Graphics Accelleration) API
-Summary(pl.UTF-8):     Implementacja Mesa API OpenVG (akceleracji grafiki wektorowej)
-License:       MIT
-Group:         Libraries
-Provides:      OpenVG = 1.1
-
-%description libOpenVG
-This package contains Mesa implementation of OpenVG - cross-platform
-API that provides a low-level hardware acceleration interface for
-vector graphics libraries such as Flash and SVG. OpenVG specification
-can be found on Khronos Group site: <http://www.khronos.org/openvg/>.
-Mesa implements OpenVG 1.1.
-
-%description libOpenVG -l pl.UTF-8
-Ten pakiet zawiera implementację Mesa standardu OpenVG -
-wieloplatfomowego API zapewniającego niskopoziomowy interfejs
-akceleracji sprzętowej dla bibliotek grafiki wektorowej, takiej jak
-Flash czy SVG. Specyfikację OpenVG można znaleźć na stronie Khronos
-Group: <http://www.khronos.org/openvg/>. Mesa zawiera implementację
-OpenVG w wersji 1.1.
-
-%package libOpenVG-devel
-Summary:       Header file for Mesa OpenVG library
-Summary(pl.UTF-8):     Plik nagłówkowy biblioteki Mesa OpenVG
-License:       MIT
-Group:         Development/Libraries
-Requires:      %{name}-khrplatform-devel = %{version}-%{release}
-Requires:      %{name}-libOpenVG = %{version}-%{release}
-Provides:      OpenVG-devel = 1.1
-
-%description libOpenVG-devel
-Header file for Mesa OpenVG library.
-
-%description libOpenVG-devel -l pl.UTF-8
-Plik nagłówkowy biblioteki Mesa OpenVG.
-
 %package libXvMC-nouveau
 Summary:       Mesa implementation of XvMC API for NVidia adapters
 Summary(pl.UTF-8):     Implementacja Mesa API XvMC dla kart NVidia
@@ -631,31 +600,6 @@ Mesa GL API shared library, common for various APIs (EGL, GL, GLES).
 Biblioteka współdzielona Mesa GL API, wspólna dla różnych API (EGL,
 GL, GLES).
 
-%package libwayland-egl
-Summary:       Wayland EGL library
-Summary(pl.UTF-8):     Biblioteka Wayland EGL
-Group:         Libraries
-Requires:      libdrm >= %{libdrm_ver}
-
-%description libwayland-egl
-Wayland EGL platform library.
-
-%description libwayland-egl -l pl.UTF-8
-Biblioteka platformy EGL Wayland.
-
-%package libwayland-egl-devel
-Summary:       Development files for Wayland EGL library
-Summary(pl.UTF-8):     Pliki programistyczne biblioteki Wayland EGL
-Group:         Development/Libraries
-Requires:      %{name}-libwayland-egl = %{version}-%{release}
-Requires:      libdrm-devel >= %{libdrm_ver}
-
-%description libwayland-egl-devel
-Development files for Wayland EGL platform library.
-
-%description libwayland-egl-devel -l pl.UTF-8
-Pliki programistyczne biblioteki platformy EGL Wayland.
-
 %package libxatracker
 Summary:       Xorg Gallium3D accelleration library
 Summary(pl.UTF-8):     Biblioteka akceleracji Gallium3D dla Xorg
@@ -738,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}
@@ -763,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}
@@ -788,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}
@@ -798,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}
@@ -872,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}
@@ -896,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}
@@ -911,60 +943,112 @@ 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 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
+%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}
-Obsoletes:     Mesa-gbm-driver-i915
-Obsoletes:     Mesa-opencl-driver-i915
+
+%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
@@ -1061,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
@@ -1209,7 +1294,7 @@ Summary(pl.UTF-8):        Sterownik Mesa nouveau dla API Bellagio OpenMAX IL
 License:       MIT
 Group:         X11/Libraries
 Requires:      libdrm >= %{libdrm_ver}
-Requires:      libxcb >= 1.8
+Requires:      libxcb >= 1.13
 Requires:      libomxil-bellagio
 Requires:      zlib >= %{zlib_ver}
 Obsoletes:     omxil-mesa-nouveau
@@ -1228,6 +1313,11 @@ Summary(pl.UTF-8):       Sterownik Vulkan dla GPU firmy Intel
 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}
 Requires:      zlib >= %{zlib_ver}
 Suggests:      vulkan(loader)
 Provides:      vulkan(icd) = 1.0.3
@@ -1256,6 +1346,12 @@ Summary: radv - experimental Mesa Vulkan driver for AMD Radeon GPUs
 Summary(pl.UTF-8):     radv - eksperymentalny sterownik Vulkan dla GPU firmy AMD
 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}
 Requires:      zlib >= %{zlib_ver}
 Suggests:      vulkan(loader)
 Provides:      vulkan(icd) = 1.0.3
@@ -1267,17 +1363,23 @@ radv - experimental Mesa Vulkan driver for AMD Radeon GPUs.
 radv - eksperymentalny sterownik Vulkan dla GPU firmy AMD.
 
 %prep
-%setup -q -n mesa-%{version}
+%setup -q -n mesa-mesa-%{version}
 %patch0 -p1
 %patch1 -p1
+%patch2 -p1
 
 %build
-%{__libtoolize}
-%{__aclocal} -I m4
-%{__autoconf}
-%{__automake}
+%if %{with opencl}
+if [ "$(llvm-config --has-rtti)" != "YES" ] ; then
+       echo "Clover (gallium OpenCL) requires LLVM with RTTI!"
+       exit 1
+fi
+%endif
 
-dri_drivers="nouveau r200 radeon swrast \
+dri_drivers="nouveau r100 r200 \
+%if %{without gallium}
+swrast
+%endif
 %ifarch %{ix86} %{x8664} x32
 i965 %{!?with_gallium_i915:i915} \
 %endif
@@ -1285,9 +1387,9 @@ i965 %{!?with_gallium_i915:i915} \
 
 dri_drivers=$(echo $dri_drivers | xargs | tr ' ' ',')
 
-gallium_drivers="svga swrast virgl \
+gallium_drivers="virgl swrast %{?with_gallium_zink:zink} \
 %ifarch %{ix86} %{x8664} x32
-swr %{?with_gallium_i915:i915} \
+svga iris %{?with_swr:swr} %{?with_gallium_i915:i915} \
 %endif
 %if %{with gallium_radeon}
 r300 r600 radeonsi \
@@ -1295,17 +1397,21 @@ r300 r600 radeonsi \
 %if %{with gallium_nouveau}
 nouveau
 %endif
-%ifarch %{arm}
+%ifarch %{arm} aarch64
 etnaviv \
 freedreno \
-imx \
+kmsro \
+lima \
+panfrost \
+%{?with_gallium_nouveau:tegra} \
+v3d \
 vc4 \
 %endif
 "
 
 gallium_drivers=$(echo $gallium_drivers | xargs | tr ' ' ',')
 
-vulkan_drivers="%{?with_radv:radeon} \
+vulkan_drivers="%{?with_radv:amd} \
 %ifarch %{ix86} %{x8664} x32
 intel \
 %endif
@@ -1313,70 +1419,51 @@ intel \
 
 vulkan_drivers=$(echo $vulkan_drivers | xargs | tr ' ' ',')
 
-%configure \
-       --disable-silent-rules \
-       %{__enable gbm} \
-       --enable-glx-tls \
-       %{?with_glvnd:--enable-libglvnd} \
-       --enable-osmesa \
-       --enable-selinux \
-       --enable-shared \
-       --enable-shared-glapi \
-       %{?with_static_libs:--enable-static} \
-       %{?with_texture_float:--enable-texture-float} \
-%if %{with egl}
-       --enable-egl \
-       --enable-gles1 \
-       --enable-gles2 \
-       --with-platforms=x11%{?with_gbm:,drm}%{?with_wayland:,wayland} \
+%meson build \
+       -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-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 \
+%else
+       -Dgallium-opencl=standalone \
 %endif
-%if %{with gallium}
-       %{?with_hud_extra:--enable-gallium-extra-hud} \
-       --enable-llvm \
-       %{__enable_disable shared_llvm llvm-shared-libs} \
-       %{__enable ocl_icd opencl-icd} \
-       %{?with_lm_sensors:--enable-lmsensors} \
-       %{?with_nine:--enable-nine} \
-       %{__enable opencl} \
-       %{__enable va} \
-       --enable-vdpau \
-       %{?with_omx:--enable-omx} \
-       %{?with_xa:--enable-xa} \
-       --enable-xvmc \
-       --with-gallium-drivers=${gallium_drivers} \
 %else
-       --without-gallium-drivers \
+       -Dgallium-opencl=disabled \
 %endif
-       --with-dri-drivers=${dri_drivers} \
-       --with-dri-driverdir=%{_libdir}/xorg/modules/dri \
-       --with-vulkan-drivers=${vulkan_drivers} \
-       --with-vulkan-icddir=/usr/share/vulkan/icd.d \
-       --with-sha1=libnettle \
-       --with-va-libdir=%{_libdir}/libva/dri
-
-%{__make}
-
-%{?with_tests:%{__make} check}
+       -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} \
+       %{?with_opencl_spirv:-Dopencl-spirv=true} \
+       -Dosmesa=%{?with_gallium:gallium}%{!?with_gallium:classic} \
+       -Dselinux=true \
+       -Dva-libs-path=%{_libdir}/libva/dri \
+       -Dvulkan-drivers=${vulkan_drivers} \
+       -Dvulkan-icd-dir=/usr/share/vulkan/icd.d
+
+%meson_build -C build
+
+%{?with_tests:%meson_test -C build}
 
 %install
 rm -rf $RPM_BUILD_ROOT
 
-%{__make} install \
-       DESTDIR=$RPM_BUILD_ROOT
+%meson_install -C build
 
-# dlopened by soname
-%{?with_gallium:%{__rm} $RPM_BUILD_ROOT%{_libdir}/libXvMC*.so}
-%{?with_gallium:%{__rm} $RPM_BUILD_ROOT%{_libdir}/libXvMC*.so.1.0}
-# dlopened by soname or .so link
-%{?with_gallium:%{__rm} $RPM_BUILD_ROOT%{_libdir}/vdpau/libvdpau_*.so.1.0}
 # not used externally
 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libglapi.so
-# dlopened
-%{?with_omx:%{__rm} $RPM_BUILD_ROOT%{_libdir}/bellagio/libomx_*.la}
-%{?with_nine:%{__rm} $RPM_BUILD_ROOT%{_libdir}/d3d/d3dadapter9.la}
-%{?with_gallium:%{__rm} $RPM_BUILD_ROOT%{_libdir}/gallium-pipe/pipe_*.la}
-# not defined by standards; and not needed, there is pkg-config support
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/lib*.la
 
 %if %{without glvnd}
 # remove "OS ABI: Linux 2.4.20" tag, so private copies (nvidia or fglrx),
@@ -1402,9 +1489,6 @@ rm -rf $RPM_BUILD_ROOT
 %post  libOpenCL -p /sbin/ldconfig
 %postun        libOpenCL -p /sbin/ldconfig
 
-%post  libOpenVG -p /sbin/ldconfig
-%postun        libOpenVG -p /sbin/ldconfig
-
 %post  libXvMC-nouveau -p /sbin/ldconfig
 %postun        libXvMC-nouveau -p /sbin/ldconfig
 %post  libXvMC-r600 -p /sbin/ldconfig
@@ -1416,39 +1500,40 @@ rm -rf $RPM_BUILD_ROOT
 %post  libglapi -p /sbin/ldconfig
 %postun        libglapi -p /sbin/ldconfig
 
-%post  libwayland-egl -p /sbin/ldconfig
-%postun        libwayland-egl -p /sbin/ldconfig
-
 %post  libxatracker -p /sbin/ldconfig
 %postun        libxatracker -p /sbin/ldconfig
 
 %if %{with egl}
 %files libEGL
 %defattr(644,root,root,755)
+%if %{with glvnd}
+%attr(755,root,root) %{_libdir}/libEGL_mesa.so.*.*
+%attr(755,root,root) %ghost %{_libdir}/libEGL_mesa.so.0
+%{_datadir}/glvnd/egl_vendor.d/50_mesa.json
+%else
 %attr(755,root,root) %{_libdir}/libEGL.so.*.*
 %attr(755,root,root) %ghost %{_libdir}/libEGL.so.1
+%endif
 
 %files libEGL-devel
 %defattr(644,root,root,755)
+%if %{with glvnd}
+%attr(755,root,root) %{_libdir}/libEGL_mesa.so
+%else
 %attr(755,root,root) %{_libdir}/libEGL.so
 %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
-
-%if %{with static_libs}
-%files libEGL-static
-%defattr(644,root,root,755)
-%{_libdir}/libEGL.a
 %endif
+%{_includedir}/EGL/eglextchromium.h
+%{_includedir}/EGL/eglmesaext.h
 %endif
 
 %files libGL
 %defattr(644,root,root,755)
-%doc docs/{*.html,README.UVD,patents.txt,relnotes/*.html}
+%doc docs/{*.html,README.UVD,features.txt,relnotes/*.html}
 %if %{with glvnd}
 %attr(755,root,root) %{_libdir}/libGLX_mesa.so.*.*
 %attr(755,root,root) %ghost %{_libdir}/libGLX_mesa.so.0
@@ -1460,39 +1545,36 @@ rm -rf $RPM_BUILD_ROOT
 # (and dlopen libGL.so instead of libGL.so.1; the same does Mesa libEGL)
 %attr(755,root,root) %{_libdir}/libGL.so
 %endif
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/drirc
+%{_datadir}/drirc.d
 
 %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
-
-%if %{with static_libs}
-%files libGL-static
-%defattr(644,root,root,755)
-%{_libdir}/libGL.a
-%endif
 
 %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
@@ -1500,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)
@@ -1512,12 +1595,6 @@ rm -rf $RPM_BUILD_ROOT
 %{_includedir}/GL/osmesa.h
 %{_pkgconfigdir}/osmesa.pc
 
-%if %{with static_libs}
-%files libOSMesa-static
-%defattr(644,root,root,755)
-%{_libdir}/libOSMesa.a
-%endif
-
 %if %{with opencl}
 %if %{with ocl_icd}
 %files OpenCL-icd
@@ -1543,32 +1620,17 @@ rm -rf $RPM_BUILD_ROOT
 %endif
 %endif
 
-%if %{with egl} && %{with openvg} && %{with gallium}
-%files libOpenVG
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libOpenVG.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libOpenVG.so.1
-
-%files libOpenVG-devel
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libOpenVG.so
-%{_includedir}/VG
-%{_pkgconfigdir}/vg.pc
-%endif
-
 %if %{with gallium}
 %if %{with gallium_nouveau}
 %files libXvMC-nouveau
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libXvMCnouveau.so.1.0.0
-%attr(755,root,root) %ghost %{_libdir}/libXvMCnouveau.so.1
+%attr(755,root,root) %{_libdir}/libXvMCnouveau.so
 %endif
 
 %if %{with gallium_radeon}
 %files libXvMC-r600
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libXvMCr600.so.1.0.0
-%attr(755,root,root) %ghost %{_libdir}/libXvMCr600.so.1
+%attr(755,root,root) %{_libdir}/libXvMCr600.so
 %endif
 
 %if %{with va}
@@ -1613,18 +1675,6 @@ rm -rf $RPM_BUILD_ROOT
 # libglapi-devel? nothing seems to need it atm.
 #%attr(755,root,root) %{_libdir}/libglapi.so
 
-%if %{with wayland}
-%files libwayland-egl
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libwayland-egl.so.*.*
-%attr(755,root,root) %ghost %{_libdir}/libwayland-egl.so.1
-
-%files libwayland-egl-devel
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libwayland-egl.so
-%{_pkgconfigdir}/wayland-egl.pc
-%endif
-
 %if %{with xa}
 %files libxatracker
 %defattr(644,root,root,755)
@@ -1641,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)
@@ -1671,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
@@ -1679,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
@@ -1694,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
@@ -1714,17 +1812,26 @@ 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}
-%files pipe-driver-i915
-%defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/gallium-pipe/pipe_i915.so
 %endif
+%endif
 
 %ifarch %{arm}
 %files pipe-driver-msm
@@ -1759,12 +1866,14 @@ rm -rf $RPM_BUILD_ROOT
 %files pipe-driver-vmwgfx
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/gallium-pipe/pipe_vmwgfx.so
+%endif
 
-%ifarch %{ix86} %{x8664} x32
+# currently disabled as cannot be built with swrast
+%if %{with swr}
 %files swr
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libswrAVX.so
-%attr(755,root,root) %{_libdir}/libswrAVX2.so
+%attr(755,root,root) %{_libdir}/libswrAVX.so*
+%attr(755,root,root) %{_libdir}/libswrAVX2.so*
 %endif
 %endif
 
@@ -1786,6 +1895,7 @@ rm -rf $RPM_BUILD_ROOT
 %files -n libvdpau-driver-mesa-nouveau
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/vdpau/libvdpau_nouveau.so.1.0.0
+%attr(755,root,root) %{_libdir}/vdpau/libvdpau_nouveau.so.1.0
 %attr(755,root,root) %{_libdir}/vdpau/libvdpau_nouveau.so.1
 %attr(755,root,root) %{_libdir}/vdpau/libvdpau_nouveau.so
 %endif
@@ -1794,18 +1904,21 @@ rm -rf $RPM_BUILD_ROOT
 %files -n libvdpau-driver-mesa-r300
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/vdpau/libvdpau_r300.so.1.0.0
+%attr(755,root,root) %{_libdir}/vdpau/libvdpau_r300.so.1.0
 %attr(755,root,root) %{_libdir}/vdpau/libvdpau_r300.so.1
 %attr(755,root,root) %{_libdir}/vdpau/libvdpau_r300.so
 
 %files -n libvdpau-driver-mesa-r600
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/vdpau/libvdpau_r600.so.1.0.0
+%attr(755,root,root) %{_libdir}/vdpau/libvdpau_r600.so.1.0
 %attr(755,root,root) %{_libdir}/vdpau/libvdpau_r600.so.1
 %attr(755,root,root) %{_libdir}/vdpau/libvdpau_r600.so
 
 %files -n libvdpau-driver-mesa-radeonsi
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/vdpau/libvdpau_radeonsi.so.1.0.0
+%attr(755,root,root) %{_libdir}/vdpau/libvdpau_radeonsi.so.1.0
 %attr(755,root,root) %{_libdir}/vdpau/libvdpau_radeonsi.so.1
 %attr(755,root,root) %{_libdir}/vdpau/libvdpau_radeonsi.so
 %endif
@@ -1817,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
@@ -1825,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.12047 seconds and 4 git commands to generate.