Version bump #319197 by Daniel Pielmeier.
authorMike Frysinger <vapier@gentoo.org>
Sun, 6 Jun 2010 06:59:47 +0000 (06:59 +0000)
committerMike Frysinger <vapier@gentoo.org>
Sun, 6 Jun 2010 06:59:47 +0000 (06:59 +0000)
Package-Manager: portage-2.2_rc67/cvs/Linux x86_64

sys-apps/sysvinit/ChangeLog
sys-apps/sysvinit/Manifest
sys-apps/sysvinit/files/sysvinit-2.86-kexec.patch [new file with mode: 0644]
sys-apps/sysvinit/files/sysvinit-2.86-shutdown-single.patch [new file with mode: 0644]
sys-apps/sysvinit/files/sysvinit-2.88-makefile.patch [new file with mode: 0644]
sys-apps/sysvinit/sysvinit-2.88.ebuild [new file with mode: 0644]

index 99a783a55fdb5b34c4998e802f86e8d125b15bb7..32c4a3599a78eccaede349a20439ed31f4995f27 100644 (file)
@@ -1,6 +1,14 @@
 # ChangeLog for sys-apps/sysvinit
 # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-apps/sysvinit/ChangeLog,v 1.80 2010/05/10 17:13:05 williamh Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/sysvinit/ChangeLog,v 1.81 2010/06/06 06:59:47 vapier Exp $
+
+*sysvinit-2.88 (06 Jun 2010)
+
+  06 Jun 2010; Mike Frysinger <vapier@gentoo.org>
+  +files/sysvinit-2.86-kexec.patch,
+  +files/sysvinit-2.86-shutdown-single.patch, +sysvinit-2.88.ebuild,
+  +files/sysvinit-2.88-makefile.patch:
+  Version bump #319197 by Daniel Pielmeier.
 
   10 May 2010; William Hubbs <williamh@gentoo.org> -files/2.86-gentoo.patch,
   -sysvinit-2.86-r10.ebuild, -files/inittab-2.86-r12,
index 89823dddffd31f36e2e6752a99ed36ce57ead818..a24bd1566a73a800cfa40793b74503f12346847a 100644 (file)
@@ -1,8 +1,23 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA256
+
 AUX inittab-2.87 1890 RMD160 ee4dcba9b3c3541905950f1cd5deb74163aab784 SHA1 03af334e70d50511b2de5d25278d3f1673d2e8ee SHA256 fff7016910c9e2aa29e2c4ed76f371723196e3122a4f9f744274f4993ea1a733
 AUX reboot.sh 304 RMD160 bbc92c46217361abfa9ca6842e206e818959886b SHA1 2515f89492a9d225abfdd9f99fb674a8dbb66629 SHA256 967fa572014ac6dd69f5e7e24d5250abad9c20c644563b927b295778608cafef
 AUX shutdown.sh 385 RMD160 5038d76195793b9996429f216fe9d4cd597b7725 SHA1 074471c08e01bfaa32bff4e6745795cf35794bef SHA256 2cc84a5194a949f16a82c6215459f4bf6d8156e50d8d9130d310f085bb208d4c
+AUX sysvinit-2.86-kexec.patch 3910 RMD160 dc113de4c2a4240d16af5cb741624efa4fa980fe SHA1 018889bb0fb0897911c6a19ad024ffff80d1337f SHA256 a9d764afc05ae73c2153b024a3b9e3295ba913e14e9684ddf1fd94467e4bc823
+AUX sysvinit-2.86-shutdown-single.patch 1229 RMD160 b00c49ca89d017f4b0ee10ff3dc2e22764552cd8 SHA1 23a48ee12e633c2d49f3601d573de6fb0c9e16aa SHA256 78852ca410e7ee23bf69cb6e566cb90404d8c8b7bcc10b264f66c97e0359d431
+AUX sysvinit-2.88-makefile.patch 1545 RMD160 daf0061c96858c35f4daba3c291666d912c7ab4d SHA1 4037f8558fe934813b0d96033c06d7a240adee9b SHA256 34d6ee50be139ad08b620569df11ac6a4cdf3dae737733dda21a716c4064c194
 DIST sysvinit-2.87-patches-2.tar.bz2 7129 RMD160 8b4cd971100b3cfdd81f27d836f1e45daac71fdf SHA1 cea5e3b5006165c15665457d33e6ea84e0ef7eb3 SHA256 724208540773ffa5d632285244bb61ea47fa347e6c0354c4faf31f407cfbe995
