%n sysvinit
%v 2.64
%c *
%l *
%b *
%d *
%f *
%t sysvinit-2.64.tgz
%w Linux
%%
%setup
patch -u -p1 <<'ENDPATCH'
diff -ru2N sysvinit-2.64/Makefile sysvinit-MCC/Makefile
--- sysvinit-2.64/Makefile	Tue Jul  2 22:29:11 1996
+++ sysvinit-MCC/Makefile	Mon Aug  5 22:56:27 1996
@@ -9,5 +9,5 @@
 
 CC	= cc
-CFLAGS	= -Wall -O2
+CFLAGS	= -Wall -O6
 LDFLAGS	= -s
 STATIC	=
@@ -16,5 +16,11 @@
 # PROGS	= init halt shutdown powerd killall5 runlevel sulogin utmpdump \
 #		last mesg wall start-stop-daemon
-PROGS	= init halt shutdown powerd killall5 runlevel sulogin last mesg
+SBINS = init halt shutdown powerd start-stop-daemon sulogin
+USBINS = killall5 utmpdump
+UBINS = runlevel last mesg wall
+MAN8 = halt.8 init.8 killall5.8 powerd.8 runlevel.8 shutdown.8 sulogin.8
+MAN5 = inittab.5
+MAN1 = last.1 mesg.1 wall.1
+PROGS	= $(SBINS) $(USBINS) $(UBINS)
 
 BIN_OWNER	= root
@@ -27,5 +33,4 @@
 
 init:		init.c
-		$(CC) $(CFLAGS) $(LDFLAGS) $(STATIC) -o $@ init.c
 
 shutdown.o:	shutdown.c
@@ -43,8 +48,6 @@
 
 sulogin:	sulogin.c
-		$(CC) $(CFLAGS) $(LDFLAGS) $(STATIC) -o $@ sulogin.c
 
 start-stop-daemon:	start-stop-daemon.c
-		$(CC) $(CFLAGS) $(LDFLAGS) $(STATIC) -o $@ start-stop-daemon.c
 
 wall:		dowall.o wall.o
@@ -72,20 +75,15 @@
 
 install:
-		$(INSTALL) -m 755 halt init killall5 sulogin \
-			powerd runlevel shutdown $(ROOT)/sbin
-		# These are not installed by default
-		# $(INSTALL) -m 555 utmpdump wall $(ROOT)/usr/bin
-		# $(INSTALL) -m 755 etc/initscript.sample $(ROOT)/etc
-		$(INSTALL) -m 755 mesg last $(ROOT)/usr/bin
-		cd $(ROOT)/usr/bin; ln -sf last lastb; chown $(BIN_COMBO) lastb
-		cd $(ROOT)/sbin; ln -sf halt reboot; chown $(BIN_COMBO) reboot
-		cd $(ROOT)/sbin; ln -sf killall5 pidof; chown $(BIN_COMBO) pidof
-		cd $(ROOT)/sbin; ln -sf init telinit; chown $(BIN_COMBO) telinit
-		$(INSTALL) -m 644 *.8 $(ROOT)/usr/man/man8
-		$(INSTALL) -m 644 *.5 $(ROOT)/usr/man/man5
-		# Some manpages not installed by default.
-		# $(INSTALL) -m 644 wall.1 $(ROOT)/usr/man/man1
-		$(INSTALL) -m 644 last.1 lastb.1 mesg.1 $(ROOT)/usr/man/man1
-		#
+	install -s -m 544 $(SBINS) /sbin
+	install -s -m 555 $(USBINS) /usr/sbin
+	install -s -m 555 $(UBINS) /usr/bin
+	cd /usr/bin;ln -f last lastb
+	cd /sbin;ln -f halt reboot;ln -f init telinit
+	install -m 444 $(MAN1) /usr/man/man1
+	cd /usr/man/man1;gzip -9f $(MAN1)
+	install -m 444 $(MAN5) /usr/man/man5
+	cd /usr/man/man5;gzip -9f $(MAN5)
+	install -m 444 $(MAN8) /usr/man/man8
+	cd /usr/man/man8;gzip -9f $(MAN8)
 		# This part is skipped on debian systems, the
 		# debian.preinst script takes care of it.
diff -ru2N sysvinit-2.64/sulogin.c sysvinit-MCC/sulogin.c
--- sysvinit-2.64/sulogin.c	Wed May 22 12:45:25 1996
+++ sysvinit-MCC/sulogin.c	Wed Aug 21 21:28:18 1996
@@ -367,7 +367,7 @@
 	 */
 	while(1) {
+		if (pwd->pw_passwd[0] == 0) sushell(pwd);
 		if ((p = getpasswd()) == NULL) break;
-		if (pwd->pw_passwd[0] == 0 ||
-		    strcmp(crypt(p, pwd->pw_passwd), pwd->pw_passwd) == 0)
+		if (strcmp(crypt(p, pwd->pw_passwd), pwd->pw_passwd) == 0)
 			sushell(pwd);
 		printf("Login incorrect.\n");
ENDPATCH
make

* make install
%%