From c7eb0ed0b56b3bba1cdc00d7e2ab86072c5d7250 Mon Sep 17 00:00:00 2001 From: Dominic Kempf Date: Tue, 19 May 2020 14:45:48 +0200 Subject: [PATCH] Add dune-fem to the Spack package --- packages/dune/package.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/packages/dune/package.py b/packages/dune/package.py index c4b5ced..83b766a 100644 --- a/packages/dune/package.py +++ b/packages/dune/package.py @@ -53,6 +53,7 @@ class Dune(CMakePackage): variant('lapack', default=True, description='Build with LAPACK support') variant('metis', default=True, description='Build with METIS library support') variant('parmetis', default=False, description='Build with ParMETIS support') + variant('petsc', default=False, description='Build with PetSc support') variant('ptscotch', default=True, description='Build with PT-Scotch support') variant('sionlib', default=False, description='Build with SIONlib support') variant('suitesparse', default=True, description='Build SuiteSparse library support') @@ -69,6 +70,7 @@ class Dune(CMakePackage): # are activated by default. variant('alugrid', default=False, description='Build with dune-alugrid module') variant('codegen', default=False, description='Build with dune-codegen module') + variant('fem', default=False, description='Build with dune-fem(py) module') variant('foamgrid', default=False, description='Build with dune-foamgrid module') variant('functions', default=False, description='Build with dune-functions module') variant('geometry', default=True, description='Build with dune-geometry module') @@ -181,6 +183,20 @@ class Dune(CMakePackage): when='@%s+multidomaingrid' % vers, ) + resource( + name='dune-fem', + git='https://gitlab.dune-project.org/dune-fem/dune-fem.git', + branch=branch, + when='@%s+fem' % vers, + ) + + resource( + name='dune-fempy', + git='https://gitlab.dune-project.org/dune-fem/dune-fempy.git', + branch=branch, + when='@%s+fem+python' % vers, + ) + # The dune-grid-glue package does not yet have a 2.7-compatible release resource( name='dune-grid-glue', @@ -220,6 +236,8 @@ class Dune(CMakePackage): module_dependencies["dune-alugrid"] = ["dune-grid", "dune-geometry", "dune-common"] module_dependencies["dune-codegen"] = ["dune-pdelab", "dune-testtools", "dune-alugrid"] module_dependencies["dune-common"] = [] + module_dependencies["dune-fem"] = ["dune-grid"] + module_dependencies["fune-fempy"] = ["dune-fem"] module_dependencies["dune-foamgrid"] = ["dune-grid"] module_dependencies["dune-functions"] = ["dune-grid", "dune-typetree", "dune-localfunctions", "dune-istl"] module_dependencies["dune-geometry"] = ["dune-common"] @@ -243,7 +261,9 @@ class Dune(CMakePackage): depends_on('benchmark', when='+codegen') depends_on('blas', when='+blas') depends_on('cmake@3.1:', type='build') + depends_on('eigen', when='+fem') depends_on('eigen', when='+pdelab') + depends_on('papi', when='+fem') depends_on('doxygen', type='build', when='+doc') depends_on('gawk') depends_on('gmp', when='+gmp') @@ -253,6 +273,7 @@ class Dune(CMakePackage): depends_on('metis', when='+metis') depends_on('mpi') depends_on('parmetis', when='+parmetis') + depends_on('petsc', when='+petsc') depends_on('pkg-config', type='build') depends_on('python@3.0:', type=('build', 'run')) depends_on('py-setuptools', type='build', when='+python')