From c79647d66b501606e0bd4cf5b62a7eb7eb46b51c Mon Sep 17 00:00:00 2001 From: Michael Kuhn Date: Thu, 17 Dec 2020 17:02:49 +0100 Subject: flexi: new package (#20313) --- var/spack/repos/builtin/packages/flexi/package.py | 41 +++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 var/spack/repos/builtin/packages/flexi/package.py diff --git a/var/spack/repos/builtin/packages/flexi/package.py b/var/spack/repos/builtin/packages/flexi/package.py new file mode 100644 index 0000000000..5b9f65cf16 --- /dev/null +++ b/var/spack/repos/builtin/packages/flexi/package.py @@ -0,0 +1,41 @@ +# Copyright 2013-2020 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 Flexi(CMakePackage): + """Open Source High-Order Unstructured Discontinuous Galerkin Fluid + Dynamics Solver""" + + homepage = "https://www.flexi-project.org/" + git = "https://github.com/flexi-framework/flexi.git" + + version('master') + + variant('mpi', default=True, description='Enable MPI') + + depends_on('mpi', when='+mpi') + depends_on('hdf5+fortran+mpi', when='+mpi') + depends_on('hdf5+fortran~mpi', when='~mpi') + depends_on('lapack') + depends_on('zlib') + + def flag_handler(self, name, flags): + if name == 'fflags': + if self.spec.satisfies('%gcc@10:'): + if flags is None: + flags = [] + flags.append('-fallow-argument-mismatch') + + return (flags, None, None) + + def cmake_args(self): + args = [ + '-DFLEXI_BUILD_HDF5:BOOL=OFF', + self.define_from_variant('FLEXI_MPI', 'mpi') + ] + + return args -- cgit v1.2.3-60-g2f50