Commit Diff


commit - 78e51a8c6678b6e3dff3d619aa786669f531f4bc
commit + 359c1e017ee367c34b082b1b4e6c002686d01bce
blob - 39e6eb1a50a0a817407fc8b7ed1bd21d2190ba10
blob + 62e106e23cbc5881f700a0d3871369f1279289a1
--- bin/9l
+++ bin/9l
@@ -27,7 +27,7 @@ then
 	for i
 	do
 		case "$i" in
-		*.o)
+		*.[ao])
 			ofiles="$ofiles $i"
 			;;
 		esac
@@ -58,11 +58,15 @@ then
 		workq=""
 		for i in $w
 		do
+			# can't trust the libraries about using
+			# libthread - we might not be linking with
+			# those object files.
 			a=`
 				nm $PLAN9/lib/lib$i.a |
 				grep '__p9l_autolib_[a-zA-Z0-9+-]*$' |
 				sed 's/.*__p9l_autolib_//' |
-				sort -u
+				sort -u |
+				grep -v thread
 			`
 			okayfn="true"
 			for j in $a
@@ -131,9 +135,9 @@ then
 	libsl="$libsl -l9"
 
 	# cycle: lib9 expects p9main, which is defined in libthread.  oops.
-	if $havethread
+	if havethread
 	then
-		libsl="$libsl -lthread"
+		libsl="$libsl -lthread -l9"
 	fi
 
 	if [ "x$needdraw" = xtrue ]
blob - 9ced5330d6a2258580ac8f0b3ada6691d6886df2
blob + 4c890ed43a5a9ce02fc6a7062f06489251e70146
--- src/Makefile
+++ src/Makefile
@@ -1,6 +1,6 @@
 ../bin/mk: mkmk.sh
 	SYSNAME=`uname` export SYSNAME; \
-	OBJTYPE=`uname -m | sed 's;i.86;386;; s;/.*;;; s; ;;g' | sed 's/ppc64/power/g' | sed 's/ppc/power/g'` export OBJTYPE; \
+	OBJTYPE=`uname -m | sed 's;i.86;386;; s;/.*;;; s; ;;g; s/PowerMacintosh/power/; s/ppc64/power/g; s/ppc/power/g'` export OBJTYPE; \
 	PATH=`pwd`/../bin:$$PATH export PATH; \
 	PLAN9=`pwd`/.. export PLAN9; \
 	sh -x mkmk.sh
blob - 03633f3bd296d6db4ce2fab74bd032dfde71a4cb
blob + 12006fd3823784ba13ea67bd77924437eaf68646
--- src/cmd/grap/mkfile
+++ src/cmd/grap/mkfile
@@ -18,18 +18,16 @@ OFILES=\
 HFILES=grap.h\
 	y.tab.h\
 
-YFILES=grap.y\
+YFILES=grap.y
+LFILES=grapl.lx
 
-LFILES=grapl.lx\
-
 <$PLAN9/src/mkone
-YFLAGS = -d -S
-LEX=9lex
+YFLAGS=-d -S
 
 grap.c:	y.tab.c
 	mv $prereq $target
 
-grapl.c:	$LFILES
+grapl.c:D: $LFILES
 	$LEX -t $prereq > $target
 
 clean:V:
blob - c50d4e183d61e7e6c72e99efb1c88fd3a675bf68
blob + 21070f0e2739ce7f248e3090ee6f12d7f255744a
--- src/cmd/mkfile
+++ src/cmd/mkfile
@@ -25,5 +25,13 @@ delatex.c:D: delatex.lx $PLAN9/bin/lex
 $PLAN9/bin/lex: $PLAN9/bin/yacc
 	cd lex; mk install
 
+# This should not be necessary.
+$PLAN9/bin/yacc: $O.yacc
+	install -c $O.yacc $PLAN9/bin/yacc
+$O.yacc: yacc.$O
+	$LD -o $target $prereq
+yacc.$O: yacc.c
+	$CC $CFLAGS yacc.c
+
 CLEANFILES=$CLEANFILES bc.tab.[ch] units.tab.[ch] delatex.c
 
blob - 10199f8c5ef9760e7b0b7c10ffe275bb52516f49
blob + 8619220c92a6f9cd19cdd747f1151d37e5fe5abf
--- src/cmd/pic/mkfile
+++ src/cmd/pic/mkfile
@@ -25,12 +25,11 @@ YFILES=picy.y\
 
 <$PLAN9/src/mkone
 YFLAGS=-S -d
