guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

07/10: gnu: Add hdf5-openmpi.


From: Eric Bavier
Subject: 07/10: gnu: Add hdf5-openmpi.
Date: Thu, 12 May 2016 20:02:43 +0000 (UTC)

bavier pushed a commit to branch master
in repository guix.

commit c8378eea10fa57c207550978dcf2998f3fc6b81c
Author: Eric Bavier <address@hidden>
Date:   Thu Mar 17 09:35:38 2016 -0500

    gnu: Add hdf5-openmpi.
    
    * gnu/packages/maths.scm (hdf5-openmpi): New variable.
---
 gnu/packages/maths.scm |   28 +++++++++++++++++++++++++++-
 1 file changed, 27 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index df21d5e..fce03ac 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -442,6 +442,33 @@ extremely large and complex data collections.")
     (license (license:x11-style
               
"http://www.hdfgroup.org/ftp/HDF5/current/src/unpacked/COPYING";))))
 
+(define-public hdf5-parallel-openmpi
+  (package (inherit hdf5)
+    (name "hdf5-parallel-openmpi")
+    (inputs
+     `(("mpi" ,openmpi)
+       ,@(package-inputs hdf5)))
+    (arguments
+     (substitute-keyword-arguments `(#:configure-flags '("--enable-parallel")
+                                     ,@(package-arguments hdf5))
+       ((#:phases phases)
+        `(modify-phases ,phases
+           (add-before 'check 'patch-tests
+             (lambda _
+               ;; OpenMPI's mpirun will exit with non-zero status if it
+               ;; detects an "abnormal termination", i.e. any process not
+               ;; calling MPI_Finalize().  Since the test is explicitely
+               ;; avoiding MPI_Finalize so as not to have at_exit and thus
+               ;; H5C_flush_cache from being called, mpirun will always
+               ;; complain, so turn this test off.
+               (substitute* "testpar/Makefile"
+                 (("(^TEST_PROG_PARA.*)t_pflush1(.*)" front back)
+                  (string-append front back "\n")))
+               (substitute* "tools/h5diff/testph5diff.sh"
+                 (("/bin/sh") (which "sh")))
+               #t))))))
+    (synopsis "Management suite for data with parallel IO support")))
+
 (define-public nlopt
   (package
     (name "nlopt")
@@ -480,7 +507,6 @@ common interface for a number of different free 
optimization routines available
 online as well as original implementations of various other algorithms.")
     (license license:lgpl2.1+)))
 
-
 ;; For a fully featured Octave, users  are strongly recommended also to install
 ;; the following packages: texinfo, less, ghostscript, gnuplot.
 (define-public octave



reply via email to

[Prev in Thread] Current Thread [Next in Thread]