gnu: Add Shogun.

* gnu/packages/bioinformatics.scm (shogun): New variable.
This commit is contained in:
Ricardo Wurmus 2015-03-18 17:59:20 +01:00
parent 0cc0095f3c
commit c833ab556f
1 changed files with 109 additions and 0 deletions

View File

@ -30,13 +30,17 @@
#:use-module (gnu packages base)
#:use-module (gnu packages compression)
#:use-module (gnu packages java)
#:use-module (gnu packages maths)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages popt)
#:use-module (gnu packages python)
#:use-module (gnu packages statistics)
#:use-module (gnu packages swig)
#:use-module (gnu packages tbb)
#:use-module (gnu packages vim)
#:use-module (gnu packages xml)
#:use-module (gnu packages zip))
(define-public bedops
@ -1001,6 +1005,111 @@ sequences.")
;; STAR is licensed under GPLv3 or later; htslib is MIT-licensed.
(license license:gpl3+)))
(define-public shogun
(package
(name "shogun")
(version "4.0.0")
(source
(origin
(method url-fetch)
(uri (string-append
"ftp://shogun-toolbox.org/shogun/releases/"
(version-major+minor version)
"/sources/shogun-" version ".tar.bz2"))
(sha256
(base32
"159nlijnb7mnrv9za80wnm1shwvy45hgrqzn51hxy7gw4z6d6fdb"))))
(build-system cmake-build-system)
(arguments
'(#:tests? #f ;no check target
#:phases
(alist-cons-after
'unpack 'delete-broken-symlinks
(lambda _
(for-each delete-file '("applications/arts/data"
"applications/asp/data"
"applications/easysvm/data"
"applications/msplicer/data"
"applications/ocr/data"
"examples/documented/data"
"examples/documented/matlab_static"
"examples/documented/octave_static"
"examples/undocumented/data"
"examples/undocumented/matlab_static"
"examples/undocumented/octave_static"
"tests/integration/data"
"tests/integration/matlab_static"
"tests/integration/octave_static"
"tests/integration/python_modular/tests"))
#t)
(alist-cons-after
'unpack 'change-R-target-path
(lambda* (#:key outputs #:allow-other-keys)
(substitute* '("src/interfaces/r_modular/CMakeLists.txt"
"src/interfaces/r_static/CMakeLists.txt"
"examples/undocumented/r_modular/CMakeLists.txt")
(("\\$\\{R_COMPONENT_LIB_PATH\\}")
(string-append (assoc-ref outputs "out")
"/lib/R/library/")))
#t)
(alist-cons-after
'unpack 'fix-octave-modules
(lambda* (#:key outputs #:allow-other-keys)
(substitute* '("src/interfaces/octave_modular/CMakeLists.txt"
"src/interfaces/octave_static/CMakeLists.txt")
(("^include_directories\\(\\$\\{OCTAVE_INCLUDE_DIRS\\}")
"include_directories(${OCTAVE_INCLUDE_DIRS} ${OCTAVE_INCLUDE_DIRS}/octave"))
;; change target directory
(substitute* "src/interfaces/octave_modular/CMakeLists.txt"
(("\\$\\{OCTAVE_OCT_LOCAL_API_FILE_DIR\\}")
(string-append (assoc-ref outputs "out")
"/share/octave/packages")))
#t)
(alist-cons-before
'build 'set-HOME
;; $HOME needs to be set at some point during the build phase
(lambda _ (setenv "HOME" "/tmp") #t)
%standard-phases))))
#:configure-flags
(list "-DUSE_SVMLIGHT=OFF" ;disable proprietary SVMLIGHT
;;"-DJavaModular=ON" ;requires unpackaged jblas
;;"-DRubyModular=ON" ;requires unpackaged ruby-narray
;;"-DPerlModular=ON" ;"FindPerlLibs" does not exist
;;"-DLuaModular=ON" ;fails because lua doesn't build pkgconfig file
"-DOctaveModular=ON"
"-DOctaveStatic=ON"
"-DPythonModular=ON"
"-DPythonStatic=ON"
"-DRModular=ON"
"-DRStatic=ON"
"-DCmdLineStatic=ON")))
(inputs
`(("python" ,python)
("numpy" ,python-numpy)
("r" ,r)
("octave" ,octave)
("swig" ,swig)
("hdf5" ,hdf5)
("atlas" ,atlas)
("arpack" ,arpack-ng)
("lapack" ,lapack)
("glpk" ,glpk)
("libxml2" ,libxml2)
("lzo" ,lzo)
("zlib" ,zlib)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://shogun-toolbox.org/")
(synopsis "Machine learning toolbox")
(description
"The Shogun Machine learning toolbox provides a wide range of unified and
efficient Machine Learning (ML) methods. The toolbox seamlessly allows to
combine multiple data representations, algorithm classes, and general purpose
tools. This enables both rapid prototyping of data pipelines and extensibility
in terms of new algorithms.")
(license license:gpl3+)))
(define-public vcftools
(package
(name "vcftools")