]> git.pld-linux.org Git - packages/Mesa.git/blobdiff - Mesa.spec
- llvm rebuild
[packages/Mesa.git] / Mesa.spec
index 480ce2fd4de90ebf843823bd060e076bb93756b6..436448f329469a5f457f1bf3989af90f2b2c8871 100644 (file)
--- a/Mesa.spec
+++ b/Mesa.spec
@@ -4,6 +4,7 @@
 # - 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)
+# - libglvnd?
 #
 # Conditional build:
 %bcond_without gallium         # gallium drivers
 %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_with    openvg          # OpenVG library [not building since 10.4, dropped in 10.6]
 %bcond_without gbm             # Graphics Buffer Manager
 %bcond_without nine            # Nine Direct3D 9+ state tracker (for Wine)
 %bcond_without opencl          # OpenCL support
 %bcond_without ocl_icd         # OpenCL as ICD (installable client driver)
+%bcond_with    glvnd           # OpenGL vendor neutral dispatcher support
 %bcond_without omx             # OpenMAX (Bellagio OMXIL) support
 %bcond_without va              # VA library
 %bcond_without wayland         # Wayland EGL
 %bcond_without xa              # XA state tracker (for vmwgfx xorg driver)
+%bcond_with    hud_extra       # HUD block/NIC I/O HUD stats support
+%bcond_with    lm_sensors      # HUD lm_sensors support
 %bcond_with    texture_float   # floating-point textures and renderbuffers (SGI patent in US)
 %bcond_with    static_libs     # static libraries [not supported for DRI, thus broken currently]
 %bcond_with    tests           # tests
+%bcond_without shared_llvm     # disable use of the shared LLVM libs
 #
 # 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
@@ -31,7 +36,7 @@
 # minimal supported xserver version
 %define                xserver_ver             1.5.0
 # other packages
-%define                libdrm_ver              2.4.66
+%define                libdrm_ver              2.4.71
 %define                dri2proto_ver           2.6
 %define                dri3proto_ver           1.0
 %define                glproto_ver             1.4.14
 %undefine      with_wayland
 %endif
 
-%define prerel rc2
-%define        rel     1
+%define        rel     2
 Summary:       Free OpenGL implementation
 Summary(pl.UTF-8):     Wolnodostępna implementacja standardu OpenGL
 Name:          Mesa
-Version:       12.0.0
-Release:       0.%{prerel}.%{rel}
+Version:       13.0.0
+Release:       2
 License:       MIT (core) and others - see license.html file
 Group:         X11/Libraries
-Source0:       ftp://ftp.freedesktop.org/pub/mesa/%{version}/mesa-%{version}-%{prerel}.tar.xz
-# Source0-md5: ed974368926916b3bb552b29745a139d
+Source0:       ftp://ftp.freedesktop.org/pub/mesa/%{version}/mesa-%{version}.tar.xz
+# Source0-md5: 8c4ca7da1be2b8f9a877db09304335a4
 URL:           http://www.mesa3d.org/
 BuildRequires: autoconf >= 2.60
 BuildRequires: automake
@@ -71,8 +75,10 @@ BuildRequires:       automake
 BuildRequires: elfutils-devel
 BuildRequires: expat-devel
 BuildRequires: gcc >= 6:4.2.0
+%{?with_nine:BuildRequires:    gcc-c++ >= 6:4.6}
 %{?with_opencl:BuildRequires:  gcc-c++ >= 6:4.7}
 BuildRequires: libdrm-devel >= %{libdrm_ver}
+%{?with_glvnd:BuildRequires:   libglvnd-devel >= 0.1.0}
 BuildRequires: libselinux-devel
 BuildRequires: libstdc++-devel >= 6:4.2.0
 BuildRequires: libtalloc-devel >= 2:2.0.1
@@ -81,7 +87,7 @@ BuildRequires:        libtool >= 2:2.2
 %{?with_va:BuildRequires:      pkgconfig(libva) >= 0.38.0}
 BuildRequires: libvdpau-devel >= 1.1
 BuildRequires: libxcb-devel >= 1.10
