# -*- mode: makefile -*- # Dune Makefile for Coq .PHONY: help voboot states world apidoc # use DUNEOPT=--display=short for a more verbose build # DUNEOPT=--display=short BUILD_CONTEXT=_build/default help: @echo "Welcome to Coq's Dune-based build system. Targets are:" @echo " - states: build a minimal functional coqtop" @echo " - world: build all binaries and libraries" @echo " - release: build Coq in release mode" @echo " - apidoc: build ML API documentation" @echo " - clean: remove build directory and autogenerated files" @echo " - help: show this message" voboot: dune build $(DUNEOPT) @vodeps dune exec coq_dune $(BUILD_CONTEXT)/.vfiles.d states: voboot dune build $(DUNEOPT) theories/Init/Prelude.vo world: voboot dune build $(DUNEOPT) @install release: voboot dune build $(DUNEOPT) -p coq apidoc: # Ugly workaround for https://github.com/ocaml/odoc/issues/148 mv checker/dune checker/dune.disabled || true dune build $(DUNEOPT) @doc mv checker/dune.disabled checker/dune || true clean: dune clean # Other common dev targets # # dune build coq.install # dune build ide/coqide.install # Packaging / OPAM targets: # # dune -p coq @install # dune -p coqide @install