blob: 5eedeb05f5788f7b48e2909d81b6a375f2511061 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
.PHONY: all clean
.DEFAULT_GOAL = all
PDFLATEX = lualatex
PDFTOPPM = pdftoppm
PDFUNITE = pdfunite
PDFTOPPM_FLAGS = -singlefile -png -r 300
COMMON_TEX_FILES = libs.tex colors.tex tikzcards.tex
CARDS_DIR = cards
CARD_SOURCES = $(shell find $(CARDS_DIR) -name "*.tex")
SETS_DIR = sets
SETS_SOURCES = $(shell find $(SETS_DIR) -name "*.tex")
VERBOSE = @
PDF_DIR = ./build
ALL_SOURCES = $(CARD_SOURCES) $(SETS_SOURCES)
PDFS = $(notdir $(ALL_SOURCES:.tex=.pdf))
PDFS_PREFIXED = $(addprefix $(PDF_DIR)/,$(PDFS))
CARD_PNGS = $(notdir $(CARD_SOURCES:.tex=.png))
CARD_PNGS_PREFIXED = $(addprefix $(PDF_DIR)/,$(CARD_PNGS))
MAKEFILE_LIST = Makefile
ASSETS_PATH = ../assets
PDFLATEX_ENV := TEXINPUTS=".:$(ASSETS_PATH):"
all: $(PDF_DIR)/print.pdf $(PDFS_PREFIXED) $(CARD_PNGS_PREFIXED)
$(PDF_DIR)/print.pdf: print.tex $(CARD_SOURCES) $(COMMON_TEX_FILES) $(MAKEFILE_LIST)
@echo "building › › $@"
@if test \( ! \( -d $(@D) \) \) ;then mkdir -p $(@D);fi
$(VERBOSE) $(PDFLATEX_ENV) $(PDFLATEX) --output-directory $(PDF_DIR) print.tex
$(PDF_DIR)/cards.pdf: $(PDFS_PREFIXED) $(MAKEFILE_LIST)
@echo "building › › $@"
@if test \( ! \( -d $(@D) \) \) ;then mkdir -p $(@D);fi
$(VERBOSE) $(PDFUNITE) $(PDFS_PREFIXED) $@
$(PDF_DIR)/%.pdf : $(CARDS_DIR)/%.tex $(COMMON_TEX_FILES) $(MAKEFILE_LIST)
@echo "card › $@"
@if test \( ! \( -d $(@D) \) \) ;then mkdir -p $(@D);fi
$(VERBOSE) $(PDFLATEX_ENV) $(PDFLATEX) --output-directory $(PDF_DIR) $(CARDS_DIR)/$*.tex
$(PDF_DIR)/%.pdf : $(SETS_DIR)/%.tex $(CARD_SOURCES) $(COMMON_TEX_FILES) $(MAKEFILE_LIST)
@echo "card › $@"
@if test \( ! \( -d $(@D) \) \) ;then mkdir -p $(@D);fi
$(VERBOSE) $(PDFLATEX_ENV) $(PDFLATEX) --output-directory $(PDF_DIR) $^
$(PDF_DIR)/%.png : $(PDF_DIR)/%.pdf $(MAKEFILE_LIST)
@echo "png › $@"
@if test \( ! \( -d $(@D) \) \) ;then mkdir -p $(@D);fi
$(VERBOSE) $(PDFTOPPM) $(PDFTOPPM_FLAGS) $(PDF_DIR)/$*.pdf $(PDF_DIR)/$*
clean:
rm -rf build/
|