X-Git-Url: http://git.megacz.com/?p=coq-hetmet.git;a=blobdiff_plain;f=Makefile;h=2d65894b3daf58e9f346403bf7fed89b912e3ebb;hp=ce0c2508dc0c3b9a66333a24d7de942efb6a8c76;hb=d7e72f54b8097cb188e4fc9cb284e585c4d63514;hpb=b8f6adf700fa3c67feefaea3d2cf5c4626300489 diff --git a/Makefile b/Makefile index ce0c250..2d65894 100644 --- a/Makefile +++ b/Makefile @@ -1,37 +1,49 @@ coqc := coqc -noglob -coqfiles := $(shell find src -name \*.v) -allfiles := $(coqfiles) $(shell find src -name \*.hs) +coqfiles := $(shell find src -name \*.v | grep -v \\\#) +allfiles := $(coqfiles) $(shell find src -name \*.hs | grep -v \\\#) default: build/CoqPass.hs build/CoqPass.hs: $(allfiles) make build/Makefile.coq + cd build; make -f Makefile.coq OPTS=-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 -build/Makefile.coq: $(coqfiles) +build/Makefile.coq: $(coqfiles) src/categories/src mkdir -p build rm -f build/*.v rm -f build/*.d - cd build; ln -s ../src/*.v . + cd build; ln -fs `find ../src -name \*.v` . cd build; coq_makefile *.v > Makefile.coq +src/categories/src: + git submodule update --init src/categories + cd compiler/categories; git checkout master + clean: rm -rf build +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 + 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 + echo + echo COMPILATION OK + echo # this is for Adam's use only! push: build/CoqPass.hs - git push http://git.megacz.com/coq-garrows.git master + git push http://git.megacz.com/coq-hetmet.git master git add -f build/CoqPass.hs; \ git commit -m 'update baked-in CoqPass.hs' && \ - (git push -f http://git.megacz.com/coq-garrows.git master:coq-extraction-baked-in; \ + (git push -f http://git.megacz.com/coq-hetmet.git master:coq-extraction-baked-in; \ git reset HEAD^) - make publish - -publish: rm -rf .temp mkdir .temp cd .temp; ln -s ../src/*.v .