From 776f7738d4fb78a90cf2ac3bbe9da2fd92da1de9 Mon Sep 17 00:00:00 2001 From: boykopovar Date: Sat, 10 Oct 2026 14:04:37 +0300 Subject: [PATCH] fix(relinker): stop requiring host dependencies in guest module directories --- .../relinker/src/guest/GuestModuleBuilder.cpp | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/core/relinker/relinker/src/guest/GuestModuleBuilder.cpp b/core/relinker/relinker/src/guest/GuestModuleBuilder.cpp index fc88bc17b..786e1d370 100644 --- a/core/relinker/relinker/src/guest/GuestModuleBuilder.cpp +++ b/core/relinker/relinker/src/guest/GuestModuleBuilder.cpp @@ -107,20 +107,7 @@ std::vector GuestModuleBuilder::Build(const std::filesystem::path return name == identity || name == identity + ".prx" || name == identity + ".sprx" || name == identity + ".suprx"; }); }; - const auto foldFilename = [](std::string name) { - for (auto& character : name) if (character >= 'A' && character <= 'Z') character = static_cast(character + ('a' - 'A')); - return name; - }; for (const auto& path : paths) discovered.emplace(path, GuestImageReader().Read(path, reader.Read(path.string()))); - std::set unresolved; - for (const auto& name : missingNeeded) { - if (std::none_of(discovered.begin(), discovered.end(), [&](const auto& entry) { - const auto& [path, image] = entry; - return path.filename().string() == name || image.Soname == name || - (windows && foldFilename(path.filename().string()) == foldFilename(name)) || matchesIdentity(name, image.ModuleNames); - })) unresolved.insert(name); - } - if (!unresolved.empty()) throw Domain::RelinkerException(missingModuleMessage + " Missing dependency: " + *unresolved.begin()); if (!unmatchedExclusions.empty()) throw Domain::RelinkerException("Excluded guest module file not found: " + *unmatchedExclusions.begin()); std::sort(paths.begin(), paths.end()); paths.erase(std::unique(paths.begin(), paths.end()), paths.end());