50 lines
1.7 KiB
Makefile
Executable File
50 lines
1.7 KiB
Makefile
Executable File
VENUE ?= arxiv
|
|
JOB ?= paper-$(VENUE)
|
|
|
|
all: $(JOB).pdf
|
|
|
|
$(JOB).pdf: paper.org setup/venue-$(VENUE).org build.el biblio.bib
|
|
emacs -Q --batch -l build.el --eval "(setenv \"VENUE\" \"$(VENUE)\")" --funcall wes/export-pdf-cli
|
|
|
|
site:
|
|
emacs -Q --batch -l build.el --eval "(setenv \"VENUE\" \"$(VENUE)\")" --funcall wes/publish-site-cli
|
|
@echo "HTML written to public/ (paper.org → public/paper.html)"
|
|
|
|
supplement:
|
|
emacs -Q --batch -l build.el --eval "(setenv \"VENUE\" \"$(VENUE)\")" --funcall wes/export-supplement-pdf-cli
|
|
|
|
camera-ready:
|
|
emacs -Q --batch -l build.el --eval "(setenv \"VENUE\" \"$(VENUE)\")" --funcall wes/export-camera-ready-pdf-cli
|
|
|
|
clean:
|
|
latexmk -C
|
|
rm -f paper-*.pdf
|
|
|
|
debug:
|
|
emacs -Q --batch -l build.el --eval "(setenv \"VENUE\" \"$(VENUE)\")" \
|
|
--eval "(with-current-buffer (find-file-noselect \"paper.org\") (wes--inject-setupfile \"$(VENUE)\") (org-latex-export-to-latex))"
|
|
latexmk -C
|
|
latexmk -pdf -file-line-error -halt-on-error -interaction=nonstopmode -shell-escape paper.tex || true
|
|
@echo "---- paper.log (tail) ----"
|
|
@tail -n 200 paper.log || true
|
|
|
|
|
|
# Dockerized builds
|
|
DOCKER_IMAGE ?= polypaper:full
|
|
DOCKERFILE ?= Dockerfile.full
|
|
|
|
build-image:
|
|
docker build -f $(DOCKERFILE) -t $(DOCKER_IMAGE) .
|
|
|
|
docker:
|
|
docker run --rm -u $$(id -u):$$(id -g) -v $$(pwd):/work -w /work $(DOCKER_IMAGE) bash -lc "make VENUE=$(VENUE)"
|
|
|
|
docker-supplement:
|
|
docker run --rm -u $$(id -u):$$(id -g) -v $$(pwd):/work -w /work $(DOCKER_IMAGE) bash -lc "make supplement VENUE=$(VENUE)"
|
|
|
|
docker-camera-ready:
|
|
docker run --rm -u $$(id -u):$$(id -g) -v $$(pwd):/work -w /work $(DOCKER_IMAGE) bash -lc "make camera-ready VENUE=$(VENUE)"
|
|
|
|
docker-site:
|
|
docker run --rm -u $$(id -u):$$(id -g) -v $$(pwd):/work -w /work $(DOCKER_IMAGE) bash -lc "make site VENUE=$(VENUE)"
|