OFILES=batch.o mccsymtab.o snetmaster.o snetcore.o snetproc.o wd.o kerncore.o kernmaster.o kernproc.o hostcore.o master.o hostmaster.o termmaster.o asm.o audit.o bpts.o coffsymtab.o core.o dtype.o ed8symtab.o expr.o format.o frame.o gram.o lib.o main.o memory.o parse.o phrase.o process.o srctext.o symbol.o symtab.o termcore.o termproc.o sigmask.o srcdir.o hostproc.o vaxoptab.o mac32optab.o
PRIFILES=asm.pri bpts.pri core.pri format.pri expr.pri frame.pri master.pri memory.pri phrase.pri process.pri srctext.pri symtab.pri
HFILES=asm.h bpts.h coff.h core.h dtype.h ed8.h expr.h format.h frame.h gram.h hostcore.h lib.h master.h memory.h mip.h op.h vaxoptab.h mac32optab.h parse.h phrase.h process.h sigmask.h srcdir.h srctext.h symbol.h symtab.h termcore.h univ.h y.tab.h
PUBFILES=asm.pub bpts.pub core.pub expr.pub format.pub frame.pub master.pub memory.pub phrase.pub process.pub srctext.pub symtab.pub

INC=-I/usr/jerq/include
CFLAGS=+E
CLEAVE=/usr/tac/bin/cleave
LIB=/usr/jerq/lib/libpads.a -ljobs -ldk

4pi:	$(PRIFILES) $(PUBFILES) $(HFILES) $(OFILES)
	rm -f pi 3pi 4pi
	cc -o 4pi $(OFILES) $(LIB)
	strip -s -g 4pi
	ln 4pi 3pi
	ln 4pi pi
	@beep

%.pri:	%.h
	$(CLEAVE) $(INC) $(CFLAGS) $*
	touch $*.pri

%.o:	%.c
	CFRONTOPTS=+E CPPOPTS=$(INC) /usr/tac/bin/CCG `pwd`/$*.c

gram.c:	gram.y
	yacc -d gram.y
	mv y.tab.c gram.c

clean:
	rm -f *.s *..s *junk* core jim* *t *.cppd

install:
	rm -f /usr/jerq/bin/4pi /usr/jerq/bin/3pi /usr/jerq/bin/pi
	cp 4pi /usr/jerq/bin
	ln /usr/jerq/bin/4pi /usr/jerq/bin/pi
	ln /usr/jerq/bin/4pi /usr/jerq/bin/3pi

#########
asm.o: asm.pri
asm.o: vaxoptab.h
asm.o: mac32optab.h
asm.o: core.pub
asm.o: format.pub
asm.o: parse.h
asm.o: expr.pub
asm.o: frame.pub
asm.o: process.pub
asm.o: symtab.pub
asm.o: symbol.h
asm.o: bpts.pub
asm.h: univ.h
	touch asm.h
audit.o: univ.h
bpts.o: univ.h
bpts.o: core.pub
bpts.o: bpts.pri
bpts.o: symbol.h
bpts.o: expr.pub
bpts.o: format.pub
bpts.h: univ.h
	touch bpts.h
coffsymtab.o: symtab.pri
coffsymtab.o: symbol.h
coffsymtab.o: dtype.h
coffsymtab.o: coff.h
core.o: process.pub
core.o: frame.pri
core.o: symtab.pri
core.o: symbol.h
core.o: core.pri
core.o: master.pub
core.h: univ.h
	touch core.h
dtype.o: dtype.h
dtype.o: symbol.h
dtype.o: format.pub
dtype.o: mip.h
dtype.o: phrase.pub
dtype.o: expr.pub
dtype.h: univ.h
	touch dtype.h
ed8symtab.o: ed8.h
ed8symtab.o: symtab.pri
ed8symtab.o: symbol.h
ed8symtab.o: dtype.h
expr.o: expr.pri
expr.o: gram.h
expr.o: symbol.h
expr.o: format.pub
expr.o: frame.pri
expr.o: dtype.h
expr.o: phrase.pub
expr.o: symtab.pub
expr.o: core.pub
expr.h: univ.h
	touch expr.h
