mirror of
https://gitdl.cn/https://github.com/chakralinux/core.git
synced 2025-02-16 05:50:23 +08:00
91 lines
2.8 KiB
Bash
91 lines
2.8 KiB
Bash
pkgbase=opencv
|
|
pkgname=('opencv' 'opencv-samples')
|
|
pkgver=3.4.5
|
|
pkgrel=1
|
|
pkgdesc="Open Source Computer Vision Library"
|
|
arch=('x86_64')
|
|
license=('BSD')
|
|
url="http://opencv.org"
|
|
depends=('gst-plugins-base' 'intel-tbb' 'libcl' 'libgphoto2' 'openblas' 'lapack'
|
|
'libdc1394' 'openexr' 'v4l-utils' 'ffmpeg' 'qt5-base' 'glu' 'python3' 'libgphoto2' 'xine-lib')
|
|
makedepends=('pkgconfig' 'cmake' 'mesa' 'python3-numpy' 'eigen3' 'hdf5' 'glew')
|
|
optdepends=('python3-numpy: Python 3.x interface'
|
|
'eigen3'
|
|
'hdf5: For hdf5 plugin to work')
|
|
source=("opencv-$pkgver.zip::https://github.com/Itseez/opencv/archive/${pkgver}.zip"
|
|
"opencv_contrib-$pkgver.zip::https://github.com/Itseez/opencv_contrib/archive/${pkgver}.zip")
|
|
sha1sums=('8d67f847b2f8fb3eb59cc673fd44c31fa066db42'
|
|
'e00531339df96a9319277f776980fc9917ca5805')
|
|
|
|
prepare() {
|
|
mkdir -p build
|
|
}
|
|
|
|
build() {
|
|
cd build
|
|
|
|
# cmake's FindLAPACK doesn't add cblas to LAPACK_LIBRARIES, so we need to specify them manually
|
|
cmake ../$pkgname-$pkgver \
|
|
-DWITH_OPENCL=ON \
|
|
-DWITH_OPENGL=ON \
|
|
-DWITH_TBB=ON \
|
|
-DOpenGL_GL_PREFERENCE=GLVND \
|
|
-DBUILD_WITH_DEBUG_INFO=OFF \
|
|
-DBUILD_TESTS=OFF \
|
|
-DBUILD_PERF_TESTS=OFF \
|
|
-DBUILD_EXAMPLES=ON \
|
|
-DINSTALL_C_EXAMPLES=ON \
|
|
-DINSTALL_PYTHON_EXAMPLES=ON \
|
|
-DCMAKE_INSTALL_PREFIX=/usr \
|
|
-DCMAKE_INSTALL_LIBDIR=lib \
|
|
-DCPU_BASELINE_DISABLE=SSE3 \
|
|
-DCPU_BASELINE_REQUIRE=SSE2 \
|
|
-DOPENCV_EXTRA_MODULES_PATH="$srcdir/opencv_contrib-$pkgver/modules" \
|
|
-DLAPACK_LIBRARIES="/usr/lib/liblapack.so;/usr/lib/libblas.so;/usr/lib/libopenblas.so" \
|
|
-DLAPACK_CBLAS_H="/usr/include/cblas.h" \
|
|
-DLAPACK_LAPACKE_H="/usr/include/lapacke.h" \
|
|
-DWITH_GTK=OFF \
|
|
-DWITH_QT=5
|
|
make
|
|
}
|
|
|
|
package_opencv() {
|
|
provides=('opencv-qt5')
|
|
conflicts=('opencv-qt5')
|
|
replaces=('opencv-qt5')
|
|
cd build
|
|
|
|
make DESTDIR="$pkgdir" install
|
|
|
|
# install license file
|
|
install -Dm644 "$srcdir/$pkgbase-$pkgver/LICENSE" \
|
|
"$pkgdir/usr/share/licenses/$pkgname/LICENSE"
|
|
|
|
# fix -lippicv not found
|
|
cd "$pkgdir/usr/share"
|
|
ln -s /usr/share/opencv/3rdparty/lib/libippicv.a "$pkgdir/usr/lib"
|
|
|
|
# separate samples package; also be -R friendly
|
|
if [[ -d OpenCV/samples ]]; then
|
|
mv OpenCV/samples "$srcdir/$pkgname-samples"
|
|
mv OpenCV $pkgname # otherwise folder naming is inconsistent
|
|
elif [[ ! -d OpenCV ]]; then
|
|
warning "Directory naming issue; samples package may not be built!"
|
|
fi
|
|
}
|
|
|
|
package_opencv-samples() {
|
|
pkgdesc+=" (samples)"
|
|
depends=("opencv=$pkgver")
|
|
unset optdepends
|
|
|
|
mkdir -p "$pkgdir/usr/share/opencv"
|
|
cp -r "$srcdir/opencv-samples" "$pkgdir/usr/share/opencv/samples"
|
|
# fix permissions
|
|
chmod 755 "$pkgdir"/usr/share/opencv/samples/*
|
|
|
|
# install license file
|
|
install -Dm644 "$srcdir/opencv-$pkgver/LICENSE" \
|
|
"$pkgdir/usr/share/licenses/$pkgname/LICENSE"
|
|
}
|