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 $@
|