Commit Diff


commit - c3a72d77dc9e59e2498d68692feb098bf565e119
commit + d21d62e2fc51e0a6aecd716c47785155b318f5f4
blob - b39d2367f8cc8132375ce731e0f7ca22e5a6f919
blob + d0d5ca727ee2bbde366ff4a1fe5983b5a9c0facb
--- src/cmd/9term/mkfile
+++ src/cmd/9term/mkfile
@@ -7,7 +7,9 @@ OFILES=\
 	9term.$O\
 	$SYSNAME.$O\
 
+SHORTLIB=frame draw plumb fs mux thread 9
+
 <$PLAN9/src/mkone
 
-LDFLAGS=-lframe -ldraw -lplumb -lfs -lmux -lthread -l9 -L$X11/lib -lX11 -lutil
+LDFLAGS=-L$X11/lib -lX11 -lutil
 
blob - 86a3fbdeb746b35e9ae6ab304cf0851c7630f131
blob + d4738bef5f3f4ece72218a65f4ce3c91eab7d13d
--- src/cmd/acme/mkfile
+++ src/cmd/acme/mkfile
@@ -36,8 +36,9 @@ UPDATE=\
 	$HFILES\
 	${OFILES:%.$O=%.c}\
 
+SHORTLIB=complete plumb fs mux thread frame draw bio 9
 <$PLAN9/src/mkone
 
-LDFLAGS=$LDFLAGS -lcomplete -lplumb -lfs -lmux -lthread -lframe -ldraw -lbio -l9 -L$X11/lib -lX11
+LDFLAGS=$LDFLAGS -L$X11/lib -lX11
 
 edit.$O ecmd.$O elog.$O:	edit.h
blob - f5b9e1a2c35dba22a52914917b02e83e4935bae2
blob + 603ba604a8e1263e64a805984dee11c6ec630a5e
--- src/cmd/dict/mkfile
+++ src/cmd/dict/mkfile
@@ -11,7 +11,7 @@ OFILES=dict.$O\
 
 HFILES=dict.h kuten.h
 
-LDFLAGS=$LDFLAGS -lbio -lregexp9 -l9
+SHORTLIB=bio regexp9 9
 <$PLAN9/src/mkone
 
 mkindex: mkindex.$O $LFILES utils.$O
blob - 042bd7a0ea189dbc285f54828fd4e5d05b52071a
blob + 6445f9dc790be7b7a368b3b704c3527444a606a1
--- src/cmd/diff/mkfile
+++ src/cmd/diff/mkfile
@@ -10,6 +10,6 @@ OFILES=\
 
 HFILES=diff.h
 
+SHORTLIB=bio 9
 <$PLAN9/src/mkone
 
-LDFLAGS=$LDFLAGS -lbio -l9
blob - 26762452107c27805d594a38f53272ffdb656dec
blob + 7ed3ed1e4ff26111161207d00d254dc006b1e791
--- src/cmd/hoc/code.c
+++ src/cmd/hoc/code.c
@@ -38,6 +38,11 @@ initcode(void)
 }
 
 void
+nop(void)
+{
+}
+
+void
 push(Datum d)
 {
 	if (stackp >= &stack[NSTACK])
@@ -558,10 +563,17 @@ diveq(void)
 }
 
 void
+ppush(Datum *d)
+{
+	push(*d);
+}
+
+void
 modeq(void)
 {
 	Datum d1, d2;
 	long x;
+
 	d1 = pop();
 	d2 = pop();
 	if (d1.sym->type != VAR && d1.sym->type != UNDEF)
@@ -570,9 +582,12 @@ modeq(void)
 	/* d2.val = d1.sym->u.val %= d2.val; */
 	x = d1.sym->u.val;
 	x %= (long) d2.val;
-	d2.val = d1.sym->u.val = x;
+	d2.val = x;
+	d1.sym->u.val = x;
 	d1.sym->type = VAR;
-	push(d2);
+
+	/* push(d2) generates a compiler error on Linux w. gcc 2.95.4 */
+	ppush(&d2);
 }
 
 void
blob - a226a5e88a548863b3b1c795916be847acff250a
blob + d3bfd274979d1e0a53f30778300bd422bf83480a
--- src/cmd/hoc/mkfile
+++ src/cmd/hoc/mkfile
@@ -15,6 +15,6 @@ OFILES=\
 
 YFILES=hoc.y\
 
+SHORTLIB=bio 9
 <$PLAN9/src/mkone
 
-LDFLAGS=$LDFLAGS -lbio -l9
blob - dca7c9d405855ef03a415895b89e0762511049b2
blob + 9b054053184763bc0deae327fad9903d2e9af914
--- src/cmd/mk/mkfile
+++ src/cmd/mk/mkfile
@@ -31,7 +31,7 @@ HFILES=\
 	mk.h\
 	fns.h\
 
