systemd: make udev-hwdb postinstall run on host

Run udevadm inside qemu in order to create the HW database index on
host.

The alternative would be to build a native version
of udevadm which would imply several things: split out systemd recipe,
create a common inc file and create a new recipe for udevadm native.

However, this latter solution might also add up to the build time
(the native recipe would need to run configure, make udevadm, install),
besides the time spent in the actual postinstall...

So, having the postinstall run through qemu is a good trade-off.

[YOCTO #4341]

(From OE-Core rev: 0f6c0ed7888603c8d026a671f2acb1515ce799bf)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Laurentiu Palcu 2013-05-14 14:23:29 +03:00 committed by Richard Purdie
parent 39537e01a5
commit ec89446cb4
1 changed files with 6 additions and 5 deletions

View File

@ -11,12 +11,12 @@ PROVIDES = "udev"
PE = "1"
PR = "r4"
DEPENDS = "kmod docbook-sgml-dtd-4.1-native intltool-native gperf-native acl readline dbus libcap libcgroup tcp-wrappers glib-2.0"
DEPENDS = "kmod docbook-sgml-dtd-4.1-native intltool-native gperf-native acl readline dbus libcap libcgroup tcp-wrappers glib-2.0 qemu-native"
DEPENDS += "${@base_contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
SECTION = "base/shell"
inherit gtk-doc useradd pkgconfig autotools perlnative update-rc.d update-alternatives
inherit gtk-doc useradd pkgconfig autotools perlnative update-rc.d update-alternatives qemu
SRC_URI = "http://www.freedesktop.org/software/systemd/systemd-${PV}.tar.xz \
file://touchscreen.rules \
@ -280,10 +280,11 @@ ALTERNATIVE_PRIORITY[poweroff] ?= "300"
pkg_postinst_udev-hwdb () {
if test -n "$D"; then
exit 1
${@qemu_run_binary(d, '$D', '${base_bindir}/udevadm')} hwdb --update \
--root $D
else
udevadm hwdb --update
fi
udevadm hwdb --update
}
pkg_prerm_udev-hwdb () {