-%{?with_gallium_radeon:BuildRequires:  llvm-devel >= 3.6}
+%{?with_gallium_radeon:BuildRequires:  llvm-devel >= 3.8}
 %{?with_opencl:BuildRequires:  llvm-libclc}
 # for SHA1 (could use also libmd/libsha1/libgcrypt/openssl instead)
 BuildRequires: nettle-devel
@@ -94,11 +100,10 @@ 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-Mako >= 0.8.0
 BuildRequires: python-modules >= 2
 BuildRequires: rpmbuild(macros) >= 1.470
 BuildRequires: sed >= 4.0
-%{?with_egl:BuildRequires:     udev-devel >= 1:151}
 # wayland-{client,server}
 %{?with_wayland:BuildRequires: wayland-devel >= 1.2.0}
 BuildRequires: xorg-lib-libXdamage-devel
@@ -114,6 +119,7 @@ BuildRequires:      xorg-proto-glproto-devel >= %{glproto_ver}
 BuildRequires: xorg-proto-presentproto-devel >= %{presentproto_ver}
 BuildRequires: xorg-util-makedepend
 %if %{with gallium}
+%{?with_lm_sensors:BuildRequires:      lm_sensors-devel >= 3.4}
 BuildRequires: xorg-proto-xextproto-devel >= 7.0.99.1
 BuildRequires: xorg-xserver-server-devel >= %{xserver_ver}
 %endif
@@ -153,9 +159,6 @@ Requires:   OpenGL >= 1.2
 Requires:      libdrm >= %{libdrm_ver}
 Requires:      libxcb >= 1.9
 %{?with_wayland:Requires:      wayland >= 1.2.0}
-%if %{with gallium}
-Requires:      udev-libs >= 1:151
-%endif
 %if %{with gbm}
 Requires:      %{name}-libgbm = %{version}-%{release}
 %endif
@@ -216,7 +219,7 @@ License:    MIT
 Group:         X11/Libraries
 Requires:      %{name}-libglapi = %{version}-%{release}
 Requires:      libdrm >= %{libdrm_ver}
-Provides:      OpenGL = 4.1
+Provides:      OpenGL = 4.5
 Provides:      OpenGL-GLX = 1.4
 Obsoletes:     Mesa
 Obsoletes:     Mesa-dri
@@ -261,7 +264,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 = 4.1
+Provides:      OpenGL-devel = 4.5
 Obsoletes:     Mesa-devel
 Obsoletes:     X11-OpenGL-devel < 1:7.0.0
 Obsoletes:     X11-OpenGL-devel-base < 1:7.0.0
@@ -280,7 +283,7 @@ Summary(pl.UTF-8):  Statyczna biblioteka libGL z projektu Mesa3D
 License:       MIT
 Group:         X11/Development/Libraries
 Requires:      %{name}-libGL-devel = %{version}-%{release}
-Provides:      OpenGL-static = 4.1
+Provides:      OpenGL-static = 4.5
 Obsoletes:     Mesa-static
 Obsoletes:     X11-OpenGL-static < 1:7.0.0
 Obsoletes:     XFree86-OpenGL-static < 1:7.0.0
@@ -387,7 +390,6 @@ 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
 
@@ -419,7 +421,6 @@ License:    MIT
 Group:         Libraries
 Requires:      libdrm >= %{libdrm_ver}
 Requires:      llvm-libclc
-Requires:      udev-libs >= 1:151
 Provides:      OpenCL = 1.1
 
 %description libOpenCL
@@ -522,22 +523,63 @@ R600/R700.
 
 %package -n libva-driver-gallium
 Summary:       VA driver for Gallium State Tracker
-Summary(pl.UTF-8):     Sterownik VA do Gallium
+Summary(pl.UTF-8):     Sterowniki VA do Gallium
 Group:         Libraries
-Requires:      libva >= 1.3.0
+%if %{with gallium_radeon}
+Requires:      libva-driver-r600
+Requires:      libva-driver-radeonsi
+%endif
+%if %{with gallium_nouveau}
+Requires:      libva-driver-nouveau
+%endif
 
 %description -n libva-driver-gallium