expr.h: dtype.h
expr.h: op.h
expr.h: format.pub
format.o: univ.h
format.o: format.pri
format.o: symtab.pub
format.o: symbol.h
format.h: univ.h
	touch format.h
frame.o: frame.pri
frame.o: core.pub
frame.o: symbol.h
frame.o: symtab.pub
frame.o: format.pub
frame.o: expr.pub
frame.o: phrase.pri
frame.o: parse.h
frame.o: process.pub
frame.o: bpts.pub
frame.h: univ.h
	touch frame.h
gram.o: gram.h
gram.o: expr.pub
hostcore.o: process.pub
hostcore.o: frame.pri
hostcore.o: symtab.pri
hostcore.o: symbol.h
hostcore.o: hostcore.h
hostcore.o: asm.pri
hostcore.o: format.pub
hostcore.o: bpts.pri
hostcore.o: master.pri
hostcore.h: core.pri
	touch hostcore.h
hostmaster.o: hostcore.h
hostmaster.o: master.pri
hostmaster.o: process.pri
hostmaster.o: symtab.pri
hostproc.o: univ.h
hostproc.o: process.pri
hostproc.o: sigmask.h
hostproc.o: hostcore.h
hostproc.o: expr.pub
hostproc.o: master.pub
hostproc.o: bpts.pri
hostproc.o: frame.pri
hostproc.o: memory.pub
hostproc.o: symtab.pub
hostproc.o: symbol.h
hostproc.o: srcdir.h
hostproc.o: asm.pub
kerncore.o: process.pub
kerncore.o: frame.pri
kerncore.o: symtab.pri
kerncore.o: symbol.h
kerncore.o: hostcore.h
kerncore.o: master.pri
kernmaster.o: hostcore.h
kernmaster.o: master.pri
kernmaster.o: process.pri
kernmaster.o: symtab.pri
kernproc.o: univ.h
kernproc.o: process.pri
kernproc.o: hostcore.h
kernproc.o: master.pub
kernproc.o: frame.pri
kernproc.o: memory.pub
kernproc.o: symtab.pub
kernproc.o: symbol.h
kernproc.o: srcdir.h
kernproc.o: asm.pub
lib.o: lib.h
mac32optab.o: mac32optab.h
main.o: termcore.h
main.o: master.pri
main.o: format.pri
master.o: master.pri
master.o: process.pri
master.h: univ.h
	touch master.h
memory.o: core.pub
memory.o: symtab.pub
memory.o: memory.pri
memory.o: parse.h
memory.o: expr.pub
memory.o: frame.pub
memory.o: process.pub
memory.o: format.pub
memory.h: univ.h
	touch memory.h
parse.o: parse.h
parse.h: gram.h
	touch parse.h
parse.h: y.tab.h
parse.h: expr.pub
phrase.o: expr.pub
phrase.o: phrase.pri
phrase.o: frame.pub
phrase.o: parse.h
phrase.o: format.pub
phrase.o: symtab.pub
phrase.o: symbol.h
phrase.o: core.pub
phrase.o: process.pub
phrase.h: univ.h
	touch phrase.h
process.o: termcore.h
process.o: hostcore.h
process.o: process.pri
process.o: srcdir.h
process.o: expr.pub
process.o: master.pub
process.o: bpts.pri
process.o: frame.pri
process.o: memory.pub
process.o: asm.pub
process.o: symtab.pub
process.o: symbol.h
process.o: srctext.pub
process.o: format.pub
process.h: univ.h
	touch process.h
sigmask.o: hostcore.h
sigmask.o: process.pri
sigmask.o: srctext.pub
sigmask.o: sigmask.h
sigmask.h: univ.h
	touch sigmask.h
