diff --git a/Makefile.coq.local b/Makefile.coq.local index 12e6f7829a6ce682ae83ee160a05d72449e45bea..ad6264962bc4fcc54a11cf823c6c82d5a4de5cd5 100644 --- a/Makefile.coq.local +++ b/Makefile.coq.local @@ -5,19 +5,22 @@ NO_TEST:= MAKE_REF:= # Run tests interleaved with main build. They have to be in the same target for this. -real-all: $(if $(NO_TEST),,test) +real-all: style $(if $(NO_TEST),,test) -# the test suite -TESTFILES:=$(shell find tests -name "*.v") -NORMALIZER:=test-normalizer.sed - -test: $(TESTFILES:.v=.vo) +style: $(VFILES) # Make sure everything imports the options, and all Instance/Argument/Hint are qualified. $(SHOW)"Performing some style checks..." $(HIDE)for FILE in $(VFILES); do \ if ! fgrep -q 'From stdpp Require Import options.' "$$FILE"; then echo "ERROR: $$FILE does not import 'options'."; echo; exit 1; fi ; \ if egrep -n '^\s*((Existing\s+|Program\s+)Instance|Arguments|Remove|Hint\s+(Extern|Constructors|Resolve|Immediate|Mode|Opaque|Transparent|Unfold)|(Open|Close)\s+Scope|Opaque|Transparent)\b' "$$FILE"; then echo "ERROR: $$FILE contains 'Instance'/'Arguments'/'Hint' or another side-effect without locality (see above)."; echo "Please add 'Global' or 'Local' as appropriate."; echo; exit 1; fi \ done +.PHONY: style + +# the test suite +TESTFILES:=$(shell find tests -name "*.v") +NORMALIZER:=test-normalizer.sed + +test: $(TESTFILES:.v=.vo) .PHONY: test COQ_TEST=$(COQTOP) $(COQDEBUG) -batch -test-mode