let require_wp logs =
once "wp"
(fun () ->
let denv = Wp_parameters.get_output () in
let dshare = Wp_parameters.get_share() in
let shared = Format.sprintf "%s/wp.v" dshare in
let work = Format.sprintf "%s/wp.v" denv in
Command.copy shared work ;
(* no added ! -> incremental compilation *)
let args = [| "-noglob" ; work |] in
let stdout = Buffer.create 512 in
let timeout = Wp_parameters.Timeout.get() in
Logs.command logs "coqc" args ;
Task.command ~timeout ~stdout "coqc" args
>>? Logs.output logs stdout
>>= result_compile work)