add deal.ii package
This commit is contained in:
parent
2d69f386d0
commit
0ee993569f
1 changed files with 67 additions and 0 deletions
67
var/spack/repos/builtin/packages/dealii/package.py
Normal file
67
var/spack/repos/builtin/packages/dealii/package.py
Normal file
|
@ -0,0 +1,67 @@
|
||||||
|
from spack import *
|
||||||
|
|
||||||
|
class Dealii(Package):
|
||||||
|
"""C++ software library providing well-documented tools to build finite element codes for a broad variety of PDEs."""
|
||||||
|
homepage = "https://www.dealii.org"
|
||||||
|
url = "https://github.com/dealii/dealii/releases/download/v8.4.0/dealii-8.4.0.tar.gz"
|
||||||
|
|
||||||
|
version('8.4.0', 'ac5dbf676096ff61e092ce98c80c2b00')
|
||||||
|
|
||||||
|
depends_on ("cmake")
|
||||||
|
depends_on ("blas")
|
||||||
|
depends_on ("lapack")
|
||||||
|
depends_on ("mpi")
|
||||||
|
|
||||||
|
#depends_on ("arpack")
|
||||||
|
depends_on ("boost")
|
||||||
|
#depends_on ("doxygen")
|
||||||
|
depends_on ("hdf5+mpi")
|
||||||
|
depends_on ("metis")
|
||||||
|
#depends_on "muparser"
|
||||||
|
depends_on ("netcdf")
|
||||||
|
#depends_on ("numdiff")
|
||||||
|
#depends_on ("oce")
|
||||||
|
depends_on ("p4est")
|
||||||
|
depends_on ("parmetis")
|
||||||
|
depends_on ("petsc")
|
||||||
|
#depends_on ("slepc")
|
||||||
|
depends_on ("SuiteSparse")
|
||||||
|
#depends_on "tbb"
|
||||||
|
depends_on ("trilinos")
|
||||||
|
|
||||||
|
def install(self, spec, prefix):
|
||||||
|
options = []
|
||||||
|
options.extend(std_cmake_args)
|
||||||
|
|
||||||
|
# CMAKE_BUILD_TYPE should be DebugRelease | Debug | Release
|
||||||
|
for word in options[:]:
|
||||||
|
if word.startswith('-DCMAKE_BUILD_TYPE'):
|
||||||
|
options.remove(word)
|
||||||
|
|
||||||
|
options.extend([
|
||||||
|
'-DCMAKE_BUILD_TYPE=DebugRelease',
|
||||||
|
'-DDEAL_II_WITH_THREADS:BOOL=ON'
|
||||||
|
'-DDEAL_II_WITH_MPI:BOOL=ON',
|
||||||
|
'-DCMAKE_C_COMPILER=%s' % join_path(self.spec['mpi'].prefix.bin, 'mpicc'),
|
||||||
|
'-DCMAKE_CXX_COMPILER=%s' % join_path(self.spec['mpi'].prefix.bin, 'mpic++'),
|
||||||
|
'-DCMAKE_Fortran_COMPILER=%s' % join_path(self.spec['mpi'].prefix.bin, 'mpif90'),
|
||||||
|
#'-DARPACK_DIR=%s' % ,
|
||||||
|
'-DBOOST_DIR=%s' % spec['boost'].prefix,
|
||||||
|
'-DHDF5_DIR=%s' % spec['hdf5'].prefix,
|
||||||
|
'-DMETIS_DIR=%s' % spec['metis'].prefix,
|
||||||
|
#'-DMUPARSER_DIR=%s '
|
||||||
|
'-DNETCDF_DIR=%s' % spec['netcdf'].prefix,
|
||||||
|
#'-DOPENCASCADE_DIR=
|
||||||
|
'-DP4EST_DIR=%s' % spec['p4est'].prefix,
|
||||||
|
'-DPETSC_DIR=%s' % spec['petsc'].prefix,
|
||||||
|
#'-DSLEPC_DIR=
|
||||||
|
'-DUMFPACK_DIR=%s' % spec['SuiteSparse'].prefix,
|
||||||
|
#'-DTBB_DIR=%s'
|
||||||
|
'-DTRILINOS_DIR=%s' % spec['trilinos'].prefix
|
||||||
|
])
|
||||||
|
|
||||||
|
cmake('.', *options)
|
||||||
|
|
||||||
|
make()
|
||||||
|
make("test")
|
||||||
|
make("install")
|
Loading…
Reference in a new issue