Skip to contentSkip to conversation

kmod: bump to 5

PATCH New yegorslists at googlemail.com 4 participants 8 messages Feb 8, 2012 – Feb 9, 2012

lore
Share & tools
lore
#0 lore raw

PATCH v2 1/2 kmod: bump to 5

From: Yegor Yefremov <[email protected]>

---
 package/kmod/kmod.mk |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
package/kmod/kmod.mk +1 -1
index 0e3bc34..acf5f0a 100644
@@ -1,4 +1,4 @@
-KMOD_VERSION = 4
+KMOD_VERSION = 5
 KMOD_SOURCE = kmod-$(KMOD_VERSION).tar.xz
 KMOD_SITE = http://packages.profusion.mobi/kmod/
 KMOD_INSTALL_STAGING = YES
Signature · 1 line
1.7.5.4
#1 lore raw

PATCH v2 2/2 udev: bump to 181 and other fixes

From: Yegor Yefremov <[email protected]>

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

---
Changes
v2: remove usbutils dependency from recipe

 package/udev/Config.in   |   26 +++++++++++++++++---------
 package/udev/S10udev     |    4 ++--
 package/udev/udev.mk     |   20 ++++++++++++--------
 target/generic/Config.in |    2 ++
 4 files changed, 33 insertions(+), 19 deletions(-)
package/udev/Config.in +17 -9
index 391c718..dfb4f0d 100644
@@ -1,31 +1,39 @@
 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
 
 comment "udev requires /dev mgmnt set to udev under System configuration"
 	depends on !BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_UDEV
+
+comment "udev requires a toolchain with LARGEFILE + WCHAR support"
+    depends on !(BR2_LARGEFILE && BR2_USE_WCHAR)
+
package/udev/S10udev +2 -2
index 29eb107..70a7c34 100755
@@ -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
package/udev/udev.mk +12 -8
index 1825396..2b41b9f 100644
@@ -3,7 +3,7 @@
 # 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
@@ -11,20 +11,24 @@ UDEV_INSTALL_STAGING = YES
 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
 
target/generic/Config.in +2 -0
index a91de32..5334a4b 100644
@@ -28,6 +28,8 @@ 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
 
 endchoice
Signature · 1 line
1.7.5.4
#2 lore raw

PATCH v2 2/2 udev: bump to 181 and other fixes

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"yegorslists" == yegorslists <[email protected]> writes:

yegorslists> From: Yegor Yefremov <[email protected]>

yegorslists> Changes:
yegorslists> - Linux kernel requirement: 2.6.34 and above (devtmpfs is mandatory) yegorslists> (this also applies to the chosen toolchain, because of Kernel headers) yegorslists> - optional dependency on libusb and usbutils removed yegorslists> - added dependency on kmod
yegorslists> - added dependency on util-linux for libblkid yegorslists> - install in /lib/udev instead of /usr/libexec/udev yegorslists> - udevd moved to /lib/udev
yegorslists> - fixed path to pci.ids and usb.ids
yegorslists> - persistent rules generator is disabled by default, so option yegorslists> is introduced to enable this option if desired

Thanks, committed with minor tweaks (see below).

yegorslists> +++ b/package/udev/Config.in
yegorslists> @@ -1,31 +1,39 @@

 yegorslists>  config BR2_PACKAGE_UDEV
 yegorslists>  	bool "udev"
 yegorslists>  	depends on BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_UDEV

yegorslists> + depends on BR2_LARGEFILE # util-linux
yegorslists> + depends on BR2_USE_WCHAR # util-linux
yegorslists> + select BR2_PACKAGE_UTIL_LINUX
yegorslists> + select BR2_PACKAGE_UTIL_LINUX_LIBBLKID
yegorslists> + select BR2_PACKAGE_KMOD
yegorslists> help
yegorslists> Userspace device daemon.

yegorslists> + udev requires a Linux kernel >= 2.6.34: it relies on devtmpfs.
yegorslists> +

The devtmpfs dependency is not really an issue as we already depend on it for dynamic /dev handling.

yegorslists> comment "udev requires /dev mgmnt set to udev under System configuration"
yegorslists> depends on !BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_UDEV
yegorslists> +
yegorslists> +comment "udev requires a toolchain with LARGEFILE + WCHAR support"
yegorslists> + depends on !(BR2_LARGEFILE && BR2_USE_WCHAR)