-VA driver for Gallium State Tracker.
+VA drivers for Gallium State Tracker (r600, radeonsi & nouveau).
 
 %description -n libva-driver-gallium -l pl.UTF-8
-Sterownik VA do Gallium.
+Sterowniki VA do Gallium (r600, radeonsi & nouveau).
+
+%package -n libva-driver-r600
+Summary:       VA driver for ATI Radeon R600 series adapters
+Summary(pl.UTF-8):     Sterownik VA dla kart ATI Radeon z serii R600
+Group:         Libraries
+Requires:      libva >= 1.6.0
+
+%description -n libva-driver-r600
+VA driver for ATI Radeon R600 series adapters.
+
+%description -n libva-driver-r600 -l pl.UTF-8
+Sterownik VA dla kart ATI Radeon z serii R600.
+
+%package -n libva-driver-radeonsi
+Summary:       VA driver for ATI Radeon SI adapters
+Summary(pl.UTF-8):     Sterownik VA dla kart ATI Radeon SI
+Group:         Libraries
+Requires:      libva >= 1.6.0
+
+%description -n libva-driver-radeonsi
+VA driver for ATI Radeon adapters based on Southern Islands chips.
+
+%description -n libva-driver-radeonsi -l pl.UTF-8
+Sterownik VA dla kart ATI Radeon opartych na układach Southern Islands.
+
+%package -n libva-driver-nouveau
+Summary:       VA driver for NVidia adapters
+Summary(pl.UTF-8):     Sterownik VA dla kart NVidia
+Group:         Libraries
+Requires:      libva >= 1.6.0
+
+%description -n libva-driver-nouveau
+VA driver for NVidia adapters.
+
+%description -n libva-driver-nouveau -l pl.UTF-8
+Sterownik VA dla kart NVidia.
 
 %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:151
 Conflicts:     Mesa-libEGL < 8.0.1-2
 
 %description libgbm
@@ -551,7 +593,6 @@ 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:151
 
 %description libgbm-devel
 Header file for Mesa Graphics Buffer Manager library.
@@ -736,7 +777,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
-Requires:      xorg-driver-video-intel
 Requires:      xorg-xserver-libglx(glapi) = %{glapi_ver}
 Requires:      xorg-xserver-server >= %{xserver_ver}
 Obsoletes:     Mesa-dri-driver-intel-i830
@@ -755,7 +795,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:      xorg-driver-video-intel
 Requires:      xorg-xserver-libglx(glapi) = %{glapi_ver}
 Requires:      xorg-xserver-server >= %{xserver_ver}
 Obsoletes:     Mesa-dri-driver-intel-i830
@@ -1160,7 +1199,7 @@ 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
+Summary(pl.UTF-8):     Sterownik Vulkan dla GPU firmy Intel
 License:       MIT
 Group:         Libraries
 Suggests:      vulkan(loader)
@@ -1175,7 +1214,7 @@ 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
+Summary(pl.UTF-8):     Pliki nagłówkowe sterownika Vulkan dla GPU Intela
 License:       MIT
 Group:         Development/Libraries
 Requires:      %{name}-vulkan-icd-intel = %{version}-%{release}
@@ -1187,7 +1226,7 @@ eader files for Mesa Intel GPU Vulkan driver.
 Pliki nagłówkowe sterownika Vulkan dla GPU Intel.
 
 %prep
-%setup -q -n mesa-%{version}-%{prerel}
+%setup -q -n mesa-%{version}
 
 %build
 %{__libtoolize}
@@ -1222,7 +1261,7 @@ nouveau
 %endif
 ilo \
 virgl \
-%ifarch arm
+%ifarch %{arm}
 freedreno \
 vc4 \
 %endif
@@ -1236,6 +1275,7 @@ vulkan_drivers="intel"
        --disable-silent-rules \
        %{__enable gbm} \
        --enable-glx-tls \
+       %{?with_glvnd:--enable-libglvnd} \
        --enable-osmesa \
        --enable-selinux \
        --enable-shared \
@@ -1249,11 +1289,11 @@ vulkan_drivers="intel"
        --with-egl-platforms=x11%{?with_gbm:,drm}%{?with_wayland:,wayland} \
 %endif
 %if %{with gallium}
