diff options
author | Christian Pfeiffer | 2019-07-15 16:57:24 +0200 |
---|---|---|
committer | Christian Pfeiffer | 2019-07-15 16:57:24 +0200 |
commit | d20cb7ec25d13eae2426398f9248e3e85eafd3d1 (patch) | |
tree | 94b7752334737fc82bd09bfc15f68374a6c8af89 | |
parent | 0bcabe6ffea480b977a3e32816dc88fc339fded0 (diff) | |
download | aur-shogun.tar.gz |
shogun 6.1.4, compilation with gcc 9 fixed
-rw-r--r-- | .SRCINFO | 13 | ||||
-rw-r--r-- | 0001-OpenMP-Remove-incomplete-shared-variable-specificati.patch | 116 | ||||
-rw-r--r-- | PKGBUILD | 28 |
3 files changed, 141 insertions, 16 deletions
@@ -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 + @@ -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 \ |