This allows use of udev daemon for different installation destinations
so allowing use of udev's from systemd code for initramfs.

Signed-off-by: Otavio Salvador <ota...@ossystems.com.br>
---
 .../initrdscripts/initramfs-framework/udev         |   25 ++++++++++++++++----
 .../initrdscripts/initramfs-framework_1.0.bb       |    2 +-
 2 files changed, 21 insertions(+), 6 deletions(-)

diff --git a/meta/recipes-core/initrdscripts/initramfs-framework/udev 
b/meta/recipes-core/initrdscripts/initramfs-framework/udev
index 15a1d5b..7fbcc61 100644
--- a/meta/recipes-core/initrdscripts/initramfs-framework/udev
+++ b/meta/recipes-core/initrdscripts/initramfs-framework/udev
@@ -1,10 +1,25 @@
 #!/bin/sh
-# Copyright (C) 2011 O.S. Systems Software LTDA.
+# Copyright (C) 2011, 2012 O.S. Systems Software LTDA.
 # Licensed on MIT
 
+udev_daemon() {
+       OPTIONS="/sbin/udevd /lib/udev/udevd /lib/systemd/systemd-udevd"
+
+       for o in $OPTIONS; do
+               if [ -x "$o" ]; then
+                       echo $o
+                       return 0
+               fi
+       done
+
+       return 1
+}
+
+_UDEV_DAEMON=`udev_daemon`
+
 udev_enabled() {
-       if [ ! -e /lib/udev/udevd ]; then
-               debug "/lib/udev/udev doesn't exist"
+       if [ -z "$_UDEV_DAEMON" ]; then
+               msg "WARNING: Cannot find the udev daemon; daemon will not be 
started in initramfs."
                return 1
        fi
 
@@ -14,9 +29,9 @@ udev_enabled() {
 udev_run() {
        mkdir -p /run
 
-       /lib/udev/udevd --daemon > /dev/null
+       $_UDEV_DAEMON --daemon
        udevadm trigger --action=add
        udevadm settle
 
-       killall udevd 2>/dev/null
+       killall `basename $_UDEV_DAEMON` 2>/dev/null
 }
diff --git a/meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb 
b/meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb
index 45d6592..cbb4a39 100644
--- a/meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb
+++ b/meta/recipes-core/initrdscripts/initramfs-framework_1.0.bb
@@ -3,7 +3,7 @@ LICENSE = "MIT"
 LIC_FILES_CHKSUM = 
"file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
 RDEPENDS = "busybox"
 
-PR = "r1"
+PR = "r2"
 
 inherit allarch
 
-- 
1.7.10.4


_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

Reply via email to