[OE-core] [OE-CORE][PATCH] udev: make sure udev-utils package always includes udevadm
Marko Katić
dromede at gmail.com
Fri Dec 14 16:30:46 UTC 2012
Default installation path of udevadm was changed
from ${base_sbindir} to ${bindir} in udev v176.
Also, udevinfo and udevtest no longer exist in
current (v182) udev sources.
This can break udev-utils packaging since udev-utils
package expects udevadm only in ${base_sbindir}.
And since udevinfo and udevtest no longer exist in
current udev versions,
udev-utils could be empty and thus will not be created.
This can break do_rootfs stages when building images
that depend on udev since we have RRECOMMENDS += udev-utils.
We should also make sure that udevadm stays in udev-utils
since it might be needed for other packages i.e, busybox
and mdev.
Udev.inc should support all versions of udev. This patch
makes udevadm always available in udev-utils package and
it also makes sure that udevadm is available in both
${base_sbindir} and ${bindir} paths.
Signed-off-by: Marko Katić <dromede at gmail.com>
---
diff --git a/meta/recipes-core/udev/udev.inc
b/meta/recipes-core/udev/udev.inc
index 4705b9b..b46ad2c 100644
--- a/meta/recipes-core/udev/udev.inc
+++ b/meta/recipes-core/udev/udev.inc
@@ -74,7 +74,7 @@ FILES_udev-cache = "${sysconfdir}/init.d/udev-cache
${sysconfdir}/default/udev-c
FILES_udev-acl = "${base_libdir}/udev/udev-acl
${base_libdir}/udev/rules.d/70-acl.rules"
-FILES_udev-utils = "${bindir}/udevinfo ${bindir}/udevtest
${base_sbindir}/udevadm"
+FILES_udev-utils = "${bindir}/udevinfo ${bindir}/udevtest
${base_sbindir}/udevadm ${bindir}/udevadm"
RDEPENDS_udev-consolekit += "udev-acl"
FILES_udev-consolekit = "${libdir}/ConsoleKit"
@@ -97,4 +97,19 @@ do_install_append () {
rm -f ${D}${base_libdir}/udev/hid2hci
echo 'udev_run="/var/run/udev"' >> ${D}${sysconfdir}/udev/udev.conf
+
+ #Starting from udev v176, udevadm is by default installed in
${bindir}.
+ #Make sure udevadm is available both in ${bindir} and ${base_sbindir}
+ #so we can support all versions of udev.
+
+ if [ "${PV}" -gt "175" ]
+ then
+ install -d ${D}${base_sbindir}
+ ln -s ${bindir}/udevadm ${D}${base_sbindir}/udevadm
+
+ else
+ install -d ${D}${bindir}
+ ln -s ${base_sbindir}/udevadm ${D}${bindir}/udevadm
+
+ fi
}
More information about the Openembedded-core
mailing list