+       %{?with_hud_extra:--enable-gallium-extra-hud} \
        --enable-gallium-llvm \
-       --enable-llvm-shared-libs \
-       %{__enable egl gallium-egl} \
-       %{__enable gbm gallium-gbm} \
+       %{__enable_disable shared_llvm llvm-shared-libs} \
        %{__enable ocl_icd opencl-icd} \
+       %{?with_lm_sensors:--enable-lmsensors} \
        %{?with_nine:--enable-nine} \
        %{__enable opencl} \
        %{__enable va} \
@@ -1282,8 +1322,6 @@ rm -rf $RPM_BUILD_ROOT
 %{__make} install \
        DESTDIR=$RPM_BUILD_ROOT
 
-# strip out undesirable headers
-%{__rm} $RPM_BUILD_ROOT%{_includedir}/GL/wglext.h
 # dlopened by soname
 %{?with_gallium:%{__rm} $RPM_BUILD_ROOT%{_libdir}/libXvMC*.so}
 %{?with_gallium:%{__rm} $RPM_BUILD_ROOT%{_libdir}/libXvMC*.so.1.0}
@@ -1297,16 +1335,15 @@ rm -rf $RPM_BUILD_ROOT
 %{?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}
+%{__rm} -r $RPM_BUILD_ROOT%{_includedir}/vulkan/{vk_platform.h,vulkan.h}
 
+%if %{without glvnd}
 # 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.*.*
+%endif
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -1373,11 +1410,17 @@ rm -rf $RPM_BUILD_ROOT
 %files libGL
 %defattr(644,root,root,755)
 %doc docs/{*.html,README.UVD,patents.txt,relnotes/*.html}
+%if %{with glvnd}
+%attr(755,root,root) %{_libdir}/libGLX_mesa.so.*.*
+%attr(755,root,root) %ghost %{_libdir}/libGLX_mesa.so.0
+%attr(755,root,root) %{_libdir}/libGLX_mesa.so
+%else
 %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
+%endif
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/drirc
 
 %files libGL-devel
@@ -1391,7 +1434,6 @@ rm -rf $RPM_BUILD_ROOT
 %{_includedir}/GL/glx.h
 %{_includedir}/GL/glxext.h
 %{_includedir}/GL/glx_mangle.h
-%{_includedir}/GL/mesa_glinterop.h
 %dir %{_includedir}/GL/internal
 %{_includedir}/GL/internal/dri_interface.h
 %{_pkgconfigdir}/dri.pc
@@ -1493,7 +1535,22 @@ rm -rf $RPM_BUILD_ROOT
 %if %{with va}
 %files -n libva-driver-gallium
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libva/dri/gallium_drv_video.so
+
+%if %{with gallium_radeon}
+%files -n libva-driver-r600
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libva/dri/r600_drv_video.so
+
+%files -n libva-driver-radeonsi
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libva/dri/radeonsi_drv_video.so
+%endif
+
+%if %{with gallium_nouveau}
+%files -n libva-driver-nouveau
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libva/dri/nouveau_drv_video.so
+%endif
 %endif
 %endif
 
@@ -1602,7 +1659,7 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_libdir}/xorg/modules/dri/swrast_dri.so
 
 %if %{with gallium}
-%ifarch arm
+%ifarch %{arm}
 %files dri-driver-vc4
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/xorg/modules/dri/vc4_dri.so
@@ -1628,7 +1685,7 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/gallium-pipe/pipe_i965.so
 
-%ifarch arm
+%ifarch %{arm}
 %files pipe-driver-msm
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/gallium-pipe/pipe_msm.so
@@ -1714,8 +1771,8 @@ rm -rf $RPM_BUILD_ROOT
 
 %files vulkan-icd-intel
 %defattr(644,root,root,755)
-%{_libdir}/libvulkan_intel.so
-%{_datadir}/vulkan/icd.d/*.json
+%attr(755,root,root) %{_libdir}/libvulkan_intel.so
+%{_datadir}/vulkan/icd.d/intel_icd.*.json
 
 %files vulkan-icd-intel-devel
 %defattr(644,root,root,755)
This page took 0.05574 seconds and 4 git commands to generate.