udev: bump to 181 and other fixes
authorYegor Yefremov <yegorslists@googlemail.com>
Wed, 8 Feb 2012 09:50:25 +0000 (10:50 +0100)
committerPeter Korsgaard <jacmet@sunsite.dk>
Wed, 8 Feb 2012 20:56:47 +0000 (21:56 +0100)
Changes:
- Linux kernel requirement: 2.6.34 and above (devtmpfs is mandatory)
(this also applies to the chosen toolchain, because of Kernel headers)
- optional dependency on libusb and usbutils removed
- added dependency on kmod
- added dependency on util-linux for libblkid
- install in /lib/udev instead of /usr/libexec/udev
- udevd moved to /lib/udev
- fixed path to pci.ids and usb.ids
- persistent rules generator is disabled by default, so option
is introduced to enable this option if desired

[Peter: fix build on uClibc, Config.in tweaks]
Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
package/udev/Config.in
package/udev/S10udev
package/udev/udev.mk
target/generic/Config.in

index 391c71810bd6d57bf86d0a9f036af718f3330538..d3244d1a961eef2cf913819e559f543a4c11952f 100644 (file)
@@ -1,29 +1,33 @@
 config BR2_PACKAGE_UDEV
        bool "udev"
        depends on BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_UDEV
+       depends on BR2_LARGEFILE # util-linux
+       depends on BR2_USE_WCHAR # util-linux
+       select BR2_PACKAGE_UTIL_LINUX
+       select BR2_PACKAGE_UTIL_LINUX_LIBBLKID
+       select BR2_PACKAGE_KMOD
        help
          Userspace device daemon.
 
+         udev requires a Linux kernel >= 2.6.34: it relies on devtmpfs.
+
          ftp://ftp.kernel.org/pub/linux/utils/kernel/hotplug/
 
 if BR2_PACKAGE_UDEV
 
+config BR2_PACKAGE_UDEV_RULES_GEN
+       bool "enable rules generator"
+       help
+         Enable persistant rules generator
+
 config BR2_PACKAGE_UDEV_ALL_EXTRAS
        bool "enable all extras"
-       depends on BR2_LARGEFILE # acl
-       depends on BR2_USE_WCHAR # libglib2
        select BR2_PACKAGE_ACL
-       select BR2_PACKAGE_LIBUSB
-       select BR2_PACKAGE_LIBUSB_COMPAT
-       select BR2_PACKAGE_USBUTILS
        select BR2_PACKAGE_HWDATA
        select BR2_PACKAGE_LIBGLIB2
        help
          Enable all extras with external dependencies like
-         libacl, libusb, libusb-compat, usbutils, hwdata
-
-comment "udev extras requires a toolchain with LARGEFILE + WCHAR support"
-       depends on !(BR2_LARGEFILE && BR2_USE_WCHAR)
+         libacl, hwdata and libglib2
 
 endif
 
index 29eb1075c3b4a791ccb4493bfc2b2716a87c79dc..70a7c3422f8458a30eb4ae19c32d7d57591ffd78 100755 (executable)
@@ -2,7 +2,7 @@
 #
 # udev This is a minimal non-LSB version of a UDEV startup script.  It
 #      was derived by stripping down the udev-058 LSB version for use
-#      with buildroot on embedded hardware using Linux 2.6.12+ kernels.
+#      with buildroot on embedded hardware using Linux 2.6.34+ kernels.
 #
 #      You may need to customize this for your system's resource limits
 #      (including startup time!) and administration.  For example, if
@@ -17,7 +17,7 @@
 #
 
 # Check for missing binaries
-UDEV_BIN=/sbin/udevd
+UDEV_BIN=/lib/udev/udevd
 test -x $UDEV_BIN || exit 5
 
 # Check for config file and read it
index 1825396c34152cd243bfe255658fc8519b02f120..d445a2f08f828560a4dbe64b008e35cadabe1e0d 100644 (file)
@@ -3,28 +3,35 @@
 # udev
 #
 #############################################################
-UDEV_VERSION = 173
+UDEV_VERSION = 181
 UDEV_SOURCE = udev-$(UDEV_VERSION).tar.bz2
 UDEV_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/kernel/hotplug/
 UDEV_INSTALL_STAGING = YES
 
+# mq_getattr is in librt
+UDEV_CONF_ENV += LIBS=-lrt
+
 UDEV_CONF_OPT =                        \
        --sbindir=/sbin         \
        --with-rootlibdir=/lib  \
-       --libexecdir=/lib/udev  \
+       --libexecdir=/lib       \
+       --with-usb-ids-path=/usr/share/hwdata/usb.ids   \
+       --with-pci-ids-path=/usr/share/hwdata/pci.ids   \
+       --with-firmware-path=/lib/firmware              \
        --disable-introspection
 
-UDEV_DEPENDENCIES = host-gperf host-pkg-config
+UDEV_DEPENDENCIES = host-gperf host-pkg-config util-linux kmod
+
+ifeq ($(BR2_PACKAGE_UDEV_RULES_GEN),y)
+UDEV_CONF_OPT += --enable-rule_generator
+endif
 
 ifeq ($(BR2_PACKAGE_UDEV_ALL_EXTRAS),y)
-UDEV_DEPENDENCIES += libusb libusb-compat acl usbutils hwdata libglib2
-UDEV_CONF_OPT +=                                                       \
-       --with-pci-ids-path=$(TARGET_DIR)/usr/share/hwdata/pci.ids      \
-       --with-usb-ids-path=$(TARGET_DIR)/usr/share/hwdata/usb.ids      \
+UDEV_DEPENDENCIES += acl hwdata libglib2
+UDEV_CONF_OPT +=               \
        --enable-udev_acl
 else
 UDEV_CONF_OPT +=               \
-       --disable-hwdb          \
        --disable-gudev
 endif
 
index a91de32124184b602bd7a0e1bbe2415a7d8a9eed..88f0718e2c55a43bb4bbee004129445adc1477f9 100644 (file)
@@ -28,8 +28,13 @@ config BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV
 
 config BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_UDEV
        bool "Dynamic using udev"
+       depends on BR2_LARGEFILE # udev
+       depends on BR2_USE_WCHAR # udev
        select BR2_PACKAGE_UDEV
 
+comment "udev requires a toolchain with LARGEFILE + WCHAR support"
+       depends on !(BR2_LARGEFILE && BR2_USE_WCHAR)
+
 endchoice
 
 config BR2_ROOTFS_DEVICE_TABLE