chiark / gitweb /
strategy: new, wip
[topbloke-formulae.git] / Makefile
index 3c82b5b7afbb2f5d5bf21797e7c2f5eb73db4c80..7a4f7d4f0dec6fe44aba5ee66feee96a205859e4 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,27 @@
 
-article.pdf: article.tex
-               pdflatex -halt-on-error $< </dev/null
+SRCS := $(wildcard *.tex)
+
+default: final.pdf final.ps
+
+once:          revid.inc
+               pdflatex -halt-on-error article.tex </dev/null
+
+GITDIR:=$(addsuffix /, $(shell git rev-parse --git-dir))
+HEADREF:=$(shell git symbolic-ref HEAD 2>/dev/null)
+HEADDEPS:=$(addprefix $(GITDIR), HEAD $(HEADREF))
+
+revid.inc:     .git-revid $(SRCS) Makefile $(HEADDEPS)
+               ./$< >$@.new
+               cmp $@.new $@ || mv -f $@.new $@
+
+final.pdf: $(SRCS) revid.inc
+               $(MAKE) once
+               $(MAKE) once
+               $(MAKE) once
+               cp article.pdf final.pdf
+
+%.ps: %.pdf
+               pdftops $*.pdf $*.ps
 
 clean:
-       rm -f *.aux *.log *.dvi *.out *.pdf *~
+       rm -f *.aux *.log *.dvi *.out *.pdf *.ps *~