diff options
Diffstat (limited to 'meta/recipes-core/busybox/busybox-inittab_1.33.2.bb')
-rw-r--r-- | meta/recipes-core/busybox/busybox-inittab_1.33.2.bb | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/meta/recipes-core/busybox/busybox-inittab_1.33.2.bb b/meta/recipes-core/busybox/busybox-inittab_1.33.2.bb new file mode 100644 index 0000000000..3804f4f7b2 --- /dev/null +++ b/meta/recipes-core/busybox/busybox-inittab_1.33.2.bb | |||
@@ -0,0 +1,85 @@ | |||
1 | SUMMARY = "inittab configuration for BusyBox" | ||
2 | LICENSE = "GPLv2" | ||
3 | LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-only;md5=801f80980d171dd6425610833a22dbe6" | ||
4 | |||
5 | SRC_URI = "file://inittab" | ||
6 | |||
7 | S = "${WORKDIR}" | ||
8 | |||
9 | INHIBIT_DEFAULT_DEPS = "1" | ||
10 | |||
11 | do_compile() { | ||
12 | : | ||
13 | } | ||
14 | |||
15 | do_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 | |||
37 | EOF | ||
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 | } | ||
47 | |||
48 | pkg_postinst_${PN} () { | ||
49 | # run this on host and on target | ||
50 | if [ "${SERIAL_CONSOLES_CHECK}" = "" ]; then | ||
51 | exit 0 | ||
52 | fi | ||
53 | } | ||
54 | |||
55 | pkg_postinst_ontarget_${PN} () { | ||
56 | # run this on the target | ||
57 | if [ -e /proc/consoles ]; then | ||
58 | tmp="${SERIAL_CONSOLES_CHECK}" | ||
59 | for i in $tmp | ||
60 | do | ||
61 | j=`echo ${i} | sed -e s/^.*\;//g -e s/\:.*//g` | ||
62 | k=`echo ${i} | sed s/^.*\://g` | ||
63 | if [ -z "`grep ${j} /proc/consoles`" ]; then | ||
64 | if [ -z "${k}" ] || [ -z "`grep ${k} /proc/consoles`" ] || [ ! -e /dev/${j} ]; then | ||
65 | sed -i -e /^.*${j}\ /d -e /^.*${j}$/d /etc/inittab | ||
66 | fi | ||
67 | fi | ||
68 | done | ||
69 | kill -HUP 1 | ||
70 | else | ||
71 | exit 1 | ||
72 | fi | ||
73 | } | ||
74 | |||
75 | # SERIAL_CONSOLES is generally defined by the MACHINE .conf. | ||
76 | # Set PACKAGE_ARCH appropriately. | ||
77 | PACKAGE_ARCH = "${MACHINE_ARCH}" | ||
78 | |||
79 | FILES_${PN} = "${sysconfdir}/inittab" | ||
80 | CONFFILES_${PN} = "${sysconfdir}/inittab" | ||
81 | |||
82 | RCONFLICTS_${PN} = "sysvinit-inittab" | ||
83 | |||
84 | USE_VT ?= "1" | ||
85 | SYSVINIT_ENABLED_GETTYS ?= "1" | ||