blob: ff98418398019c80357ed4d6748ae135e14b553e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
|
# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
# Maintainer: Javier Fuentes <0xffaa.rm@gmail.com>
# Contributor: Figo.zhang <figo1802@gmail.com>
# Contributor: hauptmech
pkgname=flann
pkgver=1.8.4
pkgrel=2
pkgdesc="FLANN is a library for performing fast approximate nearest neighbor searches in high dimensional spaces"
arch=('i686' 'x86_64')
url='http://www.cs.ubc.ca/~mariusm/index.php/FLANN/FLANN'
license=('BSD')
depends=('hdf5')
makedepends=('cmake' 'python2')
optdepends=('python2: python bindings'
'cuda: cuda support')
source=("http://people.cs.ubc.ca/~mariusm/uploads/FLANN/flann-${pkgver}-src.zip"
"http://pkgs.fedoraproject.org/cgit/rpms/flann.git/plain/flann-1.8.4-gcc6.patch")
md5sums=('a0ecd46be2ee11a68d2a7d9c6b4ce701'
'21ec2d7009fb09307ab74909f3b1d04e')
build() {
cd "$srcdir/flann-${pkgver}-src"
patch -p0 < ../flann-1.8.4-gcc6.patch
sed -i 's/lib64/lib/g' cmake/flann_utils.cmake
sed -i '1 i #undef _GLIBCXX_ATOMIC_BUILTINS' src/cpp/flann/algorithms/kdtree_cuda_3d_index.cu
sed -i '1 i #undef _GLIBCXX_USE_INT128' src/cpp/flann/algorithms/kdtree_cuda_3d_index.cu
sed -i 's|#!/usr/bin/env python|#!/usr/bin/python2|' \
bin/download_checkmd5.py \
bin/run_test.py \
src/python/setup.py.tpl \
test/test_clustering.py \
test/test_index_save.py \
test/test_nn_autotune.py \
test/test_nn_index.py \
test/test_nn.py
sed -i 's|#!/usr/bin/python|#!/usr/bin/python2|' \
test/memusage_clustering.py \
test/memusage_nn.py
sed -i "s|setup\.py install|setup.py install --root=$pkgdir --optimize=1|" src/python/CMakeLists.txt
[[ -d build ]] && rm -r build
mkdir build && cd build
cmake .. \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DBUILD_MATLAB_BINDINGS=OFF \
-DBUILD_PYTHON_BINDINGS=ON \
-DPYTHON_EXECUTABLE=/usr/bin/python2 \
-DNVCC_COMPILER_BINDIR=/usr/bin
make
}
package() {
cd "$srcdir/flann-${pkgver}-src"
cd build
make DESTDIR="$pkgdir" install
#install license file
install -D -m644 ../COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
# FIXME: awful hack, but I got this error without the fix:
# running install_lib
# copying build/lib/pyflann/exceptions.py -> /usr/lib/python2.7/site-packages/pyflann
# error: /usr/lib/python2.7/site-packages/pyflann/exceptions.py: Permission denied
_python2libpath="`python2 -c "from distutils.sysconfig import get_python_lib; print get_python_lib()" | tr -d '\n'`"
mkdir -p "${pkgdir}${_python2libpath}"
cp -pr "${pkgdir}/usr/share/flann/python/pyflann" "${pkgdir}${_python2libpath}/pyflann"
}
|