70 lines
1.7 KiB
Makefile
70 lines
1.7 KiB
Makefile
# Makefile for hithesis dissertation
|
|
|
|
# Compiling method: latexmk/xelatex
|
|
METHOD = xelatex
|
|
# Set opts for latexmk if you use it
|
|
LATEXMKOPTS = -xelatex
|
|
# Basename of thesis
|
|
THESISMAIN = thesis
|
|
PACKAGE = hithesis
|
|
|
|
THESISCONTENTS=$(THESISMAIN).tex front/*.tex body/*.tex back/*.tex $(FIGURES)
|
|
# NOTE: update this to reflect your local file types.
|
|
FIGURES=$(wildcard figures/*.eps figures/*.pdf)
|
|
BIBFILE=*.bib
|
|
CLSFILES=$(PACKAGE)book.cls $(PACKAGE)book.cfg $(PACKAGE).ist $(PACKAGE).sty *.bst
|
|
|
|
# make deletion work on Windows
|
|
ifdef SystemRoot
|
|
RM = del /Q
|
|
OPEN = start
|
|
else
|
|
RM = rm -f
|
|
OPEN = open
|
|
endif
|
|
|
|
.PHONY: clean cleanall thesis viewthesis
|
|
|
|
viewthesis: thesis
|
|
$(OPEN) $(THESISMAIN).pdf
|
|
|
|
thesis: $(THESISMAIN).pdf
|
|
|
|
ifeq ($(METHOD),latexmk)
|
|
|
|
$(THESISMAIN).pdf: $(CLSFILES)
|
|
$(METHOD) $(LATEXMKOPTS) $(THESISMAIN)
|
|
|
|
else ifeq ($(METHOD),xelatex)
|
|
|
|
$(THESISMAIN).idx: $(THESISMAIN).bbl
|
|
$(METHOD) $(THESISMAIN)
|
|
$(METHOD) $(THESISMAIN)
|
|
|
|
$(THESISMAIN)_china.idx : $(CLSFILES) $(THESISMAIN).bbl $(THESISMAIN).idx
|
|
splitindex $(THESISMAIN) -- -s $(PACKAGE).ist # 自动生成索引
|
|
|
|
$(THESISMAIN)_english.ind $(THESISMAIN)_china.ind $(THESISMAIN)_english.idx : $(THESISMAIN)_china.idx
|
|
|
|
$(THESISMAIN).pdf: $(CLSFILES) $(THESISCONTENTS) $(THESISMAIN)_china.ind $(THESISMAIN)_china.idx $(THESISMAIN)_english.ind $(THESISMAIN)_english.idx $(THESISMAIN).bbl
|
|
$(METHOD) $(THESISMAIN)
|
|
splitindex $(THESISMAIN) -- -s $(PACKAGE).ist # 自动生成索引
|
|
$(METHOD) $(THESISMAIN)
|
|
|
|
$(THESISMAIN).bbl: $(BIBFILE)
|
|
$(METHOD) $(THESISMAIN)
|
|
-bibtex $(THESISMAIN)
|
|
$(RM) $(THESISMAIN).pdf
|
|
|
|
else
|
|
$(error Unknown METHOD: $(METHOD))
|
|
|
|
endif
|
|
|
|
clean:
|
|
latexmk -c $(THESISMAIN)
|
|
-@$(RM) *~ *.idx *.ind *.ilg *.thm *.toe *.bbl
|
|
|
|
cleanall: clean
|
|
-@$(RM) $(THESISMAIN).pdf
|