diff options
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..e04968ae8845 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,88 @@ +# Maintainer: Franck Lucien Duriez <franck.lucien.duriez@gmail.com> + +pkgname="openpose" +pkgver="1.3.0" +pkgrel="1" +pkgdesc="OpenPose represents the first real-time multi-person system to jointly detect human body, hand, and facial keypoints (in total 135 keypoints) on single images." +arch=("any") +url="https://github.com/CMU-Perceptual-Computing-Lab/openpose" +license=("ACADEMIC OR NON-PROFIT ORGANIZATION NONCOMMERCIAL RESEARCH USE ONLY") +depends=("caffe" "intel-mkl" "libgl" "glu" "lilv" "boost") +makedepends=("cmake" "doxygen" "graphviz" "wget") +source=( + "https://github.com/CMU-Perceptual-Computing-Lab/openpose/archive/v${pkgver}.tar.gz" + "GLU.patch" + "models.patch" +) +sha256sums=( + "5ef834e603dc207c249f49ba672c8bd1895e5a2ffc0ff5548037402a80398bd0" + "d2e3ad3dd350e494d1e90d595f6b0d4daa76ed9744f7730c22b1803390f1f021" + "6dfa55f1876778950ed04cbf98f032c4b4129c56c396209837403398e9815f31" +) + +prepare() { + cd "$pkgname-$pkgver" + patch -p1 -i "${srcdir}/GLU.patch" + patch -p1 -i "${srcdir}/models.patch" +} + +build() { + cd "$pkgname-$pkgver" + mkdir -p build + cd build + cmake \ + -DCMAKE_BUILD_TYPE:STRING="Release" \ + -DBUILD_CAFFE:BOOL=OFF \ + -DBUILD_EXAMPLES:BOOL=ON \ + -DBUILD_DOCS:BOOL=ON \ + -DBUILD_SHARED_LIBS:BOOL=ON \ + -DDOWNLOAD_BODY_25_MODEL:BOOL=ON \ + -DDOWNLOAD_BODY_COCO_MODEL:BOOL=ON \ + -DDOWNLOAD_BODY_MPI_MODEL:BOOL=ON \ + -DDOWNLOAD_FACE_MODEL:BOOL=ON \ + -DDOWNLOAD_HAND_MODEL:BOOL=ON \ + -DGPU_MODE:STRING=CPU_ONLY \ + -DWITH_3D_RENDERER:BOOL=ON \ + -DCMAKE_CXX_FLAGS:STRING="-I/opt/intel/compilers_and_libraries_2018.3.222/linux/mkl/include" \ + -DCMAKE_C_FLAGS:STRING="-I/opt/intel/compilers_and_libraries_2018.3.222/linux/mkl/include" \ + -DCaffe_INCLUDE_DIRS:PATH="/usr/include" \ + -DCaffe_LIBS:PATH="/usr/lib/libcaffe.so" \ + -DCMAKE_INSTALL_PREFIX:PATH="$pkgdir/usr" \ + .. + make +} + +package() { + cd "$pkgname-$pkgver/build" + + # Install libraries. + make install + + # Install the examples. + _destdir="$pkgdir/usr/share/OpenPose/examples" + mkdir -p "$_destdir" + find "./examples" -type f -executable \ + -not -path './examples/tests/*' \ + -not -path './examples/openpose/*' \ + -exec install -D -m755 '{}' "$_destdir" ';' + + # Install main executable. + _destdir="$pkgdir/usr/bin" + mkdir -p "$_destdir" + install -D -m755 \ + "./examples/openpose/openpose.bin" \ + "$_destdir/openpose" + + cd .. + + # Install documentation. + _destdir="$pkgdir/usr/share/doc/OpenPose" + mkdir -p "$(dirname "$_destdir")" + cp -r "./doc/doxygen/html" "$_destdir" + find "$_destdir" -type f -exec chmod 644 '{}' ';' + + # Install the models. + _destdir="$pkgdir/usr/lib/OpenPose" + cp -r "models" "$_destdir" + find "$_destdir" -type f -exec chmod 644 '{}' ';' +} |