| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- LATEX = latex
- BIBTEX = bibtex
- MAKEINDEX = makeindex
- XDVI = xdvi -gamma 4
- DVIPS = dvips
- DVIPDF = dvipdft
- L2H = latex2html
- GH = gv
- RERUN = "(There were undefined references|Rerun to get (cross-references|the bars) right)"
- RERUNBIB = "No file.*\.bbl|Citation.*undefined"
- MAKEIDX = "^[^%]*\\makeindex"
- MPRINT = "^[^%]*print"
- USETHUMBS = "^[^%]*thumbpdf"
- DATE=$(shell date +%Y-%m-%d)
- COPY = if test -r $(<:%.tex=%.toc); then cp $(<:%.tex=%.toc) $(<:%.tex=%.toc.bak); fi
- RM = rm -f
- SRC := $(shell egrep -l '^[^%]*\\begin\{document\}' *.tex)
- TRG = $(SRC:%.tex=%.dvi)
- PSF = $(SRC:%.tex=%.ps)
- PDF = $(SRC:%.tex=%.pdf)
- define run-latex
- $(COPY);$(LATEX) $<
- egrep $(MAKEIDX) $< && ($(MAKEINDEX) $(<:%.tex=%);$(COPY);$(LATEX) $<) >/dev/null; true
- egrep -c $(RERUNBIB) $(<:%.tex=%.log) && ($(BIBTEX) $(<:%.tex=%);$(COPY);$(LATEX) $<) ; true
- egrep $(RERUN) $(<:%.tex=%.log) && ($(COPY);$(LATEX) $<) >/dev/null; true
- egrep $(RERUN) $(<:%.tex=%.log) && ($(COPY);$(LATEX) $<) >/dev/null; true
- if cmp -s $(<:%.tex=%.toc) $(<:%.tex=%.toc.bak); then true ;else $(LATEX) $< ; fi
- $(RM) $(<:%.tex=%.toc.bak)
- # Display relevant warnings
- egrep -i "(Reference|Citation).*undefined" $(<:%.tex=%.log) ; true
- endef
- define run-pdflatex
- LATEX=pdflatex
- @$(run-latex)
- endef
- define get_dependencies
- deps=`perl -ne '($$_)=/^[^%]*\\\(?:include|input)\{(.*?)\}/;@_=split /,/;foreach $$t (@_) {print "$$t.tex "}' $<`
- endef
- define getbibs
- bibs=`perl -ne '($$_)=/^[^%]*\\\bibliography\{(.*?)\}/;@_=split /,/;foreach $$b (@_) {print "$$b.bib "}' $< $$deps`
- endef
- define manconf
- mandeps=`if test -r $(basename $@).cnf ; then cat $(basename $@).cnf |tr -d '\n\r' ; fi`
- endef
- all : veryclean $(TRG) wordcount
- acroread $(PDF) &
- .PHONY : all show clean ps pdf showps veryclean wordcount
- clean :
- -rm -f $(TRG) $(PSF) $(PDF) $(TRG:%.dvi=%.aux) $(TRG:%.dvi=%.bbl) $(TRG:%.dvi=%.blg) $(TRG:%.dvi=%.log) $(TRG:%.dvi=%.out) $(TRG:%.dvi=%.idx) $(TRG:%.dvi=%.ilg) $(TRG:%.dvi=%.ind) $(TRG:%.dvi=%.toc) $(TRG:%.dvi=%.d)
- veryclean : clean
- -rm -f *.log *.aux *.dvi *.bbl *.blg *.ilg *.toc *.lof *.lot *.idx *.ind *.ps *~ *.tdo *.lol
- %.d : %.tex
- $(get_dependencies) ; echo $$deps ; \
- $(getbibs) ; echo $$bibs ; \
- $(manconf) ; echo $$mandeps ;\
- echo "$*.dvi $@ : $< $$deps $$bibs $$mandeps" > $@
- include $(SRC:.tex=.d)
- $(TRG) : %.dvi : %.tex
- @$(run-latex)
- $(PSF) : %.ps : %.dvi
- @$(DVIPS) $< -o $@
- $(PDF) : %.pdf : %.tex
- @$(run-pdflatex)
- show : $(TRG)
- @for i in $(TRG) ; do $(XDVI) $$i & done
- showps : $(PSF)
- @for i in $(PSF) ; do $(GH) $$i & done
- ps : $(PSF)
- pdf : $(PDF)
- wordcount:
- @echo "counting words in tex files"
- detex MasterThesis.tex | wc -w
|