summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorJohn Darrington <jmd@gnu.org>2017-03-07 07:59:21 +0100
committerJohn Darrington <jmd@gnu.org>2017-03-18 15:25:59 +0100
commit21122bd79e7f9b0b5349ffffe2c146bace7205dc (patch)
tree190ab8b3a24bc1cceed240091a929a39a4e98291 /gnu
parentfdcb04afcc72b7e1512a046d803f406b98678b25 (diff)
downloadguix-21122bd79e7f9b0b5349ffffe2c146bace7205dc.tar.gz
gnu: Add niftilib.
* gnu/packages/image.scm (niftilib): New variable.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/image.scm59
1 files changed, 58 insertions, 1 deletions
diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm
index f2afa988cb..73c5298e17 100644
--- a/gnu/packages/image.scm
+++ b/gnu/packages/image.scm
@@ -6,7 +6,7 @@
 ;;; Copyright © 2014, 2016 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
 ;;; Copyright © 2015 Amirouche Boubekki <amirouche@hypermove.net>
-;;; Copyright © 2014 John Darrington <jmd@gnu.org>
+;;; Copyright © 2014, 2017 John Darrington <jmd@gnu.org>
 ;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
@@ -1164,3 +1164,60 @@ interface.  It supports color space extensions that allow it to compress from
 and decompress to 32-bit and big-endian pixel buffers (RGBX, XBGR, etc.).")
     (license (list license:bsd-3        ; jsimd*.[ch] and most of simd/
                    license:ijg))))      ; the rest
+
+(define-public niftilib
+  (package
+   (name "niftilib")
+   (version "2.0.0")
+   (source (origin
+            (method url-fetch)
+            (uri (list (string-append "mirror://sourceforge/niftilib/"
+                                      "nifticlib/nifticlib_"
+                                      (string-join (string-split version #\.) "_")
+                                      "/nifticlib-" version ".tar.gz")))
+            (sha256
+             (base32 "123z9bwzgin5y8gi5ni8j217k7n683whjsvg0lrpii9flgk8isd3"))))
+   (build-system gnu-build-system)
+   (arguments
+    '(#:tests? #f
+      #:parallel-build? #f
+      #:phases
+      (modify-phases %standard-phases
+        (replace 'install
+                 (lambda _
+                   (for-each
+                    (lambda (dir)
+                      (let ((directory (assoc-ref %outputs "out")))
+                        (mkdir-p (string-append directory "/" dir))
+                        (zero? (system* "cp" "-a" dir directory))))
+                    '("bin" "lib" "include"))))
+        (replace 'configure
+                 (lambda _
+                   (substitute* "Makefile"
+                     (("^SHELL[ \t]*=[ \t]*csh")
+                      (string-append "SHELL = "
+                                     (assoc-ref %build-inputs "bash")
+                                     "/bin/sh"))
+
+                     (("^CFLAGS[ \t]*=[ \t]\\$\\(ANSI_FLAGS\\)")
+                      "CFLAGS = $(ANSI_FLAGS) -fPIC")
+
+                     (("^ZLIB_INC[ \t]*=[ \t]*-I/usr/include")
+                      (string-append "ZLIB_INC = -I"
+                                     (assoc-ref %build-inputs "zlib")
+                                     "/include"))
+
+                     (("^CP[ \t]*=[ \t]*cp")
+                      (string-append "CP = "
+                                     (assoc-ref %build-inputs "coreutils")
+                                     "/bin/cp")))
+                   #t)))))
+   (inputs
+    `(("zlib" ,zlib)))
+   (synopsis "Library for reading and writing files in the nifti-1 format")
+   (description "Niftilib is a set of i/o libraries for reading and writing
+files in the nifti-1 data format - a binary file format for storing
+medical image data, e.g. magnetic resonance image (MRI) and functional MRI
+(fMRI) brain images.")
+   (home-page "http://niftilib.sourceforge.net")
+   (license license:public-domain)))