diff options
author | 2020-12-04 20:26:48 +0100 | |
---|---|---|
committer | 2020-12-07 08:12:07 -0600 | |
commit | 98afa7174f1cabd3f8e81c173aa90a1040e11a26 (patch) | |
tree | 95a81d1ce48da912a1ec7946f77a43f8e5d55da0 /sys-apps | |
parent | sys-apps/sysvinit: drop all keywords but x86 (diff) | |
download | musl-98afa7174f1cabd3f8e81c173aa90a1040e11a26.tar.gz musl-98afa7174f1cabd3f8e81c173aa90a1040e11a26.tar.bz2 musl-98afa7174f1cabd3f8e81c173aa90a1040e11a26.zip |
sys-apps/sysvinit: add new stable 2.97 for x86
Signed-off-by: Steffen Kuhn <nielson2@yandex.com>
Signed-off-by: Jory Pratt <anarchy@gentoo.org>
Diffstat (limited to 'sys-apps')
-rw-r--r-- | sys-apps/sysvinit/Manifest | 2 | ||||
-rw-r--r-- | sys-apps/sysvinit/files/halt.sh | 6 | ||||
-rw-r--r-- | sys-apps/sysvinit/files/inittab-2.95 | 61 | ||||
-rw-r--r-- | sys-apps/sysvinit/files/sysvinit-2.95_beta-shutdown-h.patch | 87 | ||||
-rw-r--r-- | sys-apps/sysvinit/sysvinit-2.97.ebuild (renamed from sys-apps/sysvinit/sysvinit-2.94.ebuild) | 45 |
5 files changed, 187 insertions, 14 deletions
diff --git a/sys-apps/sysvinit/Manifest b/sys-apps/sysvinit/Manifest index 85991333..5a1c9f3e 100644 --- a/sys-apps/sysvinit/Manifest +++ b/sys-apps/sysvinit/Manifest @@ -1,2 +1,2 @@ DIST sysvinit-2.93.tar.xz 117580 BLAKE2B 2e771b00dbdc73e76df9e78659aaa5e5fcbfda36290a1b5aa20a5a6fe3540c4616f2a235a668de30d33c620e2d2516da303537eda47b83b29b0844ad7aa77df4 SHA512 c80d07a674253d15ec6382cfaf792f47486e2e84ab9c913d3c9e03b590cf211177a3a14e168f4d1c9c2e97737221f7ac70a75633d90502837a6d29bdc4c48d72 -DIST sysvinit-2.94.tar.xz 120900 BLAKE2B e45a95246325e93ef49f11573924216937e238761cb9f5979ae2b272838fb3280b1d12c9553992271f7926dc7c7bc18e352a8019a70f54c592971fe043453804 SHA512 8d3b7b777f7c37cf5eaf73d4cdfad8ac54c6115577052bd7ddf3588da8fb7d16b812ffaade0ce300c2c6b7d2acd6e7778130544befc171eab174ee8766b3ec50 +DIST sysvinit-2.97.tar.xz 126848 BLAKE2B dd2612de531a89f1fdbfaeb8b5975aeba9541a6b570587a881bdb11406991c1a9b254d1802725298eb13362d625d3859b520ee964782a0fe43d3f038a28b49e6 SHA512 89950080a120b62bdd297f3a59898dd11e10c7438cf18774bad16c65ce5fb2e190726e601c6f263def32cff59867c0984edcd99d527eb80297901085afbb2e90 diff --git a/sys-apps/sysvinit/files/halt.sh b/sys-apps/sysvinit/files/halt.sh new file mode 100644 index 00000000..ff68c425 --- /dev/null +++ b/sys-apps/sysvinit/files/halt.sh @@ -0,0 +1,6 @@ +#!/bin/sh +if [ "${INIT_HALT}" = HALT ]; then + exec /sbin/halt -dhn +else + exec /sbin/poweroff -dhn +fi diff --git a/sys-apps/sysvinit/files/inittab-2.95 b/sys-apps/sysvinit/files/inittab-2.95 new file mode 100644 index 00000000..03f226a8 --- /dev/null +++ b/sys-apps/sysvinit/files/inittab-2.95 @@ -0,0 +1,61 @@ +# +# /etc/inittab: This file describes how the INIT process should set up +# the system in a certain run-level. +# +# Author: Miquel van Smoorenburg, <miquels@cistron.nl> +# Modified by: Patrick J. Volkerding, <volkerdi@ftp.cdrom.com> +# Modified by: Daniel Robbins, <drobbins@gentoo.org> +# Modified by: Martin Schlemmer, <azarah@gentoo.org> +# Modified by: Mike Frysinger, <vapier@gentoo.org> +# Modified by: Robin H. Johnson, <robbat2@gentoo.org> +# Modified by: William Hubbs, <williamh@gentoo.org> +# + +# Default runlevel. +id:3:initdefault: + +# System initialization, mount local filesystems, etc. +si::sysinit:/sbin/openrc sysinit + +# Further system initialization, brings up the boot runlevel. +rc::bootwait:/sbin/openrc boot + +l0u:0:wait:/sbin/telinit u +l0:0:wait:/sbin/openrc shutdown +l0s:0:wait:/sbin/halt.sh +l1:1:wait:/sbin/openrc single +l2:2:wait:/sbin/openrc nonetwork +l3:3:wait:/sbin/openrc default +l4:4:wait:/sbin/openrc default +l5:5:wait:/sbin/openrc default +l6u:6:wait:/sbin/telinit u +l6:6:wait:/sbin/openrc reboot +l6r:6:wait:/sbin/reboot -dkn +#z6:6:respawn:/sbin/sulogin + +# new-style single-user +su0:S:wait:/sbin/openrc single +su1:S:wait:/sbin/sulogin + +# TERMINALS +#x1:12345:respawn:/sbin/agetty 38400 console linux +c1:12345:respawn:/sbin/agetty 38400 tty1 linux +c2:2345:respawn:/sbin/agetty 38400 tty2 linux +c3:2345:respawn:/sbin/agetty 38400 tty3 linux +c4:2345:respawn:/sbin/agetty 38400 tty4 linux +c5:2345:respawn:/sbin/agetty 38400 tty5 linux +c6:2345:respawn:/sbin/agetty 38400 tty6 linux + +# SERIAL CONSOLES +#s0:12345:respawn:/sbin/agetty -L 9600 ttyS0 vt100 +#s1:12345:respawn:/sbin/agetty -L 9600 ttyS1 vt100 + +# What to do at the "Three Finger Salute". +ca:12345:ctrlaltdel:/sbin/shutdown -r now + +# Used by /etc/init.d/xdm to control DM startup. +# Read the comments in /etc/init.d/xdm for more +# info. Do NOT remove, as this will start nothing +# extra at boot if /etc/init.d/xdm is not added +# to the "default" runlevel. +x:a:once:/etc/X11/startDM.sh diff --git a/sys-apps/sysvinit/files/sysvinit-2.95_beta-shutdown-h.patch b/sys-apps/sysvinit/files/sysvinit-2.95_beta-shutdown-h.patch new file mode 100644 index 00000000..f24e1029 --- /dev/null +++ b/sys-apps/sysvinit/files/sysvinit-2.95_beta-shutdown-h.patch @@ -0,0 +1,87 @@ +other inits have moved to not requiring the -h flag when used with -H/-P. +modify sysvinit to be the same since it really doesn't matter. + +https://bugs.gentoo.org/449354 + +patch by Doug Goldstein + +--- + man/shutdown.8 | 11 ++++------- + src/shutdown.c | 12 ++++-------- + 2 files changed, 8 insertions(+), 15 deletions(-) + +--- sysvinit-2.95/man/shutdown.8 ++++ sysvinit-2.95/man/shutdown.8 +@@ -66,22 +66,19 @@ + .\"}}} + .\"{{{ -h + .IP \fB\-h\fP +-Halt or power off after shutdown. Usually used with the -P or -H flags, +-depending on whether we want to poweroff or simply stop the operating system. ++Equivalent to -P, unless -H is specified. + .\"}}} + .\"{{{ -P + .IP \fB\-P\fP +-Modifier to the -h flag. Halt action is to turn off the power. +-Must be used with the -h flag. ++Halt action is to turn off the power. + .\"}}} + .\"{{{ -H + .IP \fB\-H\fP +-Modifier to the -h flag. Halt action is to halt or drop into boot +-monitor on systems that support it. Must be used with the -h flag. ++Action is to halt or drop into boot monitor on systems that support it. + Halting is often used to run through the shutdown process and leave + output on the screen for debugging purposes. Or when the user wants the OS to + stop, but leave the power on. To power off at the end of the shutdown sequence +-use the -P modifier instead. ++use the -P option instead. + .\"}}} + .\"{{{ -f + .IP \fB\-f\fP +--- sysvinit-2.95/src/shutdown.c ++++ sysvinit-2.95/src/shutdown.c +@@ -144,9 +144,7 @@ + "\t\t -r: reboot after shutdown.\n" + "\t\t -h: halt after shutdown.\n" + "\t\t -P: halt action is to turn off power.\n" +- "\t\t can only be used along with -h flag.\n" + "\t\t -H: halt action is to just halt.\n" +- "\t\t can only be used along with -h flag.\n" + "\t\t -f: do a 'fast' reboot (skip fsck).\n" + "\t\t -F: Force fsck on reboot.\n" + "\t\t -n: do not go through \"init\" but go down real fast.\n" +@@ -556,9 +554,11 @@ + switch(c) { + case 'H': + halttype = "HALT"; ++ down_level[0] = '0'; + break; + case 'P': + halttype = "POWEROFF"; ++ down_level[0] = '0'; + break; + case 'a': /* Access control. */ + useacl = 1; +@@ -574,6 +574,8 @@ + break; + case 'h': /* Halt after shutdown */ + down_level[0] = '0'; ++ if (!halttype) ++ halttype = "POWEROFF"; + break; + case 'f': /* Don't perform fsck after next boot */ + fastboot = 1; +@@ -613,12 +615,6 @@ + } + } + +- if (NULL != halttype && down_level[0] != '0') { +- fprintf(stderr, "shutdown: -H and -P flags can only be used along with -h flag.\n"); +- usage(); +- exit(1); +- } +- + /* Do we need to use the shutdown.allow file ? */ + if (useacl && (fp = fopen(SDALLOW, "r")) != NULL) { + diff --git a/sys-apps/sysvinit/sysvinit-2.94.ebuild b/sys-apps/sysvinit/sysvinit-2.97.ebuild index b1684921..e7338aef 100644 --- a/sys-apps/sysvinit/sysvinit-2.94.ebuild +++ b/sys-apps/sysvinit/sysvinit-2.97.ebuild @@ -1,7 +1,7 @@ # Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=7 inherit toolchain-funcs flag-o-matic @@ -12,8 +12,8 @@ SRC_URI="mirror://nongnu/${PN}/${P/_/-}.tar.xz" LICENSE="GPL-2" SLOT="0" [[ "${PV}" == *beta* ]] || \ -KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~x86" -IUSE="selinux ibm static" +KEYWORDS="x86" +IUSE="selinux ibm static kernel_FreeBSD" CDEPEND=" selinux? ( @@ -31,12 +31,16 @@ S="${WORKDIR}/${P/_*}" PATCHES=( "${FILESDIR}/${PN}-2.86-kexec.patch" #80220 "${FILESDIR}/${PN}-2.94_beta-shutdown-single.patch" #158615 - "${FILESDIR}/${PN}-2.92_beta-shutdown-h.patch" #449354 + "${FILESDIR}/${PN}-2.95_beta-shutdown-h.patch" #449354 ) src_prepare() { default - sed -i '/^CPPFLAGS =$/d' src/Makefile || die + + sed -i \ + -e '/^CPPFLAGS =$/d' \ + -e '/^override CFLAGS +=/s/ -fstack-protector-strong//' \ + src/Makefile || die # last/lastb/mesg/mountpoint/sulogin/utmpdump/wall have moved to util-linux sed -i -r \ @@ -49,10 +53,11 @@ src_prepare() { -e '/\/bin\/pidof/d' \ -e '/^MAN8/s:\<pidof.8\>::g' \ src/Makefile || die - + # stack protector is broken on x86 musl sed -i 's/-fstack-protector-strong//' src/Makefile || die + # logsave is already in e2fsprogs sed -i -r \ -e '/^(USR)?S?BIN/s:\<logsave\>::g' \ @@ -61,7 +66,7 @@ src_prepare() { # Mung inittab for specific architectures cd "${WORKDIR}" || die - cp "${FILESDIR}"/inittab-2.91 inittab || die "cp inittab" + cp "${FILESDIR}"/inittab-2.95 inittab || die "cp inittab" local insert=() use ppc && insert=( '#psc0:12345:respawn:/sbin/agetty 115200 ttyPSC0 linux' ) use arm && insert=( '#f0:12345:respawn:/sbin/agetty 9600 ttyFB0 vt100' ) @@ -75,6 +80,13 @@ src_prepare() { ) fi (use arm || use mips || use sparc) && sed -i '/ttyS0/s:#::' inittab + if use kernel_FreeBSD ; then + sed -i \ + -e 's/linux/cons25/g' \ + -e 's/ttyS0/cuaa0/g' \ + -e 's/ttyS1/cuaa1/g' \ + inittab #121786 + fi if use x86 || use amd64 ; then sed -i \ -e '/ttyS[01]/s:9600:115200:' \ @@ -102,18 +114,25 @@ src_install() { doins "${WORKDIR}"/inittab # dead symlink - rm "${ED%/}"/usr/bin/lastb || die + rm "${ED}"/usr/bin/lastb || die newinitd "${FILESDIR}"/bootlogd.initd bootlogd + into / + dosbin "${FILESDIR}"/halt.sh + + keepdir /etc/inittab.d + + find "${ED}" -type d -empty -delete || die } pkg_postinst() { # Reload init to fix unmounting problems of / on next reboot. # This is really needed, as without the new version of init cause init # not to quit properly on reboot, and causes a fsck of / on next reboot. - if [[ ${ROOT} == / ]] ; then - if [[ -e /dev/initctl && ! -e /run/initctl ]]; then - ln -s /dev/initctl /run/initctl + if [[ -z ${ROOT} ]] ; then + if [[ -e /dev/initctl ]] && [[ ! -e /run/initctl ]] ; then + ln -s /dev/initctl /run/initctl \ + || ewarn "Failed to set /run/initctl symlink!" fi # Do not return an error if this fails /sbin/telinit U &>/dev/null @@ -123,7 +142,7 @@ pkg_postinst() { elog "sys-apps/util-linux. The pidof tool has been moved to sys-process/procps." # Required for new bootlogd service - if [[ ! -e "${EROOT%/}/var/log/boot" ]] ; then - touch "${EROOT%/}/var/log/boot" + if [[ ! -e "${EROOT}/var/log/boot" ]] ; then + touch "${EROOT}/var/log/boot" fi } |