annotate Makefile @ 205:f05514cc6c0d

'make doc' works with 8.2
author Adam Chlipala <adamc@hcoop.net>
date Fri, 06 Nov 2009 12:15:05 -0500
parents cbf2f74a5130
children 3f4576f15130
rev   line source
adamc@204 1 MODULES_NODOC := Axioms Tactics MoreSpecif DepList
adamc@24 2 MODULES_PROSE := Intro
adamc@105 3 MODULES_CODE := StackMachine InductiveTypes Predicates Coinductive Subset \
adamc@175 4 MoreDep DataStruct Equality Match Reflection Firstorder Hoas Interps \
adamc@193 5 Extensional Intensional Impure Generic
adamc@22 6 MODULES_DOC := $(MODULES_PROSE) $(MODULES_CODE)
adamc@3 7 MODULES := $(MODULES_NODOC) $(MODULES_DOC)
adamc@3 8 VS := $(MODULES:%=src/%.v)
adamc@3 9 VS_DOC := $(MODULES_DOC:%=%.v)
adamc@3 10 GLOBALS := .coq_globals
adamc@22 11 TEMPLATES := $(MODULES_CODE:%=templates/%.v)
adamc@2 12
adamc@42 13 .PHONY: coq clean doc dvi html templates install cpdt.tgz
adamc@2 14
adamc@2 15 coq: Makefile.coq
adamc@2 16 make -f Makefile.coq
adamc@2 17
adamc@2 18 Makefile.coq: Makefile $(VS)
adamc@2 19 coq_makefile $(VS) \
adamc@204 20 COQC = "coqc -I src -dump-glob $(GLOBALS)" \
adamc@89 21 COQDEP = "coqdep -I src" \
adamc@2 22 -o Makefile.coq
adamc@2 23
adamc@2 24 clean:: Makefile.coq
adamc@2 25 make -f Makefile.coq clean
adamc@49 26 rm -f Makefile.coq .depend $(GLOBALS) cpdt.tgz \
adamc@22 27 latex/*.sty latex/cpdt.* templates/*.v
adamc@3 28
adamc@8 29 doc: latex/cpdt.dvi latex/cpdt.pdf html
adamc@3 30
adamc@21 31 latex/cpdt.tex: Makefile $(VS)
adamc@25 32 cd src ; coqdoc --latex -s $(VS_DOC) \
adamc@21 33 -p "\usepackage{url}" \
adamc@21 34 -p "\title{Certified Programming with Dependent Types}" \
adamc@21 35 -p "\author{Adam Chlipala}" \
adamc@21 36 -p "\iffalse" \
adamc@3 37 -o ../latex/cpdt.tex
adamc@3 38
adamc@3 39 latex/cpdt.dvi: latex/cpdt.tex
adamc@5 40 cd latex ; latex cpdt ; latex cpdt
adamc@4 41
adamc@8 42 latex/cpdt.pdf: latex/cpdt.dvi
adamc@8 43 cd latex ; pdflatex cpdt
adamc@8 44
adamc@39 45 html: Makefile $(VS) src/toc.html
adamc@205 46 mkdir -p html
adamc@39 47 cd src ; coqdoc $(VS_DOC) \
adamc@4 48 --glob-from ../$(GLOBALS) \
adamc@4 49 -d ../html
adamc@39 50 cp src/toc.html html/
adamc@4 51
adamc@4 52 dvi:
adamc@4 53 xdvi latex/cpdt
adamc@22 54
adamc@22 55 templates: $(TEMPLATES)
adamc@22 56
adamc@41 57 templates/%.v: src/%.v tools/make_template.ml
adamc@22 58 ocaml tools/make_template.ml <$< >$@
adamc@39 59
adamc@39 60 cpdt.tgz:
adamc@39 61 hg archive -t tgz $@
adamc@39 62
adamc@39 63 install: cpdt.tgz latex/cpdt.pdf html
adamc@39 64 cp cpdt.tgz staging/
adamc@39 65 cp latex/cpdt.pdf staging/
adamc@39 66 cp -R html staging/
adamc@201 67 # rsync -az --exclude '*~' staging/* bowser.eecs.harvard.edu:public_html/cpdt/book/
adamc@39 68 rsync -az --exclude '*~' staging/* ssh.hcoop.net:sites/chlipala/adam/cpdt/