summaryrefslogtreecommitdiff
path: root/var/spack/repos/builtin/packages/claw/package.py
diff options
context:
space:
mode:
Diffstat (limited to 'var/spack/repos/builtin/packages/claw/package.py')
-rw-r--r--var/spack/repos/builtin/packages/claw/package.py89
1 files changed, 47 insertions, 42 deletions
diff --git a/var/spack/repos/builtin/packages/claw/package.py b/var/spack/repos/builtin/packages/claw/package.py
index 628cd8d73d..904bdc94b8 100644
--- a/var/spack/repos/builtin/packages/claw/package.py
+++ b/var/spack/repos/builtin/packages/claw/package.py
@@ -8,67 +8,72 @@ from spack.package import *
class Claw(CMakePackage):
"""CLAW Compiler targets performance portability problem in climate and
- weather application written in Fortran. From a single source code, it
- generates architecture specific code decorated with OpenMP or OpenACC"""
-
- homepage = 'https://claw-project.github.io/'
- git = 'https://github.com/claw-project/claw-compiler.git'
- maintainers = ['clementval', 'skosukhin']
-
- version('2.0.3', tag='v2.0.3', submodules=True)
- version('2.0.2', tag='v2.0.2', submodules=True)
- version('2.0.1', tag='v2.0.1', submodules=True)
- version('2.0', tag='v2.0', submodules=True)
- version('1.2.3', tag='v1.2.3', submodules=True)
- version('1.2.2', tag='v1.2.2', submodules=True)
- version('1.2.1', tag='v1.2.1', submodules=True)
- version('1.2.0', tag='v1.2.0', submodules=True)
- version('1.1.0', tag='v1.1.0', submodules=True)
-
- depends_on('cmake@3.0:', type='build')
- depends_on('ant@1.9:', type='build')
- depends_on('bison', type='build')
- depends_on('flex', type='build')
-
- depends_on('java@8:', when="@2.0:")
- depends_on('java@7:', when="@1.1.0:1.2.3")
- depends_on('libxml2')
+ weather application written in Fortran. From a single source code, it
+ generates architecture specific code decorated with OpenMP or OpenACC"""
+
+ homepage = "https://claw-project.github.io/"
+ git = "https://github.com/claw-project/claw-compiler.git"
+ maintainers = ["clementval", "skosukhin"]
+
+ version("2.0.3", tag="v2.0.3", submodules=True)
+ version("2.0.2", tag="v2.0.2", submodules=True)
+ version("2.0.1", tag="v2.0.1", submodules=True)
+ version("2.0", tag="v2.0", submodules=True)
+ version("1.2.3", tag="v1.2.3", submodules=True)
+ version("1.2.2", tag="v1.2.2", submodules=True)
+ version("1.2.1", tag="v1.2.1", submodules=True)
+ version("1.2.0", tag="v1.2.0", submodules=True)
+ version("1.1.0", tag="v1.1.0", submodules=True)
+
+ depends_on("cmake@3.0:", type="build")
+ depends_on("ant@1.9:", type="build")
+ depends_on("bison", type="build")
+ depends_on("flex", type="build")
+
+ depends_on("java@8:", when="@2.0:")
+ depends_on("java@7:", when="@1.1.0:1.2.3")
+ depends_on("libxml2")
# Enable parsing of source files with calls to TRACEBACKQQ from the Intel
# Fortran run-time library:
- patch('https://github.com/claw-project/claw-compiler/commit/e9fe6dbd291454ce34dd58f21d102f7f1bdff874.patch?full_index=1',
- sha256='262799fde57cb32f1514db22a7757e994bd8b97090ce0a5f55249fd56d0e5c29',
- when='@:2.0.2%intel')
+ patch(
+ "https://github.com/claw-project/claw-compiler/commit/e9fe6dbd291454ce34dd58f21d102f7f1bdff874.patch?full_index=1",
+ sha256="262799fde57cb32f1514db22a7757e994bd8b97090ce0a5f55249fd56d0e5c29",
+ when="@:2.0.2%intel",
+ )
# Fix the dependency preprocessing for compilers that cannot use
# redirection > to save file (cce is currently the only known case):
- patch('https://github.com/claw-project/claw-compiler/commit/4d8bc7a794af3651b8b61501388fc00096b23a85.patch?full_index=1',
- sha256='a20427456560070e284ff44edb658383b635042be91d2ffbe7aeb7afbd8f02bc',
- when='@2.0.2%cce')
+ patch(
+ "https://github.com/claw-project/claw-compiler/commit/4d8bc7a794af3651b8b61501388fc00096b23a85.patch?full_index=1",
+ sha256="a20427456560070e284ff44edb658383b635042be91d2ffbe7aeb7afbd8f02bc",
+ when="@2.0.2%cce",
+ )
# Cache ANT dependencies in the stage directory.
# Otherwise, they are cached to the user's home directory.
- patch('ivy_local_cache.patch')
+ patch("ivy_local_cache.patch")
# https://github.com/claw-project/claw-compiler/pull/586
- conflicts('%nag', when='@:2.0.1')
+ conflicts("%nag", when="@:2.0.1")
- filter_compiler_wrappers('claw_f.conf', relative_root='etc')
+ filter_compiler_wrappers("claw_f.conf", relative_root="etc")
def flag_handler(self, name, flags):
- if name == 'cflags':
- if any([self.spec.compiler.satisfies(s) for s in
- ['gcc@10:', 'clang@11:', 'cce@11:', 'aocc@3:']]):
+ if name == "cflags":
+ if any(
+ [
+ self.spec.compiler.satisfies(s)
+ for s in ["gcc@10:", "clang@11:", "cce@11:", "aocc@3:"]
+ ]
+ ):
# https://gcc.gnu.org/gcc-10/porting_to.html
# https://releases.llvm.org/11.0.0/tools/clang/docs/ReleaseNotes.html#modified-compiler-flags
- flags.append('-fcommon')
+ flags.append("-fcommon")
return flags, None, None
def cmake_args(self):
- args = [
- '-DOMNI_CONF_OPTION=--with-libxml2=%s' %
- self.spec['libxml2'].prefix
- ]
+ args = ["-DOMNI_CONF_OPTION=--with-libxml2=%s" % self.spec["libxml2"].prefix]
return args