aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEfraim Flashner <efraim@flashner.co.il>2016-08-19 16:16:06 +0300
committerEfraim Flashner <efraim@flashner.co.il>2016-08-19 17:41:09 +0300
commite5b4b96b8c4d42c4c28895a34eccc6a0c337cefa (patch)
treeaafe38a6e6f52f686e2d5df95891decabe424aed
parent349cef585da5e60b5c8b3e0a31f3c05f600354e1 (diff)
downloadguix-e5b4b96b8c4d42c4c28895a34eccc6a0c337cefa.tar
guix-e5b4b96b8c4d42c4c28895a34eccc6a0c337cefa.tar.gz
gnu: atlas: Use 'modify-phases'.
* gnu/packages/maths.scm (atlas)[arguments]: Use 'modify-phases'.
-rw-r--r--gnu/packages/maths.scm93
1 files changed, 44 insertions, 49 deletions
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index fcea0bca0e..586139eb4b 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -2079,59 +2079,54 @@ packages.")
,(string-append "--with-netlib-lapack-tarfile="
(assoc-ref %build-inputs "lapack-tar")))
#:phases
- (alist-cons-after
- 'install 'install-doc
- (lambda* (#:key outputs inputs #:allow-other-keys)
- (let ((doc (string-append (assoc-ref outputs "doc")
- "/share/doc/atlas")))
- (mkdir-p doc)
- (fold (lambda (file previous)
- (and previous (zero? (system* "cp" file doc))))
- #t (find-files "../ATLAS/doc" ".*"))))
- (alist-cons-after
- 'check 'check-pt
- (lambda _ (zero? (system* "make" "ptcheck")))
- ;; Fix files required to run configure.
- (alist-cons-before
- 'configure 'fix-/bin/sh
+ (modify-phases %standard-phases
+ (add-after 'install 'install-doc
+ (lambda* (#:key outputs inputs #:allow-other-keys)
+ (let ((doc (string-append (assoc-ref outputs "doc")
+ "/share/doc/atlas")))
+ (mkdir-p doc)
+ (fold (lambda (file previous)
+ (and previous (zero? (system* "cp" file doc))))
+ #t (find-files "../ATLAS/doc" ".*")))))
+ (add-after 'check 'check-pt
+ (lambda _ (zero? (system* "make" "ptcheck"))))
+ ;; Fix files required to run configure.
+ (add-before 'configure 'fix-/bin/sh
(lambda _
;; Use `sh', not `/bin/sh'.
(substitute* (find-files "." "Makefile|configure|SpewMakeInc\\.c")
(("/bin/sh")
- "sh")))
- ;; Fix /bin/sh in generated make files.
- (alist-cons-after
- 'configure 'fix-/bin/sh-in-generated-files
- (lambda _
- (substitute* (find-files "." "^[Mm]ake\\.inc.*")
- (("/bin/sh")
- "sh")))
- ;; ATLAS configure program does not accepts the default flags
- ;; passed by the 'gnu-build-system'.
- (alist-replace
- 'configure
- (lambda* (#:key native-inputs inputs outputs
- (configure-flags '())
- #:allow-other-keys #:rest args)
- (let* ((prefix (assoc-ref outputs "out"))
- (bash (or (and=> (assoc-ref
- (or native-inputs inputs) "bash")
- (cut string-append <> "/bin/bash"))
- "/bin/sh"))
- (flags `(,(string-append "--prefix=" prefix)
- ,@configure-flags))
- (abs-srcdir (getcwd))
- (srcdir (string-append "../" (basename abs-srcdir))))
- (format #t "source directory: ~s (relative from build: ~s)~%"
- abs-srcdir srcdir)
- (mkdir "../build")
- (chdir "../build")
- (format #t "build directory: ~s~%" (getcwd))
- (format #t "configure flags: ~s~%" flags)
- (zero? (apply system* bash
- (string-append srcdir "/configure")
- flags))))
- %standard-phases)))))))
+ "sh"))))
+ ;; Fix /bin/sh in generated make files.
+ (add-after 'configure 'fix-/bin/sh-in-generated-files
+ (lambda _
+ (substitute* (find-files "." "^[Mm]ake\\.inc.*")
+ (("/bin/sh")
+ "sh"))))
+ ;; ATLAS configure program does not accepts the default flags
+ ;; passed by the 'gnu-build-system'.
+ (replace 'configure
+ (lambda* (#:key native-inputs inputs outputs
+ (configure-flags '())
+ #:allow-other-keys #:rest args)
+ (let* ((prefix (assoc-ref outputs "out"))
+ (bash (or (and=> (assoc-ref
+ (or native-inputs inputs) "bash")
+ (cut string-append <> "/bin/bash"))
+ "/bin/sh"))
+ (flags `(,(string-append "--prefix=" prefix)
+ ,@configure-flags))
+ (abs-srcdir (getcwd))
+ (srcdir (string-append "../" (basename abs-srcdir))))
+ (format #t "source directory: ~s (relative from build: ~s)~%"
+ abs-srcdir srcdir)
+ (mkdir "../build")
+ (chdir "../build")
+ (format #t "build directory: ~s~%" (getcwd))
+ (format #t "configure flags: ~s~%" flags)
+ (zero? (apply system* bash
+ (string-append srcdir "/configure")
+ flags))))))))
(synopsis "Automatically Tuned Linear Algebra Software")
(description
"ATLAS is an automatically tuned linear algebra software library