eigenexa: add 2.7–2.12 (#38170)

This commit is contained in:
Eisuke Kawashima 2024-02-27 17:23:08 +09:00 committed by GitHub
parent 4abac88895
commit 02137dda17
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -10,9 +10,18 @@ class Eigenexa(AutotoolsPackage):
"""EigenExa is a high-performance eigenvalue solver."""
homepage = "https://www.r-ccs.riken.jp/labs/lpnctrt/projects/eigenexa/"
url = "https://www.r-ccs.riken.jp/labs/lpnctrt/projects/eigenexa/EigenExa-2.6.tgz"
version("2.6", sha256="a1a4e571a8051443f28e7ea4889272993452a4babd036d2b4dd6b28154302f95")
version("2.12", sha256="2a33999b09d4434a5ce2fbd18cabbfee1cff0b2a12df7ded1f67127157b08f86")
version("2.11", sha256="87dee8ac13f410a007e82df2688fa7f143883229dac729fd20836f4a28fac43d")
version("2.10", sha256="5b1806e132b191d23680b34fbc286d676ba20f58ee754122087a3ec3cacb8fa3")
version("2.9", sha256="8788922035bf67abf1a7aecf8e30dd7564de387fda4ecd11c6b4cf9259d25990")
version("2.8", sha256="3ee846d4db10336d393738eadab2f1c941dfc8fb501f2a4baf0823f0ff938f56")
version("2.7", sha256="490f3d0217a8c101e66e785229baaba5b4d674508bc9a5aca6cc5fa074f3a8aa")
version(
"2.6",
sha256="a1a4e571a8051443f28e7ea4889272993452a4babd036d2b4dd6b28154302f95",
url="https://www.r-ccs.riken.jp/labs/lpnctrt/projects/eigenexa/EigenExa-2.6.tgz",
)
depends_on("autoconf", type="build")
depends_on("automake", type="build")
@ -23,11 +32,16 @@ class Eigenexa(AutotoolsPackage):
depends_on("scalapack")
patch("fj_compiler.patch", when="%fj")
patch("gcc_compiler.patch", when="%gcc")
patch("gcc_compiler.patch", when="@:2.6.99 %gcc")
parallel = False
force_autoreconf = True
def url_for_version(self, version):
return "https://www.r-ccs.riken.jp/labs/lpnctrt/projects/eigenexa/EigenExa-{0}.{1}".format(
version, "tar.gz" if version >= Version("2.7") else ".tgz"
)
def setup_build_environment(self, env):
env.set("FC", self.spec["mpi"].mpifc, force=True)
env.set("F77", self.spec["mpi"].mpif77, force=True)
@ -47,6 +61,13 @@ def setup_build_environment(self, env):
),
)
if self.spec.satisfies("%gcc@10:"):
fflags = "-fallow-argument-mismatch"
if self.spec.satisfies("@:2.8"):
fflags += " -fallow-invalid-boz"
env.set("FCFLAGS", fflags)
env.set("FFLAGS", fflags)
@run_after("install")
def cache_test_sources(self):
"""Save off benchmark files for stand-alone tests."""