This doesn't really make sense to show here, so I moved it target/generic where the user selects the /dev handling method. This line would only be shown in situations where he couldn't select udev anyway (as he hadn't selected BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_UDEV).

yegorslists> +++ b/package/udev/udev.mk
yegorslists> @@ -3,7 +3,7 @@

 yegorslists>  # udev
 yegorslists>  #
 yegorslists>  #############################################################
 yegorslists> -UDEV_VERSION = 173
 yegorslists> +UDEV_VERSION = 181
 yegorslists>  UDEV_SOURCE = udev-$(UDEV_VERSION).tar.bz2
 yegorslists>  UDEV_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/kernel/hotplug/
 yegorslists>  UDEV_INSTALL_STAGING = YES
 yegorslists> @@ -11,20 +11,24 @@ UDEV_INSTALL_STAGING = YES
 yegorslists>  UDEV_CONF_OPT =			\
 yegorslists>  	--sbindir=/sbin		\
 yegorslists>  	--with-rootlibdir=/lib	\

yegorslists> - --libexecdir=/lib/udev \
yegorslists> + --libexecdir=/lib \
yegorslists> + --with-usb-ids-path=/usr/share/hwdata/usb.ids \
yegorslists> + --with-pci-ids-path=/usr/share/hwdata/pci.ids \
yegorslists> + --with-firmware-path=/lib/firmware \
yegorslists> --disable-introspection

udevd now needs to link with librt as it calls mq_getattr() (which isn't automatically done on uClibc), so I added UDEV_CONF_ENV += LIBS='-lt'

Signature · 1 line
Bye, Peter Korsgaard
#3 lore raw

PATCH v2 2/2 udev: bump to 181 and other fixes

Am 08.02.2012 22:07, schrieb Peter Korsgaard:

Quoted 32 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"yegorslists" == yegorslists <[email protected]> writes:

yegorslists> From: Yegor Yefremov <[email protected]>

yegorslists> Changes:
yegorslists> - Linux kernel requirement: 2.6.34 and above (devtmpfs is mandatory) yegorslists> (this also applies to the chosen toolchain, because of Kernel headers) yegorslists> - optional dependency on libusb and usbutils removed yegorslists> - added dependency on kmod
yegorslists> - added dependency on util-linux for libblkid yegorslists> - install in /lib/udev instead of /usr/libexec/udev yegorslists> - udevd moved to /lib/udev
yegorslists> - fixed path to pci.ids and usb.ids
yegorslists> - persistent rules generator is disabled by default, so option yegorslists> is introduced to enable this option if desired

Thanks, committed with minor tweaks (see below).

yegorslists> +++ b/package/udev/Config.in
yegorslists> @@ -1,31 +1,39 @@

 yegorslists>  config BR2_PACKAGE_UDEV
 yegorslists>  	bool "udev"
 yegorslists>  	depends on BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_UDEV

yegorslists> + depends on BR2_LARGEFILE # util-linux
yegorslists> + depends on BR2_USE_WCHAR # util-linux
yegorslists> + select BR2_PACKAGE_UTIL_LINUX
yegorslists> + select BR2_PACKAGE_UTIL_LINUX_LIBBLKID
yegorslists> + select BR2_PACKAGE_KMOD
yegorslists> help
yegorslists> Userspace device daemon.

Quoted 5 lines

yegorslists> + udev requires a Linux kernel >= 2.6.34: it relies on devtmpfs.
yegorslists> +

The devtmpfs dependency is not really an issue as we already depend on it for dynamic /dev handling.

ACK

Quoted 11 lines

yegorslists> comment "udev requires /dev mgmnt set to udev under System configuration"
yegorslists> depends on !BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_UDEV
yegorslists> +
yegorslists> +comment "udev requires a toolchain with LARGEFILE + WCHAR support"
yegorslists> + depends on !(BR2_LARGEFILE && BR2_USE_WCHAR)

This doesn't really make sense to show here, so I moved it target/generic where the user selects the /dev handling method. This line would only be shown in situations where he couldn't select udev anyway (as he hadn't selected BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_UDEV).

ACK

Quoted 21 lines

yegorslists> +++ b/package/udev/udev.mk
yegorslists> @@ -3,7 +3,7 @@

 yegorslists>  # udev
 yegorslists>  #
 yegorslists>  #############################################################
 yegorslists> -UDEV_VERSION = 173
 yegorslists> +UDEV_VERSION = 181
 yegorslists>  UDEV_SOURCE = udev-$(UDEV_VERSION).tar.bz2
 yegorslists>  UDEV_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/kernel/hotplug/
 yegorslists>  UDEV_INSTALL_STAGING = YES
 yegorslists> @@ -11,20 +11,24 @@ UDEV_INSTALL_STAGING = YES
 yegorslists>  UDEV_CONF_OPT =			\
 yegorslists>  	--sbindir=/sbin		\
 yegorslists>  	--with-rootlibdir=/lib	\

yegorslists> - --libexecdir=/lib/udev \
yegorslists> + --libexecdir=/lib \
yegorslists> + --with-usb-ids-path=/usr/share/hwdata/usb.ids \
yegorslists> + --with-pci-ids-path=/usr/share/hwdata/pci.ids \
yegorslists> + --with-firmware-path=/lib/firmware \
yegorslists> --disable-introspection

Quoted 2 lines

udevd now needs to link with librt as it calls mq_getattr() (which isn't automatically done on uClibc), so I added UDEV_CONF_ENV += LIBS='-lt'

O.K. Thanks for reviewing and committing. Due to kernel version dependency we can almost retire these toolchains in case of udev:

Sourcery CodeBench ARM 2010q1
Sourcery CodeBench ARM 2009q3
Sourcery CodeBench ARM 2009q1

Yegor

#4 lore raw

PATCH v2 2/2 udev: bump to 181 and other fixes

Le Thu, 09 Feb 2012 08:26:53 +0100,
Yegor Yefremov <[email protected]> a ?crit :

Quoted 6 lines

O.K. Thanks for reviewing and committing. Due to kernel version dependency we can almost retire these toolchains in case of udev:

Sourcery CodeBench ARM 2010q1
Sourcery CodeBench ARM 2009q3
Sourcery CodeBench ARM 2009q1

No everybody needs udev, so I don't think it is valid to remove those toolchains just because they can't work with udev.

Thomas

Signature · 4 lines
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
#5 lore raw

PATCH v2 2/2 udev: bump to 181 and other fixes

Am 09.02.2012 10:02, schrieb Thomas Petazzoni:

Quoted 11 lines

Le Thu, 09 Feb 2012 08:26:53 +0100,
Yegor Yefremov <[email protected]> a ?crit :

Quoted 6 lines

O.K. Thanks for reviewing and committing. Due to kernel version dependency we can almost retire these toolchains in case of udev:

Sourcery CodeBench ARM 2010q1
Sourcery CodeBench ARM 2009q3
Sourcery CodeBench ARM 2009q1

No everybody needs udev, so I don't think it is valid to remove those toolchains just because they can't work with udev.

I didn't mean to remove them (how would I get my u-boot compiled?). I just wanted to state this fact.

Testing ct-ng right now to determine if u-boot is not allergic against it.

Yegor

#6 lore raw

PATCH v2 2/2 udev: bump to 181 and other fixes

Quoted 10 lines · Yegor Yefremov

Am 09.02.2012 10:02, schrieb Thomas Petazzoni:

Quoted 9 lines

Le Thu, 09 Feb 2012 08:26:53 +0100,
Yegor Yefremov <[email protected]> a ?crit :

Quoted 6 lines

O.K. Thanks for reviewing and committing. Due to kernel version dependency we can almost retire these toolchains in case of udev:

Sourcery CodeBench ARM 2010q1
Sourcery CodeBench ARM 2009q3
Sourcery CodeBench ARM 2009q1

Quoted 6 lines
Quoted 2 lines

No everybody needs udev, so I don't think it is valid to remove those toolchains just because they can't work with udev.

I didn't mean to remove them (how would I get my u-boot compiled?). ?I just wanted to state this fact.

Testing ct-ng right now to determine if u-boot is not allergic against it.

It looks good. I've taken default ct-ng config for Cortex-A8 and u-boot could start the kernel without a problem.

output/host/usr/bin/arm-linux-gcc -v
Using built-in specs.
Target: arm-unknown-linux-uclibcgnueabi
Configured with:
/home/YegorYefremov/projects/versioned/tests/br-queue-python/output/build/build-toolchain/.build/src/gcc-4.4.6/configure --build=x86_64-build_unknown-linux-gnu
--host=x86_64-build_unknown-linux-gnu
--target=arm-unknown-linux-uclibcgnueabi
--prefix=/home/YegorYefremov/projects/versioned/tests/br-queue-python/output/host/usr --with-sysroot=/home/YegorYefremov/projects/versioned/tests/br-queue-python/output/host/usr/arm-unknown-linux-uclibcgnueabi/sysroot --enable-languages=c,c++ --disable-multilib --with-arch=armv7-a
--with-tune=cortex-a8 --with-float=soft
--with-pkgversion='crosstool-NG 1.13.3 - buildroot
2012.02-git-00434-g0829989' --enable-__cxa_atexit --disable-libmudflap
--disable-libgomp --disable-libssp --with-gmp=/home/YegorYefremov/projects/versioned/tests/br-queue-python/output/build/build-toolchain/.build/arm-unknown-linux-uclibcgnueabi/build/static --with-mpfr=/home/YegorYefremov/projects/versioned/tests/br-queue-python/output/build/build-toolchain/.build/arm-unknown-linux-uclibcgnueabi/build/static --with-ppl=/home/YegorYefremov/projects/versioned/tests/br-queue-python/output/build/build-toolchain/.build/arm-unknown-linux-uclibcgnueabi/build/static --with-cloog=/home/YegorYefremov/projects/versioned/tests/br-queue-python/output/build/build-toolchain/.build/arm-unknown-linux-uclibcgnueabi/build/static --with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic
-lm' --enable-threads=posix --enable-target-optspace --with-local-prefix=/home/YegorYefremov/projects/versioned/tests/br-queue-python/output/host/usr/arm-unknown-linux-uclibcgnueabi/sysroot --disable-nls --enable-c99 --enable-long-long
Thread model: posix
gcc version 4.4.6 (crosstool-NG 1.13.3 - buildroot 2012.02-git-00434-g0829989)

Yegor