superlu-dist: add +parmetis variant. (#40746)

* Expose ability to make parmetis an optional superlu-dist dependency to
spack package management.

* rename parmetis variant: Enable ParMETIS library

---------

Co-authored-by: eugeneswalker <eugenesunsetwalker@gmail.com>
This commit is contained in:
Jacob King 2023-11-07 11:21:38 -07:00 committed by GitHub
parent b8302a8277
commit a093f4a8ce
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -53,14 +53,16 @@ class SuperluDist(CMakePackage, CudaPackage, ROCmPackage):
),
)
variant("shared", default=True, description="Build shared libraries")
variant("parmetis", default=True, description="Enable ParMETIS library")
depends_on("mpi")
depends_on("blas")
depends_on("lapack")
depends_on("parmetis +int64", when="+int64")
with when("+parmetis"):
depends_on("metis@5: +int64", when="+int64")
depends_on("parmetis ~int64", when="~int64")
depends_on("parmetis +int64", when="+int64")
depends_on("metis@5: ~int64", when="~int64")
depends_on("parmetis ~int64", when="~int64")
depends_on("cmake@3.18.1:", type="build", when="@7.1.0:")
depends_on("hipblas", when="+rocm")
depends_on("rocsolver", when="+rocm")
@ -93,8 +95,12 @@ def append_from_variant(*args):
append_define("TPL_LAPACK_LIBRARIES", spec["lapack"].libs)
append_define("TPL_ENABLE_LAPACKLIB", True)
append_define("USE_XSDK_DEFAULTS", True)
append_from_variant("TPL_ENABLE_PARMETISLIB", "parmetis")
if "+parmetis" in spec:
append_define(
"TPL_PARMETIS_LIBRARIES", [spec["parmetis"].libs.ld_flags, spec["metis"].libs.ld_flags]
"TPL_PARMETIS_LIBRARIES",
[spec["parmetis"].libs.ld_flags, spec["metis"].libs.ld_flags],
)
append_define(
"TPL_PARMETIS_INCLUDE_DIRS",