snetcore.o: snetcore.h
snetcore.o: symtab.pri
snetcore.o: process.pub
snetcore.o: master.pri
snetcore.o: frame.pri
snetcore.o: symbol.h
snetcore.o: asm.pri
snetcore.o: format.pub
snetcore.o: bpts.pri
snetcore.h: ../protocol.h
	touch snetcore.h
snetcore.h: core.pri
snetmaster.o: snetcore.h
snetmaster.o: master.pri
snetmaster.o: process.pri
snetmaster.o: symtab.pri
srcdir.o: srcdir.h
srcdir.o: process.pri
srcdir.o: symbol.h
srcdir.o: srctext.pri
srcdir.o: symtab.pub
srcdir.h: univ.h
	touch srcdir.h
srctext.o: symbol.h
srctext.o: srctext.pri
srctext.o: core.pub
srctext.o: symtab.pub
srctext.o: process.pub
srctext.o: bpts.pub
srctext.o: expr.pub
srctext.o: format.pub
srctext.o: frame.pri
srctext.h: univ.h
	touch srctext.h
symbol.o: univ.h
symbol.o: symbol.h
symbol.o: dtype.h
symbol.o: symtab.pub
symbol.o: srctext.pub
symbol.o: core.pub
symbol.o: process.pub
symbol.o: bpts.pub
symbol.o: phrase.pub
symbol.o: parse.h
symbol.o: format.pub
symbol.h: univ.h
	touch symbol.h
symbol.h: dtype.h
symtab.o: symtab.pri
symtab.o: symbol.h
symtab.o: dtype.h
symtab.o: srctext.pub
symtab.o: dtype.h
symtab.o: phrase.pub
symtab.o: format.pub
symtab.o: core.pub
symtab.h: univ.h
	touch symtab.h
symtab.h: mip.h
termcore.o: termcore.h
termcore.o: symtab.pri
termcore.o: process.pub
termcore.o: master.pri
termcore.o: frame.pri
termcore.o: symbol.h
termcore.o: asm.pri
termcore.o: format.pub
termcore.o: bpts.pri
termcore.h: ../protocol.h
	touch termcore.h
termcore.h: core.pri
termmaster.o: termcore.h
termmaster.o: master.pri
termmaster.o: process.pri
termmaster.o: symtab.pri
termproc.o: termcore.h
termproc.o: process.pri
termproc.o: srcdir.h
termproc.o: expr.pub
termproc.o: master.pub
termproc.o: bpts.pub
termproc.o: frame.pri
termproc.o: memory.pub
termproc.o: asm.pub
termproc.o: symtab.pub
termproc.o: symbol.h
termproc.o: srctext.pub
termproc.o: format.pub
univ.h: lib.h
	touch univ.h
vaxoptab.o: vaxoptab.h
wd.o: univ.h
asm.pub: univ.h
	touch asm.pub
bpts.pub: univ.h
	touch bpts.pub
core.pub: univ.h
	touch core.pub
expr.pub: univ.h
	touch expr.pub
expr.pub: dtype.h
expr.pub: op.h
expr.pub: format.pub
format.pub: univ.h
	touch format.pub
frame.pub: univ.h
	touch frame.pub
master.pub: univ.h
	touch master.pub
memory.pub: univ.h
	touch memory.pub
phrase.pub: univ.h
	touch phrase.pub
process.pub: univ.h
	touch process.pub
srctext.pub: univ.h
	touch srctext.pub
symtab.pub: univ.h
	touch symtab.pub
symtab.pub: mip.h
asm.pri: univ.h
bpts.pri: univ.h
core.pri: univ.h
expr.pri: univ.h
expr.pri: dtype.h
expr.pri: op.h
expr.pri: format.pub
format.pri: univ.h
frame.pri: univ.h
master.pri: univ.h
memory.pri: univ.h
phrase.pri: univ.h
process.pri: univ.h
srctext.pri: univ.h
symtab.pri: univ.h
symtab.pri: mip.h