-LDFLAGS=$LDFLAGS -lregexp9 -lbio -l9
+SHORTLIB=regexp9 bio 9
 
 <$PLAN9/src/mkone
 
blob - dbdc1ed4f110653fa95886bbd4a453808605d1f6
blob + 191ecfe371c30b5af6908522116331d6f697fd64
--- src/cmd/mkfile
+++ src/cmd/mkfile
@@ -2,7 +2,8 @@ PLAN9=../..
 <$PLAN9/src/mkhdr
 
 TARG=`ls *.c | sed 's/\.c//'`
-LDFLAGS=$LDFLAGS -lsec -lfs -lmux -lregexp9 -lthread -lbio -l9
+LDFLAGS=$LDFLAGS
+SHORTLIB=sec fs mux regexp9 thread bio 9
 
 <$PLAN9/src/mkmany
 
blob - 8149441671bdedceff20e213754cf7d37edb66cb
blob + 967cbb3b5d36ccea0c2d6a902c984ea9ae42adc6
--- src/cmd/plumb/mkfile
+++ src/cmd/plumb/mkfile
@@ -2,6 +2,7 @@ PLAN9=../../..
 <$PLAN9/src/mkhdr
 
 TARG=plumber plumb
+SHORTLIB=plumb fs mux thread regexp9 bio 9
 
 <$PLAN9/src/mkmany
 
@@ -14,4 +15,3 @@ $PLUMB:		$HFILES
 $O.plumb:	$PLUMB
 $O.plumber:	$PLUMBER
 
-LDFLAGS=$LDFLAGS -lplumb -lfs -lmux -lthread -lregexp9 -lbio -l9
blob - 38b8440414c44ba6687a1d49a906fdaef2ccd259
blob + c1440ce4aabe3375755812e8ff04dc8622d14d38
--- src/cmd/rc/mkfile
+++ src/cmd/rc/mkfile
@@ -31,8 +31,6 @@ HFILES=\
 
 YFILES=syn.y
 
-LDFLAGS=$LDFLAGS -l9
-
 <$PLAN9/src/mkone
 
 x.tab.h: y.tab.h
blob - febebc5e46aa5e3ab1c3e8e8a7f575688fc0e6d6
blob + aa9a59f444847cbd2311f2f3820ebe99fca18141
--- src/cmd/sam/mkfile
+++ src/cmd/sam/mkfile
@@ -28,6 +28,4 @@ HFILES=sam.h\
 	errors.h\
 	mesg.h\
 
-LDFLAGS=$LDFLAGS -l9
-
 <$PLAN9/src/mkone
blob - 9aea7a9800e8163599cbf3e2a20a98c76af7aea1
blob + 67997f399810e74d249eb9de12326bd5d0c676c4
--- src/cmd/samterm/mkfile
+++ src/cmd/samterm/mkfile
@@ -22,9 +22,7 @@ HFILES=\
 	$PLAN9/include/draw.h\
 
 CFLAGS=$CFLAGS -I../sam
-LDFLAGS=$LDFLAGS -lframe -ldraw -lthread -lregexp9 \
-	-lbio -l9 -L$X11/lib -lX11 -lm
+LDFLAGS=$LDFLAGS -L$X11/lib -lX11 -lm
+SHORTLIB=frame draw thread regexp9 bio 9
 
-o.samterm: $PLAN9/lib/libframe.a $PLAN9/lib/libdraw.a $PLAN9/lib/libthread.a
-
 <$PLAN9/src/mkone
blob - d9e307619d24cd90cf733442c03487d6f657867b
blob + 0ff114bda442cba2b11264a84e65d9e8202ca6fd
--- src/cmd/yacc.c
+++ src/cmd/yacc.c
@@ -401,7 +401,7 @@ others(void)
 
 	finput = Bopen(parser, OREAD);
 	if(finput == 0)
-		error("cannot find parser %s", parser);
+		error("cannot open parser %s: %r", parser);
 	warray("yyr1", levprd, nprod);
 	aryfil(temp1, nprod, 0);
 	PLOOP(1, i)
blob - c3e7ebc7257e3632948881566b0686ec3709b6d0
blob + 18577d6aba73520b22087bb7de9fae42d98d6c85
--- src/mkfile
+++ src/mkfile
@@ -2,6 +2,7 @@ DIRS=\
 	lib9\
 	libbin\
 	libbio\
+	libcomplete\
 	libdraw\
 	libflate\
 	libframe\
blob - c63c4a6f1a6f08cefaf82655753a22f41e3d3182
blob + b362095ee589500593bbda1db99dc38fe2569997
--- src/mkhdr
+++ src/mkhdr
@@ -23,7 +23,7 @@ NUKEFILES=
 YACC=yacc
 YFLAGS=-d
 LIB=
-SHORTLIB=
+SHORTLIB=9
 
 <|cat $PLAN9/src/mk.$SYSNAME-$OBJTYPE 2>/dev/null || true