# Copyright 2025-2026 Lukas C. Bossert. LPPL 1.3c or later; see LICENSE.
# LuaLaTeX inherits the user's font cache configuration.
LATEX = lualatex
LATEX_FLAGS = -no-shell-escape -interaction=nonstopmode -halt-on-error

.PHONY: all doc example clean
all: doc example

doc:
	mkdir -p build output/pdf
	$(LATEX) $(LATEX_FLAGS) -output-directory=build ddv-doc.tex
	$(LATEX) $(LATEX_FLAGS) -output-directory=build ddv-doc.tex
	cp build/ddv-doc.pdf output/pdf/ddv-doc.pdf

example:
	mkdir -p build
	$(LATEX) $(LATEX_FLAGS) -output-directory=build ddv-example.tex

clean:
	rm -rf build output/pdf dist

# Repository-only development targets; their inputs are not shipped to CTAN.
ifneq ($(wildcard ddv-check.py),)
PYTHON = python3
.PHONY: test ctan
test:
	$(PYTHON) ddv-check.py

ctan: test doc
	$(PYTHON) ddv-package.py
endif

ifneq ($(wildcard data-driven-visualization-poster.tex),)
.PHONY: poster
poster:
	mkdir -p build
	$(LATEX) $(LATEX_FLAGS) -output-directory=build data-driven-visualization-poster.tex
endif
