summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Bermond2018-12-05 03:13:51 +0000
committerDaniel Bermond2018-12-05 03:13:51 +0000
commitfa5071eddf7ba28c9592841ef9615431c44aa8d5 (patch)
tree8d8500c7c8f294abbab5d1604ac70736229509fc
parent0663bd2abf6f1be8a14b09a1e325341356e847c3 (diff)
downloadaur-fa5071eddf7ba28c9592841ef9615431c44aa8d5.tar.gz
Fix python modules import. Add missing dependency. Fix tools path.
Python modules now resides in '/usr/lib/python<pyver>/libsvm'. gnuplot is needed by svm-easy.py executable, and was added as an optdepend.
-rw-r--r--.SRCINFO5
-rw-r--r--003-libsvm-fix-tools-path.patch30
-rwxr-xr-xPKGBUILD31
3 files changed, 52 insertions, 14 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 859723ea2941..9b1ee726596e 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = libsvm
pkgdesc = A library for Support Vector Machines classification (includes binaries and bindings for python and java)
pkgver = 3.23
- pkgrel = 5
+ pkgrel = 6
url = https://www.csie.ntu.edu.tw/~cjlin/libsvm/
arch = i686
arch = x86_64
@@ -12,13 +12,16 @@ pkgbase = libsvm
optdepends = qt5-base: for Qt5 interface with svm-toy
optdepends = python: for python modules and python CLI tools
optdepends = python2: for python2 modules
+ optdepends = gnuplot: for using svm-easy.py
optdepends = java-runtime: for java bindings
source = libsvm-3.23.tar.gz::https://github.com/cjlin1/libsvm/archive/v323.tar.gz
source = 001-libsvm-fix-qt-headers-path.patch
source = 002-libsvm-use-archlinux-flags.patch
+ source = 003-libsvm-fix-tools-path.patch
sha256sums = 7a466f90f327a98f8ed1cb217570547bcb00077933d1619f3cb9e73518f38196
sha256sums = 01d28d48ca955921cff3ee39e6235fbcbe6f13587c056b05797388afc0c45432
sha256sums = ba986c03199445ec0a9d1d113f54753e61f691ad4c66cad80b1f7d6ccf0c2d17
+ sha256sums = 58338a8eac252459c665eb6f1f03f4b86cd541b2c6942357329be022f3bb6fce
pkgname = libsvm
diff --git a/003-libsvm-fix-tools-path.patch b/003-libsvm-fix-tools-path.patch
new file mode 100644
index 000000000000..b0375b9c6971
--- /dev/null
+++ b/003-libsvm-fix-tools-path.patch
@@ -0,0 +1,30 @@
+diff -up ./tools/easy.py.toolsDir ./tools/easy.py
+--- ./tools/easy.py.toolsDir 2013-03-31 17:06:49.000000000 +1000
++++ ./tools/easy.py 2013-04-13 23:17:53.399526910 +1000
+@@ -12,10 +12,10 @@ if len(sys.argv) <= 1:
+
+ is_win32 = (sys.platform == 'win32')
+ if not is_win32:
+- svmscale_exe = "../svm-scale"
+- svmtrain_exe = "../svm-train"
+- svmpredict_exe = "../svm-predict"
+- grid_py = "./grid.py"
++ svmscale_exe = "/usr/bin/svm-scale"
++ svmtrain_exe = "/usr/bin/svm-train"
++ svmpredict_exe = "/usr/bin/svm-predict"
++ grid_py = "/usr/bin/svm-grid.py"
+ gnuplot_exe = "/usr/bin/gnuplot"
+ else:
+ # example for windows
+diff -up ./tools/grid.py.toolsDir ./tools/grid.py
+--- ./tools/grid.py.toolsDir 2013-03-31 17:06:50.000000000 +1000
++++ ./tools/grid.py 2013-04-13 23:18:53.964522769 +1000
+@@ -18,7 +18,7 @@ class GridOption:
+ def __init__(self, dataset_pathname, options):
+ dirname = os.path.dirname(__file__)
+ if sys.platform != 'win32':
+- self.svmtrain_pathname = os.path.join(dirname, '../svm-train')
++ self.svmtrain_pathname = '/usr/bin/svm-train'
+ self.gnuplot_pathname = '/usr/bin/gnuplot'
+ else:
+ # example for windows
diff --git a/PKGBUILD b/PKGBUILD
index 66c524995b48..952ae697a23b 100755
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -7,7 +7,7 @@
pkgname=libsvm
pkgver=3.23
_srcver="${pkgver/./}"
-pkgrel=5
+pkgrel=6
pkgdesc='A library for Support Vector Machines classification (includes binaries and bindings for python and java)'
arch=('i686' 'x86_64')
url='https://www.csie.ntu.edu.tw/~cjlin/libsvm/'
@@ -17,19 +17,23 @@ makedepends=('qt5-base' 'python')
optdepends=('qt5-base: for Qt5 interface with svm-toy'
'python: for python modules and python CLI tools'
'python2: for python2 modules'
+ 'gnuplot: for using svm-easy.py'
'java-runtime: for java bindings')
source=("${pkgname}-${pkgver}.tar.gz"::"https://github.com/cjlin1/libsvm/archive/v${_srcver}.tar.gz"
'001-libsvm-fix-qt-headers-path.patch'
- '002-libsvm-use-archlinux-flags.patch')
+ '002-libsvm-use-archlinux-flags.patch'
+ '003-libsvm-fix-tools-path.patch')
sha256sums=('7a466f90f327a98f8ed1cb217570547bcb00077933d1619f3cb9e73518f38196'
'01d28d48ca955921cff3ee39e6235fbcbe6f13587c056b05797388afc0c45432'
- 'ba986c03199445ec0a9d1d113f54753e61f691ad4c66cad80b1f7d6ccf0c2d17')
+ 'ba986c03199445ec0a9d1d113f54753e61f691ad4c66cad80b1f7d6ccf0c2d17'
+ '58338a8eac252459c665eb6f1f03f4b86cd541b2c6942357329be022f3bb6fce')
prepare() {
cd "${pkgname}-${_srcver}"
patch -Np1 -i "${srcdir}/001-libsvm-fix-qt-headers-path.patch"
patch -Np1 -i "${srcdir}/002-libsvm-use-archlinux-flags.patch"
+ patch -Np1 -i "${srcdir}/003-libsvm-fix-tools-path.patch"
}
build() {
@@ -67,19 +71,20 @@ package() {
install -D -m644 svm.h -t "${pkgdir}/usr/include/libsvm"
# python modules
- ## NOTE: 'svm-grid.py' can be used either as a python module or a CLI/tool
+ ## NOTE: 'grid.py' can be used either as a python module or a CLI/tool
## https://github.com/cjlin1/libsvm/blob/v323/tools/README#L163-L164
cd "${srcdir}/${pkgname}-${_srcver}/python"
- install -D -m644 commonutil.py "${pkgdir}/usr/lib/python${_pyver}/svm-commonutil.py"
- install -D -m644 commonutil.py "${pkgdir}/usr/lib/python2.7/svm-commonutil.py"
- install -D -m644 svm.py -t "${pkgdir}/usr/lib/python${_pyver}"
- install -D -m644 svm.py -t "${pkgdir}/usr/lib/python2.7"
- install -D -m644 svmutil.py -t "${pkgdir}/usr/lib/python${_pyver}"
- install -D -m644 svmutil.py -t "${pkgdir}/usr/lib/python2.7"
+ install -D -m644 commonutil.py -t "${pkgdir}/usr/lib/python${_pyver}/libsvm"
+ install -D -m644 commonutil.py -t "${pkgdir}/usr/lib/python2.7/libsvm"
+ install -D -m644 svm.py -t "${pkgdir}/usr/lib/python${_pyver}/libsvm"
+ install -D -m644 svm.py -t "${pkgdir}/usr/lib/python2.7/libsvm"
+ install -D -m644 svmutil.py -t "${pkgdir}/usr/lib/python${_pyver}/libsvm"
+ install -D -m644 svmutil.py -t "${pkgdir}/usr/lib/python2.7/libsvm"
cd "${srcdir}/${pkgname}-${_srcver}/tools"
- install -D -m644 grid.py "${pkgdir}/usr/lib/python${_pyver}/svm-grid.py"
- install -D -m644 grid.py "${pkgdir}/usr/lib/python2.7/svm-grid.py"
- sed -i '1s/python$/python2/' "${pkgdir}/usr/lib/python2.7/"{svm-{commonutil,grid},svm,svmutil}.py
+ install -D -m644 grid.py -t "${pkgdir}/usr/lib/python${_pyver}/libsvm"
+ install -D -m644 grid.py -t "${pkgdir}/usr/lib/python2.7/libsvm"
+ sed -i '1s/python$/python2/' "${pkgdir}/usr/lib/python2.7/libsvm/"{commonutil,grid,svm,svmutil}.py
+ printf '' | install -D -m644 /dev/stdin "${pkgdir}/usr/lib/python2.7/libsvm/__init__.py"
# python CLI/tools
install -D -m755 checkdata.py "${pkgdir}/usr/bin/svm-checkdata.py"