diff --git a/manifest/main.ml b/manifest/main.ml index 96c122bf344e33c45589d413182de2f7304bc3ea..082bbfefa27db38f558bbe4578317b760ecc6412 100644 --- a/manifest/main.ml +++ b/manifest/main.ml @@ -333,22 +333,6 @@ let tezos_rust_lib = let tezos_rust_lib_sapling = opam_only ~can_vendor:false "tezos-rust-libs" V.(at_least "1.1") -let tezt_lib = - external_lib - ~js_compatible:false - "tezt" - V.(at_least "3.0.0") - ~main_module:"Tezt" - -let tezt_core_lib = - external_sublib - tezt_lib - ~js_compatible:true - "tezt.core" - ~main_module:"Tezt_core" - -let tezt_js_lib = external_sublib tezt_lib ~js_compatible:true "tezt.js" - let tls = external_lib "tls" V.(at_least "0.13.0") let unix = external_lib ~opam:"base-unix" "unix" V.True @@ -388,6 +372,38 @@ let () = (* INTERNAL LIBS *) +let tezt_lib = + external_lib + ~js_compatible:false + "tezt" + V.(at_least "3.0.0") + ~main_module:"Tezt" + +let tezt_core_lib = + external_sublib + tezt_lib + ~js_compatible:true + "tezt.core" + ~main_module:"Tezt_core" + +let tezt_js_lib = external_sublib tezt_lib ~js_compatible:true "tezt.js" + +let tezt ~opam ~path ?js_compatible ?modes ?(deps = []) ?dep_globs ?dep_files + ?synopsis ?opam_with_test l = + tezt_without_tezt_lib_dependency + ~opam + ~path + ?synopsis + ?js_compatible + ?modes + ~lib_deps:((tezt_core_lib |> open_ |> open_ ~m:"Base") :: deps) + ~exe_deps:[tezt_lib] + ~js_deps:[tezt_js_lib] + ?dep_globs + ?dep_files + ?opam_with_test + l + let octez_test_helpers = public_lib "tezos-test-helpers" @@ -3070,19 +3086,6 @@ let octez_shell_benchmarks = ] ~linkall:true -let tezt ~opam ~path ?js_compatible ?modes ?(deps = []) ?dep_globs ?synopsis l = - tezt_without_tezt_lib_dependency - ~opam - ~path - ?synopsis - ?js_compatible - ?modes - ~lib_deps:((tezt_core_lib |> open_ |> open_ ~m:"Base") :: deps) - ~exe_deps:[tezt_lib] - ~js_deps:[tezt_js_lib] - ?dep_globs - l - let tezt_performance_regression = public_lib "tezt-performance-regression" diff --git a/manifest/manifest.ml b/manifest/manifest.ml index a0133835958e27cbd222e90b7cdf0c4f38307deb..b8ff8c90f305c63c819f1214caddc297464ea0f2 100644 --- a/manifest/manifest.ml +++ b/manifest/manifest.ml @@ -1782,16 +1782,19 @@ type tezt_target = { exe_deps : target list; js_deps : target list; dep_globs : string list; + dep_files : string list; modules : string list; js_compatible : bool option; modes : Dune.mode list option; synopsis : string option; + opam_with_test : with_test option; } let tezt_targets_by_path : tezt_target String_map.t ref = ref String_map.empty let tezt ~opam ~path ?js_compatible ?modes ?(lib_deps = []) ?(exe_deps = []) - ?(js_deps = []) ?(dep_globs = []) ?synopsis modules = + ?(js_deps = []) ?(dep_globs = []) ?(dep_files = []) ?synopsis + ?opam_with_test modules = if String_map.mem path !tezt_targets_by_path then invalid_arg ("cannot call Manifest.tezt twice for the same directory: " ^ path) ; @@ -1802,10 +1805,12 @@ let tezt ~opam ~path ?js_compatible ?modes ?(lib_deps = []) ?(exe_deps = []) exe_deps; js_deps; dep_globs; + dep_files; modules; js_compatible; modes; synopsis; + opam_with_test; } in tezt_targets_by_path := String_map.add path tezt_target !tezt_targets_by_path @@ -1819,10 +1824,12 @@ let register_tezt_targets ~make_tezt_exe = exe_deps; js_deps; dep_globs; + dep_files; modules; js_compatible; modes; synopsis; + opam_with_test; } = let path_with_underscores = String.map (function '-' | '/' -> '_' | c -> c) path @@ -1852,7 +1859,9 @@ let register_tezt_targets ~make_tezt_exe = ?modes ~deps:(lib :: deps) ~dep_globs + ~dep_files ~modules:[exe_name] + ?opam_with_test ~dune: Dune. [ @@ -3040,7 +3049,9 @@ let check_circular_opam_deps () = in while not (Queue.is_empty to_visit) do let elt = Queue.take to_visit in - let elt_path = Hashtbl.find shortest_path elt.kind in + let elt_path = + Option.value ~default:[] (Hashtbl.find_opt shortest_path elt.kind) + in list_iter (deps_of elt) (fun (dep : Target.internal) -> if not (Hashtbl.mem shortest_path dep.kind) then ( let path = dep :: elt_path in diff --git a/manifest/manifest.mli b/manifest/manifest.mli index 1cd25805387c394c56f1fb1f8ce98fab9398db07..83cee60178c6b9553772cfa5189ec8c1c1004d9c 100644 --- a/manifest/manifest.mli +++ b/manifest/manifest.mli @@ -920,7 +920,9 @@ val tezt : ?exe_deps:target list -> ?js_deps:target list -> ?dep_globs:string list -> + ?dep_files:string list -> ?synopsis:string -> + ?opam_with_test:with_test -> string list -> unit