neko: add new package (#28791)

Co-authored-by: Massimiliano Culpo <massimiliano.culpo@gmail.com>
This commit is contained in:
Niclas Jansson 2022-03-30 09:34:10 +02:00 committed by GitHub
parent 8806f9f826
commit fdab17a4d4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -0,0 +1,42 @@
# Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
class Neko(AutotoolsPackage, CudaPackage, ROCmPackage):
"""Neko: A modern, portable, and scalable framework
for high-fidelity computational fluid dynamics
"""
homepage = "https://github.com/ExtremeFLOW/neko"
git = "https://github.com/ExtremeFLOW/neko.git"
maintainers = ['njansson']
version('0.3.0', commit='a82097a10ae3c965fb873da909a6324c7a7742fb')
version('develop', branch='develop')
variant('parmetis', default=False, description='Build with support for parmetis')
variant('xsmm', default=False, description='Build with support for libxsmm')
depends_on('autoconf', type='build')
depends_on('automake', type='build')
depends_on('libtool', type='build')
depends_on('m4', type='build')
depends_on('pkgconf', type='build')
depends_on('parmetis', when='+parmetis')
depends_on('libxsmm', when='+xsmm')
depends_on('mpi')
depends_on('blas')
depends_on('lapack')
def configure_args(self):
args = []
args += self.with_or_without('parmetis')
args += self.with_or_without('libxsmm', variant='xsmm')
args += self.with_or_without('cuda', activation_value='prefix')
rocm_fn = lambda x: spec['hip'].prefix
args += self.with_or_without('hip', variant='rocm', activation_value=rocm_fn)
return args