aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Bavier <bavier@member.fsf.org>2014-05-08 12:33:47 -0500
committerEric Bavier <bavier@member.fsf.org>2014-05-08 12:42:17 -0500
commitd8c7eeb996c433b1744a1404e1fc1e5f987589a1 (patch)
treee0fb0f8a2c33ffd48ae625a09e0af5245c540b2f
parent10b11968c8af4e107daed35251e14f7238b43d42 (diff)
downloadgnu-guix-d8c7eeb996c433b1744a1404e1fc1e5f987589a1.tar
gnu-guix-d8c7eeb996c433b1744a1404e1fc1e5f987589a1.tar.gz
gnu: Add petsc-openmpi.
* gnu/packages/maths.scm (petsc-openmpi): New variable. (petsc-complex-openmpi): New variable.
-rw-r--r--gnu/packages/maths.scm35
1 files changed, 35 insertions, 0 deletions
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index b83788a67c..4e8c67746d 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -45,6 +45,7 @@
#:use-module (gnu packages less)
#:use-module (gnu packages xorg)
#:use-module (gnu packages gl)
+ #:use-module (gnu packages mpi)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages pcre)
#:use-module (gnu packages perl)
@@ -473,6 +474,40 @@ scientific applications modeled by partial differential equations.")
(string-append (package-description petsc)
" Complex scalar type version."))))
+(define-public petsc-openmpi
+ (package (inherit petsc)
+ (name "petsc-openmpi")
+ (inputs
+ `(("openmpi" ,openmpi)
+ ,@(package-inputs petsc)))
+ (arguments
+ (substitute-keyword-arguments (package-arguments petsc)
+ ((#:configure-flags cf)
+ ``("--with-mpiexec=mpirun"
+ ,(string-append "--with-mpi-dir="
+ (assoc-ref %build-inputs "openmpi"))
+ ,@(delete "--with-mpi=0" ,cf)))))
+ (description
+ (string-append (package-description petsc)
+ " With OpenMPI parallelism support."))))
+
+(define-public petsc-complex-openmpi
+ (package (inherit petsc-complex)
+ (name "petsc-complex-openmpi")
+ (inputs
+ `(("openmpi" ,openmpi)
+ ,@(package-inputs petsc-complex)))
+ (arguments
+ (substitute-keyword-arguments (package-arguments petsc-complex)
+ ((#:configure-flags cf)
+ ``("--with-mpiexec=mpirun"
+ ,(string-append "--with-mpi-dir="
+ (assoc-ref %build-inputs "openmpi"))
+ ,@(delete "--with-mpi=0" ,cf)))))
+ (description
+ (string-append (package-description petsc-complex)
+ " With OpenMPI parallelism support."))))
+
(define-public superlu
(package
(name "superlu")