Date: Friday, April 24, 2020 @ 16:15:28 Author: archange Revision: 619322
archrelease: copy trunk to community-staging-x86_64 Added: vigra/repos/community-staging-x86_64/ vigra/repos/community-staging-x86_64/PKGBUILD (from rev 619321, vigra/trunk/PKGBUILD) vigra/repos/community-staging-x86_64/fix-incorrect-template-parameter-type.patch (from rev 619321, vigra/trunk/fix-incorrect-template-parameter-type.patch) vigra/repos/community-staging-x86_64/py3.7.diff (from rev 619321, vigra/trunk/py3.7.diff) ---------------------------------------------+ PKGBUILD | 72 +++++++++++++ fix-incorrect-template-parameter-type.patch | 139 ++++++++++++++++++++++++++ py3.7.diff | 19 +++ 3 files changed, 230 insertions(+) Copied: vigra/repos/community-staging-x86_64/PKGBUILD (from rev 619321, vigra/trunk/PKGBUILD) =================================================================== --- community-staging-x86_64/PKGBUILD (rev 0) +++ community-staging-x86_64/PKGBUILD 2020-04-24 16:15:28 UTC (rev 619322) @@ -0,0 +1,72 @@ +# Maintainer: Bruno Pagani <archa...@archlinux.org> +# Contributor: AndyRTR <andy...@archlinux.org> +# Contributor: Lukas Jirkovsky <l.jirkov...@gmail.com> + +pkgbase=vigra +pkgname=(vigra vigra-doc) +pkgver=1.11.1 +pkgrel=22 +pkgdesc="Computer vision library" +arch=(x86_64) +url="https://ukoethe.github.io/vigra/" +license=(custom:MIT) +makedepends=(# runtime deps + libpng libtiff openexr gcc-libs sh hdf5 fftw + # additional makedeps + cmake boost python-numpy) +checkdepends=(python-nose) +source=("https://github.com/ukoethe/vigra/releases/download/Version-${pkgver//./-}/vigra-${pkgver}-src.tar.gz" + fix-incorrect-template-parameter-type.patch py3.7.diff) +sha256sums=('a5564e1083f6af6a885431c1ee718bad77d11f117198b277557f8558fa461aaf' + 'f151f902483dfa2b1f3d431f54bb161300cf184158c9f416fa653d19ab363cc4' + '8fcdcce50c377be44387cbd4a001dadf5e03b32483de55c05a359c887e95a05b') + +prepare() { + cd ${pkgbase}-${pkgver} + # https://github.com/ukoethe/vigra/issues/414 + patch -Np1 -i ../fix-incorrect-template-parameter-type.patch + # python 3.7 compat + patch -Np1 -i ../py3.7.diff +} + +build() { + cmake -B build -S ${pkgbase}-${pkgver} \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DPYTHON_EXECUTABLE=/usr/bin/python \ + -DWITH_OPENEXR=true \ + -DWITH_VIGRANUMPY=1 \ + -DDOCINSTALL=share/doc \ + -DCMAKE_C_FLAGS="-DH5_USE_110_API" \ + -DCMAKE_CXX_FLAGS="-DH5_USE_110_API" + make -C build +} + +check() { + make -C build -j1 -k check || warning "Tests failed" # https://github.com/ukoethe/vigra/issues/409 +} + +package_vigra() { + pkgdesc="Computer vision library" + depends=('libpng' 'libtiff' 'openexr' 'gcc-libs' 'sh' 'hdf5' 'fftw') + optdepends=('python: for python bindings' + 'boost-libs: for python bindings') + + make -C build DESTDIR="${pkgdir}" install + + install -Dm644 ${pkgbase}-${pkgver}/LICENSE.txt "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE + + # Remove doc + rm -rf "${pkgdir}"/usr/share/doc +} + +package_vigra-doc() { + pkgdesc="Computer vision library - documentation and examples" + #arch=('any') # Not supported for now, maybe later + + make -C build DESTDIR="${pkgdir}" install + + # Remove vigra package content + rm -rf "${pkgdir}"/usr/{bin,include,lib} + + install -Dm644 ${pkgbase}-${pkgver}/LICENSE.txt "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE +} Copied: vigra/repos/community-staging-x86_64/fix-incorrect-template-parameter-type.patch (from rev 619321, vigra/trunk/fix-incorrect-template-parameter-type.patch) =================================================================== --- community-staging-x86_64/fix-incorrect-template-parameter-type.patch (rev 0) +++ community-staging-x86_64/fix-incorrect-template-parameter-type.patch 2020-04-24 16:15:28 UTC (rev 619322) @@ -0,0 +1,139 @@ +From 81958d302494e137f98a8b1d7869841532f90388 Mon Sep 17 00:00:00 2001 +From: JaimeIvanCervantes <jimmyc...@hotmail.com> +Date: Fri, 16 Jun 2017 13:21:45 -0700 +Subject: [PATCH] multi_convolution: Fix for incorrect template parameter type + when using unsigned int N for TinyVector SIZE. (Fixes #414) + +--- + include/vigra/multi_convolution.hxx | 28 ++++++++++++++-------------- + 1 file changed, 14 insertions(+), 14 deletions(-) + +diff --git a/include/vigra/multi_convolution.hxx b/include/vigra/multi_convolution.hxx +index 1b5efa740..ec89bcf58 100644 +--- a/include/vigra/multi_convolution.hxx ++++ b/include/vigra/multi_convolution.hxx +@@ -1426,7 +1426,7 @@ gaussianSmoothMultiArray(MultiArrayView<N, T1, S1> const & source, + class T2, class S2> + void + gaussianGradientMultiArray(MultiArrayView<N, T1, S1> const & source, +- MultiArrayView<N, TinyVector<T2, N>, S2> dest, ++ MultiArrayView<N, TinyVector<T2, int(N)>, S2> dest, + double sigma, + ConvolutionOptions<N> opt = ConvolutionOptions<N>()); + +@@ -1435,7 +1435,7 @@ gaussianSmoothMultiArray(MultiArrayView<N, T1, S1> const & source, + class T2, class S2> + void + gaussianGradientMultiArray(MultiArrayView<N, T1, S1> const & source, +- MultiArrayView<N, TinyVector<T2, N>, S2> dest, ++ MultiArrayView<N, TinyVector<T2, int(N)>, S2> dest, + ConvolutionOptions<N> opt); + + // likewise, but execute algorithm in parallel +@@ -1443,7 +1443,7 @@ gaussianSmoothMultiArray(MultiArrayView<N, T1, S1> const & source, + class T2, class S2> + void + gaussianGradientMultiArray(MultiArrayView<N, T1, S1> const & source, +- MultiArrayView<N, TinyVector<T2, N>, S2> dest, ++ MultiArrayView<N, TinyVector<T2, int(N)>, S2> dest, + BlockwiseConvolutionOptions<N> opt); + } + \endcode +@@ -1590,7 +1590,7 @@ template <unsigned int N, class T1, class S1, + class T2, class S2> + inline void + gaussianGradientMultiArray(MultiArrayView<N, T1, S1> const & source, +- MultiArrayView<N, TinyVector<T2, N>, S2> dest, ++ MultiArrayView<N, TinyVector<T2, int(N)>, S2> dest, + ConvolutionOptions<N> opt ) + { + if(opt.to_point != typename MultiArrayShape<N>::type()) +@@ -1614,7 +1614,7 @@ template <unsigned int N, class T1, class S1, + class T2, class S2> + inline void + gaussianGradientMultiArray(MultiArrayView<N, T1, S1> const & source, +- MultiArrayView<N, TinyVector<T2, N>, S2> dest, ++ MultiArrayView<N, TinyVector<T2, int(N)>, S2> dest, + double sigma, + ConvolutionOptions<N> opt = ConvolutionOptions<N>()) + { +@@ -1653,7 +1653,7 @@ gaussianGradientMagnitudeImpl(MultiArrayView<N+1, T1, S1> const & src, + dest.init(0.0); + + typedef typename NumericTraits<T1>::RealPromote TmpType; +- MultiArray<N, TinyVector<TmpType, N> > grad(dest.shape()); ++ MultiArray<N, TinyVector<TmpType, int(N)> > grad(dest.shape()); + + using namespace multi_math; + +@@ -1771,7 +1771,7 @@ gaussianGradientMagnitude(MultiArrayView<N+1, Multiband<T1>, S1> const & src, + class T2, class S2> + void + symmetricGradientMultiArray(MultiArrayView<N, T1, S1> const & source, +- MultiArrayView<N, TinyVector<T2, N>, S2> dest, ++ MultiArrayView<N, TinyVector<T2, int(N)>, S2> dest, + ConvolutionOptions<N> opt = ConvolutionOptions<N>()); + + // execute algorithm in parallel +@@ -1779,7 +1779,7 @@ gaussianGradientMagnitude(MultiArrayView<N+1, Multiband<T1>, S1> const & src, + class T2, class S2> + void + symmetricGradientMultiArray(MultiArrayView<N, T1, S1> const & source, +- MultiArrayView<N, TinyVector<T2, N>, S2> dest, ++ MultiArrayView<N, TinyVector<T2, int(N)>, S2> dest, + BlockwiseConvolutionOptions<N> opt); + } + \endcode +@@ -1895,7 +1895,7 @@ template <unsigned int N, class T1, class S1, + class T2, class S2> + inline void + symmetricGradientMultiArray(MultiArrayView<N, T1, S1> const & source, +- MultiArrayView<N, TinyVector<T2, N>, S2> dest, ++ MultiArrayView<N, TinyVector<T2, int(N)>, S2> dest, + ConvolutionOptions<N> opt = ConvolutionOptions<N>()) + { + if(opt.to_point != typename MultiArrayShape<N>::type()) +@@ -2214,14 +2214,14 @@ laplacianOfGaussianMultiArray(MultiArrayView<N, T1, S1> const & source, + template <unsigned int N, class T1, class S1, + class T2, class S2> + void +- gaussianDivergenceMultiArray(MultiArrayView<N, TinyVector<T1, N>, S1> const & vectorField, ++ gaussianDivergenceMultiArray(MultiArrayView<N, TinyVector<T1, int(N)>, S1> const & vectorField, + MultiArrayView<N, T2, S2> divergence, + ConvolutionOptions<N> const & opt); + + template <unsigned int N, class T1, class S1, + class T2, class S2> + void +- gaussianDivergenceMultiArray(MultiArrayView<N, TinyVector<T1, N>, S1> const & vectorField, ++ gaussianDivergenceMultiArray(MultiArrayView<N, TinyVector<T1, int(N)>, S1> const & vectorField, + MultiArrayView<N, T2, S2> divergence, + double sigma, + ConvolutionOptions<N> opt = ConvolutionOptions<N>()); +@@ -2231,7 +2231,7 @@ laplacianOfGaussianMultiArray(MultiArrayView<N, T1, S1> const & source, + template <unsigned int N, class T1, class S1, + class T2, class S2> + void +- gaussianDivergenceMultiArray(MultiArrayView<N, TinyVector<T1, N>, S1> const & vectorField, ++ gaussianDivergenceMultiArray(MultiArrayView<N, TinyVector<T1, int(N)>, S1> const & vectorField, + MultiArrayView<N, T2, S2> divergence, + BlockwiseConvolutionOptions<N> const & opt); + } +@@ -2324,7 +2324,7 @@ gaussianDivergenceMultiArray(Iterator vectorField, Iterator vectorFieldEnd, + template <unsigned int N, class T1, class S1, + class T2, class S2> + inline void +-gaussianDivergenceMultiArray(MultiArrayView<N, TinyVector<T1, N>, S1> const & vectorField, ++gaussianDivergenceMultiArray(MultiArrayView<N, TinyVector<T1, int(N)>, S1> const & vectorField, + MultiArrayView<N, T2, S2> divergence, + ConvolutionOptions<N> const & opt) + { +@@ -2338,7 +2338,7 @@ gaussianDivergenceMultiArray(MultiArrayView<N, TinyVector<T1, N>, S1> const & ve + template <unsigned int N, class T1, class S1, + class T2, class S2> + inline void +-gaussianDivergenceMultiArray(MultiArrayView<N, TinyVector<T1, N>, S1> const & vectorField, ++gaussianDivergenceMultiArray(MultiArrayView<N, TinyVector<T1, int(N)>, S1> const & vectorField, + MultiArrayView<N, T2, S2> divergence, + double sigma, + ConvolutionOptions<N> opt = ConvolutionOptions<N>()) Copied: vigra/repos/community-staging-x86_64/py3.7.diff (from rev 619321, vigra/trunk/py3.7.diff) =================================================================== --- community-staging-x86_64/py3.7.diff (rev 0) +++ community-staging-x86_64/py3.7.diff 2020-04-24 16:15:28 UTC (rev 619322) @@ -0,0 +1,19 @@ +diff -u -r vigra-1.11.1/vigranumpy/src/core/vigranumpycore.cxx vigra-1.11.1-py3.7/vigranumpy/src/core/vigranumpycore.cxx +--- vigra-1.11.1/vigranumpy/src/core/vigranumpycore.cxx 2017-05-19 17:01:08.000000000 +0200 ++++ vigra-1.11.1-py3.7/vigranumpy/src/core/vigranumpycore.cxx 2018-07-29 18:29:46.514547076 +0200 +@@ -59,10 +59,14 @@ + Py_ssize_t size = PyUnicode_GET_DATA_SIZE(s.ptr()); + const char * data = PyUnicode_AS_DATA(s.ptr()); + return checksum(data, size); +-#else ++#elif (PY_MAJOR_VERSION == 3) && (PY_MINOR_VERSION < 7) + Py_ssize_t size = 0; + char * data = PyUnicode_AsUTF8AndSize(s.ptr(), &size); + return checksum(data, size); ++#else ++ Py_ssize_t size = 0; ++ const char * data = PyUnicode_AsUTF8AndSize(s.ptr(), &size); ++ return checksum(data, size); + #endif + } +