General.v: add list_{ins,del,take,drop}
[coq-hetmet.git] / Makefile
index 4b08c02..c372b85 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,8 @@
 coqc     := coqc -noglob -opt
 coqfiles := $(shell find src -name \*.v  | grep -v \\\#)
 allfiles := $(coqfiles) $(shell find src -name \*.hs | grep -v \\\#)
+coq_version := $(shell coqc -v | head -n1 | sed 's_.*version __' | sed 's_ .*__')
+coq_version_wanted := 8.3pl2-tracer
 
 default: all
 
@@ -9,11 +11,24 @@ all: $(allfiles)
        cd build; $(MAKE) -f Makefile.coq OPT="-opt -dont-load-proofs" All.vo
 
 build/CoqPass.hs: $(allfiles)
+ifeq ($(coq_version),$(coq_version_wanted))
        make build/Makefile.coq
        cd build; $(MAKE) -f Makefile.coq OPT="-opt -dont-load-proofs" ExtractionMain.vo
        cd build; $(MAKE) -f Makefile.coq Extraction.vo
        cat src/Extraction-prefix.hs                                     > build/CoqPass.hs
        cat build/Extraction.hs | grep -v '^module' | grep -v '^import' >> build/CoqPass.hs
+else
+       @echo
+       @echo ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+       @echo ++ YOU DO NOT HAVE COQ VERSION $(coq_version_wanted) INSTALLED  ++
+       @echo ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+       @echo
+       @echo Therefore, I am going to "git pull -f" from the coq-extraction-baked-in
+       @echo branch of the repository.
+       @echo
+       git pull -f http://git.megacz.com/coq-hetmet.git coq-extraction-baked-in:master
+endif
+
 
 build/Makefile.coq: $(coqfiles) src/categories/src
        mkdir -p build
@@ -44,7 +59,8 @@ examples/doc/index.html:
 merged:
        mkdir -p .temp
        cd src; for A in *.v; do cat $$A  | grep -v '^Require Import' > ../.temp/`echo $$A | sed s_\\\\.v_._`; done
-       cd src/categories/src; for A in *.v; do cat $$A  | grep -v '^Require Import' > ../../../.temp/`echo $$A | sed s_\\\\.v_._`; done
+       cd src/categories/src; for A in *.v; do cat $$A | \
+          grep -v '^Require Import' > ../../../.temp/`echo $$A | sed s_\\\\.v_._`; done
        cp src/Banner.v .temp/GArrows.v
        cd .temp; grep '^Require Import ' ../src/All.v | sed 's_Require Import _echo;echo;echo;echo;echo;cat _' | bash >> GArrows.v
        cd .temp; time $(coqc) -dont-load-proofs -verbose GArrows.v