summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 72d097cd22cb0641eda2ae680f410f16339b057f (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
78
79
80
81
82
83
84
85
86
87
88
89
# Maintainer: jerry73204 <jerry73204@gmail.com>
# Co-maintainer: circle <az6980522@gmail.com>
pkgname=ncsdk
pkgver=2.08.01.02
pkgrel=3
pkgdesc='Software Development Kit for the Intel® Movidius™ Neural Compute Stick'
arch=('x86_64' 'armv7l')
url='https://github.com/movidius/ncsdk/'
license=('Apache')
depends=(
  'python'
  'cython'
  'opencv'
  'tensorflow'
  'caffe'
  'python-markdown'
  'python-pillow'
  'python-pyaml'
  'python-graphviz'
  'python-pygraphviz'
  'python-h5py'
  'python-lxml'
  'python-matplotlib'
  'python-numpy'
  'python-protobuf'
  'python-dateutil'
  'python-scikit-image'
  'python-scipy'
  'python-six'
  'python-networkx'
  'python2-enum34'
)
makedepends=('python' 'python-pip' 'unzip')
options=('strip')
source=("https://github.com/movidius/ncsdk/archive/v${pkgver}.tar.gz"
        "https://downloadmirror.intel.com/28191/eng/NCSDK-${pkgver}.tar.gz"
        'fix-caffe-bin-path.patch')
sha256sums=('055d71b696e14e44c411c88ead3ae1729d4e64e8202433dce2fc132c02a5e567'
            '9c1fa5c2f9d4f43411932a987333768482174fd0dbb66d039fa288f186d969b3'
            'cd34127e3eaae1da86d3e9b0ada40e768f4ef5ed97f51e4505eb3879932f605f')

prepare() {
  cd $srcdir/NCSDK-${pkgver}
  patch -Np1 -i ${srcdir}/fix-caffe-bin-path.patch
}


package() {
  cd "$srcdir/${pkgname}-${pkgver}"

  # create directories
  install -dm755 ${pkgdir}/usr/bin
  install -dm755 ${pkgdir}/usr/include
  install -dm755 ${pkgdir}/usr/lib/mvnc

  # install toolkit
  sdk_dir="$srcdir/NCSDK-${pkgver}/ncsdk-${arch}"
  cp -drv --no-preserve=ownership ${sdk_dir}/tk ${pkgdir}/usr/bin/ncsdk
  ln -s ncsdk/mvNCCompile.py ${pkgdir}/usr/bin/mvNCCompile
  ln -s ncsdk/mvNCCheck.py ${pkgdir}/usr/bin/mvNCCheck
  ln -s ncsdk/mvNCProfile.py ${pkgdir}/usr/bin/mvNCProfile

  install -m644 ${sdk_dir}/fw/MvNCAPI-ma2450.mvcmd ${pkgdir}/usr/lib/mvnc/MvNCAPI-ma2450.mvcmd

  # install C api
  install -m644 ${sdk_dir}/api/c/libmvnc.so.0 ${pkgdir}/usr/lib/mvnc/libmvnc.so.0

  ln -s mvnc/libmvnc.so.0 ${pkgdir}/usr/lib/libmvnc.so.0
  ln -s mvnc/libmvnc.so.0 ${pkgdir}/usr/lib/libmvnc.so

  # install Python api
  cp -v ${sdk_dir}/api/setup.py ${srcdir}/${pkgname}-${pkgver}/api/setup.py
  cd ${srcdir}/${pkgname}-${pkgver}/api
  python setup.py install --root="${pkgdir}" --optimize=1
  python2 setup.py install --root="${pkgdir}" --optimize=1

  # install udev rules
  install -dm755 ${pkgdir}/usr/lib/udev/rules.d
  install -m644 ${sdk_dir}/udev/97-usbboot.rules ${pkgdir}/usr/lib/udev/rules.d/97-usbboot.rules

  # install license and version file
  install -Dm644 ${sdk_dir}/LICENSE $pkgdir/usr/share/licenses/$pkgname/LICENSE
  install -Dm644 ${srcdir}/NCSDK-${pkgver}/version.txt ${pkgdir}/usr/share/licenses/${pkgname}/version.txt

  # install examples
  cd "$srcdir/${pkgname}-${pkgver}"
  install -dm755 ${pkgdir}/usr/share/${pkgname}
  cp -dr --no-preserve=ownership examples/ ${pkgdir}/usr/share/ncsdk
}