#
# TODO:
+# - consider:
# - subpackage with non-dri libGL for use with X-servers with missing GLX extension?
-# - resurrect static if it's useful
+# - resurrect static if it's useful (using plain xorg target? DRI doesn't support static)
#
# Conditional build:
-%bcond_without egl # build egl
-%bcond_without gallium # don't build gallium
+%bcond_without egl # EGL libraries
+%bcond_without gallium # gallium drivers
%bcond_with gallium_intel # gallium i915 driver (but doesn't work with AIGLX)
-%bcond_with gallium_radeon # gallium radeon driver
%bcond_without gallium_nouveau # gallium nouveau driver
-%bcond_without motif # build static libGLw without Motif interface
-%bcond_with multigl # package libGL in a way allowing concurrent install with nvidia/fglrx drivers
-%bcond_without osmesa # don't build osmesa
-%bcond_with static # static libraries
+%bcond_without osmesa # OSMesa libraries
+%bcond_without gbm # Graphics Buffer Manager
+%bcond_without wayland # Wayland EGL
+%bcond_without xa # XA state tracker (for vmwgfx xorg driver)
+%bcond_with static_libs # static libraries [not supported for DRI, thus broken currently]
#
# minimal supported xserver version
%define xserver_ver 1.5.0
# (until they start to be somehow versioned themselves)
%define glapi_ver 7.1.0
#
-%define libdrm_ver 2.4.24
-%define dri2proto_ver 2.1
-%define glproto_ver 1.4.11
+%define libdrm_ver 2.4.34
+%define dri2proto_ver 2.6
+%define glproto_ver 1.4.14
#
-%define snap 20110310
-# for snapshots ONLY!
-%define no_install_post_check_so 1
+%define snap 20120605
#
Summary: Free OpenGL implementation
Summary(pl.UTF-8): Wolnodostępna implementacja standardu OpenGL
Name: Mesa
-Version: 7.11
-Release: 0.%{snap}.1%{?with_multigl:.mgl}
-License: MIT (core), SGI (GLU,libGLw) and others - see license.html file
+Version: 8.1.0
+Release: 0.%{snap}.1
+License: MIT (core), SGI (GLU) and others - see license.html file
Group: X11/Libraries
+#Source0: ftp://ftp.freedesktop.org/pub/mesa/%{version}/%{name}Lib-%{version}.tar.bz2
Source0: %{name}Lib-%{snap}.tar.bz2
-# Source0-md5: 9be2275876642669aafca9dbf87125ee
+# Source0-md5: f15daf47602259139168e7e8565034d5
+#Patch100: %{name}-git.patch
Patch0: %{name}-realclean.patch
-Patch1: %{name}-selinux.patch
-Patch2: %{name}-git.patch
+Patch1: %{name}-link.patch
+Patch2: %{name}-wayland.patch
URL: http://www.mesa3d.org/
-BuildRequires: autoconf >= 2.59
+BuildRequires: autoconf >= 2.60
BuildRequires: automake
BuildRequires: expat-devel
+BuildRequires: gcc >= 5:3.3
BuildRequires: libdrm-devel >= %{libdrm_ver}
-# drop when 2.4.24 is released
-%{?with_nouveau:BuildRequires: libdrm-devel >= 2.4.24}
BuildRequires: libselinux-devel
BuildRequires: libstdc++-devel >= 5:3.3.0
BuildRequires: libtalloc-devel >= 2:2.0.1
BuildRequires: libtool >= 2:1.4d
-BuildRequires: llvm-devel
-%{?with_motif:BuildRequires: motif-devel}
+BuildRequires: libvdpau-devel >= 0.4.1
+BuildRequires: llvm-devel >= 2.9
BuildRequires: pixman-devel
BuildRequires: pkgconfig
BuildRequires: pkgconfig(talloc) >= 2.0.1
BuildRequires: python
+BuildRequires: python-libxml2
BuildRequires: python-modules
BuildRequires: rpmbuild(macros) >= 1.470
BuildRequires: sed >= 4.0
+# wayland-{client,server}
+%{?with_wayland:BuildRequires: wayland-devel}
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-proto-dri2proto-devel >= %{dri2proto_ver}
BuildRequires: xorg-proto-glproto-devel >= %{glproto_ver}
BuildRequires: xorg-util-makedepend
-BuildRequires: xorg-xserver-server-devel
+BuildRequires: xorg-xserver-server-devel >= %{xserver_ver}
%if %{with egl}
BuildRequires: libxcb-devel
-BuildRequires: udev-devel >= 150
+BuildRequires: udev-devel >= 1:150
%endif
%if %{with gallium}
BuildRequires: xorg-proto-xextproto-devel >= 7.0.99.1
%if %{without gallium}
%undefine with_gallium_intel
-%undefine with_gallium_radeon
+%undefine with_gallium_nouveau
+%undefine with_xa
%endif
-%define skip_post_check_so libOpenVG.so.1.0.0
+%if %{without egl}
+%undefine with_gbm
+%undefine with_wayland
+%endif
+
+# _glapi_tls_Dispatch is defined in libglapi, but it's some kind of symbol ldd -r doesn't notice(?)
+%define skip_post_check_so libGLESv1_CM.so.1.* libGLESv2.so.2.* libGL.so.1.* libXvMCnouveau.so.*
+
+# llvm build broken
+%define filterout_ld -Wl,--as-needed
%description
Mesa is a 3-D graphics library with an API which is very similar to
OpenGL ani powiązana z SGI.
%package libEGL
-Summary: SGI implementation of libEGL OpenGL library
-Summary(pl.UTF-8): Implementacja SGI biblioteki libEGL ze standardu OpenGL
-License: SGI Free Software License B v2.0 (MIT-like)
+Summary: Mesa implementation of EGL Native Platform Graphics Interface library
+Summary(pl.UTF-8): Implementacja Mesa biblioteki interfejsu EGL
+License: MIT
Group: Libraries
+Requires: %{name}-libglapi = %{version}-%{release}
+# glx driver in libEGL dlopens libGL.so
Requires: OpenGL >= 1.2
-Requires: udev-libs >= 150
-Provides: OpenGL-EGL = 1.0
+Requires: libdrm >= %{libdrm_ver}
+%if %{with gallium}
+# for egl_gallium.so
+Requires: %{name}-libOpenVG = %{version}-%{release}
+Requires: udev-libs >= 1:150
+%endif
+%if %{with gbm}
+Requires: %{name}-libgbm = %{version}-%{release}
+%endif
+Provides: EGL = 1.4
%description libEGL
-SGI implementation of libEGL OpenGL library.
+This package contains shared libEGL - Mesa implementation of EGL
+Native Platform Graphics Interface as specified by Khronos Group:
+<http://www.khronos.org/egl/>.
%description libEGL -l pl.UTF-8
-Implementacja SGI biblioteki libEGL ze standardu OpenGL.
+Ten pakiet zawiera bibliotekę współdzieloną libEGL - implementację
+Mesa standardu EGL Native Platform Graphics Interface (interfejsu
+graficznego platformy natywnej) wg specyfikacji Khronos Group:
+<http://www.khronos.org/egl/>.
%package libEGL-devel
-Summary: Header files for SGI libEGL library
-Summary(pl.UTF-8): Pliki nagłówkowe biblioteki SGI libEGL
-License: SGI Free Software License B v2.0 (MIT-like)
+Summary: Header files for Mesa implementation of EGL library
+Summary(pl.UTF-8): Pliki nagłówkowe implementacji Mesa biblioteki EGL
+License: MIT
Group: Development/Libraries
+Requires: %{name}-khrplatform-devel = %{version}-%{release}
Requires: %{name}-libEGL = %{version}-%{release}
-Requires: OpenGL-devel >= 1.2
-Requires: libstdc++-devel
-Provides: OpenGL-EGL-devel = 1.0
+Requires: libdrm-devel >= %{libdrm_ver}
+Requires: xorg-lib-libX11-devel
+Requires: xorg-lib-libXdamage-devel
+Requires: xorg-lib-libXext-devel
+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
%description libEGL-devel
-Header files for SGI libEGL library.
+Header files for Mesa implementation of EGL library.
%description libEGL-devel -l pl.UTF-8
-Pliki nagłówkowe biblioteki SGI libEGL.
+Pliki nagłówkowe implementacji Mesa biblioteki EGL.
%package libEGL-static
-Summary: Static SGI libEGL library
-Summary(pl.UTF-8): Statyczna biblioteka SGI libEGL
-License: SGI Free Software License B v2.0 (MIT-like)
+Summary: Static Mesa EGL library
+Summary(pl.UTF-8): Statyczna biblioteka Mesa EGL
+License: MIT
Group: Development/Libraries
Requires: %{name}-libEGL-devel = %{version}-%{release}
-Provides: OpenGL-EGL-static = 1.0
+Provides: EGL-static = 1.4
%description libEGL-static
-Static SGI libEGL library.
+Static Mesa EGL library.
%description libEGL-static -l pl.UTF-8
-Statyczna biblioteka SGI libEGL.
-
-%package libGLES
-Summary: Mesa libGLES runtime libraries
-Group: Libraries
-
-%description libGLES
-Mesa GLES runtime libraries.
-
-%description libGLES -l pl.UTF-8
-Biblioteka Mesa GLES.
-
-%package libGLES-devel
-Summary: Header files for libGLES library
-Group: Development/Libraries
-Requires: %{name}-libGLES = %{version}-%{release}
-
-%description libGLES-devel
-Header files for libGLES library.
-
-%description libGLES-devel -l pl.UTF-8
-Pliki nagłówkowe biblioteki libGLES.
+Statyczna biblioteka Mesa EGL.
%package libGL
Summary: Free Mesa3D implementation of libGL OpenGL library
Summary(pl.UTF-8): Wolnodostępna implementacja Mesa3D biblioteki libGL ze standardu OpenGL
License: MIT
Group: X11/Libraries
+Requires: %{name}-libglapi = %{version}-%{release}
Requires: libdrm >= %{libdrm_ver}
Provides: OpenGL = 2.1
-# reports version 1.3, but supports glXGetProcAddress() from 1.4
Provides: OpenGL-GLX = 1.4
Obsoletes: Mesa
Obsoletes: Mesa-dri
Statyczna biblioteka libGL z projektu Mesa3D. Używa programowego
renderingu.
+%package libGLES
+Summary: Mesa implementation of GLES (OpenGL ES) libraries
+Summary(pl.UTF-8): Implementacja Mesa bibliotek GLES (OpenGL ES)
+Group: Libraries
+Requires: %{name}-libglapi = %{version}-%{release}
+
+%description libGLES
+This package contains shared libraries of Mesa implementation of GLES
+(OpenGL ES) - cross-platform API for full-function 2D and 3D graphics
+on embedded systems. OpenGL ES specification can be found on Khronos
+Group site: <http://www.khronos.org/opengles/>. Mesa implements OpenGL
+ES 1.1 and 2.0.
+
+%description libGLES -l pl.UTF-8
+Ten pakiet zawiera biblioteki współdzielone implementacji Mesa
+standardu GLES (OpenGL ES) - wieloplatformowego API do w pełni
+funkcjonalnej grafiki 2D i 3D na systemach wbudowanych. Specyfikację
+OpenGL ES można znaleźć na stronie Khronos Group:
+<http://www.khronos.org/opengles/>. Mesa zawiera implementacją OpenGL
+ES 1.1 i 2.0.
+
+%package libGLES-devel
+Summary: Header files for Mesa GLES libraries
+Summary(pl.UTF-8): Pliki nagłówkowe bibliotek Mesa GLES
+Group: Development/Libraries
+Requires: %{name}-khrplatform-devel = %{version}-%{release}
+# <EGL/egl.h> for <GLES/egl.h>
+Requires: %{name}-libEGL-devel = %{version}-%{release}
+Requires: %{name}-libGLES = %{version}-%{release}
+
+%description libGLES-devel
+Header files for Mesa GLES libraries.
+
+%description libGLES-devel -l pl.UTF-8
+Pliki nagłówkowe bibliotek Mesa GLES.
+
%package libGLU
Summary: SGI implementation of libGLU OpenGL library
Summary(pl.UTF-8): Implementacja SGI biblioteki libGLU ze standardu OpenGL
%description libGLU-static -l pl.UTF-8
Statyczna biblioteka SGI libGLU.
-%package libGLw
-Summary: SGI OpenGL Xt widgets library
-Summary(pl.UTF-8): Biblioteka SGI widgetów Xt dla OpenGL-a
-License: SGI MIT-like
-Group: Libraries
-# loose dependency on libGL.so.1 to use with other libGL binaries
-Requires: OpenGL >= 1.1
-Provides: OpenGL-GLw
-
-%description libGLw
-SGI OpenGL Xt widgets library.
-
-%description libGLw -l pl.UTF-8
-Biblioteka SGI widgetów Xt dla OpenGL-a.
-
-%package libGLw-devel
-Summary: Header files for SGI libGLw library
-Summary(pl.UTF-8): Pliki nagłówkowe biblioteki SGI libGLw
-License: SGI MIT-like
-Group: Development/Libraries
-Requires: %{name}-libGLw = %{version}-%{release}
-Requires: OpenGL-devel >= 1.2
-Provides: OpenGL-GLw-devel
-
-%description libGLw-devel
-Header files for SGI libGLw library.
-
-%description libGLw-devel -l pl.UTF-8
-Pliki nagłówkowe biblioteki SGI libGLw.
-
-%package libGLw-static
-Summary: Static SGI libGLw library
-Summary(pl.UTF-8): Statyczna biblioteka SGI libGLw
-License: SGI MIT-like
-Group: Development/Libraries
-Requires: %{name}-libGLw-devel = %{version}-%{release}
-Provides: OpenGL-GLw-static
-
-%description libGLw-static
-Static SGI libGLw library.
-
-%description libGLw-static -l pl.UTF-8
-Statyczna biblioteka SGI libGLw.
-
%package libOSMesa
Summary: OSMesa (off-screen renderer) library
Summary(pl.UTF-8): Biblioteka OSMesa (renderująca bitmapy w pamięci)
License: MIT
Group: Libraries
-# doesn't require base
%description libOSMesa
OSMesa (off-screen renderer) library.
Requires: %{name}-libOSMesa = %{version}-%{release}
# for <GL/gl.h> only
Requires: OpenGL-devel
+Requires: libselinux-devel
%description libOSMesa-devel
Header file for OSMesa (off-screen renderer) library.
Biblioteka statyczna OSMesa (renderująca bitmapy w pamięci).
%package libOpenVG
-Summary: OpenVG API implementation
-Summary(pl.UTF-8): Implementacja API OpenVG
+Summary: Mesa implementation of OpenVG (Vector Graphics Accelleration) API
+Summary(pl.UTF-8): Implementacja Mesa API OpenVG (akceleracji grafiki wektorowej)
License: MIT
Group: Libraries
-# doesn't require base
%description libOpenVG
-OpenVG API implementation.
+This package contains Mesa implementation of OpenVG - cross-platform
+API that provides a low-level hardware acceleration interface for
+vector graphics libraries such as Flash and SVG. OpenVG specification
+can be found on Khronos Group site: <http://www.khronos.org/openvg/>.
+Mesa implements OpenVG 1.1.
%description libOpenVG -l pl.UTF-8
-Implementacja API OpenVG.
+Ten pakiet zawiera implementację Mesa standardu OpenVG -
+wieloplatfomowego API zapewniającego niskopoziomowy interfejs
+akceleracji sprzętowej dla bibliotek grafiki wektorowej, takiej jak
+Flash czy SVG. Specyfikację OpenVG można znaleźć na stronie Khronos
+Group: <http://www.khronos.org/openvg/>. Mesa zawiera implementację
+OpenVG w wersji 1.1.
%package libOpenVG-devel
-Summary: Header file for libOpenVG library
-Summary(pl.UTF-8): Plik nagłówkowy biblioteki libOpenVG
+Summary: Header file for Mesa OpenVG library
+Summary(pl.UTF-8): Plik nagłówkowy biblioteki Mesa OpenVG
License: MIT
Group: Development/Libraries
-# for <KHR/khrplatform.h>
-Requires: %{name}-libEGL-devel = %{version}-%{release}
+Requires: %{name}-khrplatform-devel = %{version}-%{release}
Requires: %{name}-libOpenVG = %{version}-%{release}
%description libOpenVG-devel
-Header file for libOpenVG library.
+Header file for Mesa OpenVG library.
%description libOpenVG-devel -l pl.UTF-8
-Plik nagłówkowy biblioteki libOpenVG.
+Plik nagłówkowy biblioteki Mesa OpenVG.
+
+%package libXvMC-nouveau
+Summary: Mesa implementation of XvMC API for NVidia adapters
+Summary(pl.UTF-8): Implementacja Mesa API XvMC dla kart NVidia
+License: MIT
+Group: Libraries
+Requires: libdrm >= %{libdrm_ver}
+Requires: xorg-lib-libXvMC >= 1.0.6
+Conflicts: Mesa-libXvMC
+
+%description libXvMC-nouveau
+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: libdrm >= %{libdrm_ver}
+Requires: xorg-lib-libXvMC >= 1.0.6
+Conflicts: Mesa-libXvMC
+
+%description libXvMC-r600
+Mesa implementation of XvMC API for ATI Radeon adapters based on
+R600/R700 chips.
+
+%description libXvMC-r600 -l pl.UTF-8
+Implementacja Mesa API XvMC dla kart ATI Radeon opartych na układach
+R600/R700.
-%package utils
-Summary: OpenGL utilities from Mesa3D
-Summary(pl.UTF-8): Programy narzędziowe OpenGL z projektu Mesa3D
+%package libXvMC-softpipe
+Summary: Mesa softpipe implementation of XvMC API
+Summary(pl.UTF-8): Implementacja Mesa softpipe API XvMC
License: MIT
-Group: X11/Applications/Graphics
-# loose deps on libGL/libGLU
+Group: Libraries
+Requires: libdrm >= %{libdrm_ver}
+Requires: xorg-lib-libXvMC >= 1.0.6
+Conflicts: Mesa-libXvMC
+
+%description libXvMC-softpipe
+Mesa softpipe implementation of XvMC API.
+
+%description libXvMC-softpipe -l pl.UTF-8
+Implementacja Mesa softpipe API XvMC.
+
+%package libgbm
+Summary: Mesa Graphics Buffer Manager library
+Summary(pl.UTF-8): Biblioteka Mesa Graphics Buffer Manager
+Group: Libraries
+Requires: udev-libs >= 1:150
+Conflicts: Mesa-libEGL < 8.0.1-2
+
+%description libgbm
+Mesa Graphics Buffer Manager library.
+
+%description libgbm -l pl.UTF-8
+Biblioteka Mesa Graphics Buffer Manager (zarządcy bufora graficznego).
+
+%package libgbm-devel
+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
+
+%description libgbm-devel
+Header file for Mesa Graphics Buffer Manager library.
+
+%description libgbm-devel -l pl.UTF-8
+Plik nagłówkowy biblioteki Mesa Graphics Buffer Manager (zarządcy
+bufora graficznego).
+
+%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}
+
+%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-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}
+
+%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}
+
+%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}
+
+%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}
+
+%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-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}
+
+%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
+Group: Libraries
+Conflicts: Mesa-libEGL < 8.0.1-2
+
+%description libglapi
+Mesa GL API shared library, common for various APIs (EGL, GL, GLES).
+
+%description libglapi -l pl.UTF-8
+Biblioteka współdzielona Mesa GL API, wspólna dla różnych API (EGL,
+GL, GLES).
+
+%package libwayland-egl
+Summary: Wayland EGL library
+Summary(pl.UTF-8): Biblioteka Wayland EGL
+Group: Libraries
+Requires: libdrm >= %{libdrm_ver}
+
+%description libwayland-egl
+Wayland EGL platform library.
+
+%description libwayland-egl -l pl.UTF-8
+Biblioteka platformy EGL Wayland.
+
+%package libwayland-egl-devel
+Summary: Development files for Wayland EGL library
+Summary(pl.UTF-8): Pliki programistyczne biblioteki Wayland EGL
+Group: Development/Libraries
+Requires: %{name}-libwayland-egl = %{version}-%{release}
+Requires: libdrm-devel >= %{libdrm_ver}
+Requires: wayland-devel
+
+%description libwayland-egl-devel
+Development files for Wayland EGL platform library.
+
+%description libwayland-egl-devel -l pl.UTF-8
+Pliki programistyczne biblioteki platformy EGL Wayland.
+
+%package libxatracker
+Summary: Xorg Gallium3D accelleration library
+Summary(pl.UTF-8): Biblioteka akceleracji Gallium3D dla Xorg
+Group: X11/Libraries
+Requires: libdrm >= %{libdrm_ver}
+
+%description libxatracker
+Xorg Gallium3D accelleration library (used by new vmwgfx driver).
+
+%description libxatracker -l pl.UTF-8
+Biblioteka akceleracji Gallium3D dla Xorg (używana przez nowy
+sterownik vmwgfx).
+
+%package libxatracker-devel
+Summary: Header files for Xorg Gallium3D accelleration library
+Summary(pl.UTF-8): Pliki nagłówkowe biblioteki akceleracji Gallium3D dla Xorg
+Group: X11/Development/Libraries
+Requires: %{name}-libxatracker = %{version}-%{release}
+Requires: libdrm-devel >= %{libdrm_ver}
+
+%description libxatracker-devel
+Header files for Xorg Gallium3D accelleration library.
+
+%description libxatracker-devel -l pl.UTF-8
+Pliki nagłówkowe biblioteki akceleracji Gallium3D dla Xorg.
-%description utils
-OpenGL utilities from Mesa3D: glxgears and glxinfo.
+%package khrplatform-devel
+Summary: Khronos platform header file
+Summary(pl.UTF-8): Plik nagłówkowy platformy Khronos
+Group: Development/Libraries
+Conflicts: Mesa-libEGL-devel < 8.0.1-2
+
+%description khrplatform-devel
+Khronos platform header file.
-%description utils -l pl.UTF-8
-Programy narzędziowe OpenGL z projektu Mesa3D: glxgears i glxinfo.
+%description khrplatform-devel -l pl.UTF-8
+Plik nagłówkowy platformy Khronos.
-%package dri-driver-ati-mach64
-Summary: X.org DRI driver for ATI Mach64 card family
-Summary(pl.UTF-8): Sterownik X.org DRI dla rodziny kart ATI Mach64
+%package dri-core
+Summary: X.org DRI core module
+Summary(pl.UTF-8): Sterownik X.org DRI core
License: MIT
Group: X11/Libraries
-Requires: xorg-driver-video-mach64
Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
Requires: xorg-xserver-server >= %{xserver_ver}
-%description dri-driver-ati-mach64
-X.org DRI driver for ATI Mach64 card family.
+%description dri-core
+X.org DRI core library.
-%description dri-driver-ati-mach64 -l pl.UTF-8
-Sterownik X.org DRI dla rodziny kart ATI Mach64.
+%description dri-core -l pl.UTF-8
+Sterownik X.org DRI core.
%package dri-driver-ati-radeon-R100
Summary: X.org DRI driver for ATI R100 card family
Obsoletes: X11-driver-radeon-dri < 1:7.0.0
%description dri-driver-ati-radeon-R300
-X.org DRI driver for ATI R300 card family.
+X.org DRI driver for ATI R300/R400/RS690/R500 card family.
%description dri-driver-ati-radeon-R300 -l pl.UTF-8
-Sterownik X.org DRI dla rodziny kart ATI R300.
+Sterownik X.org DRI dla rodziny kart ATI R300/R400/RS690/R500.
%package dri-driver-ati-radeon-R600
Summary: X.org DRI driver for ATI R600 card family
Requires: xorg-xserver-server >= %{xserver_ver}
%description dri-driver-ati-radeon-R600
-X.org DRI driver for ATI R600 card family.
+X.org DRI driver for ATI R600/R700 card family.
%description dri-driver-ati-radeon-R600 -l pl.UTF-8
-Sterownik X.org DRI dla rodziny kart ATI R600.
-
-%package dri-driver-ati-rage128
-Summary: X.org DRI driver for ATI Rage128 card family
-Summary(pl.UTF-8): Sterownik X.org DRI dla rodziny kart ATI Rage128
-License: MIT
-Group: X11/Libraries
-Requires: xorg-driver-video-r128
-Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
-Requires: xorg-xserver-server >= %{xserver_ver}
-Obsoletes: X11-driver-r128-dri < 1:7.0.0
-
-%description dri-driver-ati-rage128
-X.org DRI driver for ATI Rage128 card family.
-
-%description dri-driver-ati-rage128 -l pl.UTF-8
-Sterownik X.org DRI dla rodziny kart ATI Rage128.
-
-%package dri-driver-ffb
-Summary: X.org DRI driver for Sun FFB card family
-Summary(pl.UTF-8): Sterownik X.org DRI dla rodziny kart Sun FFB
-License: MIT
-Group: X11/Libraries
-Requires: xorg-driver-video-sunffb
-Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
-Requires: xorg-xserver-server >= %{xserver_ver}
-
-%description dri-driver-ffb
-X.org DRI driver for SUN Creator3D and Elite3D card family.
-
-%description dri-driver-ffb -l pl.UTF-8
-Sterownik X.org DRI dla rodziny kart SUN Creator3D i Elite3D.
-
-%package dri-driver-glint
-Summary: X.org DRI driver for GLINT/Permedia card family
-Summary(pl.UTF-8): Sterownik X.org DRI dla rodziny kart GLINT/Permedia
-License: MIT
-Group: X11/Libraries
-Requires: xorg-driver-video-glint
-Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
-Requires: xorg-xserver-server >= %{xserver_ver}
-Obsoletes: X11-driver-glint-dri < 1:7.0.0
-
-%description dri-driver-glint
-X.org DRI driver for GLINT/Permedia card family.
-
-%description dri-driver-glint -l pl.UTF-8
-Sterownik X.org DRI dla rodziny kart GLINT/Permedia.
-
-%package dri-driver-intel-i810
-Summary: X.org DRI driver for Intel i810 card family
-Summary(pl.UTF-8): Sterownik X.org DRI dla rodziny kart Intel i810
-License: MIT
-Group: X11/Libraries
-Requires: xorg-driver-video-intel
-Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
-Requires: xorg-xserver-server >= %{xserver_ver}
-Obsoletes: X11-driver-i810-dri < 1:7.0.0
-
-%description dri-driver-intel-i810
-X.org DRI driver for Intel i810 card family.
-
-%description dri-driver-intel-i810 -l pl.UTF-8
-Sterownik X.org DRI dla rodziny kart Intel i810.
+Sterownik X.org DRI dla rodziny kart ATI R600/R700.
%package dri-driver-intel-i915
Summary: X.org DRI driver for Intel i915 card family
Obsoletes: X11-driver-i810-dri < 1:7.0.0
%description dri-driver-intel-i915
-X.org DRI driver for Intel i915 card family.
+X.org DRI driver for Intel i915 card family (915, 945, G33, Q33, Q35,
+Pineview).
%description dri-driver-intel-i915 -l pl.UTF-8
-Sterownik X.org DRI dla rodziny kart Intel i915.
+Sterownik X.org DRI dla rodziny kart Intel i915 (915, 945, G33, Q33,
+Q35, Pineview).
%package dri-driver-intel-i965
Summary: X.org DRI driver for Intel i965 card family
Obsoletes: X11-driver-i810-dri < 1:7.0.0
%description dri-driver-intel-i965
-X.org DRI driver for Intel i965 card family.
+X.org DRI driver for Intel i965 card family (946GZ, 965G, 965Q, 965GM,
+965GME, GM45, G41, B43, Q45, G45);
%description dri-driver-intel-i965 -l pl.UTF-8
-Sterownik X.org DRI dla rodziny kart Intel i965.
-
-%package dri-driver-matrox
-Summary: X.org DRI driver for Matrox G card family
-Summary(pl.UTF-8): Sterownik X.org DRI dla rodziny kart Matrox G
-License: MIT
-Group: X11/Libraries
-Requires: xorg-driver-video-mga
-Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
-Requires: xorg-xserver-server >= %{xserver_ver}
-Obsoletes: X11-driver-mga-dri < 1:7.0.0
-
-%description dri-driver-matrox
-X.org DRI drivers for Matrox G card family.
-
-%description dri-driver-matrox -l pl.UTF-8
-Sterowniki X.org DRI dla rodziny kart Matrox G.
+Sterownik X.org DRI dla rodziny kart Intel i965 (946GZ, 965G, 965Q,
+965GM, 965GME, GM45, G41, B43, Q45, G45).
%package dri-driver-nouveau
Summary: X.org DRI driver for NVIDIA card family
%description dri-driver-nouveau -l pl.UTF-8
Sterowniki X.org DRI dla rodziny kart NVIDIA.
-%package dri-driver-savage
-Summary: X.org DRI driver for S3 Savage card family
-Summary(pl.UTF-8): Sterownik X.org DRI dla rodziny kart S3 Savage
+%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
-Requires: xorg-driver-video-savage
Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
Requires: xorg-xserver-server >= %{xserver_ver}
-%description dri-driver-savage
-X.org DRI driver for S3 Savage card family.
+%description dri-driver-swrast
+X.org DRI software rasterizer driver.
-%description dri-driver-savage -l pl.UTF-8
-Sterownik X.org DRI dla rodziny kart S3 Savage.
+%description dri-driver-swrast -l pl.UTF-8
+Sterownik X.org DRI obsługujący rysowanie programowe.
-%package dri-driver-sis
-Summary: X.org DRI driver for SiS card family
-Summary(pl.UTF-8): Sterownik X.org DRI dla rodziny kart SiS
+%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
-Requires: xorg-driver-video-sis
+Requires: xorg-driver-video-vmware
Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
Requires: xorg-xserver-server >= %{xserver_ver}
-Obsoletes: X11-driver-sis-dri < 1:7.0.0
-%description dri-driver-sis
-X.org DRI driver for SiS card family.
+%description dri-driver-vmwgfx
+X.org DRI driver for VMWare.
-%description dri-driver-sis -l pl.UTF-8
-Sterownik X.org DRI dla rodziny kart SiS.
+%description dri-driver-vmwgfx -l pl.UTF-8
+Sterownik X.org DRI dla VMware.
-%package dri-driver-swrast
-Summary: X.org DRI software rasterizer driver
-Summary(pl.UTF-8): Sterownik X.org DRI obsługujący rysowanie programowe
+%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: xorg-xserver-libglx(glapi) = %{glapi_ver}
-Requires: xorg-xserver-server >= %{xserver_ver}
+Requires: libdrm >= %{libdrm_ver}
+Requires: libvdpau >= 0.4.1
+Conflicts: libvdpau-driver-mesa
-%description dri-driver-swrast
-X.org DRI software rasterizer driver.
+%description -n libvdpau-driver-mesa-nouveau
+Mesa nouveau driver for the vdpau API. It supports NVidia adapters
+(NV40-NV96, NVa0).
-%description dri-driver-swrast -l pl.UTF-8
-Sterownik X.org DRI obsługujący rysowanie programowe.
+%description -n libvdpau-driver-mesa-nouveau -l pl.UTF-8
+Sterownik Mesa nouveau dla API vdpau. Obsługuje karty NVidia
+(NV40-NV96, NVa0).
-%package dri-driver-tdfx
-Summary: X.org DRI driver for 3DFX Voodoo card family
-Summary(pl.UTF-8): Sterownik X.org DRI dla rodziny kart 3DFX Voodoo
+%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: Glide3-DRI
-Requires: xorg-driver-video-tdfx
-Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
-Requires: xorg-xserver-server >= %{xserver_ver}
-Obsoletes: X11-driver-tdfx-dri < 1:7.0.0
+Requires: libdrm >= %{libdrm_ver}
+Requires: libvdpau >= 0.4.1
+Conflicts: libvdpau-driver-mesa
-%description dri-driver-tdfx
-X.org DRI driver for 3DFX Voodoo card family (Voodoo 3,4,5, Banshee
-and Velocity 100/200).
+%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.
-%description dri-driver-tdfx -l pl.UTF-8
-Sterownik X.org DRI dla rodziny kart 3DFX Voodoo. (Voodoo 3,4,5,
-Banshee i Velocity 100/200).
+%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.
-%package dri-driver-via-unichrome
-Summary: X.org DRI driver for VIA Unichrome card family
-Summary(pl.UTF-8): Sterownik X.org DRI dla rodziny kart VIA Unichrome
+%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: xorg-driver-video-openchrome
-Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
-Requires: xorg-xserver-server >= %{xserver_ver}
+Requires: libdrm >= %{libdrm_ver}
+Requires: libvdpau >= 0.4.1
+Conflicts: libvdpau-driver-mesa
-%description dri-driver-via-unichrome
-X.org DRI driver for VIA Unichrome card family.
+%description -n libvdpau-driver-mesa-r600
+Mesa r600 driver for the vdpau API. It supports ATI Radeon adapters
+based on R600/R700 chips.
-%description dri-driver-via-unichrome -l pl.UTF-8
-Sterownik X.org DRI dla rodziny kart VIA Unichrome.
+%description -n libvdpau-driver-mesa-r600 -l pl.UTF-8
+Sterownik Mesa r600 dla API vdpau. Obsługuje karty ATI Radeon oparte
+na układach R600/R700.
-%package dri-driver-vmwgfx
-Summary: X.org DRI driver for VMware
-Summary(pl.UTF-8): Sterownik X.org DRI dla VMware
+%package -n libvdpau-driver-mesa-softpipe
+Summary: Mesa softpipe driver for the vdpau API
+Summary(pl.UTF-8): Sterownik Mesa softpipe dla API vdpau
License: MIT
Group: X11/Libraries
-Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
-Requires: xorg-xserver-server >= %{xserver_ver}
+Requires: libdrm >= %{libdrm_ver}
+Requires: libvdpau >= 0.4.1
+Conflicts: libvdpau-driver-mesa
-%description dri-driver-vmwgfx
-X.org DRI driver for VMWare.
+%description -n libvdpau-driver-mesa-softpipe
+Mesa softpipe driver for the vdpau API.
-%description dri-driver-vmwgfx -l pl.UTF-8
-Sterownik X.org DRI dla VMware.
+%description -n libvdpau-driver-mesa-softpipe -l pl.UTF-8
+Sterownik Mesa softpipe dla API vdpau.
%prep
-%setup -q
+%setup -q -n %{name}
+#%patch100 -p1
%patch0 -p0
%patch1 -p1
-%patch2 -p1
+#%patch2 -p1
%build
-%{__aclocal}
-%{__autoconf}
-
-dri_drivers="i810 mach64 mga r128 r200 radeon \
-%if %{without gallium_radeon}
-r300 r600 \
-%endif
-savage \
+if [ -x autogen.sh ]; then
+ ./autogen.sh
+else
+ %{__aclocal}
+ %{__autoconf}
+fi
+
+dri_drivers="r200 radeon \
%if %{without gallium_intel}
-i915 i965 \
+i915 \
%endif
+i965
%ifarch sparc sparcv9 sparc64
ffb \
%endif
-%ifarch %{ix86} %{x8664}
-sis \
-%endif
-swrast tdfx unichrome"
+swrast"
dri_drivers=$(echo $dri_drivers | xargs | tr ' ' ',')
+gallium_drivers="svga swrast \
+%if %{with gallium_intel}
+i915 \
+%endif
+r300 \
+r600 \
+%if %{with gallium_nouveau}
+nouveau \
+%endif
+"
+
+gallium_drivers=$(echo $gallium_drivers | xargs | tr ' ' ',')
+
common_flags="\
--enable-shared \
- --enable-selinux \
- --enable-pic \
+ --enable-shared-dricore \
--enable-glx-tls \
- --disable-glut \
-%if %{with egl}
- --enable-egl \
- --enable-gles1 \
- --enable-gles2 \
-%endif
+ --enable-pic \
+ --enable-selinux \
+ %{?with_static_libs:--enable-static} \
"
osmesa_common_flags="\
--with-driver=osmesa \
--disable-asm \
- --disable-glu \
- --disable-egl"
+ --disable-egl \
+ --disable-glu"
%if %{with osmesa}
%configure $common_flags $osmesa_common_flags \
--with-osmesa-bits=8
%{__make}
+%{__make} -C src/mesa osmesa.pc
mv %{_lib} osmesa8
+cp -p src/mesa/osmesa.pc osmesa8
%{__make} clean
%endif
%configure $common_flags \
-%if %{with gallium}
- --enable-gallium \
-%if %{with gallium_intel}
- --enable-gallium-i915 \
- --enable-gallium-i965 \
-%endif
-%if %{with gallium_radeon}
- --enable-gallium-radeon \
- --enable-gallium-r600 \
+ %{__enable gbm} \
+ --enable-shared-glapi \
+%if %{with egl}
+ --enable-egl \
+ --enable-gles1 \
+ --enable-gles2 \
+ --with-egl-platforms=x11%{?with_gbm:,drm}%{?with_wayland:,wayland} \
%endif
- --enable-gallium-svga \
- --enable-gallium-egl \
- --enable-gallium-swrast \
- %{?with_gallium_nouveau:--enable-gallium-nouveau} \
- --with-state-trackers=dri,glx,egl,xorg,vega \
+%if %{with gallium}
+ --enable-gallium-llvm \
+ %{__enable egl gallium-egl} \
+ %{__enable gbm gallium-gbm} \
+ %{?with_egl:--enable-openvg} \
+ --enable-vdpau \
+ %{?with_xa:--enable-xa} \
+ --enable-xvmc \
+ --with-gallium-drivers=${gallium_drivers} \
%else
- --disable-gallium \
+ --without-gallium-drivers \
%endif
- --enable-openvg \
--with-driver=dri \
--with-dri-drivers=${dri_drivers} \
--with-dri-driverdir=%{_libdir}/xorg/modules/dri
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
-
-# libs without drivers
%{__make} install \
DESTDIR=$RPM_BUILD_ROOT
+# until upstream fixes it
+mv $RPM_BUILD_ROOT%{_libdir}/dri/libdricore.so \
+ $RPM_BUILD_ROOT%{_libdir}/xorg/modules/dri/libdricore.so
+
%if %{with osmesa}
-install osmesa*/*OSMesa* $RPM_BUILD_ROOT%{_libdir}
+cp -dp osmesa8/libOSMesa* $RPM_BUILD_ROOT%{_libdir}
+cp -p osmesa8/osmesa.pc $RPM_BUILD_ROOT%{_pkgconfigdir}
%endif
-rm -rf $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}/*/{.deps,CVS,Makefile.{BeOS*,win,cygnus,DJ,dja}}
-
# strip out undesirable headers
-olddir=$(pwd)
-cd $RPM_BUILD_ROOT%{_includedir}/GL
-rm [a-fh-np-wyz]*.h glf*.h
-cd $RPM_BUILD_ROOT%{_libdir}
-cd $olddir
-
-%if %{with gallium}
-# use gallium swrastg as swrast
-mv $RPM_BUILD_ROOT%{_libdir}/xorg/modules/dri/swrastg_dri.so $RPM_BUILD_ROOT%{_libdir}/xorg/modules/dri/swrast_dri.so
-%endif
-
-%if %{with multigl}
-install -d $RPM_BUILD_ROOT{%{_libdir}/Mesa,%{_sysconfdir}/ld.so.conf.d}
-
-mv -f $RPM_BUILD_ROOT%{_libdir}/libGL.so.* $RPM_BUILD_ROOT%{_libdir}/Mesa
-ln -sf Mesa/libGL.so.1 $RPM_BUILD_ROOT%{_libdir}/libGL.so
+%{__rm} $RPM_BUILD_ROOT%{_includedir}/GL/{vms_x_fix,wglext,wmesa}.h
+# dlopened by soname
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/libXvMC*.so
+# not used externally
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/libglapi.so
-echo %{_libdir}/Mesa >$RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d/Mesa.conf
-%endif
+# 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
+strip -R .note.ABI-tag $RPM_BUILD_ROOT%{_libdir}/libGL.so.*.*
%clean
rm -rf $RPM_BUILD_ROOT
%post libGLU -p /sbin/ldconfig
%postun libGLU -p /sbin/ldconfig
-%post libGLw -p /sbin/ldconfig
-%postun libGLw -p /sbin/ldconfig
-
%post libOSMesa -p /sbin/ldconfig
%postun libOSMesa -p /sbin/ldconfig
%post libOpenVG -p /sbin/ldconfig
%postun libOpenVG -p /sbin/ldconfig
+%post libXvMC-nouveau -p /sbin/ldconfig
+%postun libXvMC-nouveau -p /sbin/ldconfig
+%post libXvMC-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
+
+%post libglapi -p /sbin/ldconfig
+%postun libglapi -p /sbin/ldconfig
+
+%post libwayland-egl -p /sbin/ldconfig
+%postun libwayland-egl -p /sbin/ldconfig
+
+%post libxatracker -p /sbin/ldconfig
+%postun libxatracker -p /sbin/ldconfig
+
%if %{with egl}
%files libEGL
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libEGL.so.*.*
%attr(755,root,root) %ghost %{_libdir}/libEGL.so.1
-%attr(755,root,root) %{_libdir}/libglapi.so.*.*
-%attr(755,root,root) %ghost %{_libdir}/libglapi.so.0
-%dir %{_libdir}/egl
%if %{with gallium}
+%dir %{_libdir}/egl
%attr(755,root,root) %{_libdir}/egl/egl_gallium.so
-%if %{with gallium_nouveau}
-%attr(755,root,root) %{_libdir}/egl/pipe_nouveau.so
-%endif
-%if %{with gallium_radeon}
-%attr(755,root,root) %{_libdir}/egl/pipe_r300.so
-%attr(755,root,root) %{_libdir}/egl/pipe_r600.so
-%endif
-%if %{with gallium_intel}
-%attr(755,root,root) %{_libdir}/egl/pipe_i915.so
-%attr(755,root,root) %{_libdir}/egl/pipe_i965.so
%endif
-%else
-%attr(755,root,root) %{_libdir}/egl/egl_dri2.so
-%attr(755,root,root) %{_libdir}/egl/egl_glx.so
-%endif
-%attr(755,root,root) %{_libdir}/egl/pipe_swrast.so
-%attr(755,root,root) %{_libdir}/egl/pipe_vmwgfx.so
-%attr(755,root,root) %{_libdir}/egl/st_GL.so
-%attr(755,root,root) %{_libdir}/egl/st_OpenVG.so
%files libEGL-devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libEGL.so
-%attr(755,root,root) %{_libdir}/libglapi.so
%dir %{_includedir}/EGL
%{_includedir}/EGL/egl.h
%{_includedir}/EGL/eglext.h
+%{_includedir}/EGL/eglmesaext.h
%{_includedir}/EGL/eglplatform.h
-%dir %{_includedir}/KHR
-%{_includedir}/KHR/khrplatform.h
%{_pkgconfigdir}/egl.pc
-%if %{with static}
+%if %{with static_libs}
%files libEGL-static
%defattr(644,root,root,755)
%{_libdir}/libEGL.a
%files libGL
%defattr(644,root,root,755)
-%doc docs/{*.html,README.{3DFX,GGI,MITS,QUAKE,THREADS},RELNOTES*}
-%if %{with multigl}
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ld.so.conf.d/Mesa.conf
-%dir %{_libdir}/Mesa
-%attr(755,root,root) %{_libdir}/Mesa/libGL.so.*.*
-%attr(755,root,root) %ghost %{_libdir}/Mesa/libGL.so.1
-%else
+%doc docs/{*.html,README.{MITS,QUAKE,THREADS},RELNOTES*}
%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)
+# (and dlopen libGL.so instead of libGL.so.1; the same does Mesa libEGL)
%attr(755,root,root) %{_libdir}/libGL.so
-%endif
%files libGL-devel
%defattr(644,root,root,755)
%doc docs/*.spec
-%if %{with multigl}
-%attr(755,root,root) %{_libdir}/libGL.so
-%endif
%dir %{_includedir}/GL
%{_includedir}/GL/gl.h
%{_includedir}/GL/glext.h
%{_pkgconfigdir}/dri.pc
%{_pkgconfigdir}/gl.pc
+%if %{with static_libs}
+%files libGL-static
+%defattr(644,root,root,755)
+%{_libdir}/libGL.a
+%endif
+
%files libGLES
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libGLES*.so.*.*
-%attr(755,root,root) %ghost %{_libdir}/libGLES*.so.[0-9]
+%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
%files libGLES-devel
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libGLES*.so
+%attr(755,root,root) %{_libdir}/libGLESv1_CM.so
+%attr(755,root,root) %{_libdir}/libGLESv2.so
%{_includedir}/GLES
%{_includedir}/GLES2
-%{_pkgconfigdir}/gles*.pc
-
-%if %{with static}
-%files libGL-static
-%defattr(644,root,root,755)
-%{_libdir}/libGL.a
-%endif
+%{_pkgconfigdir}/glesv1_cm.pc
+%{_pkgconfigdir}/glesv2.pc
%files libGLU
%defattr(644,root,root,755)
%{_includedir}/GL/glu_mangle.h
%{_pkgconfigdir}/glu.pc
-%if %{with static}
+%if %{with static_libs}
%files libGLU-static
%defattr(644,root,root,755)
%{_libdir}/libGLU.a
%endif
-%files libGLw
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libGLw.so.*.*
-%attr(755,root,root) %ghost %{_libdir}/libGLw.so.1
-
-%files libGLw-devel
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libGLw.so
-%{_includedir}/GL/GLwDrawA.h
-%{_includedir}/GL/GLwDrawAP.h
-%{_includedir}/GL/GLwMDrawA.h
-%{_includedir}/GL/GLwMDrawAP.h
-%{_pkgconfigdir}/glw.pc
-
-%if %{with static}
-%files libGLw-static
-%defattr(644,root,root,755)
-%{_libdir}/libGLw.a
-%endif
-
%if %{with osmesa}
%files libOSMesa
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libOSMesa*.so.*.*
-%attr(755,root,root) %ghost %{_libdir}/libOSMesa*.so.7
+%attr(755,root,root) %{_libdir}/libOSMesa.so.*.*
+%attr(755,root,root) %ghost %{_libdir}/libOSMesa.so.8
%files libOSMesa-devel
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libOSMesa*.so
+%attr(755,root,root) %{_libdir}/libOSMesa.so
%{_includedir}/GL/osmesa.h
+%{_pkgconfigdir}/osmesa.pc
-%if %{with static}
+%if %{with static_libs}
%files libOSMesa-static
%defattr(644,root,root,755)
-%{_libdir}/libOSMesa*.a
+%{_libdir}/libOSMesa.a
%endif
%endif
+%if %{with egl} && %{with gallium}
%files libOpenVG
%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libOpenVG.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/libOpenVG.so.1
-%attr(755,root,root) %{_libdir}/libOpenVG.so.1.0.0
%files libOpenVG-devel
%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libOpenVG.so
%{_includedir}/VG
-%{_libdir}/libOpenVG.so
%{_pkgconfigdir}/vg.pc
+%endif
-%files dri-driver-ati-mach64
+%if %{with gallium}
+%if %{with gallium_nouveau}
+%files libXvMC-nouveau
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/xorg/modules/dri/mach64_dri.so
+%attr(755,root,root) %{_libdir}/libXvMCnouveau.so.1.0
+%attr(755,root,root) %ghost %{_libdir}/libXvMCnouveau.so.1
+%endif
-%files dri-driver-ati-radeon-R100
+%files libXvMC-r300
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/xorg/modules/dri/radeon_dri.so
-#if %{with gallium}
-# this file conflicts with xorg-driver-video-ati
-#attr(755,root,root) %{_libdir}/xorg/modules/drivers/radeon_drv.so
-#endif
+%attr(755,root,root) %{_libdir}/libXvMCr300.so.1.0
+%attr(755,root,root) %ghost %{_libdir}/libXvMCr300.so.1
-%files dri-driver-ati-radeon-R200
+%files libXvMC-r600
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/xorg/modules/dri/r200_dri.so
+%attr(755,root,root) %{_libdir}/libXvMCr600.so.1.0
+%attr(755,root,root) %ghost %{_libdir}/libXvMCr600.so.1
-%files dri-driver-ati-radeon-R300
+%files libXvMC-softpipe
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/xorg/modules/dri/r300_dri.so
+%attr(755,root,root) %{_libdir}/libXvMCsoftpipe.so.1.0
+%attr(755,root,root) %ghost %{_libdir}/libXvMCsoftpipe.so.1
+%endif
-%files dri-driver-ati-radeon-R600
+%if %{with gbm}
+%files libgbm
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/xorg/modules/dri/r600_dri.so
+%attr(755,root,root) %{_libdir}/libgbm.so.*.*
+%attr(755,root,root) %ghost %{_libdir}/libgbm.so.1
+%if %{with gallium}
+%dir %{_libdir}/gbm
+%attr(755,root,root) %{_libdir}/gbm/gbm_gallium_drm.so
+%endif
-%files dri-driver-ati-rage128
+%files libgbm-devel
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/xorg/modules/dri/r128_dri.so
+%attr(755,root,root) %{_libdir}/libgbm.so
+%{_includedir}/gbm.h
+%{_pkgconfigdir}/gbm.pc
+%endif
-# sunffb (sparc only)
-%ifarch sparc sparcv9 sparc64
-%files dri-driver-ffb
+%if %{with gallium}
+%files gbm-driver-swrast
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/xorg/modules/dri/ffb_dri.so
+%attr(755,root,root) %{_libdir}/gbm/pipe_swrast.so
+
+%if %{with gallium_intel}
+%files gbm-driver-i915
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/gbm/pipe_i915.so
%endif
-# glint (requires update)
-%if 0
-%files dri-driver-glint
+%if %{with gallium_nouveau}
+%files gbm-driver-nouveau
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/xorg/modules/dri/gamma_dri.so
+%attr(755,root,root) %{_libdir}/gbm/pipe_nouveau.so
%endif
-%files dri-driver-intel-i810
+%files gbm-driver-r300
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/xorg/modules/dri/i810_dri.so
+%attr(755,root,root) %{_libdir}/gbm/pipe_r300.so
-%files dri-driver-intel-i915
+%files gbm-driver-r600
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/xorg/modules/dri/i915_dri.so
+%attr(755,root,root) %{_libdir}/gbm/pipe_r600.so
-%files dri-driver-intel-i965
+%files gbm-driver-vmwgfx
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/xorg/modules/dri/i965_dri.so
-%if %{with gallium_intel}
-%attr(755,root,root) %{_libdir}/xorg/modules/drivers/i965g_drv.so
+%attr(755,root,root) %{_libdir}/gbm/pipe_vmwgfx.so
+%endif
+
+%files libglapi
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libglapi.so.*.*
+%attr(755,root,root) %ghost %{_libdir}/libglapi.so.0
+# libglapi-devel? nothing seems to need it atm.
+#%attr(755,root,root) %{_libdir}/libglapi.so
+
+%if %{with wayland}
+%files libwayland-egl
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libwayland-egl.so.*.*
+%attr(755,root,root) %ghost %{_libdir}/libwayland-egl.so.1
+
+%files libwayland-egl-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libwayland-egl.so
+%{_pkgconfigdir}/wayland-egl.pc
%endif
-%files dri-driver-matrox
+%if %{with xa}
+%files libxatracker
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/xorg/modules/dri/mga_dri.so
+%attr(755,root,root) %{_libdir}/libxatracker.so.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxatracker.so.1
+
+%files libxatracker-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libxatracker.so
+%{_includedir}/xa_composite.h
+%{_includedir}/xa_context.h
+%{_includedir}/xa_tracker.h
+%{_pkgconfigdir}/xatracker.pc
+%endif
+
+%if %{with egl}
+%files khrplatform-devel
+%defattr(644,root,root,755)
+%dir %{_includedir}/KHR
+%{_includedir}/KHR/khrplatform.h
+%endif
+
+%files dri-core
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/xorg/modules/dri/libdricore.so
+%attr(755,root,root) %{_libdir}/xorg/modules/dri/libglsl.so
+
+%files dri-driver-ati-radeon-R100
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/xorg/modules/dri/radeon_dri.so
+
+%files dri-driver-ati-radeon-R200
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/xorg/modules/dri/r200_dri.so
%if %{with gallium}
+%files dri-driver-ati-radeon-R300
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/xorg/modules/dri/r300_dri.so
+
+%files dri-driver-ati-radeon-R600
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/xorg/modules/dri/r600_dri.so
+
+%files dri-driver-intel-i915
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/xorg/modules/dri/i915_dri.so
+
+%files dri-driver-intel-i965
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/xorg/modules/dri/i965_dri.so
+
%if %{with gallium_nouveau}
%files dri-driver-nouveau
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/xorg/modules/drivers/modesetting_drv.so
%attr(755,root,root) %{_libdir}/xorg/modules/dri/nouveau_dri.so
%endif
%endif
-%files dri-driver-savage
+%files dri-driver-swrast
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/xorg/modules/dri/savage_dri.so
+%attr(755,root,root) %{_libdir}/xorg/modules/dri/swrast_dri.so
-%ifarch %{ix86} %{x8664}
-%files dri-driver-sis
+%if %{with gallium}
+%files dri-driver-vmwgfx
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/xorg/modules/dri/sis_dri.so
+%attr(755,root,root) %{_libdir}/xorg/modules/dri/vmwgfx_dri.so
%endif
-%files dri-driver-swrast
+%if %{with gallium}
+# ldconfig is not used in vdpau tree, so package all symlinks
+%if %{with gallium_nouveau}
+%files -n libvdpau-driver-mesa-nouveau
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/xorg/modules/dri/swrast_dri.so
+%attr(755,root,root) %{_libdir}/vdpau/libvdpau_nouveau.so.1.0
+%attr(755,root,root) %{_libdir}/vdpau/libvdpau_nouveau.so.1
+%attr(755,root,root) %{_libdir}/vdpau/libvdpau_nouveau.so
+%endif
-%files dri-driver-tdfx
+%files -n libvdpau-driver-mesa-r300
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/xorg/modules/dri/tdfx_dri.so
+%attr(755,root,root) %{_libdir}/vdpau/libvdpau_r300.so.1.0
+%attr(755,root,root) %{_libdir}/vdpau/libvdpau_r300.so.1
+%attr(755,root,root) %{_libdir}/vdpau/libvdpau_r300.so
-%files dri-driver-via-unichrome
+%files -n libvdpau-driver-mesa-r600
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/xorg/modules/dri/unichrome_dri.so
+%attr(755,root,root) %{_libdir}/vdpau/libvdpau_r600.so.1.0
+%attr(755,root,root) %{_libdir}/vdpau/libvdpau_r600.so.1
+%attr(755,root,root) %{_libdir}/vdpau/libvdpau_r600.so
-%if %{with gallium}
-%files dri-driver-vmwgfx
+%files -n libvdpau-driver-mesa-softpipe
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/xorg/modules/dri/vmwgfx_dri.so
-%attr(755,root,root) %{_libdir}/xorg/modules/drivers/vmwgfx_drv.so
+%attr(755,root,root) %{_libdir}/vdpau/libvdpau_softpipe.so.1.0
+%attr(755,root,root) %{_libdir}/vdpau/libvdpau_softpipe.so.1
+%attr(755,root,root) %{_libdir}/vdpau/libvdpau_softpipe.so
%endif