SRCFILES=pnfg/*.java pnfg/ast/*.java pnfg/ir/*.java pnfg/petri/*.java pnfg/petri/util/CounterComparators/*.java CLASSFILES=*/*.class */*/*.class */*/*.dat pnfg/petri/util/CounterComparators/*.class DOCFILES=doc/* TESTFILES=$(wildcard examples/*.pnfg) NFGFILES=${TESTFILES:.pnfg=.nfg} DOTFILES=${TESTFILES:.pnfg=.dot} PSFILES=${TESTFILES:.pnfg=.dot.ps} classes: javac ${SRCFILES} all: grammar classes grammar: pnfg.scc sablecc pnfg.scc test: java pnfg.Main examples/test.pnfg #dot: classes # java pnfg.Main -dot cod.pnfg > /tmp/foo.dot # dot -Tgif /tmp/foo.dot > /tmp/foo.gif # dot -Tps /tmp/foo.dot > /tmp/foo.ps # ggv /tmp/foo.ps # #nfg: # java pnfg.Main -nfg cod.pnfg > ./cod.nfg ${NFGFILES}: %.nfg: %.pnfg java pnfg.Main -nfg $< > $@ mv $@ ../nfg/examples ${DOTFILES}: %.dot: %.pnfg java pnfg.Main -dot $< > $@ dot -Tgif $@ > $@.gif dot -Tps $@ > $@.ps ggv $@.ps jar: jar cvf pnfg.jar ${CLASSFILES} zip: zip pnfg.zip ${SRCFILES} pnfg.scc *.pnfg Makefile ${DOCFILES} ${TESTFILES} clean: rm -f pnfg/*.class rm -f pnfg/ast/*.class rm -f pnfg/petri/*.class rm -f pnfg/petri/util/CounterComparators/*.class rm -f pnfg/ir/*.class rm -f pnfg/*~ rm -f pnfg/ast/*~ rm -f pnfg/petri/*~ rm -f pnfg/ir/*~ rm -f *~ rm -f ${DOTFILES} rm -f ${NFGFILES} rm -f ${PSFILES} realclean: clean rm -fr pnfg/analysis rm -fr pnfg/lexer rm -fr pnfg/node rm -fr pnfg/parser