+#
+# Conditional build:
+%bcond_without udev # device names resolving fallback using HWDB
+
Summary: Linux PCI utilities
Summary(cs.UTF-8): Linuxové utility pro PCI
Summary(da.UTF-8): PCI-bus-relaterede værktøjer
Summary(uk.UTF-8): Утиліти роботи з PCI пристроями
Summary(zh_CN.UTF-8): PCI 总线相关的工具。
Name: pciutils
-Version: 3.1.7
-Release: 3
+Version: 3.5.0
+Release: 1
License: GPL v2+
Group: Applications/System
Source0: ftp://atrey.karlin.mff.cuni.cz/pub/linux/pci/%{name}-%{version}.tar.gz
-# Source0-md5: f3e349d22a3714b4272b171649ad5235
+# Source0-md5: 6eeea209e4eea9eb8ce3faaedb3a10d0
Source1: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
# Source1-md5: 1ac48f433b1995044e14c24513992211
-Source2: http://pci-ids.ucw.cz/v2.2/pci.ids
Patch0: %{name}-pci_h.patch
Patch1: %{name}-pcimodules.patch
Patch2: %{name}-nowhich.patch
+Patch3: %{name}-pci_init-error.patch
+Patch4: hwdata.patch
URL: http://mj.ucw.cz/pciutils.html
+BuildRequires: kmod-devel
+%{?with_udev:BuildRequires: udev-devel}
BuildRequires: zlib-devel
+Requires: %{name}-libs = %{version}-%{release}
+Requires: hwdata >= 0.243-2
+Conflicts: xorg-lib-libpciaccess < 0.13.1-2
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define _exec_prefix /
%define _libdir %{_prefix}/%{_lib}
-%define _datadir /etc
%define _sbindir /sbin
+%define hwdatadir /lib/hwdata
%define specflags -fomit-frame-pointer
пристроїв, під'єднаних до PCI шини. Для роботи ці утиліти потребують
наявності інтерфейсу /proc/bus/pci.
+%package libs
+Summary: Linux PCI library
+Summary(pl.UTF-8): Biblioteka Linux PCI
+Group: Libraries
+Conflicts: pciutils < 3.3.1-2
+
+%description libs
+This package contains a library for inspecting and setting devices
+connected to the PCI bus.
+
+%description libs -l pl.UTF-8
+Ten pakiet zawiera bibliotekę do badania i konfiguracji urządzeń
+podłączonych do szyny PCI.
+
%package devel
Summary: Linux PCI development library
Summary(cs.UTF-8): Linuxová vývojová knihovna pro PCI
%patch0 -p1
%patch1 -p1
%patch2 -p1
+%patch3 -p1
+%patch4 -p1
-# paranoid check whether pci.ids in _sourcedir isn't too old
-if [ $(wc -l < %{SOURCE2}) -lt $(wc -l < pci.ids) ] ; then
- : pci.ids needs to be updated
- exit 1
-fi
-cp -f %{SOURCE2} .
+%{__rm} pci.ids
ln -sf lib pci
%build
-%define config ZLIB=yes DNS=yes SHARED=yes
+%define config ZLIB=yes DNS=yes SHARED=yes LIBKMOD=yes %{?with_udev:HWDB=yes}%{!?with_udev:HWDB=no} PCI_IDS=
%{__make} lib/libpci.a \
- ZLIB=yes DNS=yes SHARED=no \
+ %{config} SHARED=no \
CC="%{__cc}" \
OPT="%{rpmcppflags} %{rpmcflags}" \
PREFIX=%{_prefix} \
- IDSDIR=%{_datadir} \
INCDIR=%{_includedir} \
LIBDIR=%{_libdir}
-rm -f lib/*.o lib/config.h lib/config.mk lib/libpci.pc
+%{__rm} lib/*.o lib/config.h lib/config.mk lib/libpci.pc
%{__make} \
%{config} \
OPT="%{rpmcflags}" \
LDFLAGS="%{rpmldflags}" \
PREFIX=%{_prefix} \
- IDSDIR=%{_datadir} \
INCDIR=%{_includedir} \
LIBDIR=%{_libdir}
%install
rm -rf $RPM_BUILD_ROOT
-
%{__make} install install-lib \
DESTDIR=$RPM_BUILD_ROOT \
+ %{config} \
+ INSTALL="install -p" \
PREFIX=%{_prefix} \
LIBDIR=%{_libdir} \
SBINDIR=%{_sbindir} \
- SHAREDIR=%{_datadir} \
- PCI_IDS=pci.ids
install -d $RPM_BUILD_ROOT/%{_lib}
mv $RPM_BUILD_ROOT%{_libdir}/libpci.so.* $RPM_BUILD_ROOT/%{_lib}
+ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libpci.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libpci.so
+/sbin/ldconfig -n $RPM_BUILD_ROOT/%{_lib}
+
# let rpm find deps
chmod 755 $RPM_BUILD_ROOT/%{_lib}/libpci.so.*
-ln -sf $(basename $RPM_BUILD_ROOT/%{_lib}/libpci.so.*.*.*) $RPM_BUILD_ROOT/%{_lib}/libpci.so.3
-ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libpci.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/libpci.so
-install lib/libpci.a $RPM_BUILD_ROOT%{_libdir}
+cp -p lib/libpci.a $RPM_BUILD_ROOT%{_libdir}
-install pcimodules $RPM_BUILD_ROOT%{_sbindir}
+install -p pcimodules $RPM_BUILD_ROOT%{_sbindir}
# private pciutils header, what does it use?
-install pciutils.h $RPM_BUILD_ROOT%{_includedir}/pci
+cp -p pciutils.h $RPM_BUILD_ROOT%{_includedir}/pci
bzip2 -dc %{SOURCE1} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
-rm -f $RPM_BUILD_ROOT%{_mandir}/{README.pciutils-non-english-man-pages,/pciutils-non_en_man.patch}
+%{__rm} $RPM_BUILD_ROOT%{_mandir}/{README.pciutils-non-english-man-pages,/pciutils-non_en_man.patch}
%clean
rm -rf $RPM_BUILD_ROOT
-%post -p /sbin/ldconfig
-%postun -p /sbin/ldconfig
+%post libs -p /sbin/ldconfig
+%postun libs -p /sbin/ldconfig
%files
%defattr(644,root,root,755)
%attr(755,root,root) %{_sbindir}/setpci
%attr(755,root,root) %{_sbindir}/pcimodules
%attr(755,root,root) %{_sbindir}/update-pciids
-%attr(755,root,root) /%{_lib}/libpci.so.*.*.*
-%attr(755,root,root) %ghost /%{_lib}/libpci.so.3
-%{_datadir}/pci.ids
%{_mandir}/man7/pcilib.7*
%{_mandir}/man8/lspci.8*
%{_mandir}/man8/setpci.8*
%lang(ja) %{_mandir}/ja/man8/*
%lang(pl) %{_mandir}/pl/man8/*
+%files libs
+%defattr(644,root,root,755)
+%attr(755,root,root) /%{_lib}/libpci.so.*.*.*
+%attr(755,root,root) %ghost /%{_lib}/libpci.so.3
+
%files devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libpci.so