openexr: Add custom libs property (#42274)

Libraries for openexr are named libOpenEXR*.so, etc., so the default libs
handler in spec does not find them.

Add a custom libs property to address this.

Partial fix for #42273

Co-authored-by: payerle <payerle@users.noreply.github.com>
This commit is contained in:
Tom Payerle 2024-02-27 04:45:29 -05:00 committed by GitHub
parent 2a9fc3452a
commit 3290e2c189
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -85,6 +85,17 @@ class Openexr(CMakePackage, AutotoolsPackage):
with when("build_system=cmake"):
depends_on("cmake@3.12:", type="build")
@property
def libs(self):
# Override because libs have different case than Spack package name
name = "libOpenEXR*"
# We expect libraries to be in either lib64 or lib directory
for root in (self.prefix.lib64, self.prefix.lib):
liblist = find_libraries(name, root=root, shared=True, recursive=False)
if liblist:
break
return liblist
class CMakeBuilder(CMakeBuilder):
def cmake_args(self):