From 12e0eb6178e7db3b17575bca46c2297cb1d1d0c7 Mon Sep 17 00:00:00 2001 From: "John W. Parent" <45471568+johnwparent@users.noreply.github.com> Date: Thu, 13 Feb 2025 19:15:03 -0500 Subject: [PATCH] zlib package: Ensure correct lib search on Windows (#48512) * Name of zlib's library differs on Windows; also account for name differing when building +shared * `zlib`'s `.libs` implementation was searching for the runtime libraries (the .dlls) and should be searching for link-time libs --- var/spack/repos/builtin/packages/zlib/package.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/var/spack/repos/builtin/packages/zlib/package.py b/var/spack/repos/builtin/packages/zlib/package.py index d3b4ffcffdf..33e6650ec0e 100644 --- a/var/spack/repos/builtin/packages/zlib/package.py +++ b/var/spack/repos/builtin/packages/zlib/package.py @@ -84,7 +84,12 @@ def determine_version(cls, lib): @property def libs(self): shared = "+shared" in self.spec - return find_libraries(["libz"], root=self.prefix, recursive=True, shared=shared) + libnames = ["libz"] + if self.spec.satisfies("platform=windows"): + libnames.append("zdll" if shared else "zlib") + return find_libraries( + libnames, root=self.prefix, recursive=True, shared=shared, runtime=False + ) class SetupEnvironment: