Newer
Older
(env
(dev (flags :standard -rectypes))
(release (flags :standard -rectypes -w +27+32)))
(targets (dir coq-pkgs))
(mode (promote (until-clean)))
(package coq-stdlib)
Makefile)
(run
node
%{dep:dist-cli}/cli.cjs
%{dep:etc/pkg-metadata/coq-pkgs.json}
--rootdir %{env:COQBUILDDIR_REL=????}
--nostdlib)
; building symbols using Make because Dune has no pattern rules T.T
(run make libs-symb))))
(targets (dir node_modules))
(mode (promote (until-clean)))
(deps
package.json
package-lock.json)
(alias
(name jscoq)
(deps
backend/jsoo/jscoq_worker.bc.js))
(alias
(name wacoq)
(deps
(alias shared)
backend/wasm/wacoq_worker.bc
(glob_files backend/wasm/*.wasm)))
(alias
(name shared)
(deps
(source_tree examples)
(source_tree docs) ; for `quick-help.html`
(targets (dir dist))
(mode (promote (until-clean)))
(deps
(source_tree backend)
(source_tree frontend)
tsconfig.json
esbuild.mjs
node_modules)
(action
; Set JSCOQ_BUNDLE_TARGET=release to generate minimized dist files
(run npm run %{env:JSCOQ_BUNDLE_TARGET=esbuild})))
(rule
(targets (dir dist-cli))
(mode (promote (until-clean)))
backend/jsoo/jscoq_worker.bc.js
etc/pkg-metadata/coq-pkgs.json
(source_tree backend)
(source_tree frontend)
tsconfig.json
esbuild-cli.mjs
(run npm run esbuild-cli)))
; Webpack build (legacy)
(rule
(targets (dir dist-webpack))
(mode (promote (until-clean)))
(deps
(source_tree backend)
(source_tree frontend)
tsconfig.json
webpack.config.js
node_modules)
(action
(run npm run webpack)))
; Just the worker
(alias
(name jscoq_worker)
(deps
backend/jsoo/jscoq_worker.bc.js))
(alias
(name wacoq_worker)
(deps
backend/wasm/wacoq_worker.bc))
(vendored_dirs vendor)