added PETSc-3.7.5-intel-2017a.eb

This commit is contained in:
kru0097 2017-04-20 17:30:25 +02:00
parent 6046edc935
commit 14344cf4fa

View File

@ -0,0 +1,45 @@
#made by PERMON team
easyblock = 'ConfigureMake'
name = 'PETSc'
version = '3.7.5'
homepage = 'http://www.mcs.anl.gov/petsc'
description = """PETSc, pronounced PET-see (the S is silent), is a suite of data structures and routines for the
scalable (parallel) solution of scientific applications modeled by partial differential equations."""
toolchain = {'name': 'intel', 'version': '2017a'}
#build is still parallel, PETSc make doesnt support -j opt
maxparallel = 0
source_urls = ['http://ftp.mcs.anl.gov/pub/petsc/release-snapshots']
sources = [SOURCELOWER_TAR_GZ]
# (build) dependencies provided through EasyBuild
builddependencies = [('CMake', '3.7.2', '', True)]
# configure installs dependencies -> remove installdir before configure
keeppreviousinstall = True
preconfigopts = 'rm -rf %(installdir)s;'
petscArch = 'intel-opt'
petscDir = '%(builddir)s/%(namelower)s-%(version)s'
# config options
configopts = '--CFLAGS=-O3 -xHost --CXXFLAGS=-O3 -xHost --FFLAGS=-O3 -xHost --with-c++-support --with-pic=1 '
configopts += '--with-cc=mpicc --with-cxx=mpicxx --with-fc=mpif90 --with-debugging=0 --with-gnu-compilers=0 '
configopts += '--with-mpi=1 --with-x=0 '
configopts += '--download-metis --download-parmetis --download-mumps --download-superlu --download-superlu_dist '
configopts += '--with-blas-lapack-lib=[$EBROOTIMKL/mkl/lib/intel64_lin/libmkl_intel_lp64.a,libmkl_sequential.a,libmkl_core.a] '
configopts += '--with-scalapack-include=$EBROOTIMKL/mkl/include '
configopts += '--with-scalapack-lib=[$EBROOTIMKL/mkl/lib/intel64_lin/libmkl_scalapack_lp64.a,libmkl_blacs_intelmpi_lp64.a,libmkl_intel_lp64.a,libmkl_sequential.a,libmkl_core.a] '
configopts += '--with-scalapack=1 '
configopts += 'PETSC_ARCH=%s' % petscArch
installopts = 'PETSC_DIR=%s PETSC_ARCH=%s' % (petscDir,petscArch)
buildopts = installopts + ' all'
modextravars = {'PETSC_DIR':'%(installdir)s'}
moduleclass = 'numlib'