Initial commit
This commit is contained in:
@@ -0,0 +1,93 @@
|
||||
SUMMARY = "Inittab configuration for SysVinit"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-only;md5=801f80980d171dd6425610833a22dbe6"
|
||||
|
||||
PR = "r10"
|
||||
|
||||
SRC_URI = "file://inittab \
|
||||
file://start_getty"
|
||||
|
||||
S = "${WORKDIR}"
|
||||
|
||||
INHIBIT_DEFAULT_DEPS = "1"
|
||||
|
||||
do_compile() {
|
||||
:
|
||||
}
|
||||
|
||||
do_install() {
|
||||
install -d ${D}${sysconfdir}
|
||||
install -m 0644 ${WORKDIR}/inittab ${D}${sysconfdir}/inittab
|
||||
install -d ${D}${base_bindir}
|
||||
install -m 0755 ${WORKDIR}/start_getty ${D}${base_bindir}/start_getty
|
||||
sed -e 's,/usr/bin,${bindir},g' -i ${D}${base_bindir}/start_getty
|
||||
|
||||
set -x
|
||||
tmp="${SERIAL_CONSOLES}"
|
||||
for i in $tmp
|
||||
do
|
||||
j=`echo ${i} | sed s/\;/\ /g`
|
||||
l=`echo ${i} | sed -e 's/tty//' -e 's/^.*;//' -e 's/;.*//'`
|
||||
label=`echo $l | sed 's/.*\(....\)/\1/'`
|
||||
echo "$label:12345:respawn:${base_bindir}/start_getty ${j} vt102" >> ${D}${sysconfdir}/inittab
|
||||
done
|
||||
|
||||
if [ "${USE_VT}" = "1" ]; then
|
||||
cat <<EOF >>${D}${sysconfdir}/inittab
|
||||
# ${base_sbindir}/getty invocations for the runlevels.
|
||||
#
|
||||
# The "id" field MUST be the same as the last
|
||||
# characters of the device (after "tty").
|
||||
#
|
||||
# Format:
|
||||
# <id>:<runlevels>:<action>:<process>
|
||||
#
|
||||
|
||||
EOF
|
||||
|
||||
for n in ${SYSVINIT_ENABLED_GETTYS}
|
||||
do
|
||||
echo "$n:12345:respawn:${base_sbindir}/getty 38400 tty$n" >> ${D}${sysconfdir}/inittab
|
||||
done
|
||||
echo "" >> ${D}${sysconfdir}/inittab
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst:${PN} () {
|
||||
# run this on host and on target
|
||||
if [ "${SERIAL_CONSOLES_CHECK}" = "" ]; then
|
||||
exit 0
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst_ontarget:${PN} () {
|
||||
# run this on the target
|
||||
if [ -e /proc/consoles ]; then
|
||||
tmp="${SERIAL_CONSOLES_CHECK}"
|
||||
for i in $tmp
|
||||
do
|
||||
j=`echo ${i} | sed -e s/^.*\;//g -e s/\:.*//g`
|
||||
k=`echo ${i} | sed s/^.*\://g`
|
||||
if [ -z "`grep ${j} /proc/consoles`" ]; then
|
||||
if [ -z "${k}" ] || [ -z "`grep ${k} /proc/consoles`" ] || [ ! -e /dev/${j} ]; then
|
||||
sed -i -e /^.*${j}\ /d -e /^.*${j}$/d /etc/inittab
|
||||
fi
|
||||
fi
|
||||
done
|
||||
kill -HUP 1
|
||||
else
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
# USE_VT and SERIAL_CONSOLES are generally defined by the MACHINE .conf.
|
||||
# Set PACKAGE_ARCH appropriately.
|
||||
PACKAGE_ARCH = "${MACHINE_ARCH}"
|
||||
|
||||
FILES:${PN} = "${sysconfdir}/inittab ${base_bindir}/start_getty"
|
||||
CONFFILES:${PN} = "${sysconfdir}/inittab"
|
||||
|
||||
USE_VT ?= "1"
|
||||
SYSVINIT_ENABLED_GETTYS ?= "1"
|
||||
|
||||
RCONFLICTS:${PN} = "busybox-inittab"
|
||||
Reference in New Issue
Block a user