elemental: fix hardcode libgfortran, use develop and explicitly specify MPI compilers (#5263)
This commit is contained in:
parent
d1a5857a03
commit
01a9a048ad
1 changed files with 11 additions and 2 deletions
|
@ -33,7 +33,7 @@ class Elemental(CMakePackage):
|
||||||
homepage = "http://libelemental.org"
|
homepage = "http://libelemental.org"
|
||||||
url = "https://github.com/elemental/Elemental/archive/v0.87.6.tar.gz"
|
url = "https://github.com/elemental/Elemental/archive/v0.87.6.tar.gz"
|
||||||
|
|
||||||
version('master', git='https://github.com/elemental/Elemental.git', branch='master')
|
version('develop', git='https://github.com/elemental/Elemental.git', branch='master')
|
||||||
version('0.87.7', '6c1e7442021c59a36049e37ea69b8075')
|
version('0.87.7', '6c1e7442021c59a36049e37ea69b8075')
|
||||||
version('0.87.6', '9fd29783d45b0a0e27c0df85f548abe9')
|
version('0.87.6', '9fd29783d45b0a0e27c0df85f548abe9')
|
||||||
|
|
||||||
|
@ -110,9 +110,11 @@ def cmake_args(self):
|
||||||
|
|
||||||
args = [
|
args = [
|
||||||
'-DCMAKE_INSTALL_MESSAGE:STRING=LAZY',
|
'-DCMAKE_INSTALL_MESSAGE:STRING=LAZY',
|
||||||
|
'-DCMAKE_C_COMPILER=%s' % spec['mpi'].mpicc,
|
||||||
|
'-DCMAKE_CXX_COMPILER=%s' % spec['mpi'].mpicxx,
|
||||||
|
'-DCMAKE_Fortran_COMPILER=%s' % spec['mpi'].mpifc,
|
||||||
'-DEL_PREFER_OPENBLAS:BOOL=TRUE',
|
'-DEL_PREFER_OPENBLAS:BOOL=TRUE',
|
||||||
'-DEL_DISABLE_SCALAPACK:BOOL=%s' % ('~scalapack' in spec),
|
'-DEL_DISABLE_SCALAPACK:BOOL=%s' % ('~scalapack' in spec),
|
||||||
'-DGFORTRAN_LIB=libgfortran.so',
|
|
||||||
'-DBUILD_SHARED_LIBS:BOOL=%s' % ('+shared' in spec),
|
'-DBUILD_SHARED_LIBS:BOOL=%s' % ('+shared' in spec),
|
||||||
'-DEL_HYBRID:BOOL=%s' % ('+hybrid' in spec),
|
'-DEL_HYBRID:BOOL=%s' % ('+hybrid' in spec),
|
||||||
'-DEL_C_INTERFACE:BOOL=%s' % ('+c' in spec),
|
'-DEL_C_INTERFACE:BOOL=%s' % ('+c' in spec),
|
||||||
|
@ -122,6 +124,13 @@ def cmake_args(self):
|
||||||
'-DEL_USE_64BIT_INTS:BOOL=%s' % ('+int64' in spec),
|
'-DEL_USE_64BIT_INTS:BOOL=%s' % ('+int64' in spec),
|
||||||
'-DEL_USE_64BIT_BLAS_INTS:BOOL=%s' % ('+int64_blas' in spec)]
|
'-DEL_USE_64BIT_BLAS_INTS:BOOL=%s' % ('+int64_blas' in spec)]
|
||||||
|
|
||||||
|
# see <stage_folder>/debian/rules as an example:
|
||||||
|
mpif77 = Executable(spec['mpi'].mpif77)
|
||||||
|
libgfortran = LibraryList(mpif77('--print-file-name',
|
||||||
|
'libgfortran.%s' % dso_suffix,
|
||||||
|
output=str))
|
||||||
|
args.append('-DGFORTRAN_LIB=%s' % libgfortran.libraries[0])
|
||||||
|
|
||||||
# If using 64bit int BLAS libraries, elemental has to build
|
# If using 64bit int BLAS libraries, elemental has to build
|
||||||
# them internally
|
# them internally
|
||||||
if '+int64_blas' in spec:
|
if '+int64_blas' in spec:
|
||||||
|
|
Loading…
Reference in a new issue