+DIST sysvinit-2.88dsf.tar.bz2 105551 RMD160 8109e9b90caff544be4a3b37c808baf16914d0bd SHA1 f2ca149df1314a91f3007cccd7a0aa47d990de26 SHA256 60bbc8c1e1792056e23761d22960b30bb13eccc2cabff8c7310a01f4d5df1519
 DIST sysvinit_2.87dsf.orig.tar.gz 106102 RMD160 69d4bc75ee55a23f650f7bfc7beb5b0433f4df35 SHA1 1939658db6fbb178ea20d4eb6300e668a6636ae3 SHA256 41b7c77942ec22916b36394d623de40c5cc5b058a6994af5ddeec08b284c4765
 EBUILD sysvinit-2.87-r3.ebuild 2729 RMD160 0a496b1915f2dd4d6bb952e2fc9f8727b1034945 SHA1 fe0eac47289dd45385fba3c5df60cef9167bebd7 SHA256 0d24f5177bc5bc4add0dd817070258e3c0af0f46312a3d7156718c3eca3c00eb
-MISC ChangeLog 12113 RMD160 1cb3494e5b78f6b9beb0977be49b5571aae5f392 SHA1 3b91d649e18c09486419d3f071babd8f09cf0391 SHA256 aca1b77af3dfc3e114b0b6ece3f504526c19fa95899568f33e9dabcf69d7c389
+EBUILD sysvinit-2.88.ebuild 2463 RMD160 b7e0282a873119902e6bf09016f6f91a6396a797 SHA1 be15ed7dc09d7fa75ed1ab6831ee4240ef9a2b9d SHA256 0318f1721492aab255834bc087b1c8c31874d792a3bf5904ad294bb941ee6209
+MISC ChangeLog 12380 RMD160 bf4adb2f05bf6874cb1551f813d7297bad32d488 SHA1 7174cd6a768a7ababaaf00ac9d10c018f8fc42de SHA256 b260bdec72d2871c4d27739d57bd292116639d47149b0c955fcd851025a6dd21
 MISC metadata.xml 164 RMD160 f43cbec30b7074319087c9acffdb9354b17b0db3 SHA1 9c213f5803676c56439df3716be07d6692588856 SHA256 f5f2891f2a4791cd31350bb2bb572131ad7235cd0eeb124c9912c187ac10ce92
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2.0.15 (GNU/Linux)
+
+iF4EAREIAAYFAkwLR2QACgkQTwhj9JtAlp7QfQEAvKCzA8QSWD0xT7lsEXOiXYeg
+TWZBlYwHUQLDvZDek7gBALyFy4yau23vpK87OfugZaS9hCYGK8He8Sdql/lMnhZ7
+=6SB4
+-----END PGP SIGNATURE-----
diff --git a/sys-apps/sysvinit/files/sysvinit-2.86-kexec.patch b/sys-apps/sysvinit/files/sysvinit-2.86-kexec.patch
new file mode 100644 (file)
index 0000000..4948806
--- /dev/null
@@ -0,0 +1,142 @@
+halt: add a -k kexec flag
+
+--- a/man/halt.8
++++ b/man/halt.8
+@@ -40,6 +40,7 @@ halt, reboot, poweroff \- stop the system.
+ .RB [ \-d ]
+ .RB [ \-f ]
+ .RB [ \-i ]
++.RB [ \-k ]
+ .br
+ .B /sbin/poweroff
+ .RB [ \-n ]
+@@ -83,6 +84,8 @@ Put all hard drives on the system in stand-by mode just before halt or power-off
+ .IP \fB\-p\fP
+ When halting the system, switch off the power. This is the default when halt is
+ called as \fBpoweroff\fP.
++.IP \fB\-k\fP
++Try to reboot using \fBkexec\fP, if kernel supports it.
+ .\"}}}
+ .\"{{{  Diagnostics
+ .SH DIAGNOSTICS
+--- a/src/halt.c
++++ b/src/halt.c
+@@ -8,7 +8,7 @@
+  *            execute an "shutdown -r". This is for compatibility with
+  *            sysvinit 2.4.
+  *
+- * Usage:     halt [-n] [-w] [-d] [-f] [-h] [-i] [-p]
++ * Usage:     halt [-n] [-w] [-d] [-f] [-h] [-i] [-p] [-k]
+  *            -n: don't sync before halting the system
+  *            -w: only write a wtmp reboot record and exit.
+  *            -d: don't write a wtmp record.
+@@ -16,6 +16,7 @@
+  *            -h: put harddisks in standby mode
+  *            -i: shut down all network interfaces.
+  *            -p: power down the system (if possible, otherwise halt).
++ *            -k: reboot the system using kexec.
+  *
+  *            Reboot and halt are both this program. Reboot
+  *            is just a link to halt. Invoking the program
+@@ -74,8 +75,10 @@ extern void write_wtmp(char *user, char *id, int pid, int type, char *line);
+  */
+ void usage(void)
+ {
+-      fprintf(stderr, "usage: %s [-n] [-w] [-d] [-f] [-h] [-i]%s\n",
+-              progname, strcmp(progname, "halt") ? "" : " [-p]");
++      fprintf(stderr, "usage: %s [-n] [-w] [-d] [-f] [-h] [-i]%s%s\n",
++              progname,
++              strcmp(progname, "halt") ? "" : " [-p]",
++              strcmp(progname, "reboot") ? "" : " [-k]");
+       fprintf(stderr, "\t-n: don't sync before halting the system\n");
+       fprintf(stderr, "\t-w: only write a wtmp reboot record and exit.\n");
+       fprintf(stderr, "\t-d: don't write a wtmp record.\n");
+@@ -84,6 +87,8 @@ void usage(void)
+       fprintf(stderr, "\t-i: shut down all network interfaces.\n");
+       if (!strcmp(progname, "halt"))
+               fprintf(stderr, "\t-p: power down the system (if possible, otherwise halt).\n");
++      if (!strcmp(progname, "reboot"))
++              fprintf(stderr, "\t-k: reboot the system using kexec.\n");
+       exit(1);
+ }
+ 
+@@ -182,6 +187,7 @@ int main(int argc, char **argv)
+       int do_ifdown = 0;
+       int do_hddown = 0;
+       int do_poweroff = 0;
++      int do_kexec = 0;
+       int c;
+       char *tm = NULL;
+ 
+@@ -201,7 +207,7 @@ int main(int argc, char **argv)
+       /*
+        *      Get flags
+        */
+-      while((c = getopt(argc, argv, ":ihdfnpwt:")) != EOF) {
++      while((c = getopt(argc, argv, ":ihdfnpwkt:")) != EOF) {
+               switch(c) {
+                       case 'n':
+                               do_sync = 0;
+@@ -225,6 +231,9 @@ int main(int argc, char **argv)
+                       case 'p':
+                               do_poweroff = 1;
+                               break;
++                      case 'k':
++                              do_kexec = 1;
++                              break;
+                       case 't':
+                               tm = optarg;
+                               break;
+@@ -242,10 +251,24 @@ int main(int argc, char **argv)
+       (void)chdir("/");
+ 
+       if (!do_hard && !do_nothing) {
++              c = get_runlevel();
++
++              /*
++               *       We can't reboot using kexec through this path.
++               */
++              if (c != '6' && do_reboot && do_kexec) {
++                      fprintf(stderr, "ERROR: using -k at this"
++                              " runlevel requires also -f\n"
++                              "  (You probably want instead to reboot"
++                              " normally and let your reboot\n"
++                              "   script, usually /etc/init.d/reboot,"
++                              " specify -k)\n");
++                      exit(1);
++              }
++
+               /*
+                *      See if we are in runlevel 0 or 6.
+                */
+-              c = get_runlevel();
+               if (c != '0' && c != '6')
+                       do_shutdown(do_reboot ? "-r" : "-h", tm);
+       }
+@@ -277,6 +300,15 @@ int main(int argc, char **argv)
+       if (do_nothing) exit(0);
+ 
+       if (do_reboot) {
++              /*
++               *      kexec or reboot
++               */
++              if (do_kexec)
++                      init_reboot(BMAGIC_KEXEC);
++
++              /*
++               *      Fall through if failed
++               */
+               init_reboot(BMAGIC_REBOOT);
+       } else {
+               /*
+--- a/src/reboot.h
++++ b/src/reboot.h
+@@ -47,5 +47,8 @@
+ #  define BMAGIC_POWEROFF     BMAGIC_HALT
+ #endif
+ 
++/* for kexec support */
++#define BMAGIC_KEXEC  0x45584543
++
+ #define init_reboot(magic)    reboot(magic)
+ 
diff --git a/sys-apps/sysvinit/files/sysvinit-2.86-shutdown-single.patch b/sys-apps/sysvinit/files/sysvinit-2.86-shutdown-single.patch
new file mode 100644 (file)
index 0000000..b8e403f
--- /dev/null
@@ -0,0 +1,36 @@
+This patch makes shutdown use the Single User runlevel by default so
+the gettys are shutdown too.
+
+Roy Marples <uberlord@gentoo.org>
+
+--- a/man/shutdown.8
++++ b/man/shutdown.8
+@@ -44,7 +44,7 @@ mail and news processing programs a chance to exit cleanly, etc.
+ \fBshutdown\fP does its job by signalling the \fBinit\fP process, 
+ asking it to change the runlevel.
+ Runlevel \fB0\fP is used to halt the system, runlevel \fB6\fP is used
+-to reboot the system, and runlevel \fB1\fP is used to put to system into
++to reboot the system, and runlevel \fBS\fP is used to put to system into
+ a state where administrative tasks can be performed; this is the default
+ if neither the \fI-h\fP or \fI-r\fP flag is given to \fBshutdown\fP.
+ To see which actions are taken on halt or reboot see the appropriate
+--- a/src/shutdown.c
++++ b/src/shutdown.c
+@@ -506,7 +506,7 @@ int main(int argc, char **argv)
+               usage();
+               exit(1);
+       }
+-      strcpy(down_level, "1");
++      strcpy(down_level, "S");
+       halttype = NULL;
+ 
+       /* Process the options. */
+@@ -685,6 +685,8 @@ int main(int argc, char **argv)
+                       strcpy(newstate, "for reboot");
+                       break;
+               case '1':
++              case 'S':
++              case 's':
+                       strcpy(newstate, "to maintenance mode");
+                       break;
+               default:
diff --git a/sys-apps/sysvinit/files/sysvinit-2.88-makefile.patch b/sys-apps/sysvinit/files/sysvinit-2.88-makefile.patch
new file mode 100644 (file)
index 0000000..22f463c
--- /dev/null
@@ -0,0 +1,60 @@
+http://savannah.nongnu.org/bugs/index.php?29758
+
+From 2b7d90f04cdd0e343f413c5c7672615926c02706 Mon Sep 17 00:00:00 2001
+From: wfink <wfink@456724a4-4300-0410-8514-c89748c515a2>
+Date: Tue, 4 May 2010 07:50:12 +0000
+Subject: [PATCH] Fix sysvinit bug #29758
+
+git-svn-id: svn://svn.sv.gnu.org/sysvinit/sysvinit/trunk@87 456724a4-4300-0410-8514-c89748c515a2
+
+diff --git a/src/Makefile b/src/Makefile
+index e2b8028..19675c5 100644
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -92,9 +92,9 @@ all:         $(BIN) $(SBIN) $(USRBIN)
+ init:         LDLIBS += $(INITLIBS) $(STATIC)
+ init:         init.o init_utmp.o
+ 
+-halt:         halt.o ifdown.o hddown.o utmp.o reboot.h
++halt:         halt.o ifdown.o hddown.o utmp.o
+ 
+-last:         last.o oldutmp.h
++last:         last.o
+ 
+ mesg:         mesg.o
+ 
+@@ -109,7 +109,7 @@ sulogin:   sulogin.o
+ 
+ wall:         dowall.o wall.o
+ 
+-shutdown:     dowall.o shutdown.o utmp.o reboot.h
++shutdown:     dowall.o shutdown.o utmp.o
+ 
+ bootlogd:     LDLIBS += -lutil
+ bootlogd:     bootlogd.o
+@@ -118,14 +118,22 @@ sulogin.o:       CPPFLAGS += $(SELINUX_DEF)
+ sulogin.o:    sulogin.c 
+ 
+ init.o:               CPPFLAGS += $(SELINUX_DEF)
+-init.o:               init.c init.h set.h reboot.h initreq.h
++init.o:               init.c init.h initreq.h paths.h reboot.h set.h
+ 
+-utmp.o:               utmp.c init.h
++utmp.o:               
+ 
+ init_utmp.o:  CPPFLAGS += -DINIT_MAIN
+-init_utmp.o:  utmp.c init.h
++init_utmp.o:  utmp.c init.h initreq.h paths.h
+               $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $<
+ 
++utmpdump.o:   utmpdump.c oldutmp.h
++
++shutdown.o:   shutdown.c paths.h reboot.h initreq.h init.h
++
++halt.o:               halt.c reboot.h
++
++last.o:               last.c oldutmp.h
++
+ cleanobjs:
+               rm -f *.o *.bak
+ 
diff --git a/sys-apps/sysvinit/sysvinit-2.88.ebuild b/sys-apps/sysvinit/sysvinit-2.88.ebuild
new file mode 100644 (file)
index 0000000..4cab350
--- /dev/null
@@ -0,0 +1,79 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/sysvinit/sysvinit-2.88.ebuild,v 1.1 2010/06/06 06:59:47 vapier Exp $
+
+inherit eutils toolchain-funcs flag-o-matic
+
+DESCRIPTION="/sbin/init - parent of all processes"
+HOMEPAGE="http://freshmeat.net/projects/sysvinit/"
+SRC_URI="mirror://nongnu/${PN}/${P}dsf.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
+IUSE="selinux ibm static kernel_FreeBSD"
+
+RDEPEND="selinux? ( >=sys-libs/libselinux-1.28 )"
+DEPEND="${RDEPEND}
+       virtual/os-headers"
+
+S=${WORKDIR}/${P}dsf
+
+src_unpack() {
+       unpack ${A}
+       cd "${S}"
+       epatch "${FILESDIR}"/${PN}-2.86-kexec.patch #80220
+       epatch "${FILESDIR}"/${PN}-2.86-shutdown-single.patch #158615
+       epatch "${FILESDIR}"/${P}-makefile.patch #319197
+
+       # Mung inittab for specific architectures
+       cd "${WORKDIR}"
+       cp "${FILESDIR}"/inittab-2.87 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'
+       use hppa && insert='b0:12345:respawn:/sbin/agetty 9600 ttyB0 vt100'
+       use s390 && insert='s0:12345:respawn:/sbin/agetty 38400 console'
+       if use ibm ; then
+               insert="${insert}#hvc0:2345:respawn:/sbin/agetty -L 9600 hvc0"$'\n'
+               insert="${insert}#hvsi:2345:respawn:/sbin/agetty -L 19200 hvsi0"
+       fi
+       (use arm || use mips || use sh || 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
+       [[ -n ${insert} ]] && echo "# Architecture specific features"$'\n'"${insert}" >> inittab
+}
+
+src_compile() {
+       local myconf
+
+       tc-export CC
+       use static && append-ldflags -static
+       use selinux && myconf=WITH_SELINUX=yes
+       emake -C src ${myconf} || die
+}
+
+src_install() {
+       emake -C src install ROOT="${D}" || die
+       dodoc README doc/*
+
+       insinto /etc
+       doins "${WORKDIR}"/inittab || die "inittab"
+
+       doinitd "${FILESDIR}"/{reboot,shutdown}.sh || 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
+               # Do not return an error if this fails
+               /sbin/telinit U &>/dev/null
+       fi
+}