summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--var/spack/repos/builtin/packages/suite-sparse/package.py50
1 files changed, 24 insertions, 26 deletions
diff --git a/var/spack/repos/builtin/packages/suite-sparse/package.py b/var/spack/repos/builtin/packages/suite-sparse/package.py
index d2b85a741c..3c1e3901e8 100644
--- a/var/spack/repos/builtin/packages/suite-sparse/package.py
+++ b/var/spack/repos/builtin/packages/suite-sparse/package.py
@@ -15,6 +15,9 @@ class SuiteSparse(Package):
url = "https://github.com/DrTimothyAldenDavis/SuiteSparse/archive/v4.5.3.tar.gz"
git = "https://github.com/DrTimothyAldenDavis/SuiteSparse.git"
+ version("5.13.0", sha256="59c6ca2959623f0c69226cf9afb9a018d12a37fab3a8869db5f6d7f83b6b147d")
+ version("5.12.0", sha256="5fb0064a3398111976f30c5908a8c0b40df44c6dd8f0cc4bfa7b9e45d8c647de")
+ version("5.11.0", sha256="fdd957ed06019465f7de73ce931afaf5d40e96e14ae57d91f60868b8c123c4c8")
version("5.10.1", sha256="acb4d1045f48a237e70294b950153e48dce5b5f9ca8190e86c2b8c54ce00a7ee")
version("5.10.0", sha256="4bcc974901c0173acf80c41ee0fd779eb7dce2871d4afa24a5d15b1a468f93e5")
version("5.9.0", sha256="7bdd4811f1cf0767c5fdb5e435817fdadee50b0acdb598f4882ae7b8291a7f24")
@@ -34,7 +37,6 @@ class SuiteSparse(Package):
version("4.5.5", sha256="80d1d9960a6ec70031fecfe9adfe5b1ccd8001a7420efb50d6fa7326ef14af91")
version("4.5.3", sha256="b6965f9198446a502cde48fb0e02236e75fa5700b94c7306fc36599d57b563f4")
- variant("tbb", default=False, description="Build with Intel TBB")
variant(
"pic",
default=True,
@@ -48,21 +50,33 @@ class SuiteSparse(Package):
description="Build with GraphBLAS (takes a long time to compile)",
)
- depends_on("mpfr@4.0.0:", type=("build", "link"), when="@5.8.0:")
- depends_on("gmp", type=("build", "link"), when="@5.8.0:")
+ # In @4.5.1. TBB support in SPQR seems to be broken as TBB-related linking
+ # flags does not seem to be used, which leads to linking errors on Linux.
+ # Support for TBB has been removed in version 5.11
+ variant("tbb", default=False, description="Build with Intel TBB", when="@4.5.3:5.10")
+
depends_on("blas")
depends_on("lapack")
+ depends_on("cuda", when="+cuda")
+
+ depends_on("mpfr@4.0.0:", when="@5.8.0:")
+ depends_on("gmp", when="@5.8.0:")
depends_on("m4", type="build", when="@5.0.0:")
depends_on("cmake", when="+graphblas @5.2.0:", type="build")
-
depends_on("metis@5.1.0", when="@4.5.1:")
- # in @4.5.1. TBB support in SPQR seems to be broken as TBB-related linkng
- # flags does not seem to be used, which leads to linking errors on Linux.
- depends_on("tbb", when="@4.5.3:+tbb")
-
- depends_on("cuda", when="+cuda")
- patch("tbb_453.patch", when="@4.5.3:4.5.5+tbb")
+ with when("+tbb"):
+ depends_on("tbb")
+ patch("tbb_453.patch", when="@4.5.3:4.5.5")
+ # The @2021.x versions of tbb dropped the task_scheduler_init.h header and
+ # related stuff (which have long been deprecated). This appears to be
+ # rather problematic for suite-sparse (see e.g.
+ # https://github.com/DrTimothyAldenDavis/SuiteSparse/blob/master/SPQR/Source/spqr_parallel.cpp)
+ depends_on("intel-tbb@:2020 build_system=makefile", when="^intel-tbb")
+ conflicts(
+ "^intel-oneapi-tbb@2021:",
+ msg="suite-sparse needs task_scheduler_init.h dropped in recent tbb libs",
+ )
# This patch removes unsupported flags for pgi compiler
patch("pgi.patch", when="%pgi")
@@ -81,22 +95,6 @@ class SuiteSparse(Package):
"%gcc@:4.8", when="@5.2.0:", msg="gcc version must be at least 4.9 for suite-sparse@5.2.0:"
)
- # The @2021.x versions of tbb dropped the task_scheduler_init.h header and
- # related stuff (which have long been deprecated). This appears to be
- # rather problematic for suite-sparse (see e.g.
- # https://github.com/DrTimothyAldenDavis/SuiteSparse/blob/master/SPQR/Source/spqr_parallel.cpp)
- # Have Spack complain if +tbb and trying to use a 2021.x version of tbb
- conflicts(
- "+tbb",
- when="^intel-oneapi-tbb@2021:",
- msg="suite-sparse needs task_scheduler_init.h dropped in " "recent tbb libs",
- )
- conflicts(
- "+tbb",
- when="^intel-tbb@2021:",
- msg="suite-sparse needs task_scheduler_init.h dropped in " "recent tbb libs",
- )
-
def symbol_suffix_blas(self, spec, args):
"""When using BLAS with a special symbol suffix we use defines to
replace blas symbols, e.g. dgemm_ becomes dgemm_64_ when