Subject: [PATCH] gnu: petsc-openmpi: Configure with support for MUMPS solver.

From: Paul Garlick <[email-masked]>
Date: Wed, 26 Sep 2018 12:59:54 +0100

* gnu/packages/maths.scm (petsc-openmpi)[inputs]: Add metis,
mumps-openmpi, scalapack and pt-scotch.
[arguments]: Add "--with-PACKAGENAME=1" flags.  Move 'mpi-setup' phase
ahead of 'configure' phase.
---
 gnu/packages/maths.scm | 17 ++++++++++++-----
 1 file changed, 12 insertions(+), 5 deletions(-)

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 636b485..6adddc0 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -1695,13 +1695,21 @@ scientific applications modeled by partial differential equations.")
   (package (inherit petsc)
     (name "petsc-openmpi")
     (inputs
-     `(("openmpi" ,openmpi)
-       ("hdf5" ,hdf5-parallel-openmpi)
+     `(("hdf5" ,hdf5-parallel-openmpi)
+       ("metis" ,metis)
+       ("mumps" ,mumps-openmpi)
+       ("openmpi" ,openmpi)
+       ("scalapack" ,scalapack)
+       ("scotch" ,pt-scotch)
        ,@(package-inputs petsc)))
     (arguments
      (substitute-keyword-arguments (package-arguments petsc)
        ((#:configure-flags cf)
         ``("--with-mpiexec=mpirun"
+           "--with-metis=1"
+           "--with-mumps=1"
+           "--with-scalapack=1"
+           "--with-ptscotch=1"
            ,(string-append "--with-mpi-dir="
                            (assoc-ref %build-inputs "openmpi"))
            ,(string-append "--with-hdf5-include="
@@ -1711,9 +1719,9 @@ scientific applications modeled by partial differential equations.")
            ,@(delete "--with-mpi=0" ,cf)))
        ((#:phases phases)
         `(modify-phases ,phases
-           (add-before 'check 'mpi-setup
+           (add-before 'configure 'mpi-setup
              ,%openmpi-setup)))))
-    (synopsis "Library to solve PDEs (with MPI support)")))
+    (synopsis "Library to solve PDEs (with MUMPS and MPI support)")))
 
 (define-public petsc-complex-openmpi
   (package (inherit petsc-complex)
@@ -1730,7 +1738,6 @@ scientific applications modeled by partial differential equations.")
            ,@(delete "--with-mpi=0" ,cf)))))
     (synopsis "Library to solve PDEs (with complex scalars and MPI support)")))
 
-
 (define-public python-kiwisolver
   (package
     (name "python-kiwisolver")
-- 
1.8.3.1