X-Git-Url: http://git.pld-linux.org/?p=packages%2FMesa.git;a=blobdiff_plain;f=Mesa.spec;h=436448f329469a5f457f1bf3989af90f2b2c8871;hp=edaa4aef5bc9bdb99988e1b1d1d2ef1408caa23b;hb=d3c2b28;hpb=9405a391d3ee92677e13167278a28910ddfdb710 diff --git a/Mesa.spec b/Mesa.spec index edaa4ae..436448f 100644 --- 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 @@ -11,18 +12,22 @@ %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 @@ -53,17 +58,16 @@ %undefine with_wayland %endif -%define prerel rc1 -%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: 1b2d2764beca249bb81f23274fc1d75d +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)