diff --git a/Makefile b/Makefile index 6394c42a5c3cd9ecfa57864c33cf15f87b0549cc..7bfa06f89a5c19f9b279f65875196f870b6f88c7 100644 --- a/Makefile +++ b/Makefile @@ -3,14 +3,6 @@ ifeq ($(Y), 1) YFLAG=-y endif -# Determine Coq version -COQ_VERSION=$(shell coqc --version | egrep -o 'version 8.[0-9]' | egrep -o '8.[0-9]') -COQ_MAKEFILE_FLAGS ?= - -ifeq ($(COQ_VERSION), 8.6) - COQ_MAKEFILE_FLAGS += -arg -w -arg -notation-overridden,-redundant-canonical-projection,-several-object-files -endif - # Forward most targets to Coq makefile (with some trick to make this phony) %: Makefile.coq phony +@make -f Makefile.coq $@ @@ -25,7 +17,7 @@ clean: Makefile.coq # Create Coq Makefile. POSIX awk can't do in-place editing, but coq_makefile wants the real filename, so we do some file gymnastics. Makefile.coq: _CoqProject Makefile awk.Makefile - coq_makefile $(COQ_MAKEFILE_FLAGS) -f _CoqProject -o Makefile.coq + coq_makefile -f _CoqProject -o Makefile.coq mv Makefile.coq Makefile.coq.tmp && awk -f awk.Makefile Makefile.coq.tmp > Makefile.coq && rm Makefile.coq.tmp # Install build-dependencies diff --git a/Makefile.coq.local b/Makefile.coq.local new file mode 100644 index 0000000000000000000000000000000000000000..b261de990be8a8d16d2d8e690b4bb18809ad8696 --- /dev/null +++ b/Makefile.coq.local @@ -0,0 +1,5 @@ +uninstall:: + @# This makes sure we also delete stale files in the destination directory + $(HIDE)df="$(COQLIBINSTALL)/`$(COQMKFILE) -destination-of "theories/base.v" $(COQLIBS)`" &&\ + echo "RM in $$df" &&\ + if [ -d "$$df" ]; then find "$$df" \( -name "*.vo" -o -name "*.v" -o -name "*.glob" -o \( -type d -empty \) \) -print -delete; fi diff --git a/_CoqProject b/_CoqProject index e411deabb0662fb097a9f37a7e88911a1e10ef2c..9c07436c78fa8550e83214ca67b3e82958e477a5 100644 --- a/_CoqProject +++ b/_CoqProject @@ -1,4 +1,5 @@ -Q theories stdpp +-arg -w -arg -notation-overridden,-redundant-canonical-projection,-several-object-files theories/option.v theories/fin_map_dom.v theories/bset.v diff --git a/awk.Makefile b/awk.Makefile index 09ded0aa64f3a85ee4a55668d21ee17bb9a362f0..74f7d5705b7b0aa240eb66fd0f3645beb064b1ab 100644 --- a/awk.Makefile +++ b/awk.Makefile @@ -11,7 +11,8 @@ # Patch the uninstall target to work properly, and to also uninstall stale files. # Also see <https://coq.inria.fr/bugs/show_bug.cgi?id=4907>. -/^uninstall:/ { +# This (and the section above) can be removed once we no longer support Coq 8.6. +/^uninstall: / { print "uninstall:"; print "\tif [ -d \"$(DSTROOT)\"$(COQLIBINSTALL)/"PROJECT"/ ]; then find \"$(DSTROOT)\"$(COQLIBINSTALL)/"PROJECT"/ \\( -name \"*.vo\" -o -name \"*.v\" -o -name \"*.glob\" -o \\( -type d -empty \\) \\) -print -delete; fi"; getline;