all: poplar10t2p0-dt3-480k-50ms.comb.eps poplar10t2p4-d20-480k-50ms-b.comb.eps

JGRAPH=jgraph

%.telnet: dump%
	grep telnet $< >  $@

%.152.ftp: dump%
	egrep -e "152.*ftp" $< > $@

%.130.ftp: dump%
	egrep -e "130.*ftp" $< > $@

%.128.ftp: dump%
	egrep -e "128.95.1.178.ftp" $< > $@
%.128.dur: %.128.ftp
	./getduration.pl $< 128. 140. > $@

%.152.ftp.jgr: %.152.ftp
	./mytdg.pl $< 152. 1 > $@

%.130.ftp.jgr: %.130.ftp
	./mytdg.pl $< 130 1 > $@

%.128.ftp.jgr: %.128.ftp
	./mytdg.pl $< 128.95.1.178 1 > $@

%.rtt: %.telnet
	./getrtt.pl $< a b > $@
%.rtt.eps: %.rtt
	$(JGRAPH) $< > $@

#%.ftp.jgr: %.ftp mytdg.pl
	#./mytdg.pl $< 1 140. > $@
%.ftp.sz.jgr: %.ftp pktsz.pl
	./pktsz.pl $< 128.95.2.24 140. > $@
%.ftp.int.jgr: %.ftp pktinterval.pl
	./pktinterval.pl $< 1 140. > $@
%.ftp.dur: %.ftp getduration.pl
	./getduration.pl $< 128.95.2.24 140. > $@


#all: latex $(patsubst %.240k,%.eps,$(wildcard *.240k)) $(patsubst %.tcpd,%.eps,$(wildcard *.tcpd)) 

exp.dvi: latex
	latex exp.tex

exp.ps: exp.dvi
	dvips -o exp.ps exp.dvi

sr: $(patsubst %.tcpd,%.dur,$(wildcard R.*.tcpd)) $(patsubst %.240k,%.eps,$(wildcard seriesR*.240k))

rr:   $(patsubst %.tcpd,%.eps,$(wildcard R.*.tcpd))

ur:   $(patsubst %.tcpd,%.eps,$(wildcard U.*.tcpd)) $(patsubst %.106k,%.eps,$(wildcard seriesU*.106k))

cleanup:
	rm -f stats*.st
	rm -f *.jgr
	rm -f *sz.eps
	rm -f *int.eps
	rm -f *dur
	rm -f series*eps


A.variance: A.stats
	./assembleVariance.pl A > $@
B.variance: B.stats
	./assembleVariance.pl B > $@
C.variance: C.stats
	./assembleVariance.pl C > $@
Y.variance: Y.stats
	./assembleVariance.pl Y > $@

ping.sort: seriesI.0.240k
	awk '{ print $$2 }' < $< | sort -n > $@
ping.dist: ping.sort 
	/home/nspring/bin/dist $< > ping.dist
ping.dist.jgr: ping.dist
	./buildjgraph.pl $< > $@

ping.jgr: seriesI.0.240k
	./buildjgraph.pl seriesI.0.240k > $@

%.variance.jgr: %.variance
	./buildVarGraph.pl var  $< > $@
%.varonly.jgr: %.variance
	./buildVarGraph.pl varonly  $< > $@
%.avg.jgr: %.variance
	./buildVarGraph.pl avgonly  $< > $@


A.stats: A.dury ./figgerMeanSd.pl
	./figgerMeanSd.pl A
B.stats: B.dury ./figgerMeanSd.pl
	./figgerMeanSd.pl B
C.stats: C.dury ./figgerMeanSd.pl
	./figgerMeanSd.pl C
U.stats: U.dury ./figgerMeanSd.pl
	./figgerMeanSd.pl U
Y.stats: Y.dury ./figgerMeanSd.pl
	./figgerMeanSd.pl Y

U.bw: U.dury
	awk '{print $$1 " " 106/$$2 }' < U.dury > U.bw

Y.bw: Y.dury
	awk '{print $$1 " " 240/$$2 }' < Y.dury > Y.bw

