[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
07/15: gnu: scotch, pt-scotch: Build esmumps libraries.
From: |
Eric Bavier |
Subject: |
07/15: gnu: scotch, pt-scotch: Build esmumps libraries. |
Date: |
Tue, 30 Jun 2015 01:29:46 +0000 |
bavier pushed a commit to branch master
in repository guix.
commit cf0ec6c46efbf303207235ede8a9828b79037fb3
Author: Eric Bavier <address@hidden>
Date: Mon Jun 15 06:00:01 2015 -0500
gnu: scotch, pt-scotch: Build esmumps libraries.
* gnu/packages/maths.scm (scotch)[arguments]: Add 'build-esmumps
phase. Install esmumps libraries and headers in 'install phase.
(pt-scotch)[arguments]: Build ptesmumps in 'build phase. Add
make parallelism.
---
gnu/packages/maths.scm | 23 ++++++++++++++++++++---
1 files changed, 20 insertions(+), 3 deletions(-)
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index a3611cf..05691b6 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -818,6 +818,7 @@ OBJ = .o
MAKE = make
AR = ar
ARFLAGS = -ruv
+CAT = cat
CCS = gcc
CCP = mpicc
CCD = gcc
@@ -835,10 +836,18 @@ YACC = bison -pscotchyy -y -b y
'("COMMON_FILE_COMPRESS_GZ"
"COMMON_PTHREAD"
"COMMON_RANDOM_FIXED_SEED"
+ ;; Prevents symbolc clashes with libesmumps
+ "SCOTCH_RENAME"
;; XXX: Causes invalid frees in superlu-dist tests
;; "SCOTCH_PTHREAD"
;; "SCOTCH_PTHREAD_NUMBER=2"
"restrict=__restrict"))))))
+ (add-after
+ 'build 'build-esmumps
+ (lambda _
+ (zero? (system* "make"
+ (format #f "-j~a" (parallel-job-count))
+ "esmumps"))))
(replace
'install
(lambda* (#:key outputs #:allow-other-keys)
@@ -846,7 +855,14 @@ YACC = bison -pscotchyy -y -b y
(mkdir out)
(zero? (system* "make"
(string-append "prefix=" out)
- "install"))))))))
+ "install"))
+ ;; esmumps files are not installed with the above
+ (for-each (lambda (f)
+ (copy-file f (string-append out "/include/" f)))
+ (find-files "../include" ".*esmumps.h$"))
+ (for-each (lambda (f)
+ (copy-file f (string-append out "/lib/" f)))
+ (find-files "../lib" "^lib.*esmumps.*"))))))))
(home-page "http://www.labri.fr/perso/pelegrin/scotch/")
(synopsis "Programs and libraries for graph algorithms")
(description "SCOTCH is a set of programs and libraries which implement
@@ -870,10 +886,11 @@ bio-chemistry.")
`(modify-phases ,scotch-phases
(replace
'build
- ;; TODO: Would like to add parallelism here
(lambda _
(and
- (zero? (system* "make" "ptscotch"))
+ (zero? (system* "make"
+ (format #f "-j~a" (parallel-job-count))
+ "ptscotch" "ptesmumps"))
;; Install the serial metis compatibility library
(zero? (system* "make" "-C" "libscotchmetis" "install")))))
(replace
- branch master updated (e8df8f4 -> a17d456), Eric Bavier, 2015/06/29
- 01/15: gnu: python-mccabe: Fix license field., Eric Bavier, 2015/06/29
- 04/15: gnu: openmpi: Upgrade to 1.8.5., Eric Bavier, 2015/06/29
- 03/15: gnu: hwloc: Move numactl to inputs., Eric Bavier, 2015/06/29
- 06/15: gnu: scotch, pt-scotch: Use modify-phases., Eric Bavier, 2015/06/29
- 08/15: gnu: Add ScaLAPACK., Eric Bavier, 2015/06/29
- 07/15: gnu: scotch, pt-scotch: Build esmumps libraries.,
Eric Bavier <=
- 09/15: gnu: Add p4est., Eric Bavier, 2015/06/29
- 02/15: gnu: hwloc: Upgrade to 1.10.1., Eric Bavier, 2015/06/29
- 10/15: gnu: Add METIS., Eric Bavier, 2015/06/29
- 05/15: gnu: Update scotch to 6.0.4., Eric Bavier, 2015/06/29
- 11/15: gnu: Add MUMPS., Eric Bavier, 2015/06/29
- 13/15: gnu: Add arpack-ng-openmpi., Eric Bavier, 2015/06/29
- 12/15: gnu: petsc: Upgrade to 3.6.0., Eric Bavier, 2015/06/29
- 14/15: gnu: Add SLEPc., Eric Bavier, 2015/06/29
- 15/15: gnu: Add deal.II., Eric Bavier, 2015/06/29