ligo/test/p2p/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

41 lines
1.1 KiB
Plaintext

(jbuild_version 1)
(executables
((names (test_p2p_connection
test_p2p_connection_pool
test_p2p_io_scheduler))
(libraries (minutils utils test_lib node_net))
(flags (:standard -linkall
-open Error_monad
-open Hash
-open Utils
-open Tezos_data))))
(alias
((name buildtest)
(deps (test_p2p_connection.exe
test_p2p_connection_pool.exe
test_p2p_io_scheduler.exe))))
(alias
((name runtest_p2p_connection)
(action (run ${exe:test_p2p_connection.exe} -v))))
(alias
((name runtest_p2p_connection_pool)
(action (run ${exe:test_p2p_connection_pool.exe} --clients 10 --repeat 5 -v))))
(alias
((name runtest_p2p_io_scheduler)
(action (run ${exe:test_p2p_io_scheduler.exe}
--delay 5 --clients 8
--max-upload-speed 262144 ;; 1 << 18 = 256kB
--max-download-speed 1048576 ;; 1 << 20 = 1MB
))))
(alias
((name runtest)
(deps ((alias runtest_p2p_connection)
(alias runtest_p2p_connection_pool)
(alias runtest_p2p_io_scheduler)))))