bunige-pagedjs-template/Makefile

55 lines
1.4 KiB
Makefile

EXAMPLE_FOLDER := example
PROJECT_STATIC_FOLDER := static
EXAMPLE_STATIC_FOLDER := $(EXAMPLE_FOLDER)/static
RELEASE_FOLDER := release
EXAMPLE_FILENAME := example
EXAMPLE_BIBLIOGRAPHY_PATH := $(EXAMPLE_FOLDER)/references.bib
CSL_PATH := $(PROJECT_STATIC_FOLDER)/heg-iso-690.csl
GIT_LAST_TAG := $(shell git describe --tags --abbrev=0 2>/dev/null || echo "no-tag")
.PHONY: all
all: pdf
.PHONY: serve
serve:
python -m http.server
.PHONY: html
html:
pandoc --to=html --standalone \
--template=$(PROJECT_STATIC_FOLDER)/template.html \
--css=../$(PROJECT_STATIC_FOLDER)/style.css \
-V static='../static' \
--toc --toc-depth=2 \
--citeproc --bibliography=$(EXAMPLE_BIBLIOGRAPHY_PATH) --csl=$(CSL_PATH) \
--out=$(EXAMPLE_FOLDER)/$(EXAMPLE_FILENAME).html \
$(EXAMPLE_FOLDER)/$(EXAMPLE_FILENAME).md
.PHONY: pdf
pdf:
cd $(EXAMPLE_FOLDER); \
pandoc --to=pdf --pdf-engine=pagedjs-cli --embed-resource \
--template=../$(PROJECT_STATIC_FOLDER)/template.html \
--css=../$(PROJECT_STATIC_FOLDER)/style.css \
-V static='../static' -V noscript=true \
--toc --toc-depth=2 \
--citeproc --csl=../$(CSL_PATH) \
--out=$(EXAMPLE_FILENAME).pdf \
$(EXAMPLE_FILENAME).md
.PHONY: watch
watch:
watchexec -r -w . -i $(EXAMPLE_FOLDER)/$(EXAMPLE_FILENAME).html \
-- make html
.PHONY: release
release:
zip -r $(RELEASE_FOLDER)/$(GIT_LAST_TAG).zip static
make
cp $(EXAMPLE_FOLDER)/$(EXAMPLE_FILENAME).pdf $(RELEASE_FOLDER)/$(GIT_LAST_TAG).pdf
.PHONY: clean
rm -f $(RELEASE_FOLDER)/*.*