7959831e0c9099f3f3e81fa1f0a7cc7ab9e6dead
[coq-hetmet.git] / Makefile
1 coqc     := coqc -noglob
2 coqfiles := $(shell find src -name \*.v  | grep -v \\\#)
3 allfiles := $(coqfiles) $(shell find src -name \*.hs | grep -v \\\#)
4
5 default: build/CoqPass.hs
6
7 build/CoqPass.hs: $(allfiles)
8         make build/Makefile.coq
9         cd build; make -f Makefile.coq Extraction.vo
10         cat src/Extraction-prefix.hs                                     > build/CoqPass.hs
11         cat build/Extraction.hs | grep -v '^module' | grep -v '^import' >> build/CoqPass.hs
12
13 build/Makefile.coq: $(coqfiles)
14         mkdir -p build
15         rm -f build/*.v
16         rm -f build/*.d
17         cd build; ln -s ../src/*.v .
18         cd build; coq_makefile *.v > Makefile.coq
19
20 clean:
21         rm -rf build
22
23
24
25 # this is for Adam's use only!
26 push: build/CoqPass.hs
27         git push http://git.megacz.com/coq-hetmet.git master
28         git add -f build/CoqPass.hs; \
29           git commit -m 'update baked-in CoqPass.hs' && \
30           (git push -f http://git.megacz.com/coq-hetmet.git master:coq-extraction-baked-in; \
31            git reset HEAD^)
32         rm -rf .temp
33         mkdir .temp
34         cd .temp; ln -s ../src/*.v .
35         cd .temp; for A in *.v; do \
36           echo Latexing $$A ... ;\
37           echo '\\documentclass[9pt,landscape]{article}' > $$A.tex; \
38           echo '\\usepackage[landscape]{geometry}'       >> $$A.tex; \
39           echo '\\usepackage[cm]{fullpage}'       >> $$A.tex; \
40           echo '\\usepackage{amsmath}'        >> $$A.tex; \
41           echo '\\usepackage{amssymb}'        >> $$A.tex; \
42           echo '\\usepackage{stmaryrd}'       >> $$A.tex; \
43           echo '\\usepackage{upgreek}'        >> $$A.tex; \
44           echo '\\usepackage{parskip}'        >> $$A.tex; \
45           echo '\\begin{document}'            >> $$A.tex; \
46           echo '{{\\tt{'           >> $$A.tex; \
47           echo ''           >> $$A.tex; \
48           java -jar ~/bin/unicode2tex.jar < ../src/$$A >> $$A.tex;\
49           echo '}}}'                           >> $$A.tex; \
50           echo '\\end{document}'              >> $$A.tex; \
51           pdflatex $$A.tex < /dev/null; done
52         ssh login.eecs.berkeley.edu -- 'rm public_html/coq-in-ghc/pdfs/*.pdf' ; true
53         scp .temp/*.pdf login.eecs.berkeley.edu:public_html/coq-in-ghc/pdfs/
54         rm -rf .temp