gnu: define dune-*-openmpi packages
* gnu/packages/maths.scm (dune-common-openmpi, dune-geometry-openmpi, dune-istl-openmpi, dune-typetree-openmpi, dune-uggrid-openmpi, dune-grid-openmpi, dune-alugrid-openmpi, dune-subgrid-openmpi, dune-localfunctions-openmpi, dune-functions-openmpi, dune-pdelab-openmpi): New variables. (add-openmpi-to-dune-package): New function to add openmpi to the inputs of a dune-* package and replace all dune-* packages in its input with the corresponding dune-*-openmpi package. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
parent
393dc1cc0b
commit
6ceb771657
1 changed files with 53 additions and 0 deletions
|
|
@ -5037,6 +5037,59 @@ built on top of DUNE, the Distributed and Unified Numerics Environment.")
|
||||||
;; Either GPL version 2 with "runtime exception" or LGPLv3+.
|
;; Either GPL version 2 with "runtime exception" or LGPLv3+.
|
||||||
(license (list license:lgpl3+ license:gpl2))))
|
(license (list license:lgpl3+ license:gpl2))))
|
||||||
|
|
||||||
|
(define add-openmpi-to-dune-package
|
||||||
|
(let ((dune-package?
|
||||||
|
(lambda (p) (string-prefix? "dune-" (package-name p)))))
|
||||||
|
(package-mapping
|
||||||
|
(lambda (p)
|
||||||
|
(if (dune-package? p)
|
||||||
|
(package (inherit p)
|
||||||
|
(name (string-append (package-name p) "-openmpi"))
|
||||||
|
(inputs `(,@(package-inputs p)
|
||||||
|
("openmpi" ,openmpi)))
|
||||||
|
(arguments
|
||||||
|
(substitute-keyword-arguments (package-arguments p)
|
||||||
|
((#:phases phases '%standard-phases)
|
||||||
|
`(modify-phases ,phases
|
||||||
|
(add-before 'check 'mpi-setup
|
||||||
|
,%openmpi-setup)))))
|
||||||
|
(synopsis (string-append (package-synopsis p) " (with MPI support)")))
|
||||||
|
p))
|
||||||
|
(negate dune-package?))))
|
||||||
|
|
||||||
|
(define-public dune-common-openmpi
|
||||||
|
(add-openmpi-to-dune-package dune-common))
|
||||||
|
|
||||||
|
(define-public dune-geometry-openmpi
|
||||||
|
(add-openmpi-to-dune-package dune-geometry))
|
||||||
|
|
||||||
|
(define-public dune-istl-openmpi
|
||||||
|
(add-openmpi-to-dune-package dune-istl))
|
||||||
|
|
||||||
|
(define-public dune-typetree-openmpi
|
||||||
|
(add-openmpi-to-dune-package dune-typetree))
|
||||||
|
|
||||||
|
(define-public dune-uggrid-openmpi
|
||||||
|
(add-openmpi-to-dune-package dune-uggrid))
|
||||||
|
|
||||||
|
(define-public dune-grid-openmpi
|
||||||
|
(add-openmpi-to-dune-package dune-grid))
|
||||||
|
|
||||||
|
(define-public dune-alugrid-openmpi
|
||||||
|
(add-openmpi-to-dune-package dune-alugrid))
|
||||||
|
|
||||||
|
(define-public dune-subgrid-openmpi
|
||||||
|
(add-openmpi-to-dune-package dune-subgrid))
|
||||||
|
|
||||||
|
(define-public dune-localfunctions-openmpi
|
||||||
|
(add-openmpi-to-dune-package dune-localfunctions))
|
||||||
|
|
||||||
|
(define-public dune-functions-openmpi
|
||||||
|
(add-openmpi-to-dune-package dune-functions))
|
||||||
|
|
||||||
|
(define-public dune-pdelab-openmpi
|
||||||
|
(add-openmpi-to-dune-package dune-pdelab))
|
||||||
|
|
||||||
(define-public mlucas
|
(define-public mlucas
|
||||||
(package
|
(package
|
||||||
(name "mlucas")
|
(name "mlucas")
|
||||||
|
|
|
||||||
Reference in a new issue