From a06bf21610830f9d7a282d54137c06c7e393ef94 Mon Sep 17 00:00:00 2001 From: Cameron Smith Date: Thu, 14 Feb 2019 15:36:56 -0500 Subject: new variant: simmodsuite for pumi (#8775) --- var/spack/repos/builtin/packages/pumi/package.py | 26 +++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/var/spack/repos/builtin/packages/pumi/package.py b/var/spack/repos/builtin/packages/pumi/package.py index ddcac1c94b..71e1df4f9e 100644 --- a/var/spack/repos/builtin/packages/pumi/package.py +++ b/var/spack/repos/builtin/packages/pumi/package.py @@ -32,10 +32,25 @@ class Pumi(CMakePackage): variant('shared', default=False, description='Build shared libraries') variant('zoltan', default=False, description='Enable Zoltan Features') variant('fortran', default=False, description='Enable FORTRAN interface') + variant('simmodsuite', default='none', + values=('none', 'base', 'kernels', 'full'), + description="Enable Simmetrix SimModSuite Support: 'base' enables " + "the minimum set of functionality, 'kernels' adds CAD kernel support " + "to 'base', and 'full' enables all functionality.") depends_on('mpi') depends_on('cmake@3:', type='build') depends_on('zoltan', when='+zoltan') + simbase = "+base" + simkernels = simbase + "+parasolid+acis+discrete" + simfull = simkernels + "+abstract+adv+advmodel\ + +import+paralleladapt+parallelmesh" + depends_on('simmetrix-simmodsuite' + simbase, + when='simmodsuite=base') + depends_on('simmetrix-simmodsuite' + simkernels, + when='simmodsuite=kernels') + depends_on('simmetrix-simmodsuite' + simfull, + when='simmodsuite=full') def cmake_args(self): spec = self.spec @@ -50,5 +65,14 @@ class Pumi(CMakePackage): '-DPUMI_FORTRAN_INTERFACE=%s' % ('ON' if '+fortran' in spec else 'OFF') ] - + if self.spec.satisfies('simmodsuite=base'): + args.append('-DENABLE_SIMMETRIX=ON') + if self.spec.satisfies('simmodsuite=kernels') or \ + self.spec.satisfies('simmodsuite=full'): + args.append('-DENABLE_SIMMETRIX=ON') + args.append('-DSIM_PARASOLID=ON') + args.append('-DSIM_ACIS=ON') + args.append('-DSIM_DISCRETE=ON') + mpi_id = spec['mpi'].name + spec['mpi'].version.string + args.append('-DSIM_MPI=' + mpi_id) return args -- cgit v1.2.3-70-g09d2