- deps = Deps { dep_mods = moduleEnvElts (imp_dep_mods imports),
- dep_pkgs = sort pkgs,
- dep_orphs = sort (imp_orphs imports) }
+ ; let
+ -- ModuleNames don't compare lexicographically usually,
+ -- but we want them to do so here.
+ le_mod :: ModuleName -> ModuleName -> Bool
+ le_mod m1 m2 = moduleNameFS m1 <= moduleNameFS m2
+ le_dep_mod :: (ModuleName, IsBootInterface) -> (ModuleName, IsBootInterface) -> Bool
+ le_dep_mod (m1,_) (m2,_) = m1 `le_mod` m2
+
+ deps = Deps { dep_mods = sortLe le_dep_mod dep_mods,
+ dep_pkgs = sortLe (<=) pkgs,
+ dep_orphs = sortLe le_mod (imp_orphs imports) }