From 4b63ab06ed246e5194ac2a10f9e1fc9786d46619 Mon Sep 17 00:00:00 2001 From: Chen Qi Date: Wed, 13 Aug 2014 23:05:56 -0400 Subject: keymaps: fix for systemd Only install 'keymap.sh' script if 'sysvinit' is in DISTRO_FEATURES. This is because systemd internally provides a mechanism to implement the functionality this script tries to implement. Please see systemd-vconsole-setup.service for more details. Also we set 'INHIBIT_UPDATERCD_BBCLASS' to "1" if 'sysvinit' is not in DISTRO_FEATURES. Signed-off-by: Chen Qi --- meta/recipes-bsp/keymaps/keymaps_1.0.bb | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/meta/recipes-bsp/keymaps/keymaps_1.0.bb b/meta/recipes-bsp/keymaps/keymaps_1.0.bb index 123db3e0f2..5a3f97434c 100644 --- a/meta/recipes-bsp/keymaps/keymaps_1.0.bb +++ b/meta/recipes-bsp/keymaps/keymaps_1.0.bb @@ -14,6 +14,13 @@ PR = "r31" INHIBIT_DEFAULT_DEPS = "1" +# As the recipe doesn't inherit systemd.bbclass, we need to set this variable +# manually to avoid unnecessary postinst/preinst generated. +python __anonymous() { + if not bb.utils.contains('DISTRO_FEATURES', 'sysvinit', True, False, d): + d.setVar("INHIBIT_UPDATERCD_BBCLASS", "1") +} + inherit update-rc.d SRC_URI = "file://keymap.sh \ @@ -23,6 +30,12 @@ INITSCRIPT_NAME = "keymap.sh" INITSCRIPT_PARAMS = "start 01 S ." do_install () { - install -d ${D}${sysconfdir}/init.d/ - install -m 0755 ${WORKDIR}/keymap.sh ${D}${sysconfdir}/init.d/ + # Only install the script if 'sysvinit' is in DISTRO_FEATURES + # THe ulitity this script provides could be achieved by systemd-vconsole-setup.service + if ${@bb.utils.contains('DISTRO_FEATURES','sysvinit','true','false',d)}; then + install -d ${D}${sysconfdir}/init.d/ + install -m 0755 ${WORKDIR}/keymap.sh ${D}${sysconfdir}/init.d/ + fi } + +ALLOW_EMPTY_${PN} = "1" -- cgit 1.2.3-korg