X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=Mesa.spec;h=9f50485a07fbe45d4f50e31db8bf5539a590c512;hb=075ec3a336f1d9aac760b576abbb68539acafde2;hp=d5961a30fef71181e77db2e8daa8bcc9f61de958;hpb=5631383074583d23853bf91100516fe8df3c15fb;p=packages%2FMesa.git diff --git a/Mesa.spec b/Mesa.spec index d5961a3..9f50485 100644 --- a/Mesa.spec +++ b/Mesa.spec @@ -1,22 +1,26 @@ # # TODO: -# - check if gallium_intel note is still valid, switch the bcond if not +# - check if gallium_i915 note is still valid, switch the bcond if not # - consider: # - subpackage with non-dri libGL for use with X-servers with missing GLX extension? # - resurrect static if it's useful (using plain xorg target? DRI doesn't support static) # # Conditional build: %bcond_without gallium # gallium drivers -%bcond_with gallium_intel # gallium i915 driver (instead of plain dri; doesn't work with AIGLX) +%bcond_with gallium_i915 # gallium i915 Intel driver (instead of plain dri; doesn't work with AIGLX) %bcond_without gallium_nouveau # gallium nouveau driver %bcond_without gallium_radeon # gallium radeon drivers %bcond_without egl # EGL libraries +%bcond_with openvg # OpenVG library [not builind 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 ocl_icd # OpenCL as ICD (installable client driver) %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_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 # @@ -27,39 +31,64 @@ # minimal supported xserver version %define xserver_ver 1.5.0 # other packages -%define libdrm_ver 2.4.54 +%define libdrm_ver 2.4.66 %define dri2proto_ver 2.6 %define dri3proto_ver 1.0 %define glproto_ver 1.4.14 %define presentproto_ver 1.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_xa +%endif + +%if %{without egl} +%undefine with_gbm +%undefine with_wayland +%endif + +%define snap 20160417 Summary: Free OpenGL implementation Summary(pl.UTF-8): Wolnodostępna implementacja standardu OpenGL Name: Mesa -Version: 10.3.0 -Release: 1 +Version: 11.3.0 +Release: 0.s%{snap}.1 License: MIT (core) and others - see license.html file Group: X11/Libraries -Source0: ftp://ftp.freedesktop.org/pub/mesa/10.3/%{name}Lib-%{version}.tar.bz2 -# Source0-md5: bc071575596a074df2b15cac57c01ed8 +# git archive --format=tar --prefix=Mesa-s20160417/ master | xz > ../Mesa-s20160417.tar.xz +Source0: Mesa-s%{snap}.tar.xz +# Source0-md5: 21dee106a08c2f91f31f542d4d2d4ee5 +Patch0: missing-type.patch +Patch1: x32.patch +Patch2: keep_git_sha.patch +Patch3: vulkan_icd-DESTDIR.patch URL: http://www.mesa3d.org/ BuildRequires: autoconf >= 2.60 BuildRequires: automake %{?with_opencl:BuildRequires: clang-devel >= 3.1} BuildRequires: elfutils-devel BuildRequires: expat-devel -BuildRequires: gcc >= 5:3.3 +BuildRequires: gcc >= 6:4.2.0 %{?with_opencl:BuildRequires: gcc-c++ >= 6:4.7} BuildRequires: libdrm-devel >= %{libdrm_ver} BuildRequires: libselinux-devel -BuildRequires: libstdc++-devel >= 5:3.3.0 +BuildRequires: libstdc++-devel >= 6:4.2.0 BuildRequires: libtalloc-devel >= 2:2.0.1 BuildRequires: libtool >= 2:2.2 -BuildRequires: libvdpau-devel >= 0.4.1 +%{?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 -BuildRequires: llvm-devel >= 3.3 -%{?with_gallium_radeon:BuildRequires: llvm-devel >= 3.4.2} +%{?with_gallium_radeon:BuildRequires: llvm-devel >= 3.6} %{?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 @@ -69,6 +98,7 @@ BuildRequires: pkgconfig(talloc) >= 2.0.1 BuildRequires: pkgconfig(xcb-dri3) BuildRequires: pkgconfig(xcb-present) BuildRequires: python >= 2 +BuildRequires: python-Mako >= 0.3.4 BuildRequires: python-modules >= 2 BuildRequires: rpmbuild(macros) >= 1.470 BuildRequires: sed >= 4.0 @@ -87,26 +117,12 @@ 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 -BuildRequires: xorg-xserver-server-devel >= %{xserver_ver} %if %{with gallium} BuildRequires: xorg-proto-xextproto-devel >= 7.0.99.1 -BuildRequires: xorg-xserver-server-devel >= 1.6.0 +BuildRequires: xorg-xserver-server-devel >= %{xserver_ver} %endif BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) -%if %{without gallium} -%undefine with_gallium_intel -%undefine with_gallium_nouveau -%undefine with_ocl_icd -%undefine with_opencl -%undefine with_xa -%endif - -%if %{without egl} -%undefine with_gbm -%undefine with_wayland -%endif - # 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) @@ -142,14 +158,12 @@ Requires: libdrm >= %{libdrm_ver} Requires: libxcb >= 1.9 %{?with_wayland:Requires: wayland >= 1.2.0} %if %{with gallium} -# for egl_gallium.so -Requires: %{name}-libOpenVG = %{version}-%{release} Requires: udev-libs >= 1:151 %endif %if %{with gbm} Requires: %{name}-libgbm = %{version}-%{release} %endif -Provides: EGL = 1.4 +Provides: EGL = 1.5 %description libEGL This package contains shared libEGL - Mesa implementation of EGL @@ -177,7 +191,7 @@ Requires: xorg-lib-libXfixes-devel Requires: xorg-lib-libXxf86vm-devel Requires: xorg-proto-dri2proto-devel >= %{dri2proto_ver} Requires: xorg-proto-glproto-devel >= %{glproto_ver} -Provides: EGL-devel = 1.4 +Provides: EGL-devel = 1.5 %description libEGL-devel Header files for Mesa implementation of EGL library. @@ -191,7 +205,7 @@ Summary(pl.UTF-8): Statyczna biblioteka Mesa EGL License: MIT Group: Development/Libraries Requires: %{name}-libEGL-devel = %{version}-%{release} -Provides: EGL-static = 1.4 +Provides: EGL-static = 1.5 %description libEGL-static Static Mesa EGL library. @@ -206,7 +220,7 @@ License: MIT Group: X11/Libraries Requires: %{name}-libglapi = %{version}-%{release} Requires: libdrm >= %{libdrm_ver} -Provides: OpenGL = 3.3 +Provides: OpenGL = 4.1 Provides: OpenGL-GLX = 1.4 Obsoletes: Mesa Obsoletes: Mesa-dri @@ -251,7 +265,7 @@ Requires: xorg-proto-dri2proto-devel >= %{dri2proto_ver} Requires: xorg-proto-glproto-devel >= %{glproto_ver} Suggests: OpenGL-doc-man Provides: OpenGL-GLX-devel = 1.4 -Provides: OpenGL-devel = 3.3 +Provides: OpenGL-devel = 4.1 Obsoletes: Mesa-devel Obsoletes: X11-OpenGL-devel < 1:7.0.0 Obsoletes: X11-OpenGL-devel-base < 1:7.0.0 @@ -270,7 +284,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 = 3.3 +Provides: OpenGL-static = 4.1 Obsoletes: Mesa-static Obsoletes: X11-OpenGL-static < 1:7.0.0 Obsoletes: XFree86-OpenGL-static < 1:7.0.0 @@ -290,6 +304,7 @@ Requires: %{name}-libglapi = %{version}-%{release} Provides: OpenGLES Provides: OpenGLESv1 = 1.1 Provides: OpenGLESv2 = 2.0 +Provides: OpenGLESv3 = 3.1 %description libGLES This package contains shared libraries of Mesa implementation of GLES @@ -317,6 +332,7 @@ Requires: %{name}-libGLES = %{version}-%{release} Provides: OpenGLES-devel Provides: OpenGLESv1-devel = 1.1 Provides: OpenGLESv2-devel = 2.0 +Provides: OpenGLESv3-devel = 3.1 %description libGLES-devel Header files for Mesa GLES libraries. @@ -377,6 +393,7 @@ Requires: libdrm >= %{libdrm_ver} Requires: llvm-libclc Requires: udev-libs >= 1:151 Provides: OpenCL = 1.1 +Provides: ocl-icd-driver %description OpenCL-icd This package contains Mesa implementation of OpenCL - standard for @@ -430,7 +447,7 @@ Summary(pl.UTF-8): Pliki nagłówkowe biblioteki Mesa OpenCL License: MIT Group: Development/Libraries Requires: %{name}-libOpenCL = %{version}-%{release} -Provides: OpenCL-devel = 1.1 +Provides: OpenCL-devel = 1.2 %description libOpenCL-devel Header files for Mesa OpenCL library. @@ -507,6 +524,18 @@ R600/R700 chips. Implementacja Mesa API XvMC dla kart ATI Radeon opartych na układach R600/R700. +%package -n libva-driver-gallium +Summary: VA driver for Gallium State Tracker +Summary(pl.UTF-8): Sterownik VA do Gallium +Group: Libraries +Requires: libva >= 1.3.0 + +%description -n libva-driver-gallium +VA driver for Gallium State Tracker. + +%description -n libva-driver-gallium -l pl.UTF-8 +Sterownik VA do Gallium. + %package libgbm Summary: Mesa Graphics Buffer Manager library Summary(pl.UTF-8): Biblioteka Mesa Graphics Buffer Manager @@ -535,116 +564,6 @@ Header file for Mesa Graphics Buffer Manager library. Plik nagłówkowy biblioteki Mesa Graphics Buffer Manager (zarządcy bufora graficznego). -%package gbm-driver-i915 -Summary: i915 driver for Mesa GBM framework -Summary(pl.UTF-8): Sterownik i915 dla szkieletu Mesa GBM -Group: Libraries -Requires: %{name}-libgbm = %{version}-%{release} -Obsoletes: Mesa-opencl-driver-i915 - -%description gbm-driver-i915 -i915 driver for Mesa Graphics Buffer Manager. It supports Intel -915/945/G33/Q33/Q35/Pineview chips. - -%description gbm-driver-i915 -l pl.UTF-8 -Sterownik i915 dla szkieletu Mesa Graphics Buffer Manager (zarządcy -bufora graficznego). Obsługuje układy Intela z serii -915/945/G33/Q33/Q35/Pineview. - -%package gbm-driver-nouveau -Summary: nouveau driver for Mesa GBM framework -Summary(pl.UTF-8): Sterownik nouveau dla szkieletu Mesa GBM -Group: Libraries -Requires: %{name}-libgbm = %{version}-%{release} -Obsoletes: Mesa-opencl-driver-nouveau - -%description gbm-driver-nouveau -nouveau driver for Mesa Graphics Buffer Manager. It supports NVidia -adapters. - -%description gbm-driver-nouveau -l pl.UTF-8 -Sterownik nouveau dla szkieletu Mesa Graphics Buffer Manager (zarządcy -bufora graficznego). Obsługuje karty graficzne firmy NVidia. - -%package gbm-driver-r300 -Summary: r300 driver for Mesa GBM framework -Summary(pl.UTF-8): Sterownik r300 dla szkieletu Mesa GBM -Group: Libraries -Requires: %{name}-libgbm = %{version}-%{release} -Obsoletes: Mesa-opencl-driver-r300 - -%description gbm-driver-r300 -r300 driver for Mesa Graphics Buffer Manager. It supports ATI Radeon -adapters based on R300/R400/RS690/R500 chips. - -%description gbm-driver-r300 -l pl.UTF-8 -Sterownik r300 dla szkieletu Mesa Graphics Buffer Manager (zarządcy -bufora graficznego). Obsługuje karty graficzne ATI Radeon oparte na -układach R300/R400/RS690/R500. - -%package gbm-driver-r600 -Summary: r600 driver for Mesa GBM framework -Summary(pl.UTF-8): Sterownik r600 dla szkieletu Mesa GBM -Group: Libraries -Requires: %{name}-libgbm = %{version}-%{release} -Obsoletes: Mesa-libllvmradeon -Obsoletes: Mesa-opencl-driver-r600 - -%description gbm-driver-r600 -r600 driver for Mesa Graphics Buffer Manager. It supports ATI Radeon -adapters based on R600/R700 chips. - -%description gbm-driver-r600 -l pl.UTF-8 -Sterownik r600 dla szkieletu Mesa Graphics Buffer Manager (zarządcy -bufora graficznego). Obsługuje karty graficzne ATI Radeon oparte na -układach R600/R700. - -%package gbm-driver-radeonsi -Summary: radeonsi driver for Mesa GBM framework -Summary(pl.UTF-8): Sterownik radeonsi dla szkieletu Mesa GBM -Group: Libraries -Requires: %{name}-libgbm = %{version}-%{release} -Obsoletes: Mesa-libllvmradeon -Obsoletes: Mesa-opencl-driver-radeonsi - -%description gbm-driver-radeonsi -radeonsi driver for Mesa Graphics Buffer Manager. It supports ATI -Radeon adapters based on Southern Islands chips. - -%description gbm-driver-radeonsi -l pl.UTF-8 -Sterownik radeonsi dla szkieletu Mesa Graphics Buffer Manager -(zarządcy bufora graficznego). Obsługuje karty graficzne ATI Radeon -oparte na układach Southern Islands. - -%package gbm-driver-swrast -Summary: Software (swrast) driver for Mesa GBM framework -Summary(pl.UTF-8): Sterownik programowy (swrast) dla szkieletu Mesa GBM -Group: Libraries -Requires: %{name}-libgbm = %{version}-%{release} -Obsoletes: Mesa-opencl-driver-swrast - -%description gbm-driver-swrast -Software (swrast) driver for Mesa Graphics Buffer Manager. - -%description gbm-driver-swrast -l pl.UTF-8 -Sterownik programowy (swrast) dla szkieletu Mesa Graphics Buffer -Manager (zarządcy bufora graficznego). - -%package gbm-driver-vmwgfx -Summary: vmwgfx driver for Mesa GBM framework -Summary(pl.UTF-8): Sterownik vmwgfx dla szkieletu Mesa GBM -Group: Libraries -Requires: %{name}-libgbm = %{version}-%{release} -Obsoletes: Mesa-opencl-driver-vmwgfx - -%description gbm-driver-vmwgfx -vmwgfx driver for Mesa Graphics Buffer Manager. It supports VMware -virtual video adapter. - -%description gbm-driver-vmwgfx -l pl.UTF-8 -Sterownik vmwgfx dla szkieletu Mesa Graphics Buffer Manager (zarządcy -bufora graficznego). Obsługuje wirtualną kartę graficzną VMware. - %package libglapi Summary: Mesa GL API shared library Summary(pl.UTF-8): Biblioteka współdzielona Mesa GL API @@ -801,6 +720,21 @@ X.org DRI driver for ATI Southern Islands card family. %description dri-driver-ati-radeon-SI -l pl.UTF-8 Sterownik X.org DRI dla rodziny kart ATI Southern Islands. +%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 +Requires: xorg-driver-video-freedreno +Requires: xorg-xserver-libglx(glapi) = %{glapi_ver} +Requires: xorg-xserver-server >= %{xserver_ver} + +%description dri-driver-freedreno +X.org DRI driver for Adreno chips. + +%description dri-driver-freedreno -l pl.UTF-8 +Sterownik X.org DRI 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 @@ -839,6 +773,23 @@ X.org DRI driver for Intel i965 card family (946GZ, 965G, 965Q, 965GM, Sterownik X.org DRI dla rodziny kart Intel i965 (946GZ, 965G, 965Q, 965GM, 965GME, GM45, G41, B43, Q45, G45). +%package dri-driver-intel-ilo +Summary: X.org DRI driver for Intel chips family +Summary(pl.UTF-8): Sterownik X.org DRI dla rodziny układów firmy Intel +License: MIT +Group: X11/Libraries +Requires: xorg-driver-video-intel +Requires: xorg-xserver-libglx(glapi) = %{glapi_ver} +Requires: xorg-xserver-server >= %{xserver_ver} + +%description dri-driver-intel-ilo +X.org DRI driver for Intel chips family. It supports Cherryview/ +Broadwell/Bay Trail/Haswell/Ivybridge/Sandybridge chips. + +%description dri-driver-intel-ilo -l pl.UTF-8 +Sterownik X.org DRI dla rodziny układów firmy Intel. Obsługuje układy +Cherryview/Broadwell/Bay Trail/Haswell/Ivybdidge/Sandybridge. + %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 @@ -868,6 +819,35 @@ 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-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 +Requires: xorg-driver-video-modesetting +Requires: xorg-xserver-libglx(glapi) = %{glapi_ver} +Requires: xorg-xserver-server >= %{xserver_ver} + +%description dri-driver-vc4 +X.org DRI driver for Broadcom VC4 chips. + +%description dri-driver-vc4 -l pl.UTF-8 +Sterownik X.org DRI 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 +Requires: xorg-xserver-libglx(glapi) = %{glapi_ver} +Requires: xorg-xserver-server >= %{xserver_ver} + +%description dri-driver-virgl +X.org DRI driver for QEMU VirGL. + +%description dri-driver-virgl -l pl.UTF-8 +Sterownik X.org DRI dla QEMU VirGL. + %package dri-driver-vmwgfx Summary: X.org DRI driver for VMware Summary(pl.UTF-8): Sterownik X.org DRI dla VMware @@ -883,13 +863,174 @@ X.org DRI driver for VMWare. %description dri-driver-vmwgfx -l pl.UTF-8 Sterownik X.org DRI 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 +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-i965 +Summary: i965 (ilo) driver for Mesa Gallium dynamic pipe loader +Summary(pl.UTF-8): Sterownik i965 (ilo) dla dynamicznego systemu potoków szkieletu Mesa Gallium +Group: Libraries + +%description pipe-driver-i965 +i965 (ilo) driver for Mesa Gallium dynamic pipe loader. It supports +Intel Cherryview/Broadwell/Bay Trail/Haswell/Ivybridge/Sandybridge +chips. + +%description pipe-driver-i965 -l pl.UTF-8 +Sterownik i965 (ilo) dla dynamicznego systemu potoków szkieletu Mesa +Gallium. Obsługuje układy Intela Cherryview/Broadwell/Bay Trail/ +Haswell/Ivybdidge/Sandybridge. + +%package pipe-driver-msm +Summary: msm (freedreno) driver for Mesa Gallium dynamic pipe loader +Summary(pl.UTF-8): Sterownik msm (freedreno) dla dynamicznego systemu potoków szkieletu Mesa Gallium +Group: Libraries + +%description pipe-driver-msm +msm (freedreno) driver for Mesa Gallium dynamic pipe loader. It +supports Adreno chips. + +%description pipe-driver-msm -l pl.UTF-8 +Sterownik msm (freedreno) dla dynamicznego systemu potoków szkieletu +Mesa Gallium. Obsługuje układy Adreno. + +%package pipe-driver-nouveau +Summary: nouveau driver for Mesa Gallium dynamic pipe loader +Summary(pl.UTF-8): Sterownik nouveau dla dynamicznego systemu potoków szkieletu Mesa Gallium +Group: Libraries +Obsoletes: Mesa-gbm-driver-nouveau +Obsoletes: Mesa-opencl-driver-nouveau + +%description pipe-driver-nouveau +nouveau driver for Mesa Gallium dynamic pipe loader. It supports +NVidia adapters. + +%description pipe-driver-nouveau -l pl.UTF-8 +Sterownik nouveau dla dynamicznego systemu potoków szkieletu Mesa +Gallium. Obsługuje karty graficzne firmy NVidia. + +%package pipe-driver-r300 +Summary: r300 driver for Mesa Gallium dynamic pipe loader +Summary(pl.UTF-8): Sterownik r300 dla dynamicznego systemu potoków szkieletu Mesa Gallium +Group: Libraries +Obsoletes: Mesa-gbm-driver-r300 +Obsoletes: Mesa-opencl-driver-r300 + +%description pipe-driver-r300 +r300 driver for Mesa Gallium dynamic pipe loader. It supports ATI +Radeon adapters based on R300/R400/RS690/R500 chips. + +%description pipe-driver-r300 -l pl.UTF-8 +Sterownik r300 dla dynamicznego systemu potoków szkieletu Mesa +Gallium. Obsługuje karty graficzne ATI Radeon oparte na układach +R300/R400/RS690/R500. + +%package pipe-driver-r600 +Summary: r600 driver for Mesa Gallium dynamic pipe loader +Summary(pl.UTF-8): Sterownik r600 dla dynamicznego systemu potoków szkieletu Mesa Gallium +Group: Libraries +Obsoletes: Mesa-gbm-driver-r600 +Obsoletes: Mesa-libllvmradeon +Obsoletes: Mesa-opencl-driver-r600 + +%description pipe-driver-r600 +r600 driver for Mesa Gallium dynamic pipe loader. It supports ATI +Radeon adapters based on R600/R700 chips. + +%description pipe-driver-r600 -l pl.UTF-8 +Sterownik r600 dla dynamicznego systemu potoków szkieletu Mesa +Gallium. Obsługuje karty graficzne ATI Radeon oparte na układach +R600/R700. + +%package pipe-driver-radeonsi +Summary: radeonsi driver for Mesa Gallium dynamic pipe loader +Summary(pl.UTF-8): Sterownik radeonsi dla dynamicznego systemu potoków szkieletu Mesa Gallium +Group: Libraries +Obsoletes: Mesa-gbm-driver-radeonsi +Obsoletes: Mesa-libllvmradeon +Obsoletes: Mesa-opencl-driver-radeonsi + +%description pipe-driver-radeonsi +radeonsi driver for Mesa Gallium dynamic pipe loader. It supports ATI +Radeon adapters based on Southern Islands chips. + +%description pipe-driver-radeonsi -l pl.UTF-8 +Sterownik radeonsi dla dynamicznego systemu potoków szkieletu Mesa +Gallium. Obsługuje karty graficzne ATI Radeon oparte na układach +Southern Islands. + +%package pipe-driver-swrast +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 +Obsoletes: Mesa-gbm-driver-swrast +Obsoletes: Mesa-opencl-driver-swrast + +%description pipe-driver-swrast +Software (swrast) driver for Mesa Gallium dynamic pipe loader. + +%description pipe-driver-swrast -l pl.UTF-8 +Sterownik programowy (swrast) dla dynamicznego systemu potoków +szkieletu Mesa Gallium. + +%package pipe-driver-vmwgfx +Summary: vmwgfx driver for Mesa Gallium dynamic pipe loader +Summary(pl.UTF-8): Sterownik vmwgfx dla dynamicznego systemu potoków szkieletu Mesa Gallium +Group: Libraries +Obsoletes: Mesa-gbm-driver-vmwgfx +Obsoletes: Mesa-opencl-driver-vmwgfx + +%description pipe-driver-vmwgfx +vmwgfx driver for Mesa Gallium dynamic pipe loader. It supports VMware +virtual video adapter. + +%description pipe-driver-vmwgfx -l pl.UTF-8 +Sterownik vmwgfx dla dynamicznego systemu potoków szkieletu Mesa +Gallium. Obsługuje wirtualną kartę graficzną VMware. + +%package d3d +Summary: Nine Direct3D9 driver (for Wine) +Summary(pl.UTF-8): Sterownik Direct3D9 Nine (dla Wine) +Group: Libraries +Requires: libdrm >= %{libdrm_ver} + +%description d3d +Nine Direct3D9 driver (for Wine). + +%description d3d -l pl.UTF-8 +Sterownik Direct3D9 Nine (dla Wine). + +%package d3d-devel +Summary: Nine Direct3D9 driver API +Summary(pl.UTF-8): API sterownika Direct3D9 Nine +Group: Development/Libraries +Requires: libdrm-devel >= %{libdrm_ver} + +%description d3d-devel +Nine Direct3D9 driver API. + +%description d3d-devel -l pl.UTF-8 +API sterownika Direct3D9 Nine. + %package -n libvdpau-driver-mesa-nouveau Summary: Mesa nouveau driver for the vdpau API Summary(pl.UTF-8): Sterownik Mesa nouveau dla API vdpau License: MIT Group: X11/Libraries Requires: libdrm >= %{libdrm_ver} -Requires: libvdpau >= 0.4.1 +Requires: libvdpau >= 1.1 Conflicts: libvdpau-driver-mesa %description -n libvdpau-driver-mesa-nouveau @@ -900,13 +1041,30 @@ Mesa nouveau driver for the vdpau API. It supports NVidia adapters Sterownik Mesa nouveau dla API vdpau. Obsługuje karty NVidia (NV40-NV96, NVa0). +%package -n libvdpau-driver-mesa-r300 +Summary: Mesa r300 driver for the vdpau API +Summary(pl.UTF-8): Sterownik Mesa r300 dla API vdpau +License: MIT +Group: X11/Libraries +Requires: libdrm >= %{libdrm_ver} +Requires: libvdpau >= 1.1 +Conflicts: libvdpau-driver-mesa + +%description -n libvdpau-driver-mesa-r300 +Mesa r300 driver for the vdpau API. It supports ATI Radeon adapters +based on R300 chips. + +%description -n libvdpau-driver-mesa-r300 -l pl.UTF-8 +Sterownik Mesa r300 dla API vdpau. Obsługuje karty ATI Radeon oparte +na układach R300. + %package -n libvdpau-driver-mesa-r600 Summary: Mesa r600 driver for the vdpau API Summary(pl.UTF-8): Sterownik Mesa r600 dla API vdpau License: MIT Group: X11/Libraries Requires: libdrm >= %{libdrm_ver} -Requires: libvdpau >= 0.4.1 +Requires: libvdpau >= 1.1 Conflicts: libvdpau-driver-mesa %description -n libvdpau-driver-mesa-r600 @@ -923,7 +1081,7 @@ Summary(pl.UTF-8): Sterownik Mesa radeonsi dla API vdpau License: MIT Group: X11/Libraries Requires: libdrm >= %{libdrm_ver} -Requires: libvdpau >= 0.4.1 +Requires: libvdpau >= 1.1 Conflicts: libvdpau-driver-mesa Obsoletes: Mesa-libllvmradeon @@ -943,6 +1101,9 @@ Group: X11/Libraries Requires: libdrm >= %{libdrm_ver} Requires: libxcb >= 1.8 Requires: libomxil-bellagio +Obsoletes: omxil-mesa-nouveau +Obsoletes: omxil-mesa-r600 +Obsoletes: omxil-mesa-radeonsi %description -n omxil-mesa Mesa driver for Bellagio OpenMAX IL API. @@ -1001,8 +1162,40 @@ Radeon adapters based on Southern Islands chips. Sterownik Mesa radeonsi dla API Bellagio OpenMAX IL. Obsługuje karty ATI Radeon oparte na układach Southern Islands. +%package vulkan-icd-intel +Summary: Mesa Vulkan driver for Intel GPUs +Summary(pl.UTF-8): Sterownik Vulkan dla GPU Intel +License: MIT +Group: Libraries +Suggests: vulkan(loader) +Requires: libdrm >= %{libdrm_ver} +Provides: vulkan(icd) = 1.0.3 + +%description vulkan-icd-intel +Mesa Vulkan driver for Intel GPUs. + +%description vulkan-icd-intel -l pl.UTF-8 +Sterownik Vulkan dla GPU Intela. + +%package vulkan-icd-intel-devel +Summary: Header files for Mesa Intel GPU Vulkan driver +Summary(pl.UTF-8): Pliki nagłówkowe sterownika Vulkan dla GPU Intel +License: MIT +Group: Development/Libraries +Requires: %{name}-vulkan-icd-intel = %{version}-%{release} + +%description vulkan-icd-intel-devel +eader files for Mesa Intel GPU Vulkan driver. + +%description vulkan-icd-intel-devel -l pl.UTF-8 +Pliki nagłówkowe sterownika Vulkan dla GPU Intel. + %prep -%setup -q +%setup -q -n Mesa-s%{snap} +%patch0 -p1 +#%patch1 -p1 +%patch2 -p1 +%patch3 -p1 %build %{__libtoolize} @@ -1011,7 +1204,7 @@ ATI Radeon oparte na układach Southern Islands. %{__automake} dri_drivers="r200 radeon \ -%if %{without gallium_intel} +%if %{without gallium_i915} i915 \ %endif i965 \ @@ -1024,7 +1217,7 @@ swrast" dri_drivers=$(echo $dri_drivers | xargs | tr ' ' ',') gallium_drivers="svga swrast \ -%if %{with gallium_intel} +%if %{with gallium_i915} i915 \ %endif %if %{with gallium_radeon} @@ -1035,19 +1228,28 @@ radeonsi \ %if %{with gallium_nouveau} nouveau %endif +ilo \ +virgl \ +%ifarch arm +freedreno \ +vc4 \ +%endif " gallium_drivers=$(echo $gallium_drivers | xargs | tr ' ' ',') +vulkan_drivers="intel" + %configure \ --disable-silent-rules \ - --enable-shared \ - --enable-glx-tls \ - --enable-selinux \ - %{?with_static_libs:--enable-static} \ %{__enable gbm} \ + --enable-glx-tls \ --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 \ @@ -1060,8 +1262,9 @@ gallium_drivers=$(echo $gallium_drivers | xargs | tr ' ' ',') %{__enable egl gallium-egl} \ %{__enable gbm gallium-gbm} \ %{__enable ocl_icd opencl-icd} \ - %{__enable opencl opencl} \ - %{?with_egl:--enable-openvg} \ + %{?with_nine:--enable-nine} \ + %{__enable opencl} \ + %{__enable va} \ --enable-vdpau \ %{?with_omx:--enable-omx} \ %{?with_xa:--enable-xa} \ @@ -1071,7 +1274,13 @@ gallium_drivers=$(echo $gallium_drivers | xargs | tr ' ' ',') --without-gallium-drivers \ %endif --with-dri-drivers=${dri_drivers} \ - --with-dri-driverdir=%{_libdir}/xorg/modules/dri + --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 + +echo "#define MESA_GIT_SHA1 \"$(xzcat %{SOURCE0}|git get-tar-commit-id|cut -c-7)\"" > src/mesa/main/git_sha1.h %{__make} @@ -1084,18 +1293,26 @@ rm -rf $RPM_BUILD_ROOT DESTDIR=$RPM_BUILD_ROOT # strip out undesirable headers -%{__rm} $RPM_BUILD_ROOT%{_includedir}/GL/{wglext,wmesa}.h +%{__rm} $RPM_BUILD_ROOT%{_includedir}/GL/wglext.h # dlopened by soname -%{__rm} $RPM_BUILD_ROOT%{_libdir}/libXvMC*.so +%{?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} -%{__rm} $RPM_BUILD_ROOT%{_libdir}/egl/egl_*.la -%{__rm} $RPM_BUILD_ROOT%{_libdir}/gallium-pipe/pipe_*.la -%{__rm} $RPM_BUILD_ROOT%{_libdir}/gbm/gbm_*.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 %{with va} +%{?with_gallium:%{__rm} $RPM_BUILD_ROOT%{_libdir}/libva/dri/gallium_drv_video.la} +%endif + +# these are provided by vulkan-devel +rm -r $RPM_BUILD_ROOT%{_includedir}/vulkan/{vk_platform.h,vulkan.h} # remove "OS ABI: Linux 2.4.20" tag, so private copies (nvidia or fglrx), # set up via /etc/ld.so.conf.d/*.conf will be preferred over this @@ -1144,10 +1361,6 @@ rm -rf $RPM_BUILD_ROOT %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/libEGL.so.*.* %attr(755,root,root) %ghost %{_libdir}/libEGL.so.1 -%if %{with gallium} -%dir %{_libdir}/egl -%attr(755,root,root) %{_libdir}/egl/egl_gallium.so -%endif %files libEGL-devel %defattr(644,root,root,755) @@ -1169,7 +1382,7 @@ rm -rf $RPM_BUILD_ROOT %files libGL %defattr(644,root,root,755) -%doc docs/{*.html,README.UVD,relnotes/*.html} +%doc docs/{*.html,README.UVD,patents.txt,relnotes/*.html} %attr(755,root,root) %{_libdir}/libGL.so.*.* %attr(755,root,root) %ghost %{_libdir}/libGL.so.1 # symlink for binary apps which fail to conform Linux OpenGL ABI @@ -1241,11 +1454,15 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{_libdir}/libMesaOpenCL.so %attr(755,root,root) %{_libdir}/libMesaOpenCL.so.*.*.* %attr(755,root,root) %ghost %{_libdir}/libMesaOpenCL.so.1 +# currently only OpenCL uses dynamic pipe loader +%dir %{_libdir}/gallium-pipe %else %files libOpenCL %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/libOpenCL.so.*.*.* %attr(755,root,root) %ghost %{_libdir}/libOpenCL.so.1 +# currently only OpenCL uses dynamic pipe loader +%dir %{_libdir}/gallium-pipe %files libOpenCL-devel %defattr(644,root,root,755) @@ -1254,7 +1471,7 @@ rm -rf $RPM_BUILD_ROOT %endif %endif -%if %{with egl} && %{with gallium} +%if %{with egl} && %{with openvg} && %{with gallium} %files libOpenVG %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/libOpenVG.so.*.*.* @@ -1281,6 +1498,12 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{_libdir}/libXvMCr600.so.1.0.0 %attr(755,root,root) %ghost %{_libdir}/libXvMCr600.so.1 %endif + +%if %{with va} +%files -n libva-driver-gallium +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/libva/dri/gallium_drv_video.so +%endif %endif %if %{with gbm} @@ -1288,11 +1511,6 @@ rm -rf $RPM_BUILD_ROOT %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/libgbm.so.*.* %attr(755,root,root) %ghost %{_libdir}/libgbm.so.1 -%if %{with gallium} -%dir %{_libdir}/gbm -%dir %{_libdir}/gallium-pipe -%attr(755,root,root) %{_libdir}/gbm/gbm_gallium_drm.so -%endif %files libgbm-devel %defattr(644,root,root,755) @@ -1301,42 +1519,6 @@ rm -rf $RPM_BUILD_ROOT %{_pkgconfigdir}/gbm.pc %endif -%if %{with gallium} -%if %{with gallium_intel} -%files gbm-driver-i915 -%defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/gallium-pipe/pipe_i915.so -%endif - -%if %{with gallium_nouveau} -%files gbm-driver-nouveau -%defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/gallium-pipe/pipe_nouveau.so -%endif - -%if %{with gallium_radeon} -%files gbm-driver-r300 -%defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/gallium-pipe/pipe_r300.so - -%files gbm-driver-r600 -%defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/gallium-pipe/pipe_r600.so - -%files gbm-driver-radeonsi -%defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/gallium-pipe/pipe_radeonsi.so -%endif - -%files gbm-driver-swrast -%defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/gallium-pipe/pipe_swrast.so - -%files gbm-driver-vmwgfx -%defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/gallium-pipe/pipe_vmwgfx.so -%endif - %files libglapi %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/libglapi.so.*.* @@ -1400,6 +1582,10 @@ rm -rf $RPM_BUILD_ROOT %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/xorg/modules/dri/radeonsi_dri.so %endif + +%files dri-driver-intel-ilo +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/xorg/modules/dri/ilo_dri.so %endif %files dri-driver-intel-i915 @@ -1419,15 +1605,85 @@ rm -rf $RPM_BUILD_ROOT %files dri-driver-swrast %defattr(644,root,root,755) +%if %{with gallium} %attr(755,root,root) %{_libdir}/xorg/modules/dri/kms_swrast_dri.so +%endif %attr(755,root,root) %{_libdir}/xorg/modules/dri/swrast_dri.so %if %{with gallium} +%ifarch arm +%files dri-driver-vc4 +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/xorg/modules/dri/vc4_dri.so +%endif + +%files dri-driver-virgl +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/xorg/modules/dri/virtio_gpu_dri.so + %files dri-driver-vmwgfx %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/xorg/modules/dri/vmwgfx_dri.so %endif +%if %{with gallium} +%if %{with gallium_i915} +%files pipe-driver-i915 +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/gallium-pipe/pipe_i915.so +%endif + +%files pipe-driver-i965 +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/gallium-pipe/pipe_i965.so + +%ifarch arm +%files pipe-driver-msm +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/gallium-pipe/pipe_msm.so +%endif + +%if %{with gallium_nouveau} +%files pipe-driver-nouveau +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/gallium-pipe/pipe_nouveau.so +%endif + +%if %{with gallium_radeon} +%files pipe-driver-r300 +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/gallium-pipe/pipe_r300.so + +%files pipe-driver-r600 +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/gallium-pipe/pipe_r600.so + +%files pipe-driver-radeonsi +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/gallium-pipe/pipe_radeonsi.so +%endif + +%files pipe-driver-swrast +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/gallium-pipe/pipe_swrast.so + +%files pipe-driver-vmwgfx +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/gallium-pipe/pipe_vmwgfx.so +%endif + +%if %{with nine} +%files d3d +%defattr(644,root,root,755) +%dir %{_libdir}/d3d +%attr(755,root,root) %{_libdir}/d3d/d3dadapter9.so* + +%files d3d-devel +%defattr(644,root,root,755) +%{_includedir}/d3dadapter +%{_pkgconfigdir}/d3d.pc +%endif + %if %{with gallium} # ldconfig is not used in vdpau tree, so package all symlinks %if %{with gallium_nouveau} @@ -1439,6 +1695,12 @@ rm -rf $RPM_BUILD_ROOT %endif %if %{with gallium_radeon} +%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 +%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 @@ -1457,22 +1719,13 @@ rm -rf $RPM_BUILD_ROOT %files -n omxil-mesa %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/bellagio/libomx_mesa.so - -%if 0 -%if %{with gallium_nouveau} -%files -n omxil-mesa-nouveau -%defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/bellagio/libomx_nouveau.so %endif -%if %{with gallium_radeon} -%files -n omxil-mesa-r600 +%files vulkan-icd-intel %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/bellagio/libomx_r600.so +%{_libdir}/libvulkan_intel.so +%{_datadir}/vulkan/icd.d/*.json -%files -n omxil-mesa-radeonsi +%files vulkan-icd-intel-devel %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/bellagio/libomx_radeonsi.so -%endif -%endif -%endif +%{_includedir}/vulkan/vulkan_intel.h