53 lines
1.3 KiB
Makefile
53 lines
1.3 KiB
Makefile
PANDOC = pandoc
|
|
LATEX = lualatex
|
|
LATEX_FLAGS = \
|
|
-file-line-error \
|
|
-recorder \
|
|
-interaction=nonstopmode \
|
|
-halt-on-error \
|
|
--shell-escape
|
|
PANDOC_FLAGS = --top-level-division=section
|
|
PANDOC_TEX_FLAGS = --template=template.tex
|
|
PANDOC_TEX_DEPENDENCIES = template.tex
|
|
SOFFICE = soffice
|
|
SOFFICE_FLAGS = --headless
|
|
|
|
MARKDOWN_INPUTS = $(wildcard *.md)
|
|
|
|
.PHONY: all build clean clean-pdf clean-tex clean-odt clean-docx default
|
|
|
|
TEXINPUTS := .:./pkg/:$(TEXINPUTS)
|
|
export TEXINPUTS
|
|
|
|
default: all
|
|
|
|
all: all-tex all-pdf
|
|
|
|
all-tex: $(addsuffix .tex,$(basename $(MARKDOWN_INPUTS)))
|
|
|
|
all-pdf: $(addsuffix .pdf,$(basename $(MARKDOWN_INPUTS)))
|
|
|
|
clean: clean-pdf clean-tex
|
|
|
|
clean-tex:
|
|
rm -f $(addsuffix .tex,$(basename $(MARKDOWN_INPUTS)))
|
|
|
|
clean-pdf:
|
|
rm -f \
|
|
$(addsuffix .aux,$(basename $(MARKDOWN_INPUTS))) \
|
|
$(addsuffix .pdf,$(basename $(MARKDOWN_INPUTS))) \
|
|
$(addsuffix .out,$(basename $(MARKDOWN_INPUTS))) \
|
|
$(addsuffix .fls,$(basename $(MARKDOWN_INPUTS))) \
|
|
$(addsuffix .log,$(basename $(MARKDOWN_INPUTS))) \
|
|
$(addsuffix .toc,$(basename $(MARKDOWN_INPUTS))) \
|
|
missfont.log
|
|
|
|
%.pdf: %.tex $(PANDOC_TEX_DEPENDENCIES)
|
|
@echo $< "->" $@
|
|
$(LATEX) $(LATEX_FLAGS) $(LATEX_PDF_FLAGS) $< 1>/dev/null
|
|
$(LATEX) $(LATEX_FLAGS) $(LATEX_PDF_FLAGS) $< 1>/dev/null
|
|
|
|
%.tex: %.md
|
|
@echo $< "->" $@
|
|
$(PANDOC) $(PANDOC_FLAGS) $(PANDOC_TEX_FLAGS) --listings -s $< -o $@
|