X-Git-Url: http://git.pld-linux.org/?p=packages%2FMesa.git;a=blobdiff_plain;f=Mesa.spec;h=5f5e154f0c07c9047f7891344285280c109a5395;hp=c9d11e7591a2719146be6acc7a009398a299f0a2;hb=1f88045a6a540a56c0cce81f165ef4f991864e52;hpb=5c3acaa003210942edb4aab9c8557f0a1942fa79 diff --git a/Mesa.spec b/Mesa.spec index c9d11e7..5f5e154 100644 --- a/Mesa.spec +++ b/Mesa.spec @@ -2,6 +2,7 @@ # TODO: # - check if gallium_intel note is still valid, switch the bcond if not # - consider: +# - ARM drivers (ilo,freedreno,vc4)? # - 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) # @@ -9,98 +10,124 @@ %bcond_without gallium # gallium drivers %bcond_with gallium_intel # gallium i915 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 opencl # OpenCL library +%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 # # 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 -# internal API version (libdricore); a.b.c for Mesa-a.b.c, a.b.0 for Mesa-a.b -%define int_sover 9.1.6 +%define glapi_ver 7.1.0 # minimal supported xserver version -%define xserver_ver 1.5.0 +%define xserver_ver 1.5.0 # other packages -%define libdrm_ver 2.4.42 -%define dri2proto_ver 2.6 -%define glproto_ver 1.4.14 +%define libdrm_ver 2.4.60 +%define dri2proto_ver 2.6 +%define dri3proto_ver 1.0 +%define glproto_ver 1.4.14 +%define presentproto_ver 1.0 + +# no clang/llvm on x32 yet +%ifarch x32 +%undefine with_gallium +%endif + +%if %{without gallium} +%undefine with_gallium_intel +%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 Summary: Free OpenGL implementation Summary(pl.UTF-8): Wolnodostępna implementacja standardu OpenGL Name: Mesa -Version: 9.1.6 +Version: 10.6.0 Release: 1 License: MIT (core) and others - see license.html file Group: X11/Libraries -Source0: ftp://ftp.freedesktop.org/pub/mesa/%{version}/%{name}Lib-%{version}.tar.bz2 -# Source0-md5: 443a2a352667294b53d56cb1a74114e9 -Patch0: %{name}-link.patch -Patch1: %{name}-llvm.patch +Source0: ftp://ftp.freedesktop.org/pub/mesa/%{version}/mesa-%{version}.tar.xz +# Source0-md5: 1a7e2e9f17eff9307fd14fb6cc70783b +Patch0: missing-type.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 -%{?with_opencl:BuildRequires: gcc >= 6:4.6} +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 +%{?with_va:BuildRequires: libva-devel >= 1.3.0} +%{?with_va:BuildRequires: pkgconfig(libva) >= 0.35.0} BuildRequires: libvdpau-devel >= 0.4.1 -BuildRequires: libxcb-devel >= 1.9 -BuildRequires: llvm-devel >= 3.3 +BuildRequires: libxcb-devel >= 1.10 +%{?with_gallium_radeon:BuildRequires: llvm-devel >= 3.4.2} %{?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: pkgconfig BuildRequires: pkgconfig(talloc) >= 2.0.1 +BuildRequires: pkgconfig(xcb-dri3) +BuildRequires: pkgconfig(xcb-present) BuildRequires: python >= 2 -BuildRequires: python-libxml2 +BuildRequires: python-Mako >= 0.3.4 BuildRequires: python-modules >= 2 BuildRequires: rpmbuild(macros) >= 1.470 BuildRequires: sed >= 4.0 -%{?with_egl:BuildRequires: udev-devel >= 1:150} +%{?with_egl:BuildRequires: udev-devel >= 1:151} # wayland-{client,server} -%{?with_wayland:BuildRequires: wayland-devel >= 1.0.2} +%{?with_wayland:BuildRequires: wayland-devel >= 1.2.0} BuildRequires: xorg-lib-libXdamage-devel 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-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 -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_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(?) -# libdricore: internal library, not linked with libglapi # 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.* libdricore.*.so.* libgbm.*.so.* +%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 @@ -130,11 +157,9 @@ Requires: %{name}-libglapi = %{version}-%{release} Requires: OpenGL >= 1.2 Requires: libdrm >= %{libdrm_ver} Requires: libxcb >= 1.9 -%{?with_wayland:Requires: wayland >= 1.0.2} +%{?with_wayland:Requires: wayland >= 1.2.0} %if %{with gallium} -# for egl_gallium.so -Requires: %{name}-libOpenVG = %{version}-%{release} -Requires: udev-libs >= 1:150 +Requires: udev-libs >= 1:151 %endif %if %{with gbm} Requires: %{name}-libgbm = %{version}-%{release} @@ -162,7 +187,7 @@ Requires: %{name}-libEGL = %{version}-%{release} Requires: libdrm-devel >= %{libdrm_ver} Requires: xorg-lib-libX11-devel Requires: xorg-lib-libXdamage-devel -Requires: xorg-lib-libXext-devel +Requires: xorg-lib-libXext-devel >= 1.0.5 Requires: xorg-lib-libXfixes-devel Requires: xorg-lib-libXxf86vm-devel Requires: xorg-proto-dri2proto-devel >= %{dri2proto_ver} @@ -196,10 +221,11 @@ License: MIT Group: X11/Libraries Requires: %{name}-libglapi = %{version}-%{release} Requires: libdrm >= %{libdrm_ver} -Provides: OpenGL = 3.1 +Provides: OpenGL = 3.3 Provides: OpenGL-GLX = 1.4 Obsoletes: Mesa Obsoletes: Mesa-dri +Obsoletes: Mesa-dri-core < 10.0.0 Obsoletes: X11-OpenGL-libGL < 1:7.0.0 Obsoletes: XFree86-OpenGL-libGL < 1:7.0.0 @@ -234,13 +260,13 @@ Requires: OpenGL >= 1.5 Requires: libdrm-devel >= %{libdrm_ver} Requires: xorg-lib-libX11-devel Requires: xorg-lib-libXdamage-devel -Requires: xorg-lib-libXext-devel +Requires: xorg-lib-libXext-devel >= 1.0.5 Requires: xorg-lib-libXxf86vm-devel 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.1 +Provides: OpenGL-devel = 3.3 Obsoletes: Mesa-devel Obsoletes: X11-OpenGL-devel < 1:7.0.0 Obsoletes: X11-OpenGL-devel-base < 1:7.0.0 @@ -259,7 +285,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.1 +Provides: OpenGL-static = 3.3 Obsoletes: Mesa-static Obsoletes: X11-OpenGL-static < 1:7.0.0 Obsoletes: XFree86-OpenGL-static < 1:7.0.0 @@ -356,6 +382,39 @@ Static OSMesa (off-screen renderer) library. %description libOSMesa-static -l pl.UTF-8 Biblioteka statyczna OSMesa (renderująca bitmapy w pamięci). +%package OpenCL-icd +Summary: Mesa implementation of OpenCL (Compuing Language) API ICD +Summary(pl.UTF-8): Implementacja Mesa API OpenCL (języka obliczeń) ICD +License: MIT +Group: Libraries +Requires: filesystem >= 4.0-29 +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 +cross-platform, parallel programming of modern processors found in +personal computers, servers and handheld/embedded devices. OpenCL +specification can be found on Khronos Group site: +. Mesa implements OpenCL 1.1. + +The implementation is provided as an installable client driver (ICD) +for use with the ocl-icd loader. + +%description OpenCL-icd -l pl.UTF-8 +Ten pakiet zawiera implementację Mesa standardu OpenCL - standardu +wieloplatformowego, równoległego programowania nowoczesnych +procesorów, jakie znajdują się w komputerach osobistych, serwerach +oraz urządzeniach przenośnych/wbudowanych. Specyfikację OpenCL można +znaleźć na stronie Khronos Group: . +Mesa zawiera implementację OpenCL w wersji 1.1. + +Implementacja dostarczona jest w postaci instalowalnego sterownika klienta +(ICD), który może być użyty z loaderem ocl-icd. + %package libOpenCL Summary: Mesa implementation of OpenCL (Compuing Language) API Summary(pl.UTF-8): Implementacja Mesa API OpenCL (języka obliczeń) @@ -363,7 +422,7 @@ License: MIT Group: Libraries Requires: libdrm >= %{libdrm_ver} Requires: llvm-libclc -Requires: udev-libs >= 1:150 +Requires: udev-libs >= 1:151 Provides: OpenCL = 1.1 %description libOpenCL @@ -447,29 +506,11 @@ Mesa implementation of XvMC API for NVidia adapters (NV40-NV96, NVa0). %description libXvMC-nouveau -l pl.UTF-8 Implementacja Mesa API XvMC dla kart NVidia (NV40-NV96, NVa0). -%package libXvMC-r300 -Summary: Mesa implementation of XvMC API for ATI Radeon R300 series adapters -Summary(pl.UTF-8): Implementacja Mesa API XvMC dla kart ATI Radeon z serii R300 -License: MIT -Group: Libraries -Requires: libdrm >= %{libdrm_ver} -Requires: xorg-lib-libXvMC >= 1.0.6 -Conflicts: Mesa-libXvMC - -%description libXvMC-r300 -Mesa implementation of XvMC API for ATI Radeon adapters based on -R300/R400/RS690/R500 chips. - -%description libXvMC-r300 -l pl.UTF-8 -Implementacja Mesa API XvMC dla kart ATI Radeon opartych na układach -R300/R400/RS690/R500. - %package libXvMC-r600 Summary: Mesa implementation of XvMC API for ATI Radeon R600 series adapters Summary(pl.UTF-8): Implementacja Mesa API XvMC dla kart ATI Radeon z serii R600 License: MIT Group: Libraries -Requires: %{name}-libllvmradeon = %{version}-%{release} Requires: libdrm >= %{libdrm_ver} Requires: xorg-lib-libXvMC >= 1.0.6 Conflicts: Mesa-libXvMC @@ -482,27 +523,24 @@ R600/R700 chips. Implementacja Mesa API XvMC dla kart ATI Radeon opartych na układach R600/R700. -%package libXvMC-softpipe -Summary: Mesa softpipe implementation of XvMC API -Summary(pl.UTF-8): Implementacja Mesa softpipe API XvMC -License: MIT +%package -n libva-driver-gallium +Summary: VA driver for Gallium State Tracker +Summary(pl.UTF-8): Sterownik VA do Gallium Group: Libraries -Requires: libdrm >= %{libdrm_ver} -Requires: xorg-lib-libXvMC >= 1.0.6 -Conflicts: Mesa-libXvMC +Requires: libva >= 1.3.0 -%description libXvMC-softpipe -Mesa softpipe implementation of XvMC API. +%description -n libva-driver-gallium +VA driver for Gallium State Tracker. -%description libXvMC-softpipe -l pl.UTF-8 -Implementacja Mesa softpipe API XvMC. +%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 Group: Libraries Requires: %{name}-libglapi = %{version}-%{release} -Requires: udev-libs >= 1:150 +Requires: udev-libs >= 1:151 Conflicts: Mesa-libEGL < 8.0.1-2 %description libgbm @@ -516,7 +554,7 @@ Summary: Header file for Mesa Graphics Buffer Manager library Summary(pl.UTF-8): Plik nagłówkowy biblioteki Mesa Graphics Buffer Manager Group: Development/Libraries Requires: %{name}-libgbm = %{version}-%{release} -Requires: udev-devel >= 1:150 +Requires: udev-devel >= 1:151 %description libgbm-devel Header file for Mesa Graphics Buffer Manager library. @@ -577,7 +615,7 @@ Summary: r600 driver for Mesa GBM framework Summary(pl.UTF-8): Sterownik r600 dla szkieletu Mesa GBM Group: Libraries Requires: %{name}-libgbm = %{version}-%{release} -Requires: %{name}-libllvmradeon = %{version}-%{release} +Obsoletes: Mesa-libllvmradeon Obsoletes: Mesa-opencl-driver-r600 %description gbm-driver-r600 @@ -594,7 +632,7 @@ Summary: radeonsi driver for Mesa GBM framework Summary(pl.UTF-8): Sterownik radeonsi dla szkieletu Mesa GBM Group: Libraries Requires: %{name}-libgbm = %{version}-%{release} -Requires: %{name}-libllvmradeon = %{version}-%{release} +Obsoletes: Mesa-libllvmradeon Obsoletes: Mesa-opencl-driver-radeonsi %description gbm-driver-radeonsi @@ -648,17 +686,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 libllvmradeon -Summary: LLVM radeon target library -Summary(pl.UTF-8): Biblioteka platformy radeon dla LLVM-a -Group: Libraries - -%description libllvmradeon -LLVM radeon target library. - -%description libllvmradeon -l pl.UTF-8 -Biblioteka platformy radeon dla LLVM-a. - %package libwayland-egl Summary: Wayland EGL library Summary(pl.UTF-8): Biblioteka Wayland EGL @@ -722,26 +749,11 @@ Khronos platform header file. %description khrplatform-devel -l pl.UTF-8 Plik nagłówkowy platformy Khronos. -%package dri-core -Summary: X.org DRI core library -Summary(pl.UTF-8): Biblioteka X.org DRI core -License: MIT -Group: X11/Libraries -Requires: xorg-xserver-libglx(glapi) = %{glapi_ver} -Requires: xorg-xserver-server >= %{xserver_ver} - -%description dri-core -X.org DRI core library. - -%description dri-core -l pl.UTF-8 -Biblioteka X.org DRI core. - %package dri-driver-ati-radeon-R100 Summary: X.org DRI driver for ATI R100 card family Summary(pl.UTF-8): Sterownik X.org DRI dla rodziny kart ATI R100 License: MIT Group: X11/Libraries -Requires: %{name}-dri-core = %{version}-%{release} Requires: xorg-driver-video-ati Requires: xorg-xserver-libglx(glapi) = %{glapi_ver} Requires: xorg-xserver-server >= %{xserver_ver} @@ -758,7 +770,6 @@ Summary: X.org DRI driver for ATI R200 card family Summary(pl.UTF-8): Sterownik X.org DRI dla rodziny kart ATI R200 License: MIT Group: X11/Libraries -Requires: %{name}-dri-core = %{version}-%{release} Requires: xorg-driver-video-ati Requires: xorg-xserver-libglx(glapi) = %{glapi_ver} Requires: xorg-xserver-server >= %{xserver_ver} @@ -791,7 +802,6 @@ 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 -Requires: %{name}-libllvmradeon = %{version}-%{release} Requires: radeon-ucode Requires: xorg-driver-video-ati Requires: xorg-xserver-libglx(glapi) = %{glapi_ver} @@ -808,7 +818,6 @@ 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 -Requires: %{name}-libllvmradeon = %{version}-%{release} Requires: radeon-ucode Requires: xorg-driver-video-ati Requires: xorg-xserver-libglx(glapi) = %{glapi_ver} @@ -825,9 +834,6 @@ 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 %{without gallium_intel} -Requires: %{name}-dri-core = %{version}-%{release} -%endif Requires: xorg-driver-video-intel Requires: xorg-xserver-libglx(glapi) = %{glapi_ver} Requires: xorg-xserver-server >= %{xserver_ver} @@ -847,7 +853,6 @@ Summary: X.org DRI driver for Intel i965 card family Summary(pl.UTF-8): Sterownik X.org DRI dla rodziny kart Intel i965 License: MIT Group: X11/Libraries -Requires: %{name}-dri-core = %{version}-%{release} Requires: xorg-driver-video-intel Requires: xorg-xserver-libglx(glapi) = %{glapi_ver} Requires: xorg-xserver-server >= %{xserver_ver} @@ -867,7 +872,6 @@ 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 -Requires: %{name}-dri-core = %{version}-%{release} Requires: xorg-driver-video-nouveau Requires: xorg-xserver-libglx(glapi) = %{glapi_ver} Requires: xorg-xserver-server >= %{xserver_ver} @@ -883,7 +887,6 @@ 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 -Requires: %{name}-dri-core = %{version}-%{release} Requires: xorg-xserver-libglx(glapi) = %{glapi_ver} Requires: xorg-xserver-server >= %{xserver_ver} @@ -908,6 +911,30 @@ X.org DRI driver for VMWare. %description dri-driver-vmwgfx -l pl.UTF-8 Sterownik X.org DRI dla 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 @@ -936,18 +963,17 @@ 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/R400/RS690/R500 chips. +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/R400/RS690/R500. +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: %{name}-libllvmradeon = %{version}-%{release} Requires: libdrm >= %{libdrm_ver} Requires: libvdpau >= 0.4.1 Conflicts: libvdpau-driver-mesa @@ -965,10 +991,10 @@ Summary: Mesa radeonsi driver for the vdpau API Summary(pl.UTF-8): Sterownik Mesa radeonsi dla API vdpau License: MIT Group: X11/Libraries -Requires: %{name}-libllvmradeon = %{version}-%{release} Requires: libdrm >= %{libdrm_ver} Requires: libvdpau >= 0.4.1 Conflicts: libvdpau-driver-mesa +Obsoletes: Mesa-libllvmradeon %description -n libvdpau-driver-mesa-radeonsi Mesa radeonsi driver for the vdpau API. It supports ATI Radeon @@ -978,25 +1004,78 @@ adapters based on Southern Islands chips. Sterownik Mesa radeonsi dla API vdpau. Obsługuje karty ATI Radeon oparte na układach Southern Islands. -%package -n libvdpau-driver-mesa-softpipe -Summary: Mesa softpipe driver for the vdpau API -Summary(pl.UTF-8): Sterownik Mesa softpipe dla API vdpau +%package -n omxil-mesa +Summary: Mesa driver for Bellagio OpenMAX IL API +Summary(pl.UTF-8): Sterownik Mesa nouveau dla API Bellagio OpenMAX IL License: MIT Group: X11/Libraries Requires: libdrm >= %{libdrm_ver} -Requires: libvdpau >= 0.4.1 -Conflicts: libvdpau-driver-mesa +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. + +%description -n omxil-mesa -l pl.UTF-8 +Sterownik Mesa dla API Bellagio OpenMAX IL. + +%package -n omxil-mesa-nouveau +Summary: Mesa nouveau driver for Bellagio OpenMAX IL API +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: libomxil-bellagio + +%description -n omxil-mesa-nouveau +Mesa nouveau driver for Bellagio OpenMAX IL API. It supports NVidia +adapters (NV40-NV96, NVa0). -%description -n libvdpau-driver-mesa-softpipe -Mesa softpipe driver for the vdpau API. +%description -n omxil-mesa-nouveau -l pl.UTF-8 +Sterownik Mesa nouveau dla API Bellagio OpenMAX IL. Obsługuje karty +NVidia (NV40-NV96, NVa0). -%description -n libvdpau-driver-mesa-softpipe -l pl.UTF-8 -Sterownik Mesa softpipe dla API vdpau. +%package -n omxil-mesa-r600 +Summary: Mesa r600 driver for Bellagio OpenMAX IL API +Summary(pl.UTF-8): Sterownik Mesa r600 dla API Bellagio OpenMAX IL +License: MIT +Group: X11/Libraries +Requires: libdrm >= %{libdrm_ver} +Requires: libxcb >= 1.8 +Requires: libomxil-bellagio + +%description -n omxil-mesa-r600 +Mesa r600 driver for Bellagio OpenMAX IL API. It supports ATI Radeon +adapters based on R600/R700 chips. + +%description -n omxil-mesa-r600 -l pl.UTF-8 +Sterownik Mesa r600 dla API Bellagio OpenMAX IL. Obsługuje karty ATI +Radeon oparte na układach R600/R700. + +%package -n omxil-mesa-radeonsi +Summary: Mesa radeonsi driver for Bellagio OpenMAX IL API +Summary(pl.UTF-8): Sterownik Mesa radeonsi dla API Bellagio OpenMAX IL +License: MIT +Group: X11/Libraries +Requires: libdrm >= %{libdrm_ver} +Requires: libxcb >= 1.8 +Requires: libomxil-bellagio + +%description -n omxil-mesa-radeonsi +Mesa radeonsi driver for Bellagio OpenMAX IL API. It supports ATI +Radeon adapters based on Southern Islands chips. + +%description -n omxil-mesa-radeonsi -l pl.UTF-8 +Sterownik Mesa radeonsi dla API Bellagio OpenMAX IL. Obsługuje karty +ATI Radeon oparte na układach Southern Islands. %prep -%setup -q +%setup -q -n mesa-%{version} %patch0 -p1 -%patch1 -p1 %build %{__libtoolize} @@ -1021,9 +1100,11 @@ gallium_drivers="svga swrast \ %if %{with gallium_intel} i915 \ %endif +%if %{with gallium_radeon} r300 \ r600 \ radeonsi \ +%endif %if %{with gallium_nouveau} nouveau %endif @@ -1033,13 +1114,14 @@ gallium_drivers=$(echo $gallium_drivers | xargs | tr ' ' ',') %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 \ @@ -1048,23 +1130,29 @@ gallium_drivers=$(echo $gallium_drivers | xargs | tr ' ' ',') %endif %if %{with gallium} --enable-gallium-llvm \ - --with-llvm-shared-libs \ + --enable-llvm-shared-libs \ %{__enable egl gallium-egl} \ %{__enable gbm gallium-gbm} \ - %{?with_opencl:--enable-opencl} \ - %{?with_egl:--enable-openvg} \ + %{__enable ocl_icd opencl-icd} \ + %{?with_nine:--enable-nine} \ + %{__enable opencl} \ --enable-vdpau \ + %{?with_omx:--enable-omx} \ %{?with_xa:--enable-xa} \ --enable-xvmc \ + --with-dri-drivers=${dri_drivers} \ + --with-dri-driverdir=%{_libdir}/xorg/modules/dri \ --with-gallium-drivers=${gallium_drivers} \ %else --without-gallium-drivers \ %endif - --with-dri-drivers=${dri_drivers} \ - --with-dri-driverdir=%{_libdir}/xorg/modules/dri + --with-sha1=libnettle \ + --with-va-libdir=%{_libdir}/libva/dri %{__make} +%{?with_tests:%{__make} check} + %install rm -rf $RPM_BUILD_ROOT @@ -1072,19 +1160,21 @@ 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}/lib{dricore%{int_sover},glapi}.so +%{__rm} $RPM_BUILD_ROOT%{_libdir}/libglapi.so # dlopened -%{__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 -%{__rm} $RPM_BUILD_ROOT%{_libdir}/vdpau/libvdpau_*.la -%{__rm} $RPM_BUILD_ROOT%{_libdir}/xorg/modules/dri/*.la +%{?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 +%{?with_gallium:%{__rm} $RPM_BUILD_ROOT%{_libdir}/libva/dri/gallium_drv_video.la} # 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 @@ -1113,12 +1203,8 @@ rm -rf $RPM_BUILD_ROOT %post libXvMC-nouveau -p /sbin/ldconfig %postun libXvMC-nouveau -p /sbin/ldconfig -%post libXvMC-r300 -p /sbin/ldconfig -%postun libXvMC-r300 -p /sbin/ldconfig %post libXvMC-r600 -p /sbin/ldconfig %postun libXvMC-r600 -p /sbin/ldconfig -%post libXvMC-softpipe -p /sbin/ldconfig -%postun libXvMC-softpipe -p /sbin/ldconfig %post libgbm -p /sbin/ldconfig %postun libgbm -p /sbin/ldconfig @@ -1126,27 +1212,17 @@ rm -rf $RPM_BUILD_ROOT %post libglapi -p /sbin/ldconfig %postun libglapi -p /sbin/ldconfig -%post libllvmradeon -p /sbin/ldconfig -%postun libllvmradeon -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 -%post dri-core -p /sbin/ldconfig -%postun dri-core -p /sbin/ldconfig - %if %{with egl} %files libEGL %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) @@ -1154,6 +1230,7 @@ rm -rf $RPM_BUILD_ROOT %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 @@ -1167,18 +1244,20 @@ rm -rf $RPM_BUILD_ROOT %files libGL %defattr(644,root,root,755) -%doc docs/{*.html,README.{MITS,QUAKE,THREADS},RELNOTES*} +%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 # (and dlopen libGL.so instead of libGL.so.1; the same does Mesa libEGL) %attr(755,root,root) %{_libdir}/libGL.so +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/drirc %files libGL-devel %defattr(644,root,root,755) -%doc docs/*.spec +%doc docs/specs/* %dir %{_includedir}/GL %{_includedir}/GL/gl.h +%{_includedir}/GL/glcorearb.h %{_includedir}/GL/glext.h %{_includedir}/GL/gl_mangle.h %{_includedir}/GL/glx.h @@ -1230,6 +1309,14 @@ rm -rf $RPM_BUILD_ROOT %endif %if %{with opencl} +%if %{with ocl_icd} +%files OpenCL-icd +%defattr(644,root,root,755) +/etc/OpenCL/vendors/mesa.icd +%attr(755,root,root) %{_libdir}/libMesaOpenCL.so +%attr(755,root,root) %{_libdir}/libMesaOpenCL.so.*.*.* +%attr(755,root,root) %ghost %{_libdir}/libMesaOpenCL.so.1 +%else %files libOpenCL %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/libOpenCL.so.*.*.* @@ -1240,8 +1327,9 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{_libdir}/libOpenCL.so %{_includedir}/CL %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.*.*.* @@ -1262,20 +1350,18 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %ghost %{_libdir}/libXvMCnouveau.so.1 %endif -%files libXvMC-r300 -%defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/libXvMCr300.so.1.0.0 -%attr(755,root,root) %ghost %{_libdir}/libXvMCr300.so.1 - +%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 +%endif -%files libXvMC-softpipe +%if %{with va} +%files -n libva-driver-gallium %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/libXvMCsoftpipe.so.1.0.0 -%attr(755,root,root) %ghost %{_libdir}/libXvMCsoftpipe.so.1 +%attr(755,root,root) %{_libdir}/libva/dri/gallium_drv_video.so +%endif %endif %if %{with gbm} @@ -1284,9 +1370,7 @@ rm -rf $RPM_BUILD_ROOT %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 @@ -1309,6 +1393,7 @@ rm -rf $RPM_BUILD_ROOT %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 @@ -1320,6 +1405,7 @@ rm -rf $RPM_BUILD_ROOT %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) @@ -1337,12 +1423,6 @@ rm -rf $RPM_BUILD_ROOT # libglapi-devel? nothing seems to need it atm. #%attr(755,root,root) %{_libdir}/libglapi.so -%if %{with gallium} -%files libllvmradeon -%defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/libllvmradeon%{int_sover}.so -%endif - %if %{with wayland} %files libwayland-egl %defattr(644,root,root,755) @@ -1359,7 +1439,7 @@ rm -rf $RPM_BUILD_ROOT %files libxatracker %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/libxatracker.so.*.* -%attr(755,root,root) %ghost %{_libdir}/libxatracker.so.1 +%attr(755,root,root) %ghost %{_libdir}/libxatracker.so.2 %files libxatracker-devel %defattr(644,root,root,755) @@ -1377,12 +1457,6 @@ rm -rf $RPM_BUILD_ROOT %{_includedir}/KHR/khrplatform.h %endif -%files dri-core -%defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/libdricore%{int_sover}.so.*.* -%attr(755,root,root) %ghost %{_libdir}/libdricore%{int_sover}.so.1 -%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/drirc - %files dri-driver-ati-radeon-R100 %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/xorg/modules/dri/radeon_dri.so @@ -1392,6 +1466,7 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{_libdir}/xorg/modules/dri/r200_dri.so %if %{with gallium} +%if %{with gallium_radeon} %files dri-driver-ati-radeon-R300 %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/xorg/modules/dri/r300_dri.so @@ -1399,11 +1474,12 @@ rm -rf $RPM_BUILD_ROOT %files dri-driver-ati-radeon-R600 %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/xorg/modules/dri/r600_dri.so -%endif %files dri-driver-ati-radeon-SI %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/xorg/modules/dri/radeonsi_dri.so +%endif +%endif %files dri-driver-intel-i915 %defattr(644,root,root,755) @@ -1422,6 +1498,9 @@ 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} @@ -1430,6 +1509,18 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{_libdir}/xorg/modules/dri/vmwgfx_dri.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} @@ -1440,6 +1531,7 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{_libdir}/vdpau/libvdpau_nouveau.so %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 @@ -1457,10 +1549,11 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{_libdir}/vdpau/libvdpau_radeonsi.so.1.0.0 %attr(755,root,root) %{_libdir}/vdpau/libvdpau_radeonsi.so.1 %attr(755,root,root) %{_libdir}/vdpau/libvdpau_radeonsi.so +%endif +%endif -%files -n libvdpau-driver-mesa-softpipe +%if %{with gallium} && %{with omx} +%files -n omxil-mesa %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/vdpau/libvdpau_softpipe.so.1.0.0 -%attr(755,root,root) %{_libdir}/vdpau/libvdpau_softpipe.so.1 -%attr(755,root,root) %{_libdir}/vdpau/libvdpau_softpipe.so +%attr(755,root,root) %{_libdir}/bellagio/libomx_mesa.so %endif