X-Git-Url: http://git.pld-linux.org/?p=packages%2FMesa.git;a=blobdiff_plain;f=Mesa.spec;h=2abb1425a07e19784b9405e1070fa413f7fceafe;hp=7da2800812c8b5ef08e98229e9581aee9b6864cb;hb=1aacbc2;hpb=6437959900f5279758af16cafa190e542c94ae3f diff --git a/Mesa.spec b/Mesa.spec index 7da2800..2abb142 100644 --- a/Mesa.spec +++ b/Mesa.spec @@ -2,42 +2,49 @@ # # 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 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} +%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 @@ -50,37 +57,50 @@ %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.0.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: 7c61a801311fb8d2f7b3cceb7b5cf308 Source0: https://gitlab.freedesktop.org/mesa/mesa/-/archive/mesa-%{version}/mesa-mesa-%{version}.tar.bz2 -# Source0-md5: 4a5e81eba57f6888a5be8fba0b9aa843 +# 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/ +%{?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.45 +BuildRequires: meson >= 0.51 BuildRequires: ninja >= 1.5 BuildRequires: pkgconfig BuildRequires: pkgconfig(talloc) >= 2.0.1 @@ -89,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} @@ -101,7 +122,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} @@ -110,6 +132,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: @@ -173,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. @@ -204,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 @@ -220,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 @@ -230,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 @@ -248,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 @@ -268,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 @@ -295,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: . 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 @@ -303,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: . 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 @@ -313,10 +340,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. @@ -329,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 @@ -652,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} @@ -677,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} @@ -702,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} @@ -712,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} @@ -786,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} @@ -810,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} @@ -825,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 @@ -959,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 @@ -1177,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!" @@ -1194,14 +1381,16 @@ 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 @@ -1211,9 +1400,10 @@ nouveau %ifarch %{arm} aarch64 etnaviv \ freedreno \ -imx \ -pl111 \ -tegra \ +kmsro \ +lima \ +panfrost \ +%{?with_gallium_nouveau:tegra} \ v3d \ vc4 \ %endif @@ -1230,7 +1420,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 \ @@ -1249,13 +1439,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 \ @@ -1273,7 +1464,6 @@ rm -rf $RPM_BUILD_ROOT # not used externally %{__rm} $RPM_BUILD_ROOT%{_libdir}/libglapi.so -%{__rm} $RPM_BUILD_ROOT%{_libdir}/vdpau/libvdpau_gallium.so %if %{without glvnd} # remove "OS ABI: Linux 2.4.20" tag, so private copies (nvidia or fglrx), @@ -1331,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) @@ -1360,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 @@ -1389,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) @@ -1497,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) @@ -1527,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 @@ -1535,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 @@ -1550,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 @@ -1570,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) @@ -1613,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 @@ -1676,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 @@ -1684,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