gnu: openmpi: Update to 3.0.1.

* gnu/packages/mpi.scm (openmpi): Update to 3.0.1.
[arguments]: In 'remove-absolute' phase, adjust romio file name.
* gnu/packages/maths.scm (scalapack)[arguments]: Add
'set-test-environment' phase.
(slepc-openmpi)[arguments]: Likewise.
(mumps-openmpi)[arguments]: Likewise.
(superlu-dist)[arguments]: In 'check' phase, set
'OMPI_MCA_plm_rsh_agent'.
(scotch)[arguments]: In 'build-esmumps', likewise.
(p4est)[arguments]: Add 'set-test-environment' phase.
(hypre-openmpi)[arguments]: Likewise.
This commit is contained in:
Ludovic Courtès 2018-05-12 17:53:54 +02:00 committed by Ludovic Courtès
parent 0921eff2a8
commit 6df2a50ac4
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5
2 changed files with 70 additions and 12 deletions

View file

@ -554,7 +554,16 @@ (define-public scalapack
("fortran" ,gfortran)
("lapack" ,lapack))) ;for testing only
(arguments
`(#:configure-flags `("-DBUILD_SHARED_LIBS:BOOL=YES")))
`(#:configure-flags `("-DBUILD_SHARED_LIBS:BOOL=YES")
#:phases (modify-phases %standard-phases
(add-before 'check 'set-test-environment
(lambda _
;; By default, running the test suite would fail because
;; 'ssh' could not be found in $PATH. Define this
;; variable to placate Open MPI without adding a
;; dependency on OpenSSH (the agent isn't used anyway.)
(setenv "OMPI_MCA_plm_rsh_agent" (which "cat"))
#t)))))
(home-page "http://www.netlib.org/scalapack/")
(synopsis "Library for scalable numerical linear algebra")
(description
@ -1786,6 +1795,18 @@ (define-public slepc-complex
(define-public slepc-openmpi
(package (inherit slepc)
(name "slepc-openmpi")
(arguments
(substitute-keyword-arguments (package-arguments slepc)
((#:phases phases '%standard-phases)
`(modify-phases ,phases
(add-before 'check 'set-test-environment
(lambda _
;; By default, running the test suite would fail because 'ssh'
;; could not be found in $PATH. Define this variable to
;; placate Open MPI without adding a dependency on OpenSSH (the
;; agent isn't used anyway.)
(setenv "OMPI_MCA_plm_rsh_agent" (which "cat"))
#t))))))
(inputs
`(("mpi" ,openmpi)
("arpack" ,arpack-ng-openmpi)
@ -1955,11 +1976,18 @@ (define-public mumps-openmpi
(substitute-keyword-arguments (package-arguments mumps)
((#:phases phases)
`(modify-phases ,phases
(replace
'check
(lambda _
((assoc-ref ,phases 'check)
#:exec-prefix '("mpirun" "-n" "2"))))))))
(add-before 'check 'set-test-environment
(lambda _
;; By default, running the test suite would fail because 'ssh'
;; could not be found in $PATH. Define this variable to
;; placate Open MPI without adding a dependency on OpenSSH (the
;; agent isn't used anyway.)
(setenv "OMPI_MCA_plm_rsh_agent" (which "cat"))
#t))
(replace 'check
(lambda _
((assoc-ref ,phases 'check)
#:exec-prefix '("mpirun" "-n" "2"))))))))
(synopsis "Multifrontal sparse direct solver (with MPI)")))
(define-public mumps-metis-openmpi
@ -2201,6 +2229,11 @@ (define-public superlu-dist
#t))
(replace 'check
(lambda _
;; By default, running the test suite would fail because 'ssh'
;; could not be found in $PATH. Define this variable to placate
;; Open MPI without adding a dependency on OpenSSH (the agent
;; isn't used anyway.)
(setenv "OMPI_MCA_plm_rsh_agent" (which "cat"))
(with-directory-excursion "EXAMPLE"
(and
(zero? (system* "mpirun" "-n" "2"
@ -2295,6 +2328,12 @@ (define-public scotch
(add-after
'build 'build-esmumps
(lambda _
;; By default, running the test suite would fail because 'ssh'
;; could not be found in $PATH. Define this variable to placate
;; Open MPI without adding a dependency on OpenSSH (the agent
;; isn't used anyway.)
(setenv "OMPI_MCA_plm_rsh_agent" (which "cat"))
(zero? (system* "make"
(format #f "-j~a" (parallel-job-count))
"esmumps"))))
@ -2474,7 +2513,16 @@ (define-public p4est
" -lopenblas")
,(string-append "LAPACK_LIBS=-L"
(assoc-ref %build-inputs "lapack")
" -llapack"))))
" -llapack"))
#:phases (modify-phases %standard-phases
(add-before 'check 'set-test-environment
(lambda _
;; By default, running the test suite would fail because
;; 'ssh' could not be found in $PATH. Define this
;; variable to placate Open MPI without adding a
;; dependency on OpenSSH (the agent isn't used anyway.)
(setenv "OMPI_MCA_plm_rsh_agent" (which "cat"))
#t)))))
(home-page "http://www.p4est.org")
(synopsis "Adaptive mesh refinement on forests of octrees")
(description
@ -3531,7 +3579,17 @@ (define-public hypre-openmpi
(substitute-keyword-arguments (package-arguments hypre)
((#:configure-flags flags)
``("--with-MPI"
,@(delete "--without-MPI" ,flags)))))
,@(delete "--without-MPI" ,flags)))
((#:phases phases)
`(modify-phases ,phases
(add-before 'check 'set-test-environment
(lambda _
;; By default, running the test suite would fail because 'ssh'
;; could not be found in $PATH. Define this variable to
;; placate Open MPI without adding a dependency on OpenSSH (the
;; agent isn't used anyway.)
(setenv "OMPI_MCA_plm_rsh_agent" (which "cat"))
#t))))))
(synopsis "Parallel solvers and preconditioners for linear equations")
(description
"HYPRE is a software library of high performance preconditioners and

View file

@ -153,7 +153,7 @@ (define-public hwloc-2.0
(define-public openmpi
(package
(name "openmpi")
(version "1.10.7")
(version "3.0.1")
(source
(origin
(method url-fetch)
@ -162,7 +162,7 @@ (define-public openmpi
"/downloads/openmpi-" version ".tar.bz2"))
(sha256
(base32
"142s1vny9gllkq336yafxayjgcirj2jv0ddabj879jgya7hyr2d0"))))
"0pbqrm5faf57nasy1s81wqivl7zvxmv8lzjh8hvb0f3qxv8m0d36"))))
(build-system gnu-build-system)
(inputs
`(("hwloc" ,hwloc "lib")
@ -205,8 +205,8 @@ (define-public openmpi
(("_ABSOLUTE") ""))
;; Avoid valgrind (which pulls in gdb etc.).
(substitute*
'("./ompi/mca/io/romio/src/io_romio_component.c")
(("MCA_io_romio_COMPLETE_CONFIGURE_FLAGS")
'("./ompi/mca/io/romio314/src/io_romio314_component.c")
(("MCA_io_romio314_COMPLETE_CONFIGURE_FLAGS")
"\"[elided to reduce closure]\""))
#t))
(add-before 'build 'scrub-timestamps ;reproducibility