[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#39862] [PATCH v4 2/2] gnu: define dune-*-openmpi packages
From: |
Felix Gruber |
Subject: |
[bug#39862] [PATCH v4 2/2] gnu: define dune-*-openmpi packages |
Date: |
Fri, 13 Mar 2020 18:30:38 +0100 |
* 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.
---
gnu/packages/maths.scm | 53 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 53 insertions(+)
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 33a5efd2f0..6c2813f100 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -5027,6 +5027,59 @@ built on top of DUNE, the Distributed and Unified
Numerics Environment.")
;; Either GPL version 2 with "runtime exception" or LGPLv3+.
(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
(package
(name "mlucas")
--
2.25.1
- [bug#39862] [PATCH v2 4/6] gnu: dune-istl: Build with suitesparse, (continued)
- [bug#39862] [PATCH v2 4/6] gnu: dune-istl: Build with suitesparse, Felix Gruber, 2020/03/10
- [bug#39862] [PATCH v2 5/6] gnu: dune-*: remove openmpi dependency, Felix Gruber, 2020/03/10
- [bug#39862] [PATCH v2 6/6] gnu: define dune-*-openmpi packages, Felix Gruber, 2020/03/10
- [bug#39862] [PATCH v2 6/6] gnu: define dune-*-openmpi packages, Ludovic Courtès, 2020/03/12
- [bug#39862] [PATCH v3 0/2] Add dune-*-openmpi packages, Felix Gruber, 2020/03/12
- [bug#39862] [PATCH v3 1/2] gnu: dune-*: remove openmpi dependency, Felix Gruber, 2020/03/12
- [bug#39862] [PATCH v3 2/2] gnu: define dune-*-openmpi packages, Felix Gruber, 2020/03/12
- [bug#39862] [PATCH v3 2/2] gnu: define dune-*-openmpi packages, Ludovic Courtès, 2020/03/13
- [bug#39862] [PATCH v3 2/2] gnu: define dune-*-openmpi packages, Felix Gruber, 2020/03/13
- [bug#39862] [PATCH v3 2/2] gnu: define dune-*-openmpi packages, Ludovic Courtès, 2020/03/13
- [bug#39862] [PATCH v4 2/2] gnu: define dune-*-openmpi packages,
Felix Gruber <=
- [bug#39862] [PATCH v4 1/2] gnu: dune-*: remove openmpi dependency, Felix Gruber, 2020/03/13
- bug#39862: [PATCH v4 1/2] gnu: dune-*: remove openmpi dependency, Ludovic Courtès, 2020/03/14