diff options
author | Jason Gross <jagro@google.com> | 2016-07-19 10:22:39 -0700 |
---|---|---|
committer | Jason Gross <jagro@google.com> | 2016-07-20 18:46:04 -0700 |
commit | b65228c08b17b361dd97fa24d9677ab165b3638b (patch) | |
tree | 0dec857d52dacff9b886a2891b6fac2d9d0feb7a /Makefile | |
parent | 568b0e125741695e254ab0e56b26ae47466a8869 (diff) |
Add a separate non-specific target
This should fix #27. We depend on some files in the etc/coq-scripts
submodule.
Note that you need to either run `make cleanall -k` or `rm -f Makefile.coq`
after pulling this to build the development.
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 43 |
1 files changed, 27 insertions, 16 deletions
@@ -1,17 +1,37 @@ MOD_NAME := Crypto SRC_DIR := src +STDTIME?=/usr/bin/time -f "$* (real: %e, user: %U, sys: %S, mem: %M ko)" .PHONY: coq clean update-_CoqProject cleanall install \ - install-coqprime clean-coqprime coqprime + install-coqprime clean-coqprime coqprime \ + specific non-specific .DEFAULT_GOAL := coq -SORT_COQPROJECT = sed 's,[^/]*/,~&,g' | env LC_COLLATE=C sort | sed 's,~,,g' +-include Makefile.submodule + +STRICT_COQDEP ?= 1 + +-include etc/coq-scripts/Makefile.coq.common update-_CoqProject:: - $(Q)(echo '-R $(SRC_DIR) $(MOD_NAME)'; echo '-R Bedrock Bedrock'; (git ls-files 'src/*.v' 'Bedrock/*.v' | $(SORT_COQPROJECT))) > _CoqProject + $(SHOW)'ECHO > _CoqProject' + $(HIDE)(echo '-R $(SRC_DIR) $(MOD_NAME)'; echo '-R Bedrock Bedrock'; (git ls-files 'src/*.v' 'Bedrock/*.v' | $(SORT_COQPROJECT))) > _CoqProject + +clean:: + rm -f submodule-update + +$(VOFILES): | coqprime -coq: coqprime Makefile.coq - $(MAKE) -f Makefile.coq +# add files to this list to prevent them from being built by default +UNMADE_VOFILES := + +COQ_VOFILES := $(filter-out $(UNMADE_VOFILES),$(VOFILES)) +SPECIFIC_VO := $(filter src/Specific/%,$(VOFILES)) +NON_SPECIFIC_VO := $(filter-out $(SPECIFIC_VO),$(VO_FILES)) + +specific: $(SPECIFIC_VO) coqprime +non-specific: $(NON_SPECIFIC_VO) coqprime +coq: $(COQ_VOFILES) coqprime COQ_VERSION_PREFIX = The Coq Proof Assistant, version COQ_VERSION := $(firstword $(subst $(COQ_VERSION_PREFIX),,$(shell $(COQBIN)coqc --version 2>/dev/null))) @@ -31,19 +51,10 @@ clean-coqprime: install-coqprime: $(MAKE) -C $(COQPRIME_FOLDER) install -Makefile.coq: Makefile _CoqProject - $(Q)$(COQBIN)coq_makefile -f _CoqProject -o Makefile.coq - -clean: Makefile.coq - $(MAKE) -f Makefile.coq clean - rm -f Makefile.coq - -cleanall: clean clean-coqprime +cleanall:: clean clean-coqprime rm -f .dir-locals.el -install: coq Makefile.coq - $(MAKE) install-coqprime - $(MAKE) -f Makefile.coq install +install: coq install-coqprime .dir-locals.el:: sed 's:@COQPRIME@:$(COQPRIME_FOLDER):g' .dir-locals.el.in > $@ |