From afb09abd2f0f7555ba156260a87fd3867f591310 Mon Sep 17 00:00:00 2001 From: Denys Dmytriyenko Date: Fri, 2 Mar 2018 20:46:50 -0500 Subject: busybox: separate inittab into own package, due to SERIAL_CONSOLES being machine-specific * Create busybox-inittab recipe to produce machine-specific package with /etc/inittab and necessary getty calls for a machine, based on SERIAL_CONSOLES, similar to how sysvinit-inittab was done * Since CONFIG_FEATURE_USE_INITTAB is controlled by VIRTUAL-RUNTIME_init_manager, make main busybox package RDEPENDS on busybox-inittab when init_manager is set to busybox Signed-off-by: Denys Dmytriyenko Signed-off-by: Richard Purdie --- .../recipes-core/busybox/busybox-inittab_1.27.2.bb | 32 ++++++++++++++++++++++ meta/recipes-core/busybox/busybox.inc | 12 ++------ 2 files changed, 34 insertions(+), 10 deletions(-) create mode 100644 meta/recipes-core/busybox/busybox-inittab_1.27.2.bb (limited to 'meta/recipes-core/busybox') diff --git a/meta/recipes-core/busybox/busybox-inittab_1.27.2.bb b/meta/recipes-core/busybox/busybox-inittab_1.27.2.bb new file mode 100644 index 0000000000..a83620e859 --- /dev/null +++ b/meta/recipes-core/busybox/busybox-inittab_1.27.2.bb @@ -0,0 +1,32 @@ +SUMMARY = "inittab configuration for BusyBox" +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6" + +SRC_URI = "file://inittab" + +S = "${WORKDIR}" + +INHIBIT_DEFAULT_DEPS = "1" + +do_compile() { + : +} + +do_install() { + install -d ${D}${sysconfdir} + install -D -m 0644 ${WORKDIR}/inittab ${D}${sysconfdir}/inittab + tmp="${SERIAL_CONSOLES}" + for i in $tmp + do + j=`echo ${i} | sed s/\;/\ /g` + id=`echo ${i} | sed -e 's/^.*;//' -e 's/;.*//'` + echo "$id::respawn:${base_sbindir}/getty ${j}" >> ${D}${sysconfdir}/inittab + done +} + +# SERIAL_CONSOLES is generally defined by the MACHINE .conf. +# Set PACKAGE_ARCH appropriately. +PACKAGE_ARCH = "${MACHINE_ARCH}" + +FILES_${PN} = "${sysconfdir}/inittab" +CONFFILES_${PN} = "${sysconfdir}/inittab" diff --git a/meta/recipes-core/busybox/busybox.inc b/meta/recipes-core/busybox/busybox.inc index 157aea3968..ac6d7ca262 100644 --- a/meta/recipes-core/busybox/busybox.inc +++ b/meta/recipes-core/busybox/busybox.inc @@ -48,6 +48,8 @@ CONFFILES_${PN}-mdev = "${sysconfdir}/mdev.conf" RRECOMMENDS_${PN} = "${PN}-syslog ${PN}-udhcpc" +RDEPENDS_${PN} = "${@["", "busybox-inittab"][(d.getVar('VIRTUAL-RUNTIME_init_manager') == 'busybox')]}" + inherit cml1 systemd update-rc.d ptest # internal helper @@ -310,16 +312,6 @@ do_install () { install -D -m 0777 ${WORKDIR}/rcS ${D}${sysconfdir}/init.d/rcS install -D -m 0777 ${WORKDIR}/rcK ${D}${sysconfdir}/init.d/rcK install -D -m 0755 ${WORKDIR}/runlevel ${D}${base_sbindir}/runlevel - if grep "CONFIG_FEATURE_USE_INITTAB=y" ${B}/.config; then - install -D -m 0777 ${WORKDIR}/inittab ${D}${sysconfdir}/inittab - tmp="${SERIAL_CONSOLES}" - for i in $tmp - do - j=`echo ${i} | sed s/\;/\ /g` - id=`echo ${i} | sed -e 's/^.*;//' -e 's/;.*//'` - echo "$id::respawn:${base_sbindir}/getty ${j}" >> ${D}${sysconfdir}/inittab - done - fi fi if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then -- cgit 1.2.3-korg