~ruther/guix-local

d6602ee9d435d96f5a3d785dd6777ea76749470b — Eric Bavier 10 years ago 6c79854
gnu: scotch, pt-scotch: Use modify-phases.

* gnu/packages/maths.scm (scotch, pt-scotch)[arguments]: Use modify-phases.
1 files changed, 31 insertions(+), 39 deletions(-)

M gnu/packages/maths.scm
M gnu/packages/maths.scm => gnu/packages/maths.scm +31 -39
@@ 802,15 802,16 @@ implemented in ANSI C, and MPI for communications.")
       ("bison" ,bison)))
    (arguments
     `(#:phases
       (alist-cons-after
        'unpack 'chdir-to-src
        (lambda _ (chdir "src"))
        (alist-replace
         'configure
         (lambda _
           (call-with-output-file "Makefile.inc"
             (lambda (port)
               (format port "
       (modify-phases %standard-phases
         (add-after
          'unpack 'chdir-to-src
          (lambda _ (chdir "src")))
         (replace
          'configure
          (lambda _
            (call-with-output-file "Makefile.inc"
              (lambda (port)
                (format port "
EXE =
LIB = .a
OBJ = .o


@@ 831,22 832,21 @@ MV = mv
RANLIB = ranlib
YACC = bison -pscotchyy -y -b y
"
                       '("COMMON_FILE_COMPRESS_GZ"
                         "COMMON_PTHREAD"
                         "COMMON_RANDOM_FIXED_SEED"
                         ;; XXX: Causes invalid frees in superlu-dist tests
                         ;; "SCOTCH_PTHREAD"
                         ;; "SCOTCH_PTHREAD_NUMBER=2"
                         "restrict=__restrict")))))
         (alist-replace
                        '("COMMON_FILE_COMPRESS_GZ"
                          "COMMON_PTHREAD"
                          "COMMON_RANDOM_FIXED_SEED"
                          ;; XXX: Causes invalid frees in superlu-dist tests
                          ;; "SCOTCH_PTHREAD"
                          ;; "SCOTCH_PTHREAD_NUMBER=2"
                          "restrict=__restrict"))))))
         (replace
          'install
          (lambda* (#:key outputs #:allow-other-keys)
            (let ((out (assoc-ref outputs "out")))
              (mkdir out)
              (zero? (system* "make"
                              (string-append "prefix=" out)
                              "install"))))
          %standard-phases)))))
                              "install"))))))))
    (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


@@ 867,26 867,18 @@ bio-chemistry.")
    (arguments
     (substitute-keyword-arguments (package-arguments scotch)
       ((#:phases scotch-phases)
        `(alist-replace
          'build
          ;; TODO: Would like to add parallelism here
          (lambda _
            (and
             (zero? (system* "make" "ptscotch"))
             ;; Install the serial metis compatibility library
             (zero? (system* "make" "-C" "libscotchmetis" "install"))))
          (alist-replace
           'check
           (lambda _ (zero? (system* "make" "ptcheck")))
           (alist-replace
            'install
            (lambda* (#:key outputs #:allow-other-keys)
              (let ((out (assoc-ref outputs "out")))
                (mkdir out)
                (zero? (system* "make"
                                (string-append "prefix=" out)
                                "install"))))
            ,scotch-phases))))))
        `(modify-phases ,scotch-phases
           (replace
            'build
            ;; TODO: Would like to add parallelism here
            (lambda _
              (and
               (zero? (system* "make" "ptscotch"))
               ;; Install the serial metis compatibility library
               (zero? (system* "make" "-C" "libscotchmetis" "install")))))
           (replace
            'check
            (lambda _ (zero? (system* "make" "ptcheck"))))))))
    (synopsis "Programs and libraries for graph algorithms (with MPI)")))

(define-public gsegrafix