summaryrefslogtreecommitdiffstats
path: root/meta/recipes-core/busybox/busybox-inittab_1.33.0.bb
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-core/busybox/busybox-inittab_1.33.0.bb')
-rw-r--r--meta/recipes-core/busybox/busybox-inittab_1.33.0.bb88
1 files changed, 88 insertions, 0 deletions
diff --git a/meta/recipes-core/busybox/busybox-inittab_1.33.0.bb b/meta/recipes-core/busybox/busybox-inittab_1.33.0.bb
new file mode 100644
index 0000000000..0021e45511
--- /dev/null
+++ b/meta/recipes-core/busybox/busybox-inittab_1.33.0.bb
@@ -0,0 +1,88 @@
1SUMMARY = "inittab configuration for BusyBox"
2LICENSE = "GPLv2"
3LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-only;md5=801f80980d171dd6425610833a22dbe6"
4
5SRC_URI = "file://inittab"
6
7S = "${WORKDIR}"
8
9INHIBIT_DEFAULT_DEPS = "1"
10
11do_compile() {
12 :
13}
14
15do_install() {
16 install -d ${D}${sysconfdir}
17 install -D -m 0644 ${WORKDIR}/inittab ${D}${sysconfdir}/inittab
18 tmp="${SERIAL_CONSOLES}"
19 [ -n "$tmp" ] && echo >> ${D}${sysconfdir}/inittab
20 for i in $tmp
21 do
22 j=`echo ${i} | sed s/\;/\ /g`
23 id=`echo ${i} | sed -e 's/^.*;//' -e 's/;.*//'`
24 echo "$id::respawn:${base_sbindir}/getty ${j}" >> ${D}${sysconfdir}/inittab
25 done
26 if [ "${USE_VT}" = "1" ]; then
27 cat <<EOF >>${D}${sysconfdir}/inittab
28# ${base_sbindir}/getty invocations for the runlevels.
29#
30# The "id" field MUST be the same as the last
31# characters of the device (after "tty").
32#
33# Format:
34# <id>:<runlevels>:<action>:<process>
35#
36
37EOF
38
39 for n in ${SYSVINIT_ENABLED_GETTYS}
40 do
41 echo "tty$n:12345:respawn:${base_sbindir}/getty 38400 tty$n" >> ${D}${sysconfdir}/inittab
42 done
43 echo "" >> ${D}${sysconfdir}/inittab
44 fi
45
46}
47do_install_append_qemuppc64 () {
48 echo "9:12345:respawn:${base_sbindir}/getty 38400 hvc0" >> ${D}${sysconfdir}/inittab
49}
50
51pkg_postinst_${PN} () {
52# run this on host and on target
53if [ "${SERIAL_CONSOLES_CHECK}" = "" ]; then
54 exit 0
55fi
56}
57
58pkg_postinst_ontarget_${PN} () {
59# run this on the target
60if [ -e /proc/consoles ]; then
61 tmp="${SERIAL_CONSOLES_CHECK}"
62 for i in $tmp
63 do
64 j=`echo ${i} | sed -e s/^.*\;//g -e s/\:.*//g`
65 k=`echo ${i} | sed s/^.*\://g`
66 if [ -z "`grep ${j} /proc/consoles`" ]; then
67 if [ -z "${k}" ] || [ -z "`grep ${k} /proc/consoles`" ] || [ ! -e /dev/${j} ]; then
68 sed -i -e /^.*${j}\ /d -e /^.*${j}$/d /etc/inittab
69 fi
70 fi
71 done
72 kill -HUP 1
73else
74 exit 1
75fi
76}
77
78# SERIAL_CONSOLES is generally defined by the MACHINE .conf.
79# Set PACKAGE_ARCH appropriately.
80PACKAGE_ARCH = "${MACHINE_ARCH}"
81
82FILES_${PN} = "${sysconfdir}/inittab"
83CONFFILES_${PN} = "${sysconfdir}/inittab"
84
85RCONFLICTS_${PN} = "sysvinit-inittab"
86
87USE_VT ?= "1"
88SYSVINIT_ENABLED_GETTYS ?= "1"