diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..2cde1e0 --- /dev/null +++ b/Makefile @@ -0,0 +1,311 @@ +############################################################################# +## v # The Coq Proof Assistant ## +## $@ + printf 'cd "$${DSTROOT}"$(COQLIBINSTALL)/ && rm -f $(VOFILES) $(VFILES) $(GLOBFILES) $(NATIVEFILES) $(CMOFILES) $(CMIFILES) $(CMAFILES) && find . -type d -and -empty -delete\ncd "$${DSTROOT}"$(COQLIBINSTALL) && find "" -maxdepth 0 -and -empty -exec rmdir -p \{\} \;\n' >> "$@" + printf 'cd "$${DSTROOT}"$(COQDOCINSTALL)/$(INSTALLDEFAULTROOT) \\\n' >> "$@" + printf '&& rm -f $(shell find "html" -maxdepth 1 -and -type f -print)\n' >> "$@" + printf 'cd "$${DSTROOT}"$(COQDOCINSTALL) && find $(INSTALLDEFAULTROOT)/html -maxdepth 0 -and -empty -exec rmdir -p \{\} \;\n' >> "$@" + chmod +x $@ + +uninstall: uninstall_me.sh + sh $< + +.merlin: + @echo 'FLG -rectypes' > .merlin + @echo "B $(COQLIB)kernel" >> .merlin + @echo "B $(COQLIB)lib" >> .merlin + @echo "B $(COQLIB)library" >> .merlin + @echo "B $(COQLIB)parsing" >> .merlin + @echo "B $(COQLIB)pretyping" >> .merlin + @echo "B $(COQLIB)interp" >> .merlin + @echo "B $(COQLIB)printing" >> .merlin + @echo "B $(COQLIB)intf" >> .merlin + @echo "B $(COQLIB)proofs" >> .merlin + @echo "B $(COQLIB)tactics" >> .merlin + @echo "B $(COQLIB)tools" >> .merlin + @echo "B $(COQLIB)ltacprof" >> .merlin + @echo "B $(COQLIB)toplevel" >> .merlin + @echo "B $(COQLIB)stm" >> .merlin + @echo "B $(COQLIB)grammar" >> .merlin + @echo "B $(COQLIB)config" >> .merlin + @echo "B $(COQLIB)ltac" >> .merlin + @echo "B $(COQLIB)engine" >> .merlin + +clean:: + rm -f $(OBJFILES) $(OBJFILES:.o=.native) $(NATIVEFILES) + find . -name .coq-native -type d -empty -delete + rm -f $(VOFILES) $(VOFILES:.vo=.vio) $(GFILES) $(VFILES:.v=.v.d) $(VFILES:=.beautified) $(VFILES:=.old) + rm -f all.ps all-gal.ps all.pdf all-gal.pdf all.glob $(VFILES:.v=.glob) $(VFILES:.v=.tex) $(VFILES:.v=.g.tex) all-mli.tex + - rm -rf html mlihtml uninstall_me.sh + +cleanall:: clean + rm -f $(patsubst %.v,.%.aux,$(VFILES)) + +archclean:: + rm -f *.cmx *.o + +printenv: + @"$(COQBIN)coqtop" -config + @echo 'OCAMLFIND = $(OCAMLFIND)' + @echo 'PP = $(PP)' + @echo 'COQFLAGS = $(COQFLAGS)' + @echo 'COQLIBINSTALL = $(COQLIBINSTALL)' + @echo 'COQDOCINSTALL = $(COQDOCINSTALL)' + +Makefile: _CoqProject + mv -f $@ $@.bak + "$(COQBIN)coq_makefile" -f $< -o $@ + + +################### +# # +# Implicit rules. # +# # +################### + +$(VOFILES): %.vo: %.v + $(SHOW)COQC $< + $(HIDE)$(COQC) $(COQDEBUG) $(COQFLAGS) $< + +$(GLOBFILES): %.glob: %.v + $(COQC) $(COQDEBUG) $(COQFLAGS) $< + +$(VFILES:.v=.vio): %.vio: %.v + $(COQC) -quick $(COQDEBUG) $(COQFLAGS) $< + +$(GFILES): %.g: %.v + $(GALLINA) $< + +$(VFILES:.v=.tex): %.tex: %.v + $(COQDOC) $(COQDOCFLAGS) -latex $< -o $@ + +$(HTMLFILES): %.html: %.v %.glob + $(COQDOC) $(COQDOCFLAGS) -html $< -o $@ + +$(VFILES:.v=.g.tex): %.g.tex: %.v + $(COQDOC) $(COQDOCFLAGS) -latex -g $< -o $@ + +$(GHTMLFILES): %.g.html: %.v %.glob + $(COQDOC) $(COQDOCFLAGS) -html -g $< -o $@ + +$(addsuffix .d,$(VFILES)): %.v.d: %.v + $(SHOW)'COQDEP $<' + $(HIDE)$(COQDEP) $(COQLIBS) "$<" > "$@" || ( RV=$$?; rm -f "$@"; exit $${RV} ) + +$(addsuffix .beautified,$(VFILES)): %.v.beautified: + $(COQC) $(COQDEBUG) $(COQFLAGS) -beautify $*.v + +# WARNING +# +# This Makefile has been automagically generated +# Edit at your own risks ! +# +# END OF WARNING + diff --git a/_CoqProject b/_CoqProject new file mode 100644 index 0000000..bba943f --- /dev/null +++ b/_CoqProject @@ -0,0 +1,6 @@ +-R . "" COQC = hoqc COQDEP = hoqdep + +Mod2.v +FinSets.v +Expressions.v +Integers.v \ No newline at end of file