%define bootstrap 0 %{?_without_bootstrap: %global bootstrap 0} %{?_with_bootstrap: %global bootstrap 1} %define major 2 %define libname %mklibname drm %{major} %define develname %mklibname drm -d %define staticdevelname %mklibname drm -d -s %define kms_major 1 %define libkms %mklibname kms %{kms_major} %define intel_major 1 %define libintel %mklibname drm_intel %{intel_major} %define nouveau_major 2 %define libnouveau %mklibname drm_nouveau %{nouveau_major} %define radeon_major 1 %define libradeon %mklibname drm_radeon %{radeon_major} %define omap_major 1 %define libomap %mklibname drm_omap %{omap_major} %define exynos_major 1 %define libexynos %mklibname drm_exynos %{exynos_major} Summary: Userspace interface to kernel DRM services Name: libdrm Version: 2.4.43 Release: %mkrel 4 Group: System/Libraries License: MIT/X11 URL: http://xorg.freedesktop.org Source0: http://dri.freedesktop.org/libdrm/libdrm-%{version}.tar.bz2 Source1: 91-drm-modeset.rules # upstream git #Patch0001: 0001-Remove-unused-header-xf86mm.h.patch Patch0002: 0002-makefiles-Add-missing-headers.patch Patch0003: 0003-drm-Fix-error-message-in-drmWaitVBlank.patch Patch0004: 0004-intel-Fix-Haswell-CRW-PCI-IDs.patch Patch0005: 0005-intel-decode-Fix-gen6-HIER_DEPTH_BUFFER-decoding.patch Patch0006: radeon-add-new-SI-pci-ids.patch Patch0007: radeon-add-new-richland-pci-ids.patch Patch0008: intel-Fix-up-fence-counts.patch # Do not try proc for backward Linux compatibility: Patch0101: 0101-RH-libdrm-2.4.0-no-bc-v1.3.patch Patch0500: 0500-improve-waiting-for-dri-device-to-appear-when-system.patch Patch1005: libdrm_mips_drm_cas.patch Patch1006: libdrm_mips_sarea_max.patch BuildRequires: kernel-userspace-headers >= 3.3.1-1 BuildRequires: libpthread-stubs BuildRequires: x11-util-macros >= 1.0.1 %if !%bootstrap BuildRequires: udev-devel %endif BuildRequires: libpciaccess-devel BuildRequires: cairo-devel BuildRequires: xsltproc BuildRequires: docbook-xsl %description Userspace interface to kernel DRM services %package common Summary: Common files for the userspace interface to kernel DRM services Group: System/Libraries %description common Common files for the userspace interface to kernel DRM services %package -n %{libname} Summary: Userspace interface to kernel DRM services Group: System/Libraries Provides: %{name} = %{version} Requires: %{name}-common %description -n %{libname} Userspace interface to kernel DRM services %package -n %{libkms} Summary: Shared library for KMS Group: System/Libraries %description -n %{libkms} Shared library for kernel mode setting. %ifarch %{ix86} x86_64 %package -n %{libintel} Summary: Shared library for Intel kernel DRM services Group: System/Libraries Conflicts: %{_lib}drm2 < 2.4.5-2 %description -n %{libintel} Shared library for Intel kernel Direct Rendering Manager services. %endif %package -n %{libnouveau} Summary: Shared library for Nouveau kernel DRM services Group: System/Libraries %description -n %{libnouveau} Shared library for Nouveau kernel Direct Rendering Manager services. %package -n %{libradeon} Summary: Shared library for Radeon kernel DRM services Group: System/Libraries Conflicts: %{_lib}drm2 < 2.4.5-2 %description -n %{libradeon} Shared library for Radeon kernel Direct Rendering Manager services. %ifarch %arm %package -n %{libomap} Summary: Shared library for OMAP kernel DRM services Group: System/Libraries Conflicts: %{_lib}drm2 < 2.4.5-2 %description -n %{libomap} Shared library for OMAP kernel Direct Rendering Manager services. %package -n %{libexynos} Summary: Shared library for Exynos kernel DRM services Group: System/Libraries Conflicts: %{_lib}drm2 < 2.4.5-2 %description -n %{libexynos} Shared library for EXYNOS kernel Direct Rendering Manager services. %endif %package -n %{develname} Summary: Development files for %{name} Group: Development/X11 Requires: %{libname} = %{version} Requires: %{libkms} = %{version} %ifarch %{ix86} x86_64 Requires: %{libintel} = %{version} %endif Requires: %{libnouveau} = %{version} Requires: %{libradeon} = %{version} %ifarch %arm Requires: %{libomap} = %{version} Requires: %{libexynos} = %{version} %endif Provides: %{name}-devel = %{version}-%{release} Obsoletes: %{mklibname drm 2 -d} Obsoletes: drm-nouveau-devel < 2.3.0-2.20090111.2 %description -n %{develname} Development files for %{name} %package -n %{staticdevelname} Summary: Static development files for %{name} Group: Development/X11 Requires: %{name}-devel >= %{version} Requires: %{libname} = %{version} Provides: %{name}-static-devel = %{version}-%{release} Obsoletes: %{mklibname drm 2 -d -s} %description -n %{staticdevelname} Static development files for %{name} %prep %setup -q %apply_patches %build # Needed for patch4 autoreconf -fv --install %configure2_5x \ --enable-udev \ %ifarch %arm --enable-omap-experimental-api \ --enable-exynos-experimental-api \ %endif --enable-static %make %install rm -rf %{buildroot} %makeinstall_std mkdir -p %{buildroot}%{_udevrulesdir} install -m 0644 %{SOURCE1} %{buildroot}%{_udevrulesdir} find %{buildroot} -type f -name '*.la' -exec rm -f {} \; # (cg) Note that RH remove drm.h drm_mode.h drm_sarea.h r300_reg.h via_3d_reg.h # and we should perhaps do the same? (previous attempts have not gone well :) %clean rm -rf %{buildroot} %files common %{_udevrulesdir}/91-drm-modeset.rules %files -n %{libname} %{_libdir}/libdrm.so.%{major}* %files -n %{libkms} %{_libdir}/libkms.so.%{kms_major}* %ifarch %{ix86} x86_64 %files -n %{libintel} %{_libdir}/libdrm_intel.so.%{intel_major}* %endif %files -n %{libnouveau} %{_libdir}/libdrm_nouveau.so.%{nouveau_major}* %files -n %{libradeon} %{_libdir}/libdrm_radeon.so.%{radeon_major}* %ifarch %arm %files -n %{libomap} %{_libdir}/libdrm_omap.so.%{omap_major}* %files -n %{libexynos} %{_libdir}/libdrm_exynos.so.%{exynos_major}* %endif %files -n %{develname} %{_includedir}/libdrm %{_includedir}/libkms %{_includedir}/*.h %ifarch %arm %{_includedir}/omap/*.h %{_includedir}/exynos/*.h %endif %{_libdir}/libdrm*.so %{_libdir}/libkms.so %{_libdir}/pkgconfig/libdrm*.pc %{_libdir}/pkgconfig/libkms*.pc %_mandir/man3/drmAvailable.3.xz %_mandir/man3/drmHandleEvent.3.xz %_mandir/man3/drmModeGetResources.3.xz %_mandir/man7/drm-gem.7.xz %_mandir/man7/drm-kms.7.xz %_mandir/man7/drm-memory.7.xz %_mandir/man7/drm-mm.7.xz %_mandir/man7/drm-ttm.7.xz %_mandir/man7/drm.7.xz %files -n %{staticdevelname} %{_libdir}/*.a %changelog * Mon May 06 2013 tmb <tmb> 2.4.43-4.mga3 + Revision: 412437 - Intel: Fix up fence counts (mga #9044, fdo #59771) * Sat Apr 27 2013 tmb <tmb> 2.4.43-3.mga3 + Revision: 411327 - radeon: add new SI and Richland pci ids * Fri Apr 05 2013 tmb <tmb> 2.4.43-2.mga3 + Revision: 408313 - fixes from upstream git makefiles: Add missing headers drm: Fix error message in drmWaitVBlank intel: Fix Haswell CRW PCI IDs intel-decode: Fix gen6 HIER_DEPTH_BUFFER decoding * Sat Mar 30 2013 tmb <tmb> 2.4.43-1.mga3 + Revision: 406617 - BR: docbook-xsl - BR: cairo-devel, xsltproc - 2.4.43 (bugfixes, Amd Richland APU support) * Thu Feb 07 2013 tmb <tmb> 2.4.42-1.mga3 + Revision: 395038 - disable man-pages temporarily - 2.4.42: bugfixes, adds Amd Oland support * Thu Jan 17 2013 tmb <tmb> 2.4.41-1.mga3 + Revision: 388971 - 2.4.41 (bugfix release) * Sun Jan 13 2013 tmb <tmb> 2.4.40-4.mga3 + Revision: 380144 - install udev rules in correct place - intel: Remove the fence count contributions when clearing relocs (P102, upstream) * Sat Jan 12 2013 umeabot <umeabot> 2.4.40-2.mga3 + Revision: 357012 - Mass Rebuild - https://wiki.mageia.org/en/Feature:Mageia3MassRebuild * Wed Nov 07 2012 tv <tv> 2.4.40-1.mga3 + Revision: 316246 - adjust file list - drop linking patch (merged) - new release * Wed Sep 26 2012 rtp <rtp> 2.4.39-2.mga3 + Revision: 298458 - fix file list - enable omap and exynos on their arch. * Fri Aug 24 2012 tv <tv> 2.4.39-1.mga3 + Revision: 283761 - new release * Sun Aug 12 2012 tv <tv> 2.4.38-1.mga3 + Revision: 280968 - new release * Thu Jul 19 2012 tmb <tmb> 2.4.37-4.mga3 + Revision: 272373 - rebuild for new glibc * Tue Jul 10 2012 anssi <anssi> 2.4.37-3.mga3 + Revision: 269295 - re-add nouveau changes, mesa builds with them now - drop obsolete unused nouveau configure option * Sat Jun 30 2012 colin <colin> 2.4.37-2.mga3 + Revision: 265573 - Back out nouveau changes to allow mesa rebuild * Fri Jun 29 2012 tv <tv> 2.4.37-1.mga3 + Revision: 265132 - new release * Thu Jun 28 2012 tv <tv> 2.4.36-1.mga3 + Revision: 264792 - new release * Fri Jun 08 2012 tv <tv> 2.4.35-1.mga3 + Revision: 257321 - new release * Wed May 30 2012 tv <tv> 2.4.34-1.mga3 + Revision: 249731 - fix file list - nouveau major was bumped - drop merged patches - new release * Tue Apr 03 2012 tmb <tmb> 2.4.33-1.mga2 + Revision: 228055 - spec cleanups - intel: add Ivy Bridge GT2 server variant (P1) - update to 2.4.33 (needed for radeon backport) * Wed Feb 08 2012 tv <tv> 2.4.31-1.mga2 + Revision: 206565 - new release * Fri Jan 06 2012 tv <tv> 2.4.30-1.mga2 + Revision: 192736 - new release * Tue Dec 13 2011 tv <tv> 2.4.29-1.mga2 + Revision: 181219 - new release - new release * Tue Dec 06 2011 tmb <tmb> 2.4.27-2.mga2 + Revision: 177789 - rebuild with gcc-4.6.2 * Sun Oct 30 2011 tv <tv> 2.4.27-1.mga2 + Revision: 160173 - new release * Thu Jun 09 2011 tv <tv> 2.4.26-1.mga2 + Revision: 102708 - new release - BuildRequires: libpciaccess-devel * Fri Apr 15 2011 tv <tv> 2.4.25-1.mga1 + Revision: 85649 - new release * Thu Mar 03 2011 tv <tv> 2.4.24-1.mga1 + Revision: 63431 - new release * Sun Jan 23 2011 blino <blino> 2.4.23-2.mga1 + Revision: 35365 - rebuild with udev * Tue Jan 11 2011 dmorgan <dmorgan> 2.4.23-1.mga1 + Revision: 5564 - Disable udev for now + pterjan <pterjan> - Drop obsolete scriptlets - imported package libdrm