# $Cambridge: hermes/doc/talks/2005-02-eximconf/Makefile,v 1.4 2005/02/17 20:14:50 fanf2 Exp $ MSSRC = paper.ms TBLSRC = personalities.tbl PICSRC = arch.pic route.pic TXTSRC = configure-ppsw.txt \ configure-hermes.txt \ table-addrparams.txt \ table-bad_nets.txt \ table-cudn_nets.txt \ table-ppswnames.txt TXTMS = ${TXTSRC:.txt=.ms} MSPS = ${MSSRC:.ms=.ps} MSHTML = ${MSSRC:.ms=.html} PICPS = ${PICSRC:.pic=.ps} TBLPS = ${TBLSRC:.tbl=.ps} BIGPS = arch.big.ps \ personalities.big.ps \ route.big.ps PS = ${MSPS} ${PICPS} ${TBLPS} ${BIGPS} EPS = ${PS:.ps=.eps} PDF = ${PS:.ps=.pdf} all: ${PS} ${PDF} ${MSHTML} ${BIGPS} excerpts clean: rm -rf slides slides.html paper.html ${COPIES} rm -f .gscache.* mgp* grohtml* munghtml.pl rm -f *.ps *.pdf *.eps *.epsi ex*.?s ${TXTSRC} ${TXTMS} # dependencies paper.ps paper.html: paper.ms bibliography \ ${TBLSRC} ${PICSRC} ${TXTMS} # resizing for transparencies arch.big.ps: arch.ps pstops '0@1.7L(1450,-80)' arch.ps arch.big.ps personalities.big.ps: personalities.ps pstops '0@1.7L(1450,-80)' personalities.ps personalities.big.ps route.big.ps: route.ps pstops '0@1.1(40,-80)' route.ps route.big.ps # check configuration files out of cvs CHECKOUT= cvs -d /home/ucvs co -D '2005-02-14 00:00:00' -p EXIMCONF= hermes/conf/exim/etc configure-ppsw.txt: ${CHECKOUT} ${EXIMCONF}/etc.ppsw/configure | expand > configure-ppsw.txt configure-hermes.txt: ${CHECKOUT} ${EXIMCONF}/etc.hermes/configure | expand > configure-hermes.txt table-addrparams.txt: ${CHECKOUT} ${EXIMCONF}/etc.ppsw/tables/addrparams | expand > table-addrparams.txt table-bad_nets.txt: ${CHECKOUT} ${EXIMCONF}/etc.ppsw/tables/bad_nets | expand > table-bad_nets.txt table-cudn_nets.txt: ${CHECKOUT} ${EXIMCONF}/etc.ppsw/tables/cudn_nets | expand > table-cudn_nets.txt table-ppswnames.txt: ${CHECKOUT} ${EXIMCONF}/etc.ppsw/tables/ppswnames | expand > table-ppswnames.txt # excerpts for talk EXDEPS = excerpt.pl ${TXTMS} EX1 = 21 32 192 194 212 217 223 227 245 246 EX2 = 1 51 EX3 = -s 53 94 EX4 = 30 32 166 182 287 312 EX5 = 376 432 EX6 = 460 496 EX7 = 567 623 EX8 = 635 653 657 691 EX9 = -S 249 251 510 543 547 563 EX10 = 699 741 EX11 = 86 97 107 112 277 281 765 785 EX12 = 64 84 99 105 EX13 = 791 816 1038 1046 EX14 = 822 852 1048 1069 EX15 = 854 875 EX16 = 877 928 EX17 = 80 96 114 123 EX18 = 1681 1688 1696 1698 1750 1767 excerpts: ex1.ps ex2.ps ex3.ps ex4.ps \ ex5.ps ex6.ps ex7.ps ex8.ps \ ex9.ps ex10.ps ex11.ps ex12.ps \ ex13.ps ex14.ps ex15.ps ex16.ps \ ex17.ps ex18.ps ex1.ms: ${EXDEPS} ./excerpt.pl ${EX1} < configure-ppsw.ms > ex1.ms ex2.ms: ${EXDEPS} ./excerpt.pl ${EX2} < table-addrparams.ms > ex2.ms ex3.ms: ${EXDEPS} ./excerpt.pl ${EX3} < table-addrparams.ms > ex3.ms ex4.ms: ${EXDEPS} ./excerpt.pl ${EX4} < configure-ppsw.ms > ex4.ms ex5.ms: ${EXDEPS} ./excerpt.pl ${EX5} < configure-ppsw.ms > ex5.ms ex6.ms: ${EXDEPS} ./excerpt.pl ${EX6} < configure-ppsw.ms > ex6.ms ex7.ms: ${EXDEPS} ./excerpt.pl ${EX7} < configure-ppsw.ms > ex7.ms ex8.ms: ${EXDEPS} ./excerpt.pl ${EX8} < configure-ppsw.ms > ex8.ms ex9.ms: ${EXDEPS} ./excerpt.pl ${EX9} < configure-ppsw.ms > ex9.ms ex10.ms: ${EXDEPS} ./excerpt.pl ${EX10} < configure-ppsw.ms > ex10.ms ex11.ms: ${EXDEPS} ./excerpt.pl ${EX11} < configure-ppsw.ms > ex11.ms ex12.ms: ${EXDEPS} ./excerpt.pl ${EX12} < configure-ppsw.ms > ex12.ms ex13.ms: ${EXDEPS} ./excerpt.pl ${EX13} < configure-ppsw.ms > ex13.ms ex14.ms: ${EXDEPS} ./excerpt.pl ${EX14} < configure-ppsw.ms > ex14.ms ex15.ms: ${EXDEPS} ./excerpt.pl ${EX15} < configure-ppsw.ms > ex15.ms ex16.ms: ${EXDEPS} ./excerpt.pl ${EX16} < configure-ppsw.ms > ex16.ms ex17.ms: ${EXDEPS} ./excerpt.pl ${EX17} < configure-hermes.ms > ex17.ms ex18.ms: ${EXDEPS} ./excerpt.pl ${EX18} < paper.ms > ex18.ms # excessively complicated eps construction .SUFFIXES: .pic .tbl .ms .ps .pdf .eps .epsi .html .txt .txt.ms: perl -ne 's/\\/\\\\/g; \ my $$dot = $$. % 2 ? sprintf "%04d", $$. \ : "\\0\\0\\0\\0"; \ printf "\\f[R]\\s[\\n[listnum]]%s \\s[\\n[listtxt]]\\f[CR] %s",\ $$dot, $$_' $< > $@ .ms.ps: groff -Tps -dpaper=a4 -P-pa4 -ms -sptR $< > $@ .ms.html: groff -Thtml -ms -sptR $< > $@ sed 's|||g' < $@ > $@.big mv $@.big $@ .pic.ps: groff -Tps -p $< > $@ .tbl.ps: groff -Tps -t $< > $@ .ps.pdf: ps2pdf $< $@ .ps.epsi: ps2epsi $< $@ # this hack isn't strictly necessary, but makes smaller .eps files .epsi.eps: sed -e '/^% /d;/^%%[A-Z][a-z]*Preview/d' $< > $@ # EOF