ligo/src/environment/jbuild
Milo Davis 0a7f9a39a9 Switch to Jbuilder
This is a rewrite of the build system with `jbuilder`, with just a
minimal toplevel Makefile for backward compatibility.

This first patch preserves the project architecture, we only gain
proper dependencies handling and always up-to-date `.merlin` files.
A latter patch may split the project in smaller "sub-package",
i.e. multiple `.opam` files.

The embedded versions of the economic protocol are now compiled with
`jbuilder` instead of `tezos-protocol-compiler`, potentially allowing
proper inlining at the cost of slightly-less-stricter
sandboxing. Nevertheless, dynamically loaded protocol are still
compiled with the `tezos-protocol-compiler` and thus strictly
sandboxed ; and a CI rule also checks the proper sandboxing of
embedded protocols.

This patch is coauthored with @hnrgrgr
2017-10-31 20:33:56 +00:00

56 lines
1.0 KiB
Plaintext

(jbuild_version 1)
(rule
((targets (tezos_protocol_environment_sigs_v1.ml))
(deps
(
;; Part of OCaml stdlib
v1/pervasives.mli
v1/array.mli
v1/list.mli
v1/bytes.mli
v1/string.mli
v1/set.mli
v1/map.mli
v1/int32.mli
v1/int64.mli
v1/buffer.mli
v1/format.mli
;; Part of external libraries
v1/z.mli
v1/lwt_sequence.mli
v1/lwt.mli
v1/lwt_list.mli
v1/uri.mli
;; Tezos extended stdlib
v1/mBytes.mli
v1/hex_encode.mli
v1/compare.mli
v1/data_encoding.mli
v1/error_monad.mli
v1/logging.mli
v1/time.mli
v1/base58.mli
v1/hash.mli
v1/ed25519.mli
;; Tezos specifics
v1/tezos_data.mli
v1/persist.mli
v1/context.mli
v1/RPC.mli
v1/updater.mli
))
(action
(with-stdout-to ${@}
(run ${exe:sigs_packer/sigs_packer.exe} ${!^})))))
(library
((name tezos_protocol_environment_sigs)
(flags (:standard -nopervasives))
(wrapped false)
(modules ("Tezos_protocol_environment_sigs_v1"))))