# $Id: PKGBUILD 261317 2016-03-11 06:55:20Z bpiotrowski $ # Maintainer (Arch): Ray Rashif # Contributor (Arch): Tobias Powalowski # Maintainer: Omar Vega Ramos # Contributor: André Silva # Contributor: Márcio Silva pkgbase=opencv pkgname=opencv pkgver=3.1.0 pkgrel=3.parabola1 pkgdesc="Free Computer Vision Library, without nonfree SIFT and SURF algorithms, nonfree Milky icons and lena images" arch=('i686' 'x86_64' 'armv7h') license=('BSD') url="http://opencv.org/" depends=('intel-tbb' 'openexr' 'xine-lib' 'libdc1394' 'gtkglext') makedepends=('cmake' 'python-numpy' 'python2-numpy' 'mesa' 'eigen') optdepends=('opencv-samples' 'eigen' 'libcl: For coding with OpenCL' 'python-numpy: Python 3 interface' 'python2-numpy: Python 2 interface') mksource=("$pkgbase-$pkgver.zip::https://github.com/Itseez/opencv/archive/$pkgver.zip" "opencv_contrib-$pkgver.tar.gz::https://github.com/Itseez/opencv_contrib/archive/$pkgver.tar.gz") source=("https://repo.parabola.nu/other/${pkgname}-libre/${pkgname}-libre-${pkgver}.zip" '5852.patch') mkmd5sums=('6082ee2124d4066581a7386972bfd52a' 'a822839ad3ab79ff837c16785ea9dd10') md5sums=('5e3c409fa9f1beeda5ba5edfcf02a921' '5bd9cd736b171c15cedee3a32a0c47ff') _cmakeopts=('-D WITH_OPENCL=ON' '-D WITH_OPENGL=ON' '-D WITH_TBB=ON' '-D WITH_XINE=ON' '-D WITH_GSTREAMER=OFF' '-D BUILD_WITH_DEBUG_INFO=OFF' '-D BUILD_TESTS=OFF' '-D BUILD_PERF_TESTS=OFF' '-D BUILD_EXAMPLES=ON' '-D INSTALL_C_EXAMPLES=ON' '-D INSTALL_PYTHON_EXAMPLES=ON' '-D CMAKE_BUILD_TYPE=Release' '-D CMAKE_INSTALL_PREFIX=/usr' '-D CMAKE_SKIP_RPATH=ON' #'-D WITH_IPP=ON' #'-D INSTALL_CREATE_DISTRIB=ON' ) # SSE only available from Pentium 3 onwards (i686 is way older) # SSE only available x86 hardware and ARM uses NEON [[ "$CARCH" = 'i686' || "$CARCH" = 'armv7h' ]] && \ _cmakeopts+=('-D ENABLE_SSE=OFF' '-D ENABLE_SSE2=OFF' '-D ENABLE_SSE3=OFF') mksource() { cd "$srcdir/opencv_contrib-$pkgver" # remove nonfree SIFT and SURF algorithms that are patented in some countries and have some other limitations on the use rm -v modules/xfeatures2d/src/{sift,surf}.cpp cd "$srcdir/$pkgname-$pkgver" # remove nonfree Milky icons rm -rv modules/highgui/src/files_Qt/Milky # remove nonfree lena.png and lena.jpg images rm -v $(find . -iname '*lena*') } prepare() { cd "$srcdir/opencv_contrib-$pkgver" # remove nonfree SIFT and SURF references rm -rv modules/xfeatures2d cd "$srcdir/$pkgname-$pkgver" patch -p1 -i "$srcdir/5852.patch" } build() { cd "$srcdir/$pkgname-$pkgver" cmake ${_cmakeopts[@]} \ -DOPENCV_EXTRA_MODULES_PATH="$srcdir/opencv_contrib-$pkgver/modules" \ . make } package_opencv() { options=('staticlibs') cd "$srcdir/$pkgname-$pkgver" make DESTDIR="$pkgdir" install # install license file install -Dm644 "$srcdir/$pkgname-$pkgver/LICENSE" \ "$pkgdir/usr/share/licenses/$pkgname/LICENSE" cd "$pkgdir/usr/share" # separate samples package; also be -R friendly if [[ -d OpenCV/samples ]]; then rm -r OpenCV/samples mv OpenCV $pkgname # otherwise folder naming is inconsistent elif [[ ! -d OpenCV ]]; then warning "Directory naming issue; samples package may not be built!" fi } # vim:set ts=2 sw=2 et: