slepc: add HPDDM wrappers (#36118)
This commit is contained in:
parent
50cc1d12f9
commit
6af84c4574
2 changed files with 9 additions and 1 deletions
|
@ -13,7 +13,7 @@ class Petsc(Package, CudaPackage, ROCmPackage):
|
||||||
differential equations.
|
differential equations.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
homepage = "https://www.mcs.anl.gov/petsc/index.html"
|
homepage = "https://petsc.org"
|
||||||
url = "https://ftp.mcs.anl.gov/pub/petsc/release-snapshots/petsc-3.15.0.tar.gz"
|
url = "https://ftp.mcs.anl.gov/pub/petsc/release-snapshots/petsc-3.15.0.tar.gz"
|
||||||
git = "https://gitlab.com/petsc/petsc.git"
|
git = "https://gitlab.com/petsc/petsc.git"
|
||||||
maintainers("balay", "barrysmith", "jedbrown")
|
maintainers("balay", "barrysmith", "jedbrown")
|
||||||
|
|
|
@ -52,6 +52,7 @@ class Slepc(Package, CudaPackage, ROCmPackage):
|
||||||
|
|
||||||
variant("arpack", default=True, description="Enables Arpack wrappers")
|
variant("arpack", default=True, description="Enables Arpack wrappers")
|
||||||
variant("blopex", default=False, description="Enables BLOPEX wrappers")
|
variant("blopex", default=False, description="Enables BLOPEX wrappers")
|
||||||
|
variant("hpddm", default=False, description="Enables HPDDM wrappers")
|
||||||
|
|
||||||
# NOTE: make sure PETSc and SLEPc use the same python.
|
# NOTE: make sure PETSc and SLEPc use the same python.
|
||||||
depends_on("python@2.6:2.8,3.4:", type="build")
|
depends_on("python@2.6:2.8,3.4:", type="build")
|
||||||
|
@ -79,6 +80,8 @@ class Slepc(Package, CudaPackage, ROCmPackage):
|
||||||
# Arpack can not be used with 64bit integers.
|
# Arpack can not be used with 64bit integers.
|
||||||
conflicts("+arpack", when="@:3.12 ^petsc+int64")
|
conflicts("+arpack", when="@:3.12 ^petsc+int64")
|
||||||
conflicts("+blopex", when="^petsc+int64")
|
conflicts("+blopex", when="^petsc+int64")
|
||||||
|
# HPDDM cannot be used in both PETSc and SLEPc prior to 3.19.0
|
||||||
|
conflicts("+hpddm", when="@:3.18 ^petsc+hpddm")
|
||||||
|
|
||||||
resource(
|
resource(
|
||||||
name="blopex",
|
name="blopex",
|
||||||
|
@ -147,6 +150,11 @@ def install(self, spec, prefix):
|
||||||
if "+blopex" in spec:
|
if "+blopex" in spec:
|
||||||
options.append("--download-blopex")
|
options.append("--download-blopex")
|
||||||
|
|
||||||
|
# For the moment, HPDDM does not work as a dependency
|
||||||
|
# using download instead
|
||||||
|
if "+hpddm" in spec:
|
||||||
|
options.append("--download-hpddm")
|
||||||
|
|
||||||
python("configure", "--prefix=%s" % prefix, *options)
|
python("configure", "--prefix=%s" % prefix, *options)
|
||||||
|
|
||||||
make("V=1")
|
make("V=1")
|
||||||
|
|
Loading…
Reference in a new issue