Something went wrong. Try again.
READ-ONLY MIRROR of the previous soteria repo
Something went wrong. Try again.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111OCAML_VERSION=5.4.0OPAM=opamOPAMX=$(OPAM) exec --DUNE=$(OPAMX) duneWHICHX=$(DUNE) exec -- which
YARN=yarn
DYLIB_LIST_FILE=packaging/macOS_dylibs.txtPACKAGING_BIN=$(DUNE) exec -- packaging/package.exeSOTERIA_C_BIN=_build/install/default/bin/soteria-cVSCODE_BC_JS=vscode/src/soteria_vscode.bc.js
PACKAGE_DIST=packageVSCODE_DIST=dist
##### Normal ocaml stuff #####.PHONY: ocamlocaml: $(DUNE) build
ocaml-format-check: $(DUNE) build @fmt
.PHONY: ocaml-testocaml-test: $(DUNE) test
.PHONY: docdoc: $(DUNE) build @doc chmod u+w _build/default/_doc/_html/odoc.support/odoc.css cp doc/odoc-theme/odoc.css _build/default/_doc/_html/odoc.support/odoc.css
##### Packaging soteria-c #####
# From inside the package folder one can run:# SOTERIA_Z3_PATH=./bin/z3 DYLD_LIBRARY_PATH=./lib:$DYLD_LIBRARY_PATH ./bin/soteria-c exec-main file.c.PHONY: packagepackage: ocaml packaging/bin-locations.txt packaging/macOS_dylibs.txt $(DUNE) build @dylist-file $(PACKAGING_BIN) copy-files $(DYLIB_LIST_FILE) $(PACKAGE_DIST)/lib $(PACKAGING_BIN) copy-files packaging/bin-locations.txt $(PACKAGE_DIST)/bin mkdir -p $(PACKAGE_DIST)/lib $(PACKAGING_BIN) copy-cerb-runtime $(PACKAGE_DIST)/lib $(PACKAGING_BIN) copy-soteria-c-auto-includes $(PACKAGE_DIST)/lib/
packaging/bin-locations.txt: $(WHICHX) soteria-c > $@ $(WHICHX) z3 >> $@
packaging/macOS_dylibs.txt: $(PACKAGING_BIN) infer-dylibs $(SOTERIA_C_BIN) > $@
##### Switch creation / dependency setup #####
.PHONY: switchswitch: $(OPAM) switch create . ocaml-base-compiler.$(OCAML_VERSION) --deps-only --with-test --with-doc -y $(OPAM) install ocaml-lsp-server odig ocamlformat.0.28.1 -y
.PHONY: ocaml-depsocaml-deps: $(OPAM) install . --deps-only --with-test --with-doc $(OPAM) install ocamlformat.0.28.1 $(OPAM) install sherlodoc
##### JavaScript stuff #####
.PHONY: npm-depsnpm-deps: $(YARN) install --immutable
.PHONY: vscode-reinstall-devvscode-reinstall-dev: vscode-package $(YARN) install-ext
.PHONY: vscode-packagevscode-package: vscode $(YARN) package
.PHONY: vscodevscode: js-bundle
.PHONY: js-bundlejs-bundle: vscode-ocaml $(YARN) compile
.PHONY: vscode-ocamlvscode-ocaml: $(DUNE) build $(VSCODE_BC_JS)
.PHONY: for-localfor-local: ocaml vscode
.PHONY: cleanclean: $(DUNE) clean rm -rf $(PACKAGE_DIST) rm -rf $(VSCODE_DIST) rm -rf packaging/bin-locations.txt packaging/macOS_dylibs.txt rm -f soteria-vscode.vsix
license-check: reuse lint
.PHONY: license license-lint