diff --git a/var/spack/repos/builtin/packages/gmsh/package.py b/var/spack/repos/builtin/packages/gmsh/package.py index 4f8a14008c62ef61077ed830ea33b17c8ddfc3cb..f96e724b4f3975eeeb9850f73b34243e27fead0a 100644 --- a/var/spack/repos/builtin/packages/gmsh/package.py +++ b/var/spack/repos/builtin/packages/gmsh/package.py @@ -19,7 +19,8 @@ class Gmsh(CMakePackage): homepage = 'http://gmsh.info' url = 'http://gmsh.info/src/gmsh-2.11.0-source.tgz' - version('4.0.0', sha256='fb0c8afa37425c6f4315ab3b3124e9e102fcf270a35198423a4002796f04155f') + version('4.2.2', sha256='e9ee9f5c606bbec5f2adbb8c3d6023c4e2577f487fa4e4ecfcfc94a241cc8dcc') + version('4.0.0', 'fb0c8afa37425c6f4315ab3b3124e9e102fcf270a35198423a4002796f04155f') version('3.0.6', '9700bcc440d7a6b16a49cbfcdcdc31db33efe60e1f5113774316b6fa4186987b') version('3.0.1', '830b5400d9f1aeca79c3745c5c9fdaa2900cdb2fa319b664a5d26f7e615c749f') version('2.16.0', 'e829eaf32ea02350a385202cc749341f2a3217c464719384b18f653edd028eea') @@ -29,6 +30,7 @@ class Gmsh(CMakePackage): variant('shared', default=True, description='Enables the build of shared libraries') variant('mpi', default=True, description='Builds MPI support for parser and solver') + variant('openmp', default=False, description='Enable OpenMP support') variant('fltk', default=False, description='Enables the build of the FLTK GUI') variant('hdf5', default=False, description='Enables HDF5 support') variant('compression', default=True, description='Enables IO compression through zlib') @@ -37,6 +39,7 @@ class Gmsh(CMakePackage): variant('petsc', default=False, description='Build with PETSc') variant('slepc', default=False, description='Build with SLEPc (only when PETSc is enabled)') variant('tetgen', default=False, description='Build with Tetgen') + variant('metis', default=False, description='Build with Metis') depends_on('blas') depends_on('lapack') @@ -53,6 +56,7 @@ class Gmsh(CMakePackage): depends_on('slepc', when='+slepc+petsc') depends_on('tetgen', when='+tetgen') depends_on('zlib', when='+compression') + depends_on('metis', when='+metis') conflicts('+slepc', when='~petsc') @@ -76,8 +80,12 @@ def cmake_args(self): '-DBLAS_LAPACK_LIBRARIES={0}'.format(blas_lapack.ld_flags)) # Gmsh does not have an option to compile against external metis. - # Its own Metis, however, fails to build - options.append('-DENABLE_METIS=OFF') + # Its own Metis, however, fails to build. + # However, Metis is needed for the Hxt library. + if '+metis' in spec: + options.append('-DENABLE_METIS=ON') + else: + options.append('-DENABLE_METIS=OFF') if '+fltk' in spec: options.append('-DENABLE_FLTK=ON') @@ -122,6 +130,11 @@ def cmake_args(self): # Builds and installs static library options.append('-DENABLE_BUILD_LIB:BOOL=ON') + if '+openmp' in spec: + options.append('-DENABLE_OPENMP=ON') + else: + options.append('-DENABLE_OPENMP=OFF') + if '+mpi' in spec: options.append('-DENABLE_MPI:BOOL=ON')