File: Makefile

package info (click to toggle)
js-of-ocaml 6.2.0-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 37,932 kB
  • sloc: ml: 135,957; javascript: 58,364; ansic: 437; makefile: 422; sh: 12; perl: 4
file content (22 lines) | stat: -rw-r--r-- 745 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
.PHONY: bench perform

export NAME=Fiat-Crypto

SHELL=/bin/bash -o pipefail

bench:
	@date -u +"%FT%TZ - $(NAME): starting"
	$(MAKE) perform COMPILER=js_of_ocaml EXTRA_ARGS="--effects cps" KIND=js
	$(MAKE) perform COMPILER=wasm_of_ocaml EXTRA_ARGS="" KIND=wasm
	@date -u +"%FT%TZ - $(NAME): done"

perform: bedrock2_fiat_crypto.byte
	/usr/bin/time -f "%E %R" $(COMPILER) --debug times --source-map $(EXTRA_ARGS) $< -o out.js 2>&1 | \
	ocaml -I +str str.cma ../utils/compilation_metrics.ml $(COMPILER) $(NAME) out.js | \
	sh ../utils/aggregate.sh $(KIND)

bedrock2_fiat_crypto.byte: bedrock2_fiat_crypto.ml
	ocamlfind ocamlc -w -20 -g -linkpkg -package js_of_ocaml -g $< -o $@

bedrock2_fiat_crypto.ml: bedrock2_fiat_crypto.ml.xz
	unxz --keep $<