its-dokumentationen/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 $@