gnu: Add Shogun.
* gnu/packages/bioinformatics.scm (shogun): New variable.
This commit is contained in:
		
							parent
							
								
									0cc0095f3c
								
							
						
					
					
						commit
						c833ab556f
					
				
					 1 changed files with 109 additions and 0 deletions
				
			
		|  | @ -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") | ||||
|  |  | |||
		Reference in a new issue