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)/*.*