From: Laurentiu Palcu Date: Tue, 14 May 2013 11:23:29 +0000 (+0300) Subject: systemd: make udev-hwdb postinstall run on host X-Git-Tag: 2015-4~6495 X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=0f6c0ed7888603c8d026a671f2acb1515ce799bf;p=openembedded-core.git 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] Signed-off-by: Laurentiu Palcu Signed-off-by: Saul Wold --- diff --git a/meta/recipes-core/systemd/systemd_199.bb b/meta/recipes-core/systemd/systemd_199.bb index fadc385fb2..b1cc0465ef 100644 --- a/meta/recipes-core/systemd/systemd_199.bb +++ b/meta/recipes-core/systemd/systemd_199.bb @@ -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 () {