aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKoen Kooi <koen@openembedded.org>2010-01-12 14:48:59 +0100
committerKoen Kooi <koen@openembedded.org>2010-01-14 14:50:38 +0100
commit2b835db69e6b838fa8628dd85b11b4f930d5f5f9 (patch)
treee2d47a453a8d94eafed614426365c7d200f08c27
parentc7fea056f9bd10d6bc04379a770897fccc3b35fd (diff)
downloadopenembedded-2b835db69e6b838fa8628dd85b11b4f930d5f5f9.tar.gz
udev 141: move creation of /etc/dev.tar to after checkroot
* / isn't always mounted rw when udev runs, so lets create /etc/dev.tar after checkroot has run Acked-by: Graeme Gregory <dp@xora.org.uk> Acked-by: Marcin Juszkiewicz <marcin@juszkiewicz.com.pl>
-rw-r--r--recipes/udev/udev-141/cache18
-rw-r--r--recipes/udev/udev-141/init8
-rw-r--r--recipes/udev/udev_141.bb10
3 files changed, 26 insertions, 10 deletions
diff --git a/recipes/udev/udev-141/cache b/recipes/udev/udev-141/cache
new file mode 100644
index 0000000000..4db1466817
--- /dev/null
+++ b/recipes/udev/udev-141/cache
@@ -0,0 +1,18 @@
+#!/bin/sh -e
+
+export TZ=/etc/localtime
+
+[ -f /etc/default/udev ] && . /etc/default/udev
+
+echo "Caching udev devnodes"
+
+ if [ "$DEVCACHE" != "" ]; then
+ echo -n "Populating dev cache"
+ (cd /; tar cf $DEVCACHE dev)
+ mv /tmp/uname /etc/udev/saved.uname
+ mv /tmp/cmdline /etc/udev/saved.cmdline
+ mv /tmp/atags /etc/udev/saved.atags
+ echo
+ fi
+
+exit 0
diff --git a/recipes/udev/udev-141/init b/recipes/udev/udev-141/init
index a0bdf4050a..24ca9d874d 100644
--- a/recipes/udev/udev-141/init
+++ b/recipes/udev/udev-141/init
@@ -68,14 +68,6 @@ kill_udevd > "/dev/null" 2>&1
else
/sbin/udevadm trigger
/sbin/udevadm settle
- if [ "$DEVCACHE" != "" ]; then
- echo -n "Populating dev cache"
- (cd /; tar cf $DEVCACHE dev)
- mv /tmp/uname /etc/udev/saved.uname
- mv /tmp/cmdline /etc/udev/saved.cmdline
- mv /tmp/atags /etc/udev/saved.atags
- echo
- fi
fi
exit 0
diff --git a/recipes/udev/udev_141.bb b/recipes/udev/udev_141.bb
index 00ba97102d..df5e346c4d 100644
--- a/recipes/udev/udev_141.bb
+++ b/recipes/udev/udev_141.bb
@@ -6,7 +6,7 @@ LICENSE = "GPL"
# Untested
DEFAULT_PREFERENCE = "-1"
-PR = "r19"
+PR = "r20"
# needed for init.d script
RDEPENDS_${PN} += "udev-utils"
@@ -24,7 +24,9 @@ SRC_URI += " \
file://network.sh \
file://local.rules \
file://default \
- file://init"
+ file://init \
+ file://cache \
+"
SRC_URI_append_h2200 = " file://50-hostap_cs.rules "
PACKAGE_ARCH_h2200 = "h2200"
@@ -70,6 +72,7 @@ do_install () {
oe_runmake 'DESTDIR=${D}' INSTALL=install install
install -d ${D}${sysconfdir}/init.d
install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/udev
+ install -m 0755 ${WORKDIR}/cache ${D}${sysconfdir}/init.d/udev-cache
install -d ${D}${sysconfdir}/default
install -m 0755 ${WORKDIR}/default ${D}${sysconfdir}/default/udev
@@ -112,7 +115,10 @@ do_install_append_bug() {
install -m 0644 ${WORKDIR}/bmi_eventpipe.sh ${D}${sysconfdir}/udev/scripts/bmi_eventpipe.sh
}
+# Create the cache after checkroot has run
pkg_postinst_${PN}_append() {
+update-rc.d $OPT udev-cache start 12 S .
+
if [ -d $D/lib/udev/rules.d ] ; then
echo "$D/lib/udev/rules.d is not a symlink, fixing that"
mv $D/lib/udev/rules.d/* $D${sysconfdir}/udev/rules.d/