RPGs3_card_insanity/Makefile

51 lines
1.2 KiB
Makefile
Raw Normal View History

2019-09-08 23:07:26 +02:00
2019-09-09 19:07:05 +02:00
all: build/card.html
2019-09-08 23:07:26 +02:00
2019-09-09 19:07:05 +02:00
.PHONY: dev
dev:
2019-09-09 19:29:27 +02:00
git ls-files | entr bash -c "make all"
2019-09-09 19:07:05 +02:00
.PHONY: clean
clean:
rm build/*
build/card.html: build/card.xml build/style.xsl
2019-09-08 23:07:26 +02:00
xsltproc \
2019-09-09 19:07:05 +02:00
-o build/card.html \
build/style.xsl \
2019-09-09 18:48:15 +02:00
build/card.xml
2019-09-08 23:07:26 +02:00
2019-09-09 19:07:05 +02:00
define PYTHON_MAKE_CARD_XML
2019-09-08 23:07:26 +02:00
from jinja2 import Environment, FileSystemLoader
2019-09-09 19:07:05 +02:00
with open("card.yaml") as f: data = f.read()
out = (Environment(
loader=FileSystemLoader('templates'))
.get_template('card.xml.j2')
.render(data=data))
with open("build/card.xml", "w") as f:
f.write(out)
endef
2019-09-08 23:07:26 +02:00
2019-09-09 19:07:05 +02:00
export PYTHON_MAKE_CARD_XML
build/card.xml: card.yaml
python -c "$$PYTHON_MAKE_CARD_XML"
2019-09-08 23:07:26 +02:00
2019-09-09 19:07:05 +02:00
define PYTHON_MAKE_STYLE_XSL
from jinja2 import Environment, FileSystemLoader
2019-09-09 19:29:27 +02:00
with open("style.css") as f: css_data = f.read()
2019-09-09 19:07:05 +02:00
with open("style.html.j2") as f: jinja_data = f.read()
2019-09-09 19:29:27 +02:00
with open("style.js") as f: js_data = f.read()
2019-09-09 19:07:05 +02:00
out = (Environment(
loader=FileSystemLoader('templates'))
.get_template('style.xsl.j2')
2019-09-09 19:29:27 +02:00
.render( css_data=css_data, jinja_data=jinja_data, js_data=js_data))
2019-09-08 23:07:26 +02:00
#print(out)
2019-09-09 19:29:27 +02:00
with open("build/style.xsl", "w") as f:
2019-09-09 18:48:15 +02:00
f.write(out)
2019-09-08 23:07:26 +02:00
endef
2019-09-09 19:07:05 +02:00
export PYTHON_MAKE_STYLE_XSL
2019-09-09 19:29:27 +02:00
build/style.xsl: style.css templates/style.xsl.j2 style.html.j2 style.js
2019-09-09 19:07:05 +02:00
python -c "$$PYTHON_MAKE_STYLE_XSL"