all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [bug#32732] [PATCH] gnu: hdf5-parallel-openmpi: Really enable parallel build.
@ 2018-09-13 20:03 Paul Garlick
  2018-09-16 21:00 ` Ludovic Courtès
  0 siblings, 1 reply; 6+ messages in thread
From: Paul Garlick @ 2018-09-13 20:03 UTC (permalink / raw)
  To: 32732; +Cc: Paul Garlick

This fix ensures that the H5_HAVE_PARALLEL identifier is correctly set
in the file H5pubconf.h.

* gnu/packages/maths.scm (hdf5-parallel-openmpi)[arguments]: Add
the "--enable-parallel" flag to the list of configure flags.  Remove
the incompatible "--enable-cxx" flag.  Add 'mpi-setup' phase.  Replace
the 'split' phase, omitting the references to the h5fc script which is
not present.
---
 gnu/packages/maths.scm | 38 +++++++++++++++++++++++++++++++++++---
 1 file changed, 35 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index af41093..85d3884 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -1034,10 +1034,13 @@ Swath).")
      `(("mpi" ,openmpi)
        ,@(package-inputs hdf5)))
     (arguments
-     (substitute-keyword-arguments `(#:configure-flags '("--enable-parallel")
-                                     ,@(package-arguments hdf5))
+     (substitute-keyword-arguments (package-arguments hdf5)
+       ((#:configure-flags flags)
+        ``("--enable-parallel" ,@(delete "--enable-cxx" ,flags)))
        ((#:phases phases)
         `(modify-phases ,phases
+           (add-after 'build 'mpi-setup
+	     ,%openmpi-setup)
            (add-before 'check 'patch-tests
              (lambda _
                ;; OpenMPI's mpirun will exit with non-zero status if it
@@ -1051,7 +1054,36 @@ Swath).")
                   (string-append front back "\n")))
                (substitute* "tools/h5diff/testph5diff.sh"
                  (("/bin/sh") (which "sh")))
-               #t))))))
+               #t))
+           (replace 'split
+              (lambda* (#:key inputs outputs #:allow-other-keys)
+                ;; Move all fortran-related files
+                (let* ((out (assoc-ref outputs "out"))
+                       (bin (string-append out "/bin"))
+                       (lib (string-append out "/lib"))
+                       (inc (string-append out "/include"))
+                       (ex (string-append out "/share/hdf5_examples/fortran"))
+                       (fort (assoc-ref outputs "fortran"))
+                       (flib (string-append fort "/lib"))
+                       (finc (string-append fort "/include"))
+                       (fex (string-append fort "/share/hdf5_examples/fortran")))
+                  (mkdir-p flib)
+                  (mkdir-p finc)
+                  (mkdir-p fex)
+                  (for-each (lambda (file)
+                              (rename-file file
+                                           (string-append flib "/" (basename file))))
+                            (find-files lib ".*fortran.*"))
+                  (for-each (lambda (file)
+                              (rename-file file
+                                           (string-append finc "/" (basename file))))
+                            (find-files inc ".*mod"))
+                  (for-each (lambda (file)
+                              (rename-file file
+                                           (string-append fex "/" (basename file))))
+                            (find-files ex ".*"))
+                  (delete-file-recursively ex))
+                #t))))))
     (synopsis "Management suite for data with parallel IO support")))
 
 (define-public h5check
-- 
1.8.3.1

^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2018-09-24 12:21 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-09-13 20:03 [bug#32732] [PATCH] gnu: hdf5-parallel-openmpi: Really enable parallel build Paul Garlick
2018-09-16 21:00 ` Ludovic Courtès
2018-09-20 17:59   ` [bug#32732] [PATCH 1/2] gnu: hdf5: Allow for absence of utility script Paul Garlick
2018-09-20 17:59     ` [bug#32732] [PATCH 2/2] gnu: hdf5-parallel-openmpi: Really enable parallel build Paul Garlick
2018-09-21  1:07       ` Eric Bavier
2018-09-24 12:20       ` bug#32732: " Ludovic Courtès

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.