Test private virtual libraries and implementations $ mkdir -p vlib js_impl test $ cat > dune-project < (lang dune 3.13) > (using melange 0.1) > EOF $ cat > vlib/dune < (library > (name the_lib) > (modes melange native) > (virtual_modules virt)) > EOF $ cat > vlib/the_lib.mli < module Time : sig > val gettimeofday : unit -> float > end > EOF $ cat > vlib/the_lib.ml < module Time = struct > let gettimeofday () = Virt.gettimeofday () > end > EOF $ cat > vlib/virt.mli < val gettimeofday : unit -> float > EOF $ cat > js_impl/dune < (library > (name timeJs) > (implements the_lib) > (modes melange) > (preprocess (pps melange.ppx))) > EOF $ cat > js_impl/virt.ml < let gettimeofday : unit -> float = fun () -> 42. > EOF $ cat > test/dune < (melange.emit > (target output) > (libraries the_lib timeJs) > (emit_stdlib false)) > EOF $ dune build @melange