-LEX=9lex
 
 picy.c:	y.tab.c
 	mv $prereq $target
 
-picl.c:	picl.lx
+picl.c:D: picl.lx
 	$LEX -t $prereq > $target
 
 clean:V:
blob - eb0b5130d4194cc939d0f0b89f8453de161daab2
blob + 2b41990d4a807869e93f612b0b77412b477826c6
--- src/cmd/plot/libplot/subr.c
+++ src/cmd/plot/libplot/subr.c
@@ -13,7 +13,6 @@ struct penvir  E[9] = {
 struct penvir *e0 = E, *e1 = &E[1], *esave;
 int
 bcolor(char *s){
-	int c;
 	while (*s != 0) {
 		switch (*s) {
 		case '0': case '1': case '2': case '3': case '4':
blob - 66a114c22e43562f114529fdee9a161eb2ce0652
blob + 67dabf32e4d5d9652b910e4f99b4f1d65ea3b9cf
--- src/cmd/postscript/common/bbox.c
+++ src/cmd/postscript/common/bbox.c
@@ -11,6 +11,7 @@
  */
 
 #include <stdio.h>
+#include <string.h>
 #include <ctype.h>
 #include <sys/types.h>
 #include <fcntl.h>
blob - e348cb2fa0b1e8f7149920299c9ddd6e30ef6a00
blob + 018885f7c123a155b92a7fbe9f26a134228be5cb
--- src/cmd/postscript/common/getopt.c
+++ src/cmd/postscript/common/getopt.c
@@ -1,18 +1,13 @@
-#ifndef _POSIX_SOURCE
-#include <u.h>
-#include <libc.h>
-#endif
 #include	<stdio.h>
+#include <string.h>
 #define ERR(str, chr)       if(opterr){fprintf(stderr, "%s%s%c\n", argv[0], str, chr);}
 int     opterr = 1;
 int     optind = 1;
 int	optopt;
 char    *optarg;
-char    *strchr();
 
 int
-getopt (argc, argv, opts)
-char **argv, *opts;
+getopt (int argc, char **argv, char *opts)
 {
 	static int sp = 1;
 	register int c;
@@ -22,7 +17,7 @@ char **argv, *opts;
 		if (optind >= argc ||
 		   argv[optind][0] != '-' || argv[optind][1] == '\0')
 			return EOF;
-		else if (strcmp(argv[optind], "--") == NULL) {
+		else if (strcmp(argv[optind], "--") == 0) {
 			optind++;
 			return EOF;
 		}
blob - e965a6eed268d651eeee32923ea4f24d193f16bd
blob + dd34c6db1bfd3b3139098bb2e1a1dcf87eb903a9
--- src/cmd/postscript/common/misc.c
+++ src/cmd/postscript/common/misc.c
@@ -5,6 +5,7 @@
  */
 
 #include <stdio.h>
+#include <stdlib.h>
 #include <ctype.h>
 #include <sys/types.h>
 #include <fcntl.h>
blob - 121b739e6c36b07cc7a816f71849170017f1da86
blob + 6e270bca9ed7061d01560a48de2c03964eeb92e9
--- src/cmd/postscript/common/mkfile
+++ src/cmd/postscript/common/mkfile
@@ -20,4 +20,4 @@ HFILES=comments.h\
 
 <$PLAN9/src/mklib
 
-CFLAGS=-c -D$SYSTEM -D_POSIX_SOURCE
+CFLAGS=-c -D$SYSTEM 
blob - 39a7d73e3bbaafb54c89ff33afefb58c5c9df083
blob + 53a66bebe1c5c753614b16bc8e7c1b96e23a2a6e
--- src/cmd/vac/vac.c
+++ src/cmd/vac/vac.c
@@ -115,7 +115,6 @@ threadmain(int argc, char *argv[])
 	char *host = nil;
 	int statsflag = 0;
 
-	threadlinklibrary();
 	atexit(cleanup);
 
 	ARGBEGIN{
blob - 164069825a359c0daf876b42e2ff30325db5347a
blob + 6456aece2cf02eb744811445e1109971ec58466c
--- src/mkhdr
+++ src/mkhdr
@@ -29,6 +29,7 @@ AFLAGS=
 CLEANFILES=
 NUKEFILES=
 YACC=9 yacc
+LEX=9 lex
 YFLAGS=-d
 LIB=
 SHORTLIB=9
blob - a896ac91ed2a56d4e392f8ab5e1d3dbdb1be15a2
blob + 6e38e2feaafe62e2b469c535cd137d79c2345aad
--- src/mklib
+++ src/mklib
@@ -2,7 +2,7 @@ default:V:	$LIB
 
 $LIB(%):N: %
 $LIB:	${OFILES:%=$LIB(%)}
-	$AR rvc $LIB `membername $newprereq`
+	$AR rvc $LIB $newmember
 
 &:n:	&.$O
 	$AR rvc $LIB $stem.$O
blob - 4b56a989439f01ce985e733b1bbd686f01e677eb
blob + 5ff530fb2feda436262d9ffab4e7d14bd34a6462
--- src/mkmk.sh
+++ src/mkmk.sh
@@ -135,7 +135,7 @@ cd lib9
 9c  utf/utfrrune.c
 9c  utf/utfrune.c
 9c  utf/utfutf.c
-9ar rvc $PLAN9/lib/lib9.a *.o
+9ar rvc $PLAN9/lib/lib9.a _exits.o _p9dialparse.o _p9dir.o announce.o argv0.o atexit.o atoi.o atol.o atoll.o atnotify.o await.o cistrcmp.o cistrncmp.o cistrstr.o cleanname.o convD2M.o convM2D.o convM2S.o convS2M.o create.o ctime.o date.o dial.o dirfstat.o dirfwstat.o dirmodefmt.o dirread.o dirstat.o dirwstat.o dup.o encodefmt.o errstr.o exec.o execl.o fcallfmt.o get9root.o getcallerpc-$OBJTYPE.o getenv.o getfields.o getns.o getuser.o getwd.o jmp.o lrand.o lnrand.o main.o malloc.o malloctag.o mallocz.o nan.o needsrcquote.o needstack.o netmkaddr.o notify.o nrand.o nulldir.o open.o opentemp.o pipe.o post9p.o postnote.o qlock.o quote.o rand.o read9pmsg.o readn.o rfork.o seek.o sendfd.o sleep.o strdup.o strecpy.o sysfatal.o sysname.o time.o tokenize.o truerand.o u16.o u32.o u64.o unsharp.o wait.o waitpid.o dofmt.o fltfmt.o fmt.o fmtfd.o fmtfdflush.o fmtlock2.o fmtprint.o fmtquote.o fmtrune.o fmtstr.o fmtvprint.o fprint.o nan64.o print.o runefmtstr.o runeseprint.o runesmprint.o runesnprint.o runesprint.o runevseprint.o runevsmprint.o runevsnprint.o seprint.o smprint.o snprint.o sprint.o strtod.o vfprint.o vseprint.o vsmprint.o vsnprint.o charstod.o pow10.o rune.o runestrcat.o runestrchr.o runestrcmp.o runestrcpy.o runestrdup.o runestrlen.o runestrecpy.o runestrncat.o runestrncmp.o runestrncpy.o runestrrchr.o runestrstr.o runetype.o utfecpy.o utflen.o utfnlen.o utfrrune.o utfrune.o utfutf.o
 cd ..
 cd libbio
 9c  bbuffered.c
@@ -155,7 +155,7 @@ cd libbio
 9c  bseek.c
 9c  bvprint.c
 9c  bwrite.c
-9ar rvc $PLAN9/lib/libbio.a *.o
+9ar rvc $PLAN9/lib/libbio.a bbuffered.o bfildes.o bflush.o bgetc.o bgetrune.o bgetd.o binit.o boffset.o bprint.o bputc.o bputrune.o brdline.o brdstr.o bread.o bseek.o bvprint.o bwrite.o
 cd ..
 cd libregexp
 9c  regcomp.c
@@ -165,7 +165,7 @@ cd libregexp
 9c  regaux.c
 9c  rregexec.c
 9c  rregsub.c
-9ar rvc $PLAN9/lib/libregexp9.a *.o
+9ar rvc $PLAN9/lib/libregexp9.a regcomp.o regerror.o regexec.o regsub.o regaux.o rregexec.o rregsub.o
 cd ..
 cd cmd/mk
 9c  arc.c