Commit Diff


commit - d946e4dc5df1c0fb9a06e6d94013613848c5df16
commit + 6b17c8f11be7556af7ae454b12dc37c9fb264a48
blob - /dev/null
blob + e55fb3079ebcb96a9e57e78313f7398348917683 (mode 755)
--- /dev/null
+++ bin/membername
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+for i
+do
+	# This works whether sed uses \(\) or () for grouping.
+	echo $i | sed 's/.*\((.*)\).*/\1/' | tr -d '()'
+done
blob - 269f510aa4a3d55c7322ea0918c39dc1f35a2278
blob + 78be309e0c71567e7e97886333db483b324a75b2
--- src/libmp/port/reduce
+++ src/libmp/port/reduce
@@ -5,6 +5,11 @@ shift
 
 nl='
 '
-reduce="("`ls -p ../$objtype/*.[cs] 2>/dev/null | sed 's/..$//' | sed 's/^.*\///' | tr "$nl" '|' | sed 's/.$//'`")"
-
-echo $* | tr ' ' "$nl" | egrep -v $reduce | tr "$nl" ' ' 
+for i in $*
+do
+	j=`echo $i | sed 's/\.o//'`
+	if test ! -f ../$objtype/$j.c -a ! -f ../$objtype/$j.s -a ! -f ../$objtype/$j.spp
+	then
+		echo $i
+	fi
+done
blob - 63fd5f9623e329a38200726a1cb85ae486647276
blob + 60baf2a3a901a913feda3e4765335b1c0a55142f
--- src/libsec/port/mkfile
+++ src/libsec/port/mkfile
@@ -55,7 +55,6 @@ ALLOFILES=\
 	x509.$O\
 
 OFILES=`{sh ./reduce $O $OBJTYPE $ALLOFILES}
-
 HFILES=$PLAN9/include/libsec.h
 
 <$PLAN9/src/mksyslib
blob - de8824e4269087e3092c404ae18e2324b346d728
blob + f7ffda112578e7ad3720a7ed6babac7401e776aa
--- src/mksyslib
+++ src/mksyslib
@@ -1,8 +1,12 @@
 default:V:	$PLAN9/lib/$LIB
 
-$PLAN9/lib/$LIB:	$OFILES
-	$AR rvc $PLAN9/lib/$LIB $newprereq
+# $PLAN9/lib/$LIB:	$OFILES
+# 	$AR rvc $PLAN9/lib/$LIB $newprereq
 
+$PLAN9/lib/$LIB(%):N: %
+$PLAN9/lib/$LIB:	${OFILES:%=$PLAN9/lib/$LIB(%)}
+	ar rvc $PLAN9/lib/$LIB `membername $newprereq`
+
 &:n:	&.$O
 	$AR rvc $PLAN9/lib/$LIB $stem.$O