diff --git a/src/build_system.ml b/src/build_system.ml index 82545b03..1e147f56 100644 --- a/src/build_system.ml +++ b/src/build_system.ml @@ -1426,9 +1426,11 @@ let package_deps t pkg files = let rec loop fn acc = match Hashtbl.find_all t.packages fn with | [] -> loop_deps fn acc - | [p] when p = pkg -> loop_deps fn acc | pkgs -> - List.fold_left pkgs ~init:acc ~f:add_package + if List.mem pkg ~set:pkgs then + loop_deps fn acc + else + List.fold_left pkgs ~init:acc ~f:add_package and add_package acc p = if p = pkg then acc