summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/fithesis/test/mu/compare/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/fithesis/test/mu/compare/Makefile')
-rw-r--r--macros/latex/contrib/fithesis/test/mu/compare/Makefile135
1 files changed, 135 insertions, 0 deletions
diff --git a/macros/latex/contrib/fithesis/test/mu/compare/Makefile b/macros/latex/contrib/fithesis/test/mu/compare/Makefile
new file mode 100644
index 0000000000..4c74b60b9d
--- /dev/null
+++ b/macros/latex/contrib/fithesis/test/mu/compare/Makefile
@@ -0,0 +1,135 @@
+.PHONY: all implode bootstrap all
+FAKETIME=faketime '2000-01-01 01:01:01'
+COMPARE=../comparepdf.sh
+SOURCES=base-digital.tex base-printed.tex base-10pt.tex \
+ base-11pt.tex base-12pt.tex econ-czech.tex econ-english.tex \
+ econ-oldtable.tex econ-slovak.tex econ-table.tex fi-color.tex \
+ fi-czech.tex fi-english.tex fi-czech-male.tex \
+ fi-czech-female.tex fi-slovak-male.tex fi-slovak-female.tex \
+ fi-oldtable.tex fi-rigorous.tex fi-slovak.tex fi-table.tex \
+ fsps-czech.tex fsps-english.tex fsps-oldtable.tex \
+ fsps-slovak.tex fsps-table.tex fss-czech.tex fss-english.tex \
+ fss-oldtable.tex fss-slovak.tex fss-table.tex \
+ fss-czech-male.tex fss-czech-female.tex \
+ fss-slovak-male.tex fss-slovak-female.tex law-czech.tex \
+ law-english.tex law-oldtable.tex law-slovak.tex law-table.tex \
+ med-czech.tex med-english.tex med-oldtable.tex med-slovak.tex \
+ med-table.tex ped-czech.tex ped-english.tex ped-oldtable.tex \
+ ped-slovak.tex ped-table.tex phil-czech.tex phil-english.tex \
+ phil-kisk-english.tex phil-kisk-czech.tex phil-kisk-slovak.tex \
+ phil-oldtable.tex phil-slovak.tex phil-table.tex sci-color.tex \
+ sci-czech.tex sci-czech-male.tex sci-czech-female.tex \
+ sci-slovak-male.tex sci-slovak-female.tex sci-english.tex \
+ sci-oldtable.tex sci-rigorous.tex sci-slovak.tex sci-table.tex \
+ phil-kisk-czech-male.tex phil-kisk-czech-female.tex \
+ phil-kisk-slovak-male.tex phil-kisk-slovak-female.tex \
+ phil-czech-female.tex phil-czech-male.tex \
+ phil-slovak-female.tex phil-slovak-male.tex \
+ toc-01.tex toc-02.tex toc-03.tex toc-04.tex toc-05.tex \
+ toc-06.tex toc-07.tex toc-08.tex toc-09.tex toc-10.tex \
+ toc-11.tex toc-12.tex toc-13.tex toc-14.tex toc-15.tex \
+ toc-16.tex toc-17.tex toc-18.tex toc-19.tex toc-20.tex \
+ toc-21.tex toc-22.tex toc-23.tex toc-24.tex toc-25.tex \
+ toc-26.tex toc-27.tex toc-28.tex $(BIB) \
+ fi-digital-emptyassignment.tex fi-digital-noassignment.tex \
+ fi-digital-someassignment.tex fi-printed-emptyassignment.tex \
+ fi-printed-noassignment.tex \
+ fi-printed-someassignment-oneside.tex \
+ fi-printed-someassignment-twoside.tex \
+ sci-digital-emptyassignment.tex sci-digital-noassignment.tex \
+ sci-digital-someassignment-oneside.tex \
+ sci-digital-someassignment-twoside.tex \
+ sci-printed-emptyassignment.tex sci-printed-noassignment.tex \
+ sci-printed-someassignment-oneside.tex \
+ sci-printed-someassignment-twoside.tex fi-proposal
+BIB_UNSOLICITED=econ-bibliography-unsolicited.tex \
+ fi-bibliography-unsolicited.tex \
+ fsps-bibliography-unsolicited.tex \
+ fss-bibliography-unsolicited.tex \
+ law-bibliography-unsolicited.tex \
+ med-bibliography-unsolicited.tex \
+ ped-bibliography-unsolicited.tex \
+ phil-bibliography-unsolicited.tex \
+ sci-bibliography-unsolicited.tex
+BIB_SOLICITED=econ-bibliography-solicited.tex \
+ fi-bibliography-solicited.tex \
+ fsps-bibliography-solicited.tex \
+ fss-bibliography-solicited.tex \
+ law-bibliography-solicited.tex \
+ med-bibliography-solicited.tex \
+ ped-bibliography-solicited.tex \
+ phil-bibliography-solicited.tex \
+ sci-bibliography-solicited.tex
+BIB=$(BIB_UNSOLICITED) $(BIB_SOLICITED)
+TESTS=$(addsuffix -pdflatex.pdf,$(basename $(SOURCES))) \
+ $(addsuffix -lualatex.pdf,$(basename $(SOURCES)))
+PROTOTYPES=$(addprefix expected-,$(TESTS))
+
+# This target typesets all the test documents,
+# compares them with the prototypes, and cleans
+# up afterwards.
+all: $(TESTS) implode
+
+# This target typesets all the prototypes.
+bootstrap: $(PROTOTYPES) clean
+
+# This target typesets a pdfLaTeX prototype.
+expected-%-pdflatex.pdf: %.tex
+ rm -f $@
+ make $(basename $<)-pdflatex.pdf
+ mv $(basename $<)-pdflatex.pdf $@
+
+# This target typesets a LuaLaTeX prototype.
+expected-%-lualatex.pdf: %.tex
+ rm -f $@
+ make $(basename $<)-lualatex.pdf
+ mv $(basename $<)-lualatex.pdf $@
+
+# This target typesets a pdfLaTeX test file and compares
+# it against a prototype.
+%-pdflatex.pdf: %.tex
+ @# The first run.
+ $(FAKETIME) pdflatex -jobname $(basename $@) $<
+ @# Prepare bibliography, if necessary.
+ ! [ -e $(basename $<)-pdflatex.bcf ] || \
+ (biber $(basename $<)-pdflatex.bcf && \
+ $(FAKETIME) pdflatex -jobname $(basename $@) $<)
+ @# Prepare index, if necessary.
+ ! [ -e $(basename $<)-pdflatex.idx ] || \
+ (texindy -I latex -C utf8 -L english \
+ $(basename $<)-pdflatex.idx && \
+ $(FAKETIME) pdflatex -jobname $(basename $@) $<)
+ @# The second run.
+ $(FAKETIME) pdflatex -jobname $(basename $@) $<
+ @# Compare the result with the prototype.
+ ! [ -e expected-$@ ] || $(COMPARE) expected-$@ $@ || \
+ { [ "$(UPDATE_FAILED)" = true ] && mv $@ expected-$@; }
+
+# This target typesets a LuaLaTeX test file and compares
+# it against a prototype.
+%-lualatex.pdf: %.tex
+ @# The first run.
+ $(FAKETIME) lualatex -jobname $(basename $@) $<
+ @# Prepare bibliography, if necessary.
+ ! [ -e $(basename $<)-lualatex.bcf ] || \
+ (biber $(basename $<)-lualatex.bcf && \
+ $(FAKETIME) lualatex -jobname $(basename $@) $<)
+ @# Prepare index, if necessary.
+ ! [ -e $(basename $<)-lualatex.idx ] || \
+ (texindy -I latex -C utf8 -L english \
+ $(basename $<)-lualatex.idx && \
+ $(FAKETIME) lualatex -jobname $(basename $@) $<)
+ @# The second run.
+ $(FAKETIME) lualatex -jobname $(basename $@) $<
+ @# Compare the result with the prototype.
+ ! [ -e expected-$@ ] || $(COMPARE) expected-$@ $@ || \
+ { [ "$(UPDATE_FAILED)" = true ] && mv $@ expected-$@; }
+
+# This target removes any auxiliary files.
+clean:
+ rm -f *.aux *.log *.out *.toc *.lot *.lof *.bcf *.blg *.run.xml \
+ *.bbl *.idx *.ind *.ilg
+
+# This target removes any auxiliary files and the output PDF files.
+implode: clean
+ rm -f $(TESTS)