default:V: all

</$objtype/mkfile

OFILES=\
	avl.$O\
	banner.$O\
	clist.$O\
	clnt.$O\
	copythread.$O\
	dat.$O\
	db.$O\
	fdbuf.$O\
	hash.$O\
	ignore.$O\
	list.$O\
	path.$O\
	queue.$O\
	repl.$O\
	rpc.$O\
	sha1.$O\
	srv.$O\
	stat.$O\
	storage.$O\
	sync.$O\
	time.$O\
	util.$O\
	work.$O\

HFILES=os.h tra.h storage.h

BIN=$home/bin/$objtype
LIB=libtra.a$O
NUKEFILES=libplan9/*.a8 libplan9/*.8
</sys/src/cmd/mksyslib

CFLAGS=-p -DPLAN9 -I. $CFLAGS

test:V: $O.tramkdb $O.minisync $O.trasrv $O.tradump
	../testfn.rc ../test/*

test.%:V: $O.tramkdb $O.minisync $O.trasrv $O.tradump
	../testfn.rc ../test/$stem

avl.$O clist.$O: avl.h

TARG=\
	minisync\
	trafixdb\
	tramkdb\
	trasrv\
	trascan\
	tradump\
	trafixdb\

PROGS=${TARG:%=$O.%}

all:V: $PROGS

$O.%:	%.$O $LIB libplan9/libplan9.a$O libzlib/libzlib.a$O
	$LD $LDFLAGS -o $target $stem.$O

$O.tradump:	tradump.$O noclist.$O $LIB libplan9/libplan9.a$O libzlib/libzlib.a$O
	$LD $LDFLAGS -o $target tradump.$O noclist.$O

$O.trafixdb:	trafixdb.$O noclist.$O $LIB libplan9/libplan9.a$O libzlib/libzlib.a$O
	$LD $LDFLAGS -o $target trafixdb.$O noclist.$O

install: $PROGS
	for (i in $TARG)
		cp $O.$i $home/bin/$objtype/$i

man.pdf: tra.man tra-aux.man
	troff -man tra.man tra-aux.man | lp -dstdout > man.ps
	import tcp!204.178.31.2 /net
	distill man.ps

libplan9/libplan9.a$O:
	@{cd libplan9; mk}

libzlib/libzlib.a$O:
	@{cd libzlib; mk}

nuke:V:
	rm -f *.[$OS] [$OS].out $CLEANFILES *.a[$OS] */*.a[$OS] */*.[$OS]


