From a9b34762391e6f3b066aef6fc1ebc614ec88db86 Mon Sep 17 00:00:00 2001 From: Mark Meyer Date: Thu, 1 Feb 2018 15:07:58 +0100 Subject: [PATCH] gnu: Add fann. * gnu/packages/machine-learning.scm (fann): New variable. Co-authored-by: Ben Woodcroft --- gnu/packages/machine-learning.scm | 35 +++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm index bd13cedcb3..93d6027250 100644 --- a/gnu/packages/machine-learning.scm +++ b/gnu/packages/machine-learning.scm @@ -4,6 +4,8 @@ ;;; Copyright © 2016, 2017 Marius Bakke ;;; Copyright © 2016 Hartmut Goebel ;;; Copyright © 2018 Tobias Geerinckx-Rice +;;; Copyright © 2018 Mark Meyer +;;; Copyright © 2018 Ben Woodcroft ;;; ;;; This file is part of GNU Guix. ;;; @@ -31,6 +33,7 @@ (define-module (gnu packages machine-learning) #:use-module (guix build-system ocaml) #:use-module (guix build-system python) #:use-module (guix build-system r) + #:use-module (guix git-download) #:use-module (gnu packages) #:use-module (gnu packages autotools) #:use-module (gnu packages boost) @@ -50,6 +53,38 @@ (define-module (gnu packages machine-learning) #:use-module (gnu packages xml) #:use-module (gnu packages xorg)) +(define-public fann + ;; The last release is >100 commits behind, so we package from git. + (let ((commit "d71d54788bee56ba4cf7522801270152da5209d7")) + (package + (name "fann") + (version (string-append "2.2.0-1." (string-take commit 8))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/libfann/fann.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0ibwpfrjs6q2lijs8slxjgzb2llcl6rk3v2ski4r6215g5jjhg3x")))) + (build-system cmake-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out"))) + (with-directory-excursion (string-append (getcwd) "/tests") + (invoke "./fann_tests")))))))) + (home-page "http://leenissen.dk/fann/wp/") + (synopsis "Fast Artificial Neural Network") + (description + "FANN is a free open source neural network library, which implements +multilayer artificial neural networks in C with support for both fully +connected and sparsely connected networks.") + (license license:lgpl2.1)))) + (define-public libsvm (package (name "libsvm")