let clean_up_links entry =
if not !Options.make_links then entry else
Slurp.filter begin fun path name _ ->
let pathname = in_source_dir (path/name) in
if Pathname.link_to_dir pathname !Options.build_dir then
let z = Pathname.readlink pathname in
(* Here is one exception where one can use Sys.file_exists directly *)
(if not (Sys.file_exists z) then
Shell.rm pathname; false)
else true
end entry