summaryrefslogtreecommitdiff
path: root/var/spack/repos/builtin/packages/exago/package.py
diff options
context:
space:
mode:
authorryandanehy <110119005+ryandanehy@users.noreply.github.com>2022-10-27 08:14:09 -0700
committerGitHub <noreply@github.com>2022-10-27 17:14:09 +0200
commit5a939d9c94e5723c310f6680edc038825c0b4f99 (patch)
tree62ea59f1b5526003e7d475843c6bd5654175c4b9 /var/spack/repos/builtin/packages/exago/package.py
parent6cb4a00280849c22191ac0d506eeac93db3052a5 (diff)
downloadspack-5a939d9c94e5723c310f6680edc038825c0b4f99.tar.gz
spack-5a939d9c94e5723c310f6680edc038825c0b4f99.tar.bz2
spack-5a939d9c94e5723c310f6680edc038825c0b4f99.tar.xz
spack-5a939d9c94e5723c310f6680edc038825c0b4f99.zip
exago, hiop: propagate build type (#32750)
Diffstat (limited to 'var/spack/repos/builtin/packages/exago/package.py')
-rw-r--r--var/spack/repos/builtin/packages/exago/package.py38
1 files changed, 36 insertions, 2 deletions
diff --git a/var/spack/repos/builtin/packages/exago/package.py b/var/spack/repos/builtin/packages/exago/package.py
index b85f72e9d8..06c3ad8173 100644
--- a/var/spack/repos/builtin/packages/exago/package.py
+++ b/var/spack/repos/builtin/packages/exago/package.py
@@ -13,7 +13,7 @@ class Exago(CMakePackage, CudaPackage, ROCmPackage):
homepage = "https://gitlab.pnnl.gov/exasgd/frameworks/exago"
git = "https://gitlab.pnnl.gov/exasgd/frameworks/exago.git"
- maintainers = ["ashermancinelli", "CameronRutherford", "pelesh"]
+ maintainers = ["ryandanehy", "CameronRutherford", "pelesh"]
version(
"1.4.1", commit="ea607c685444b5f345bfdc9a59c345f0f30adde2", submodules=True, preferred=True
@@ -46,7 +46,7 @@ class Exago(CMakePackage, CudaPackage, ROCmPackage):
conflicts("~hiop~ipopt", msg="ExaGO needs at least one solver enabled")
- # Dependencides
+ # Dependencies
depends_on("pkgconfig", type="build")
depends_on("mpi", when="+mpi")
depends_on("blas")
@@ -62,6 +62,40 @@ class Exago(CMakePackage, CudaPackage, ROCmPackage):
depends_on("cmake@3.18:", type="build")
+ # Profiling
+ depends_on(
+ "hiop+deepchecking build_type=RelWithDebInfo", when="+hiop build_type=RelWithDebInfo"
+ )
+ depends_on("hiop~deepchecking build_type=Release ", when="+hiop build_type=Release ")
+
+ # Control the package's build-type depending on the release or debug flag
+ for pkg in [
+ ("raja", "raja"),
+ ("umpire", "raja"),
+ ("magma", "hiop+cuda"),
+ ("magma", "hiop+rocm"),
+ ("camp", "raja"),
+ ]:
+ depends_on(
+ "{0} build_type=Release".format(pkg[0]), when="+{0} build_type=Release".format(pkg[1])
+ )
+ depends_on(
+ "{0} build_type=RelWithDebInfo".format(pkg[0]),
+ when="+{0} build_type=RelWithDebInfo".format(pkg[1]),
+ )
+
+ depends_on(
+ "{0} build_type=Release".format("hiop+ginkgo ^ginkgo"),
+ when="+{0} build_type=Release".format("hiop ^hiop+ginkgo"),
+ )
+ depends_on(
+ "{0} build_type=Debug".format("hiop+ginkgo ^ginkgo"),
+ when="+{0} build_type=RelWithDebInfo".format("hiop ^hiop+ginkgo"),
+ )
+ # depends_on("hpctoolkit", when="with_profiling=hpctoolkit")
+ # depends_on("tau", when="with_profiling=tau")
+ # ^ need to depend when both hpctoolkit and tau
+
# HiOp dependency logic
depends_on("hiop+raja", when="+hiop+raja")
depends_on("hiop@0.3.99:", when="@0.99:+hiop")