all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: ericbavier@openmailbox.org
To: guix-devel@gnu.org
Cc: Eric Bavier <bavier@member.fsf.org>
Subject: [PATCH 06/14] gnu: scotch, pt-scotch: Build esmumps libraries.
Date: Sat, 27 Jun 2015 22:45:43 -0500	[thread overview]
Message-ID: <1435463151-32099-7-git-send-email-ericbavier@openmailbox.org> (raw)
In-Reply-To: <1435463151-32099-1-git-send-email-ericbavier@openmailbox.org>

From: Eric Bavier <bavier@member.fsf.org>

* 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 | 22 ++++++++++++++++++++--
 1 file changed, 20 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index a3611cf..765a111 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" (current-processor-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
@@ -873,7 +889,9 @@ bio-chemistry.")
             ;; TODO: Would like to add parallelism here
             (lambda _
               (and
-               (zero? (system* "make" "ptscotch"))
+               (zero? (system* "make"
+                               (format #f "-j~a" (current-processor-count))
+                               "ptscotch" "ptesmumps"))
                ;; Install the serial metis compatibility library
                (zero? (system* "make" "-C" "libscotchmetis" "install")))))
            (replace
-- 
2.2.1

  parent reply	other threads:[~2015-06-28  3:45 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-28  3:45 [PATCH 00/14] Add deal.II and some dependencies ericbavier
2015-06-28  3:45 ` [PATCH 01/14] gnu: hwloc: Upgrade to 1.10.1 ericbavier
2015-06-28  9:08   ` Ludovic Courtès
2015-06-28  3:45 ` [PATCH 02/14] gnu: hwloc: Move numactl to inputs ericbavier
2015-06-28  9:09   ` Ludovic Courtès
2015-06-28  3:45 ` [PATCH 03/14] gnu: openmpi: Upgrade to 1.8.5 ericbavier
2015-06-28  9:10   ` Ludovic Courtès
2015-06-28  3:45 ` [PATCH 04/14] gnu: Update scotch to 6.0.4 ericbavier
2015-06-28  9:12   ` Ludovic Courtès
2015-06-28  3:45 ` [PATCH 05/14] gnu: scotch, pt-scotch: Use modify-phases ericbavier
2015-06-28  9:15   ` Ludovic Courtès
2015-06-28  3:45 ` ericbavier [this message]
2015-06-28  9:14   ` [PATCH 06/14] gnu: scotch, pt-scotch: Build esmumps libraries Ludovic Courtès
2015-06-28  3:45 ` [PATCH 07/14] gnu: Add ScaLAPACK ericbavier
2015-06-28  9:12   ` Ludovic Courtès
2015-06-28  3:45 ` [PATCH 08/14] gnu: Add p4est ericbavier
2015-06-28 20:03   ` Ludovic Courtès
2015-06-28  3:45 ` [PATCH 09/14] gnu: Add METIS ericbavier
2015-06-28 20:03   ` Ludovic Courtès
2015-06-28  3:45 ` [PATCH 10/14] gnu: Add MUMPS ericbavier
2015-06-28 20:12   ` Ludovic Courtès
2015-06-28 15:59     ` Eric Bavier
2015-06-28  3:45 ` [PATCH 11/14] gnu: petsc: Upgrade to 3.6.0 ericbavier
2015-06-28 20:13   ` Ludovic Courtès
2015-06-28  3:45 ` [PATCH 12/14] gnu: Add arpack-ng-openmpi ericbavier
2015-06-28 20:13   ` Ludovic Courtès
2015-06-28  3:45 ` [PATCH 13/14] gnu: Add SLEPc ericbavier
2015-06-28 20:18   ` Ludovic Courtès
2015-06-28  3:45 ` [PATCH 14/14] gnu: Add deal.II ericbavier
2015-06-28 20:22   ` Ludovic Courtès
2015-06-28 16:05     ` Eric Bavier
2015-06-28 21:09       ` Andreas Enge
2015-06-29  8:39         ` Ludovic Courtès
2015-06-30 19:55           ` Eric Bavier
2015-07-04  7:40             ` Mark H Weaver
2015-07-05 10:20               ` Ludovic Courtès

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1435463151-32099-7-git-send-email-ericbavier@openmailbox.org \
    --to=ericbavier@openmailbox.org \
    --cc=bavier@member.fsf.org \
    --cc=guix-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.