ExaGO: disable Python with rocm+ipopt. HiOp: fix umpire+raja costraints. RAJA: fix option naming for 0.14.0 (#31880)
This commit is contained in:
parent
43be9a1ac1
commit
3a62f3aeae
@ -36,6 +36,9 @@ class Exago(CMakePackage, CudaPackage, ROCmPackage):
|
||||
variant("raja", default=False, description="Enable/Disable RAJA")
|
||||
variant("python", default=True, description="Enable/Disable Python bindings")
|
||||
conflicts("+python", when="@:1.3.0", msg="Python bindings require ExaGO 1.4")
|
||||
conflicts(
|
||||
"+python", when="+ipopt+rocm", msg="Python bindings require -fPIC with Ipopt for rocm."
|
||||
)
|
||||
|
||||
# Solver options
|
||||
variant("hiop", default=False, description="Enable/Disable HiOp")
|
||||
@ -72,7 +75,7 @@ class Exago(CMakePackage, CudaPackage, ROCmPackage):
|
||||
depends_on("petsc@3.16.0:3.16", when="@1.3.0:")
|
||||
depends_on("petsc~mpi", when="~mpi")
|
||||
|
||||
depends_on("py-pytest", type=("build", "run"), when="@1.4.1:")
|
||||
depends_on("py-pytest", type=("build", "run"), when="@1.4.1:+python")
|
||||
|
||||
for arch in CudaPackage.cuda_arch_values:
|
||||
cuda_dep = "+cuda cuda_arch={0}".format(arch)
|
||||
|
@ -81,6 +81,7 @@ class Hiop(CMakePackage, CudaPackage, ROCmPackage):
|
||||
depends_on("magma {0}".format(rocm_dep), when=rocm_dep)
|
||||
depends_on("raja {0}".format(rocm_dep), when="+raja {0}".format(rocm_dep))
|
||||
depends_on("umpire {0}".format(rocm_dep), when="+raja {0}".format(rocm_dep))
|
||||
depends_on("ginkgo {0}".format(rocm_dep), when="+ginkgo {0}".format(rocm_dep))
|
||||
|
||||
magma_ver_constraints = (
|
||||
("2.5.4", "0.4"),
|
||||
@ -96,10 +97,13 @@ class Hiop(CMakePackage, CudaPackage, ROCmPackage):
|
||||
depends_on("cuda@11:", when="@develop:+cuda")
|
||||
|
||||
depends_on("raja", when="+raja")
|
||||
depends_on("raja+openmp", when="+raja~cuda~rocm")
|
||||
depends_on("raja@0.14.0:", when="@0.5.0:+raja")
|
||||
depends_on("umpire", when="+raja")
|
||||
depends_on("umpire@6.0.0:", when="@0.5.0:+raja")
|
||||
depends_on("raja+openmp", when="+raja~cuda~rocm")
|
||||
|
||||
# Umpire > 0.14 and RAJA > 6.0 require c++ std 14
|
||||
depends_on("raja@0.14.0:0.14", when="@0.5.0:0.6.2+raja")
|
||||
depends_on("umpire@6.0.0:", when="@0.5.0:0.6.2+raja")
|
||||
|
||||
depends_on("hip", when="+rocm")
|
||||
depends_on("hipblas", when="+rocm")
|
||||
depends_on("hipsparse", when="+rocm")
|
||||
@ -109,7 +113,7 @@ class Hiop(CMakePackage, CudaPackage, ROCmPackage):
|
||||
depends_on("coinhsl+blas", when="+sparse")
|
||||
depends_on("metis", when="+sparse")
|
||||
|
||||
depends_on("ginkgo@glu+cuda", when="+ginkgo")
|
||||
depends_on("ginkgo@glu+cuda", when="+ginkgo+cuda")
|
||||
|
||||
conflicts(
|
||||
"+shared",
|
||||
|
@ -133,7 +133,7 @@ def initconfig_package_entries(self):
|
||||
spec = self.spec
|
||||
entries = []
|
||||
|
||||
option_prefix = "RAJA_" if spec.satisfies("@2022.03.0:") else ""
|
||||
option_prefix = "RAJA_" if spec.satisfies("@0.14.0:") else ""
|
||||
|
||||
entries.append(cmake_cache_path("BLT_SOURCE_DIR", spec["blt"].prefix))
|
||||
if "camp" in self.spec:
|
||||
|
Loading…
Reference in New Issue
Block a user