summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Pfeiffer2019-07-15 16:57:24 +0200
committerChristian Pfeiffer2019-07-15 16:57:24 +0200
commitd20cb7ec25d13eae2426398f9248e3e85eafd3d1 (patch)
tree94b7752334737fc82bd09bfc15f68374a6c8af89
parent0bcabe6ffea480b977a3e32816dc88fc339fded0 (diff)
downloadaur-shogun.tar.gz
shogun 6.1.4, compilation with gcc 9 fixed
-rw-r--r--.SRCINFO13
-rw-r--r--0001-OpenMP-Remove-incomplete-shared-variable-specificati.patch116
-rw-r--r--PKGBUILD28
3 files changed, 141 insertions, 16 deletions
diff --git a/.SRCINFO b/.SRCINFO
index a850849dd7a3..ba21602575cc 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,6 @@
pkgbase = shogun
pkgdesc = A Large Scale Machine Learning Toolbox
- pkgver = 6.1.3
+ pkgver = 6.1.4
pkgrel = 1
url = http://shogun.ml/
arch = x86_64
@@ -19,7 +19,6 @@ pkgbase = shogun
makedepends = rxcpp-git
makedepends = viennacl
depends = arpack
- depends = arprec
depends = cblas
depends = glpk
depends = hdf5
@@ -36,12 +35,14 @@ pkgbase = shogun
optdepends = opencv: OpenCV support
optdepends = python-numpy: Python bindings
optdepends = python-ply: Python bindings
- source = https://github.com/shogun-toolbox/shogun/archive/shogun_6.1.3.tar.gz
+ source = https://github.com/shogun-toolbox/shogun/archive/shogun_6.1.4.tar.gz
source = https://github.com/shogun-toolbox/shogun-gpl/archive/v6.1.3.tar.gz
source = 0001-Removed-is_error-macro-dependency-4098.patch
- sha256sums = 75f4d555efe06eaa7c4c12a1dc942f6e4d41a8ed495777a790b9bd9df936c19c
- sha256sums = e8e2fea9804d3e0924a318b00a764bbf9d751c29d32adeeffbb83aec9fbca966
- sha256sums = 571172d9f31554c1e41cf1e3467cec38c527f1ccf9a2866bf49acfa0c1a84ac4
+ source = 0001-OpenMP-Remove-incomplete-shared-variable-specificati.patch
+ sha512sums = 85e46d5e64ab657f9281d73b4a3917037322a5c704cd9dc723b484ffca3ac778c79a807d8a2b136a81d2944f53e2d8f46bafc5b024bded6efe78ebdb0a02f947
+ sha512sums = bd2335bf8c4ba6a17a2af870a0f218c791ba7825694d95fbce52c61390f093b6932c07c8175e01d3425065486da8258132f5092660d0ba74ff78baba2a2cb88b
+ sha512sums = e72c0c7aa68031856679acc467c497afa2596de8f580cb62a6cf88eaf6a803952990178a050ff74cb6b388b375a84047cae4ebfc388bbc51910bd473c9d419a6
+ sha512sums = 1136d75b6306bf2f1a9c3589d00de9e000a6cdc34616d37643d57b5fd302855528ee084dc342d514b6d35405ca21987aab31bb87f1f74bbb12283ed16c8dbef7
pkgname = shogun
diff --git a/0001-OpenMP-Remove-incomplete-shared-variable-specificati.patch b/0001-OpenMP-Remove-incomplete-shared-variable-specificati.patch
new file mode 100644
index 000000000000..f790e62fb67a
--- /dev/null
+++ b/0001-OpenMP-Remove-incomplete-shared-variable-specificati.patch
@@ -0,0 +1,116 @@
+From 3fe4f43d05a933ff6db5770b47c50b0fc4366452 Mon Sep 17 00:00:00 2001
+From: Johannes Jordan <git@lanrules.de>
+Date: Fri, 5 Jul 2019 13:30:21 +0200
+Subject: [PATCH] OpenMP: Remove incomplete shared variable specifications
+
+Resort to the default rules which fit our intentions anyways.
+
+Fixes compile errors with g++ (GCC) 9.1.0.
+---
+ include/tapkee/routines/diffusion_maps.hpp | 2 +-
+ include/tapkee/routines/isomap.hpp | 4 ++--
+ include/tapkee/routines/locally_linear.hpp | 6 +++---
+ include/tapkee/routines/multidimensional_scaling.hpp | 7 +++----
+ 4 files changed, 9 insertions(+), 10 deletions(-)
+
+diff --git a/include/tapkee/routines/diffusion_maps.hpp b/include/tapkee/routines/diffusion_maps.hpp
+index 207c90e..df60a22 100644
+--- a/include/tapkee/routines/diffusion_maps.hpp
++++ b/include/tapkee/routines/diffusion_maps.hpp
+@@ -45,7 +45,7 @@ DenseSymmetricMatrix compute_diffusion_matrix(RandomAccessIterator begin, Random
+ RESTRICT_ALLOC;
+
+ // compute gaussian kernel matrix
+-#pragma omp parallel shared(diffusion_matrix,begin,callback) default(none)
++#pragma omp parallel
+ {
+ IndexType i_index_iter, j_index_iter;
+ #pragma omp for nowait
+diff --git a/include/tapkee/routines/isomap.hpp b/include/tapkee/routines/isomap.hpp
+index 68e4517..7c2411d 100644
+--- a/include/tapkee/routines/isomap.hpp
++++ b/include/tapkee/routines/isomap.hpp
+@@ -50,7 +50,7 @@ DenseSymmetricMatrix compute_shortest_distances_matrix(RandomAccessIterator begi
+
+ DenseSymmetricMatrix shortest_distances(N,N);
+
+-#pragma omp parallel shared(shortest_distances,neighbors,begin,callback) default(none)
++#pragma omp parallel
+ {
+ bool* f = new bool[N];
+ bool* s = new bool[N];
+@@ -168,7 +168,7 @@ DenseMatrix compute_shortest_distances_matrix(RandomAccessIterator begin, Random
+
+ DenseMatrix shortest_distances(landmarks.size(),N);
+
+-#pragma omp parallel shared(shortest_distances,begin,landmarks,neighbors,callback) default(none)
++#pragma omp parallel
+ {
+ bool* f = new bool[N];
+ bool* s = new bool[N];
+diff --git a/include/tapkee/routines/locally_linear.hpp b/include/tapkee/routines/locally_linear.hpp
+index 8b00c95..42a2d49 100644
+--- a/include/tapkee/routines/locally_linear.hpp
++++ b/include/tapkee/routines/locally_linear.hpp
+@@ -32,7 +32,7 @@ SparseWeightMatrix tangent_weight_matrix(RandomAccessIterator begin, RandomAcces
+ SparseTriplets sparse_triplets;
+ sparse_triplets.reserve((k*k+2*k+1)*(end-begin));
+
+-#pragma omp parallel shared(begin,end,neighbors,callback,sparse_triplets) default(none)
++#pragma omp parallel
+ {
+ IndexType index_iter;
+ DenseMatrix gram_matrix = DenseMatrix::Zero(k,k);
+@@ -102,7 +102,7 @@ SparseWeightMatrix linear_weight_matrix(const RandomAccessIterator& begin, const
+ SparseTriplets sparse_triplets;
+ sparse_triplets.reserve((k*k+2*k+1)*(end-begin));
+
+-#pragma omp parallel shared(begin,end,neighbors,callback,sparse_triplets) default(none)
++#pragma omp parallel
+ {
+ IndexType index_iter;
+ DenseMatrix gram_matrix = DenseMatrix::Zero(k,k);
+@@ -175,7 +175,7 @@ SparseWeightMatrix hessian_weight_matrix(RandomAccessIterator begin, RandomAcces
+
+ const IndexType dp = target_dimension*(target_dimension+1)/2;
+
+-#pragma omp parallel shared(begin,end,neighbors,callback,sparse_triplets) default(none)
++#pragma omp parallel
+ {
+ IndexType index_iter;
+ DenseMatrix gram_matrix = DenseMatrix::Zero(k,k);
+diff --git a/include/tapkee/routines/multidimensional_scaling.hpp b/include/tapkee/routines/multidimensional_scaling.hpp
+index 434f778..a1ea4b0 100644
+--- a/include/tapkee/routines/multidimensional_scaling.hpp
++++ b/include/tapkee/routines/multidimensional_scaling.hpp
+@@ -37,7 +37,7 @@ DenseSymmetricMatrix compute_distance_matrix(RandomAccessIterator begin, RandomA
+ const IndexType n_landmarks = landmarks.size();
+ DenseSymmetricMatrix distance_matrix(n_landmarks,n_landmarks);
+
+-#pragma omp parallel shared(begin,landmarks,distance_matrix,callback) default(none)
++#pragma omp parallel
+ {
+ IndexType i_index_iter,j_index_iter;
+ #pragma omp for nowait
+@@ -79,8 +79,7 @@ DenseMatrix triangulate(RandomAccessIterator begin, RandomAccessIterator end, Pa
+ for (IndexType i=0; i<target_dimension; ++i)
+ landmarks_embedding.first.col(i).array() /= landmarks_embedding.second(i);
+
+-#pragma omp parallel shared(begin,end,to_process,distance_callback,landmarks, \
+- landmarks_embedding,landmark_distances_squared,embedding) default(none)
++#pragma omp parallel
+ {
+ DenseVector distances_to_landmarks(n_landmarks);
+ IndexType index_iter;
+@@ -116,7 +115,7 @@ DenseSymmetricMatrix compute_distance_matrix(RandomAccessIterator begin, RandomA
+ const IndexType n_vectors = end-begin;
+ DenseSymmetricMatrix distance_matrix(n_vectors,n_vectors);
+
+-#pragma omp parallel shared(begin,distance_matrix,callback) default(none)
++#pragma omp parallel
+ {
+ IndexType i_index_iter,j_index_iter;
+ #pragma omp for nowait
+--
+2.22.0
+
diff --git a/PKGBUILD b/PKGBUILD
index e907896fd2a3..4080a1be1f4f 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,12 +1,14 @@
-# Maintainer: Christian Pfeiffer <xpipe at hotmail dot de>
+# Maintainer: Christian Pfeiffer <cpfeiffer at live dot de>
+
pkgname=shogun
-pkgver=6.1.3
+pkgver=6.1.4
+_gpl_pkgver=6.1.3
pkgrel=1
pkgdesc="A Large Scale Machine Learning Toolbox"
arch=('x86_64')
url="http://shogun.ml/"
license=('GPL3')
-depends=('arpack' 'arprec' 'cblas' 'glpk' 'hdf5' 'lapacke' 'libxml2'
+depends=('arpack' 'cblas' 'glpk' 'hdf5' 'lapacke' 'libxml2'
'json-c' 'lua' 'nlopt' 'openblas' 'ocl-icd' 'python' 'r' 'snappy')
makedepends=('ctags' 'doxygen' 'eigen3' 'gdb' 'opencv' 'pandoc' 'protobuf'
'python-numpy' 'python-ply' 'python-sphinx' 'swig' 'rxcpp-git' 'viennacl')
@@ -14,18 +16,24 @@ optdepends=('opencv: OpenCV support'
'python-numpy: Python bindings'
'python-ply: Python bindings')
source=(https://github.com/shogun-toolbox/shogun/archive/shogun_$pkgver.tar.gz
- https://github.com/shogun-toolbox/shogun-gpl/archive/v$pkgver.tar.gz
- 0001-Removed-is_error-macro-dependency-4098.patch)
-sha256sums=('75f4d555efe06eaa7c4c12a1dc942f6e4d41a8ed495777a790b9bd9df936c19c'
- 'e8e2fea9804d3e0924a318b00a764bbf9d751c29d32adeeffbb83aec9fbca966'
- '571172d9f31554c1e41cf1e3467cec38c527f1ccf9a2866bf49acfa0c1a84ac4')
+ https://github.com/shogun-toolbox/shogun-gpl/archive/v$_gpl_pkgver.tar.gz
+ 0001-Removed-is_error-macro-dependency-4098.patch
+ 0001-OpenMP-Remove-incomplete-shared-variable-specificati.patch
+ )
+sha512sums=('85e46d5e64ab657f9281d73b4a3917037322a5c704cd9dc723b484ffca3ac778c79a807d8a2b136a81d2944f53e2d8f46bafc5b024bded6efe78ebdb0a02f947'
+ 'bd2335bf8c4ba6a17a2af870a0f218c791ba7825694d95fbce52c61390f093b6932c07c8175e01d3425065486da8258132f5092660d0ba74ff78baba2a2cb88b'
+ 'e72c0c7aa68031856679acc467c497afa2596de8f580cb62a6cf88eaf6a803952990178a050ff74cb6b388b375a84047cae4ebfc388bbc51910bd473c9d419a6'
+ '1136d75b6306bf2f1a9c3589d00de9e000a6cdc34616d37643d57b5fd302855528ee084dc342d514b6d35405ca21987aab31bb87f1f74bbb12283ed16c8dbef7')
prepare() {
mkdir build
- mv -T "${pkgname}-gpl-${pkgver}" "${srcdir}/${pkgname}-${pkgname}_${pkgver}/src/gpl"
+ mv -T "${pkgname}-gpl-${_gpl_pkgver}" "${srcdir}/${pkgname}-${pkgname}_${pkgver}/src/gpl"
cd "${srcdir}/${pkgname}-${pkgname}_${pkgver}"
patch -p1 -i ../0001-Removed-is_error-macro-dependency-4098.patch
+
+ cd "src/shogun/lib/tapkee"
+ patch -p3 -i "${srcdir}/0001-OpenMP-Remove-incomplete-shared-variable-specificati.patch"
}
build() {
@@ -39,7 +47,7 @@ build() {
# Ruby - requires RubyNArray, which isn't packaged
# Requires OpenBLAS, because their CMake can't work with libblas.so, only
# ATLAS, OpenBLAS and Intel MKL.
- cmake -DCMAKE_INSTALL_PREFIX=/usr -DENABLE_ARPREC=ON \
+ cmake -DCMAKE_INSTALL_PREFIX=/usr \
-DBUILD_EXAMPLES=OFF -DBUILD_META_EXAMPLES=OFF \
-DENABLE_ARPACK=ON -DENABLE_BZIP2=ON \
-DENABLE_COLPACK=OFF -DENABLE_VIENNACL=ON \