makefile (909B) (plain)
1 ALL=$(wildcard *.tex) 2 MAIN=notes.tex 3 SHELL=/bin/zsh -G 4 5 LATEX=lualatex 6 FLAGS=-synctex=1 -interaction=nonstopmode 7 8 NAME=$(MAIN:.tex=) 9 10 .PHONY: clean help 11 12 all: ## compile notes 13 $(LATEX) $(FLAGS) $(MAIN) # Compile template 14 # makeindex $(NAME).nlo -s $(NAME).ist -o $(NAME).nls # Compile nomenclature 15 makeindex $(NAME) # Compile index 16 # biber $(NAME) # Compile bibliography 17 # makeglossaries $(OBJ) # Compile glossary 18 $(LATEX) $(CFLAGS) $(MAIN) # Compile template again 19 $(LATEX) $(CFLAGS) $(MAIN) # Compile template again 20 21 clean: 22 rm -rf svg-inkscape *.aux *.bbl *.bcf *.blg *.glo *.glsdefs *.idx *.ilg *.ind *.log *.mw *.nlo *.xml *.synctex.gz *.toc *.xdy 23 24 # https://marmelab.com/blog/2016/02/29/auto-documented-makefile.html 25 help: ## print help 26 @grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}' 27 28 .DEFAULT_GOAL := help