forked from jonas-koeritz/Taktische-Zeichen
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
56 lines (42 loc) · 1.32 KB
/
Makefile
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
# Alle Jinja2 Templates im Ordner symbols finden
SOURCES = $(shell find symbols/ -name *.j2)
# symbols/ prefix entfernen für die Ausgabedateien
TARGET_PATHS = $(SOURCES:symbols/%=%)
# Zieldateien für SVG und PNG Ausgabe festlegen
SVG_TARGETS = $(TARGET_PATHS:.j2=.svg)
PNG_TARGETS = $(TARGET_PATHS:.j2=.png)
SVG_FILES = $(addprefix build/svg/,$(SVG_TARGETS))
PNG_1024_FILES = $(addprefix build/png/1024/,$(PNG_TARGETS))
PNG_512_FILES = $(addprefix build/png/512/,$(PNG_TARGETS))
PNG_256_FILES = $(addprefix build/png/256/,$(PNG_TARGETS))
# Erstellt alle SVG Ausgabedateien
svg: $(SVG_FILES)
build/svg/%.svg: symbols/%.j2
mkdir -p $(@D)
j2 $^ -o $@
# Erstellt alle PNG Ausgabedateien
png: $(PNG_1024_FILES) $(PNG_512_FILES) $(PNG_256_FILES)
build/png/1024/%.png: build/svg/%.svg
mkdir -p $(@D)
phantomjs rasterize.js $^ $@ 1024px*1024px 4
optipng $@
build/png/512/%.png: build/svg/%.svg
mkdir -p $(@D)
phantomjs rasterize.js $^ $@ 512px*512px 2
optipng $@
build/png/256/%.png: build/svg/%.svg
mkdir -p $(@D)
phantomjs rasterize.js $^ $@ 256px*256px 1
optipng $@
clean:
rm -rf build
rm Taktische-Zeichen.zip
all: svg png
release: all
cd build && zip -r ../Taktische-Zeichen.zip ./*
ci: all
cd build && zip -r ../release.zip ./*
web: all
mkdir -p ./web/build
cp -r ./build/ ./web/
find build/ -name *.svg > ./web/symbols.lst