aszs: $(patsubst %.tcpd,%.sz.eps,$(wildcard A.*.tcpd)) 
cszs: $(patsubst %.tcpd,%.sz.eps,$(wildcard C.*.tcpd)) 
rszs: $(patsubst %.tcpd,%.sz.eps,$(wildcard R.*.tcpd)) 

ints: $(patsubst %.tcpd,%.int.eps,$(wildcard A.*.tcpd)) 
rints: $(patsubst %.tcpd,%.int.eps,$(wildcard R.*.tcpd)) 
uints: $(patsubst %.tcpd,%.int.eps,$(wildcard U.*.tcpd)) 
uintcdfs: $(patsubst %.tcpd,%.intcdf.eps,$(wildcard U.*.tcpd)) 

latex: duries avgs varia varoa  inties szzys sr rr rints uints  ur
duries: A.dury.eps B.dury.eps C.dury.eps
avgs: A.avg.eps B.avg.eps C.avg.eps
varia: A.variance.eps B.variance.eps C.variance.eps
varoa: A.varonly.eps B.varonly.eps C.varonly.eps
inties: A.1000.int.eps A.1254.int.eps A.4326.int.eps
szzys: A.1000.sz.eps A.1254.sz.eps A.4326.sz.eps

A.dury: $(patsubst %.tcpd,%.dur,$(wildcard A.*.tcpd)) 
	cat A*.dur > $@
B.dury: $(patsubst %.tcpd,%.dur,$(wildcard B.*.tcpd)) 
	cat B*.dur > $@
C.dury: $(patsubst %.tcpd,%.dur,$(wildcard C.*.tcpd)) 
	cat C*.dur > $@
Y.dury: $(patsubst %.tcpd,%.dur,$(wildcard Y.*.tcpd)) 
	cat Y*.dur > $@

%.dury.jgr: %.dury
	./builddurgraph.pl $< > $@

%.bw.jgr: %.bw ./builddurgraph.pl
	./builddurgraph.pl $< > $@

combined.dur.jgr: A.dury B.dury C.dury
	./builddurgraph.pl *.dury > $@
	

clean:
	rm *.ps *.jgr *.sort *.dist

%.jgr: %.240k buildjgraph.pl 
	./buildjgraph.pl $< > $@

%.jgr: %.106k buildjgraph.pl 
	./buildjgraph.pl $< > $@

%.eps: %.jgr
	$(JGRAPH) $< > $@

%.ps: %.jgr
	$(JGRAPH) -P $< > $@

%.jgr: %.tcpd mytdg.pl
	./mytdg.pl $< 1 140. > $@
%.sz.jgr: %.tcpd pktsz.pl
	./pktsz.pl $< 128.95.2.24 140. > $@
%.int.jgr: %.tcpd pktinterval.pl
	./pktinterval.pl $< 1 140. > $@
%.dur: %.tcpd getduration.pl
	./getduration.pl $< 128.95.2.24 140. > $@


%.intcdf: %.int.jgr
	echo $<

%.intcdf.jgr: %.intcdf
	./buildjgraph.pl $< > $@
	
%.norm.jgr: %.norm ./buildjgraph.pl
	./buildjgraph.pl $< > $@

%.norm: %.q ./normalize.pl
	./normalize.pl -sync $*.tcpd $< > $@

%.adsl.jgr: %.tcpd mytdg.pl
	./mytdg.pl $< 128.95.2.24 128.95.219. > $@

spoo: $(patsubst %.q, %.norm.eps, $(wildcard *.q))
spoog: $(patsubst %.q, %.adsl.eps, $(wildcard *.q))

%.comb.jgr: %.norm.jgr %.adsl.jgr ./buildcombgr.pl
	./buildcombgr.pl $* > $@

twopane.dvi: twopane.tex poplar12b32p0d65k-2.comb.eps poplar12b32p4d30k.comb.eps

%.dvi: %.tex
	latex $<

%.ps: %.dvi
	dvips -o $@ $<

