# ====================================================================== # Makefile for files in ~beebe/tex/tugboat # # This constructs the tugboat.bib file from the TUGboat table of # contents (tb*.cnt) files using the awk program tugboat.awk, and then # produces complete test bibliography files in alpha and unsrt form. A # kwic index of the bibliography is also produced: # # Current target list: # all tugbib + tugbib2 + tugboat-kwic # clean remove most files that can be recreated # by running make again # clobber remove files that can be recreated by # running make again # distclean same as clobber # install-ftp install public files in anonymous ftp # directory # install-sys install public files in system TeX # directory tree # tugboat-kwic keyword-in-context index to tugboat.bib; # must be printed in landscape orientation. # tugboat-kwic.dvi output of LaTeX # maintainer-clean do distclean, then remove tugboat.bib # mostlyclean same as clean # tugbib bibliography in alpha order # tugbib.bbl output of BibTeX # tugbib.dvi output of LaTeX # tugbib2 bibliography in unsrt order # tugbib2.bbl output of BibTeX # tugbib2.dvi output of LaTeX # tugboat.bib TUGboat bibliography # tugboat.kwic permuted index file (LaTeX form) # tugboat.ptx permuted index file (raw form) # # This Makefile requires minor updates as each new issue of TUGboat # appears: add an entry to TUGCONTENTS, and possibly to TUGSUMMARY. # # [15-Nov-1995] # ====================================================================== AWK = nawk # If you don't have bibclean, use cat instead BIBCLEAN = bibclean # You need an enlarged version of BibTeX for this job BIBTEX = bibtex CHECKSUM = checksum CP = /bin/cp -p DETEX = detex DEV = alw DISTILL = distill DVIALW-TYPE1 = $(HOME)/bin/dvialw-type1 FTPDIR = /u/ftp/pub/tex/pub/tugboat FTPFILES = tugboat-kwic-bib.awk tugboat-kwic.dvi \ tugboat-kwic.ltx landscape.sty ptx.sed \ $(TUGCONTENTS) tbcont.def $(TUGSUMMARY) tugbib.bbl \ tugbib.dvi tugbib.ltx tugbib2.bbl tugbib2.dvi \ tugbib2.ltx tugboat.awk tugboat.bib tugboat.def \ tugboat.kwic tugboat.ptx tugboat.ver tugbib.ps \ tugbib2.ps.gz tugboat-kwic.ps.gz \ tugboat-kwic-times.ps.gz tugbib.pdf.gz \ tugbib2.pdf.gz tugboat-kwic.pdf.gz \ tugboat-kwic-times.pdf.gz GZIP = gzip LATEX = latex2e MV = mv NAWK = nawk PTX = /bin/ptx PTX = /usr/local/bin/ptx -G # GNU ptx in ptx-compatibility mode RM = rm -f SED = /bin/sed SHELL = /bin/sh SYSDIR = /usr/local/lib/tex/tugboat SYSFILES = Makefile tugboat-kwic-bib.awk \ tugboat-kwic.aux tugboat-kwic.log \ tugboat-kwic.ltx landscape.sty ptx.sed \ tables/bibxrf.awk tables/super.ltx \ tables/tab.ltx tables/test.ltx \ tables/tugboat.alf tables/tugboat.def \ tables/tugboat.num tables/tugboat.xrf \ $(TUGCONTENTS) tbcont.def $(TUGSUMMARY) \ tugbib.blg tugbib.ltx tugbib2.blg \ tugbib2.ltx tugboat.awk tugboat.bib \ tugboat.def tugboat.kwic tugboat.ptx TEX = tex # NB: Update this list with each new TUGboat issue: TUGCONTENTS = tb0180.cnt tb0281.cnt tb0382.cnt tb0483.cnt \ tb0584.cnt tb0685.cnt tb0786.cnt tb0887.cnt \ tb0988.cnt tb1089.cnt tb1190.cnt tb1291.cnt \ tb1392.cnt tb1493.cnt tb1594.cnt tb1695.cnt \ tb1796.cnt # NB: Update this list every 5 years TUGSUMMARY = tbcv05.tex tbcv10.tex tbcv15.tex tbcv20.tex #======================================================================= .SUFFIXES: .SUFFIXES: .pdf .ps .aux .dvi-$(DEV) .dvi .spell .ltx .tex \ .kwic .ptx .bbl .bib .bib.bbl: -$(NBIBTEX) $* # DECstation ULTRIX gets error return from ptx, so just ignore it .bib.ptx: -nawk -f tugboat-kwic-bib.awk <$< | $(PTX) -r -f >$@ .dvi.dvi-$(DEV): dvi$(DEV) -m$(MAG) $< cp $*.dvi-$(DEV) /$(DEV) rm -f $@ .dvi.ps: $(DVIALW-TYPE1) $< .ltx.aux .ltx.dvi: -$(LATEX) $< .ltx.spell: $(DETEX) $< | spell >$@ .ps.pdf: $(DISTILL) $< .ptx.kwic: $(SED) -f ptx.sed <$< >$@ .tex.aux .tex.dvi: $(TEX) $< .tex.spell: $(DETEX) $< | spell >$@ #======================================================================= all: tugbib tugbib2 tugboat-kwic tugboat-kwic-times clean mostlyclean: -$(RM) *.aux -$(RM) *.blg -$(RM) *.bbl -$(RM) *.dvi* -$(RM) *.log -$(RM) *.lst -$(RM) *.ptx -$(RM) *.kwic -$(RM) *~* -$(RM) tugboat.tmp clobber distclean: clean -$(RM) tugbib.ps tugbib2.ps tugboat-kwic-times.ps tugboat-kwic.ps -$(RM) tugbib.ps.gz tugbib2.ps.gz tugboat-kwic-times.ps.gz tugboat-kwic.ps.gz -$(RM) tugbib.pdf tugbib2.pdf tugboat-kwic-times.pdf tugboat-kwic.pdf -$(RM) tugbib.pdf.gz tugbib2.pdf.gz tugboat-kwic-times.pdf.gz tugboat-kwic.pdf.gz install-ftp: $(FTPFILES) $(CP) $? $(FTPDIR) $(CP) Makefile $(FTPDIR)/makefile date >FTP install-sys: $(SYSFILES) $(CP) $? $(SYSDIR) date >SYS tugboat-kwic: tugboat-kwic.dvi tugboat-kwic.dvi: tugboat.kwic tugboat-kwic-times: tugboat-kwic-times.dvi tugboat-kwic-times.dvi: tugboat.kwic maintainer-clean: distclean @echo "This command is intended for maintainers to use;" @echo "it deletes files that may require special tools to rebuild." -$(RM) tugboat.bib tugboat.kwic: tugboat.ptx ptx.sed tugboat.ptx: tugboat.bib tugboat-kwic-bib.awk tugbib: tugbib.dvi # tugbib is in alpha order; this is preferable to plain (which gives # the same reference order) so we can test the correctness of alphanumeric # bibliography labels. tugbib.dvi: tugbib.ltx tugboat.bib -$(RM) tugbib.bbl -$(RM) tugbib.aux -$(LATEX) tugbib.ltx -$(BIBTEX) tugbib -$(LATEX) tugbib.ltx -$(LATEX) tugbib.ltx tugbib.bbl: tugbib.aux tugboat.bib $(BIBTEX) tugbib tugbib2: tugbib2.dvi # tugbib2 is in unsrt order for checking the bibliography against the # original TUGboat tables of contents tugbib2.dvi: tugbib2.ltx tugboat.bib -$(RM) tugbib2.bbl -$(RM) tugbib2.aux -$(LATEX) tugbib2.ltx -$(BIBTEX) tugbib2 -$(LATEX) tugbib2.ltx -$(LATEX) tugbib2.ltx tugbib2.bbl: tugbib2.aux tugboat.bib -$(BIBTEX) tugbib2 # NB: We store the pipeline output in a temporary file, and only if # the steps are successful do we rename it to the final target name. # That way, a failure won't produce an incorrect target file. tugboat.bib: $(TUGCONTENTS) tugboat.awk Makefile tugboat.ver $(AWK) "BEGIN {printf(\"%.2f\", `cat tugboat.ver` + 0.01)}" /dev/null >tugboat.tmp $(MV) tugboat.tmp tugboat.ver $(AWK) -f tugboat.awk $(TUGCONTENTS) | \ $(BIBCLEAN) | \ $(SED) -e '1r tugboat.hdr' | \ $(SED) -e s/"@@TIME@@"/"`date +%T\ %Z`"/ \ -e s/"@@DATE@@"/"`date +%d\ %B\ %Y`"/ \ -e s/"@@VERSION@@"/"`cat tugboat.ver`"/ | \ $(CHECKSUM) >tugboat.tmp $(MV) tugboat.tmp tugboat.bib tugbib.pdf.gz: tugbib.pdf $(GZIP) tugbib.pdf.gz tugbib2.pdf.gz: tugbib2.pdf $(GZIP) tugbib2.pdf.gz tugboat-kwic.pdf.gz: tugboat-kwic.pdf $(GZIP) tugboat-kwic.pdf.gz tugboat-kwic-times.pdf.gz: tugboat-kwic-times.pdf $(GZIP) tugboat-kwic-times.pdf.gz tugbib.ps.gz: tugbib.ps $(GZIP) tugbib.ps.gz tugbib2.ps.gz: tugbib2.ps $(GZIP) tugbib2.ps.gz tugboat-kwic.ps.gz: tugboat-kwic.ps $(GZIP) tugboat-kwic.ps.gz tugboat-kwic-times.ps.gz: tugboat-kwic-times.ps $(GZIP) tugboat-kwic-times.ps.gz