From 3dc7f6d05e52ccbe2fea0cc2d23ff6e6fc93232b Mon Sep 17 00:00:00 2001 From: Otavio Salvador Date: Tue, 27 Nov 2012 11:55:02 +0000 Subject: initramfs-framework: udev: Handle alternative binary paths This allows use of udev daemon for different installation destinations so allowing use of udev's from systemd code for initramfs. (From OE-Core rev: dcf95bed1d9152d9cdb908b4e131e1c7c46cec84) Signed-off-by: Otavio Salvador Signed-off-by: Saul Wold Signed-off-by: Richard Purdie --- .../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 15a1d5ba06..7fbcc61d9c 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 45d6592bc3..cbb4a39611 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 -- cgit v1.2.3-54-g00ecf