Update GMSH to 4.2.2 with OpenMP variant (#10914)

This commit is contained in:
bfovet 2019-03-20 05:12:57 +01:00 committed by Massimiliano Culpo
parent f51bce5636
commit 81f699eca3

View File

@ -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')