diff options
Diffstat (limited to 'packages/sysvinit/sysvinit_2.85.bb')
-rw-r--r-- | packages/sysvinit/sysvinit_2.85.bb | 94 |
1 files changed, 94 insertions, 0 deletions
diff --git a/packages/sysvinit/sysvinit_2.85.bb b/packages/sysvinit/sysvinit_2.85.bb index e69de29bb2..bb4605b79c 100644 --- a/packages/sysvinit/sysvinit_2.85.bb +++ b/packages/sysvinit/sysvinit_2.85.bb @@ -0,0 +1,94 @@ +SECTION = "base" +DESCRIPTION = "System-V like init.\ + Init is the first program to run after your system is booted, and\ + continues to run as process number 1 until your system halts. Inits\ + job is to start other programs that are essential to the operation of\ + your system. All processes are descended from init. For more information,\ + see the manual page init(8)." +PACKAGES = "sysvinit" +FILES_${PN} = "/sbin ${bindir} ${sysconfdir}" +FILES_sysv-rc = "${sbindir}" +PR = "r1" + +# USE_VT and SERIAL_CONSLE are generally defined by the MACHINE .conf. +# Set PACKAGE_ARCH appropriately. +PACKAGE_ARCH = "${MACHINE_ARCH}" + +USE_VT ?= "1" + +SRC_URI = "ftp://ftp.cistron.nl/pub/people/miquels/sysvinit/sysvinit-${PV}.tar.gz \ + file://need \ + file://provide \ + file://inittab \ + file://rcS-default \ + file://rc \ + file://rcS" +S = "${WORKDIR}/sysvinit-${PV}/src" + +CFLAGS_prepend = "-D_GNU_SOURCE " +export LCRYPT = "-lcrypt" + + +do_install () { + install -d ${D}/${bindir} ${D}/${sbindir} \ + ${D}/sbin ${D}/${sysconfdir}/default \ + ${D}/${sysconfdir}/init.d + install -m 755 halt killall5 \ + runlevel shutdown ${D}/sbin/ + install -m 755 init ${D}/sbin/sysvinit + install -m 755 mesg last ${D}${bindir} + install -m 0755 ${WORKDIR}/need ${D}/sbin/need.sysvinit + install -m 0755 ${WORKDIR}/provide ${D}/sbin/provide.sysvinit + ln -sf halt ${D}/sbin/reboot + ln -sf halt ${D}/sbin/poweroff + ln -sf init ${D}/sbin/telinit + ln -sf killall5 ${D}/sbin/pidof + ln -sf last ${D}${bindir}/lastb + install -m 0644 ${WORKDIR}/inittab ${D}/${sysconfdir}/inittab + if [ ! -z "${SERIAL_CONSOLE}" ]; then + echo "S:2345:respawn:/sbin/getty ${SERIAL_CONSOLE}" >> ${D}/etc/inittab + fi + if [ "${USE_VT}" == "1" ]; then + cat <<EOF >>${D}/etc/inittab +# /sbin/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> +# +1:2345:respawn:/sbin/getty 38400 tty1 +# 2:23:respawn:/sbin/getty 38400 tty2 +# 3:23:respawn:/sbin/getty 38400 tty3 +# 4:23:respawn:/sbin/getty 38400 tty4 +EOF + fi + install -m 0644 ${WORKDIR}/rcS-default ${D}/etc/default/rcS + install -m 0755 ${WORKDIR}/rc ${D}/etc/init.d + install -m 0755 ${WORKDIR}/rcS ${D}/etc/init.d +} + + +do_install_append_ramses () { + cat <<EOF >>${D}/etc/inittab +# Bluetooth +#1:2345:respawn:/sbin/getty -L 115200 tts/1 +# External serial port +4:2345:respawn:/sbin/getty -L 115200 tts/4 +# Framebuffer +v1:2345:respawn:/sbin/getty -L 115200 vc/1 +EOF +} + + +pkg_postinst () { +set -e +# FIXME: use update-alternatives.. but what if the user doesnt have it? +#if [ -n "`which update-alternatives 2>/dev/null`" ]; then +# update-alternatives blah +#else + ln -sf sysvinit $D/sbin/init +#fi +exit 0 +} |