gnu: Add python-libsvm.

* gnu/packages/machine-learning.scm (python-libsvm): New variable.
This commit is contained in:
Ricardo Wurmus 2015-06-02 15:10:37 +02:00
parent 741115b649
commit 71f80f5487
1 changed files with 34 additions and 1 deletions

View File

@ -22,7 +22,8 @@
#:use-module (guix utils)
#:use-module (guix download)
#:use-module (guix build-system gnu)
#:use-module (gnu packages))
#:use-module (gnu packages)
#:use-module (gnu packages python))
(define-public libsvm
(package
@ -63,3 +64,35 @@ classification, (C-SVC, nu-SVC), regression (epsilon-SVR, nu-SVR) and
distribution estimation (one-class SVM). It supports multi-class
classification.")
(license license:bsd-3)))
(define-public python-libsvm
(package (inherit libsvm)
(name "python-libsvm")
(build-system gnu-build-system)
(arguments
`(#:tests? #f ;no "check" target
#:make-flags '("-C" "python")
#:phases
(modify-phases %standard-phases
(delete 'configure)
(replace
'install
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((site (string-append (assoc-ref outputs "out")
"/lib/python"
(string-take
(string-take-right
(assoc-ref inputs "python") 5) 3)
"/site-packages/")))
(substitute* "python/svm.py"
(("../libsvm.so.2") "libsvm.so.2"))
(mkdir-p site)
(for-each (lambda (file)
(copy-file file (string-append site (basename file))))
(find-files "python" "\\.py"))
(copy-file "libsvm.so.2"
(string-append site "libsvm.so.2")))
#t)))))
(inputs
`(("python" ,python)))
(synopsis "Python bindings of libSVM")))