# TODO:
-# - systemd have more rules, check them and add if possible
# - get rules patches from systemd (if any)
#
# Conditional build:
%bcond_without selinux # without SELinux support
+%bcond_with apidocs # with API docs
-Summary: Device manager for the Linux 2.6 kernel series
-Summary(pl.UTF-8): Zarządca urządzeń dla Linuksa 2.6
+Summary: Device manager for the Linux kernel
+Summary(pl.UTF-8): Zarządca urządzeń dla jądra Linuksa
Name: udev
-Version: 2.1.1
-Release: 0.1
+Version: 3.1.2
+Release: 1
Epoch: 2
License: GPL v2+ (udev), LGPL v2.1+ (the rest)
Group: Base
Source0: http://dev.gentoo.org/~blueness/eudev/eudev-%{version}.tar.gz
-# Source0-md5: dd945ce34314b4544e9036153d3a97e9
+# Source0-md5: 07ab33fe310d250f06fc28f010e3fde2
# rules
Source101: udev-alsa.rules
Source102: udev.rules
Source121: fbdev.blacklist
Patch0: udev-ploop-rules.patch
Patch1: udev-libexecdir.patch
+Patch2: udev-net.ifnames.patch
URL: http://www.gentoo.org/proj/en/eudev/
BuildRequires: attr-devel
BuildRequires: autoconf >= 2.64
BuildRequires: glibc-misc
BuildRequires: gobject-introspection-devel >= 1.31.1
BuildRequires: gperf
-BuildRequires: gtk-doc >= 1.18
+%{?with_apidocs:BuildRequires: gtk-doc >= 1.18}
BuildRequires: kmod-devel >= 14
BuildRequires: libblkid-devel >= 2.20
%{?with_selinux:BuildRequires: libselinux-devel >= 2.1.9}
%define _libexecdir %{_prefix}/lib
%description
-udev is the device manager for the Linux 2.6 kernel series. Its
-primary function is managing device nodes in /dev. It is the successor
-of devfs and hotplug.
+udev is the device manager for the Linux kernel. Its primary function
+is managing device nodes in /dev. It is the successor of devfs and
+hotplug.
%description -l pl.UTF-8
-udev jest zarządcą urządzeń dla Linuksa 2.6. Jego główną funkcją jest
-zarządzanie węzłami urządzeń w katalogu /dev. Jest następcą devfs i
-hotpluga.
+udev jest zarządcą urządzeń dla jądra Linuksa. Jego główną funkcją
+jest zarządzanie węzłami urządzeń w katalogu /dev. Jest następcą devfs
+i hotpluga.
%package core
Summary: A userspace implementation of devfs - core part of udev
%setup -q -n eudev-%{version}
%patch0 -p1
%patch1 -p1
+%patch2 -p1
%build
+%if %{with apidocs}
%{__gtkdocize}
+%endif
%{__libtoolize}
%{__aclocal} -I m4
%{__autoconf}
--libexecdir=/lib \
--bindir=%{_sbindir} \
%{?debug:--enable-debug} \
+ %{__enable_disable apidocs gtk-doc} \
%{__enable_disable selinux} \
--disable-silent-rules \
--enable-introspection \
--enable-blkid \
--enable-gudev \
- --enable-gtk-doc \
--enable-keymap \
--enable-libkmod \
--enable-manpages \
--enable-modules \
- --enable-rule-generator \
--enable-shared \
--enable-static \
--with-html-dir=%{_gtkdocdir} \
%attr(755,root,root) /lib/udev/udevd
%attr(755,root,root) /lib/udev/accelerometer
-
-%attr(755,root,root) /lib/udev/write_cd_rules
-%attr(755,root,root) /lib/udev/write_net_rules
-/lib/udev/rule_generator.functions
-
%dir /lib/udev/hwdb.d
/lib/udev/hwdb.d/20-OUI.hwdb
/lib/udev/hwdb.d/20-acpi-vendor.hwdb
/lib/udev/hwdb.d/20-sdio-vendor-model.hwdb
/lib/udev/hwdb.d/20-usb-classes.hwdb
/lib/udev/hwdb.d/20-usb-vendor-model.hwdb
+/lib/udev/hwdb.d/60-evdev.hwdb
/lib/udev/hwdb.d/60-keyboard.hwdb
+/lib/udev/hwdb.d/70-mouse.hwdb
+/lib/udev/hwdb.d/70-touchpad.hwdb
%attr(755,root,root) %{_sbindir}/start_udev
%attr(755,root,root) %{_sbindir}/udevd
%attr(755,root,root) %{_sbindir}/udevadm
-%attr(755,root,root) /bin/udevadm
+%attr(755,root,root) %{_bindir}/udevadm
%dir %{_sysconfdir}/udev
%dir %{_sysconfdir}/udev/rules.d
/lib/udev/rules.d/42-usb-hid-pm.rules
/lib/udev/rules.d/50-udev-default.rules
/lib/udev/rules.d/60-cdrom_id.rules
+/lib/udev/rules.d/60-block.rules
/lib/udev/rules.d/60-drm.rules
-/lib/udev/rules.d/60-keyboard.rules
+/lib/udev/rules.d/60-evdev.rules
/lib/udev/rules.d/60-persistent-alsa.rules
/lib/udev/rules.d/60-persistent-input.rules
-/lib/udev/rules.d/60-persistent-serial.rules
/lib/udev/rules.d/60-persistent-storage-tape.rules
/lib/udev/rules.d/60-persistent-storage.rules
/lib/udev/rules.d/60-persistent-v4l.rules
+/lib/udev/rules.d/60-serial.rules
/lib/udev/rules.d/61-accelerometer.rules
/lib/udev/rules.d/64-btrfs.rules
-/lib/udev/rules.d/75-cd-aliases-generator.rules
+/lib/udev/rules.d/70-mouse.rules
+/lib/udev/rules.d/70-touchpad.rules
/lib/udev/rules.d/75-net-description.rules
-/lib/udev/rules.d/75-persistent-net-generator.rules
/lib/udev/rules.d/75-probe_mtd.rules
-/lib/udev/rules.d/75-tty-description.rules
/lib/udev/rules.d/78-sound-card.rules
/lib/udev/rules.d/80-drivers.rules
-/lib/udev/rules.d/95-udev-late.rules
+/lib/udev/rules.d/80-net-name-slot.rules
%{_mandir}/man5/udev.conf.5*
%{_mandir}/man7/udev.7*
%{_mandir}/man8/udevadm.8*
%{_pkgconfigdir}/libudev.pc
%{_npkgconfigdir}/udev.pc
+%if %{with apidocs}
%files apidocs
%defattr(644,root,root,755)
%{_gtkdocdir}/libudev
+%endif
%files glib
%defattr(644,root,root,755)
%{_pkgconfigdir}/gudev-1.0.pc
%{_datadir}/gir-1.0/GUdev-1.0.gir
+%if %{with apidocs}
%files glib-apidocs
%defattr(644,root,root,755)
%{_gtkdocdir}/gudev
+%endif