#!/usr/bin/make -f # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 export DEB_BUILD_MAINT_OPTIONS = hardening=+all export DEB_BUILD_OPTIONS += noautodbgsym include /usr/share/ocaml/ocamlvars.mk COQ_VERSION := 9.1.0 COQ_ABI := $(COQ_VERSION)+$(OCAML_ABI) PACKAGES := $(shell dh_listpackages) export OCAMLINIT_SED += \ -e 's%@CoqVersion@%$(COQ_VERSION)%' \ -e 's%@CoqABI@%$(COQ_ABI)%' %: +dh $@ --with coq,ocaml,python3 override_dh_auto_configure: ./configure -prefix=/usr -libdir=$(OCAML_STDLIB_DIR)/coq -mandir=/usr/share/man override_dh_auto_build: make dunestrap dune build -p rocq-runtime,coq-core,rocq-core,coqide-server,rocqide --display=verbose # Check that $(COQ_VERSION) has the right value ACTUAL_COQ_VERSION="$$(./_build/install/default/bin/rocq --version | awk '/version/{print $$5}')"; \ if [ "$$ACTUAL_COQ_VERSION" != "$(COQ_VERSION)" ]; then \ echo "Please set COQ_VERSION to $$ACTUAL_COQ_VERSION in debian/rules"; \ exit 2; \ fi override_dh_auto_test: ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) # OCAMLPATH=$(CURDIR)/_build_vo/default/lib make -C test-suite COQBIN=$(CURDIR)/_build_vo/default/bin/ COQLIB=$(CURDIR)/_build_vo/default/lib/coq @echo "TESTS ARE DISABLED FOR NOW!" endif override_dh_auto_install: # raw installation dune install rocq-runtime coq-core rocq-core coqide-server rocqide \ --destdir=$(CURDIR)/debian/tmp --prefix=/usr --libdir=$(OCAML_STDLIB_DIR) --mandir=/usr/share/man # cleaning what upstream installs and we don't (need to) ship find $(CURDIR)/debian/tmp -name LICENSE -delete find $(CURDIR)/debian/tmp -name README.md -delete find $(CURDIR)/debian/tmp -name "*.byte*" -delete find $(CURDIR)/debian/tmp -name "*.opt*" -delete rm -rf $(CURDIR)/debian/tmp/usr/doc/rocqide/odoc-pages \ $(CURDIR)/debian/tmp$(OCAML_STDLIB_DIR)/rocq-runtime/revision \ $(CURDIR)/debian/tmp$(OCAML_STDLIB_DIR)/coqide-server find $(CURDIR)/debian/tmp -empty -delete # ok, now we detect what to ship find debian/tmp$(OCAML_STDLIB_DIR)/rocq-runtime -regextype posix-awk \ -regex '.*\.(cma|cmxs)$$' \ >> debian/libcoq-core-ocaml.install find debian/tmp$(OCAML_STDLIB_DIR)/rocq-runtime -regextype posix-awk \ -regex '.*\.(a|cmi|cmo|cmt|cmti|cmx|cmxa|ml|mli|o])$$' \ >> debian/libcoq-core-ocaml-dev.install override_dh_gencontrol: for u in $(PACKAGES); do \ echo 'F:OCamlABI=$(OCAML_ABI)' >> debian/$$u.substvars; \ echo 'F:CoqABI=$(COQ_ABI)' >> debian/$$u.substvars; \ done dh_gencontrol # why is this necessary? override_dh_fixperms: dh_fixperms find $(CURDIR)/debian -name TimeFileMaker.py -exec chmod -x '{}' \; override_dh_auto_clean: make clean rm -f config/Makefile config/coq_config.ml config/coq_config.py config/dune.c_flags rm -f theories/dune user-contrib/Ltac2/dune