summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorlilac2020-06-14 18:42:55 +0800
committerlilac2020-06-14 18:42:55 +0800
commit74fbd4728916daea36f92205992ca5f47d55a91c (patch)
tree8a2fb7e6d80d95c4edde8b73136c06da53f6a955
parent2fcb9686930571c48ea6df54108c38aad23be1ee (diff)
downloadaur-74fbd4728916daea36f92205992ca5f47d55a91c.tar.gz
update by lilac
-rw-r--r--.SRCINFO9
-rw-r--r--PKGBUILD62
2 files changed, 54 insertions, 17 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 7083d5ebcf79..862f1e38dc0e 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,11 +1,12 @@
pkgbase = vlfeat
pkgdesc = An open library of computer vision algorithms
pkgver = 0.9.21
- pkgrel = 1
+ pkgrel = 4
url = https://www.vlfeat.org/
arch = x86_64
license = BSD
makedepends = clang
+ makedepends = octave
makedepends = patchelf
depends = openmp
source = vlfeat-0.9.21.tar.gz::https://github.com/vlfeat/vlfeat/archive/v0.9.21.tar.gz
@@ -13,3 +14,9 @@ pkgbase = vlfeat
pkgname = vlfeat
+pkgname = octave-vlfeat
+ pkgdesc = An open library of computer vision algorithms (octave package)
+ depends = openmp
+ depends = vlfeat
+ depends = octave
+
diff --git a/PKGBUILD b/PKGBUILD
index a623a3f83b80..64fe831e13a8 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,8 +1,9 @@
# Maintainer: Butui Hu <hot123tea123@gmail.com>
-pkgname=vlfeat
+_pkgname=vlfeat
+pkgname=(vlfeat octave-vlfeat)
pkgver=0.9.21
-pkgrel=1
+pkgrel=4
pkgdesc='An open library of computer vision algorithms'
arch=('x86_64')
url='https://www.vlfeat.org/'
@@ -12,32 +13,61 @@ depends=(
)
makedepends=(
clang
+ octave
patchelf
)
source=("${pkgname}-${pkgver}.tar.gz::https://github.com/vlfeat/vlfeat/archive/v${pkgver}.tar.gz")
sha512sums=('ba7f83392d778a4a8c121aed10ae98693d8d61ae127e627322324c245cd1984ab8c0c3e3afe743075e7c022b3efb78e7dfc653bc488c8f19c93b3aa0f87e803e')
+prepare() {
+ # fix https://github.com/vlfeat/vlfeat/issues/168
+ sed -i "s,if(! (max_value >= 65536)),if(max_value >= 65536)," "${srcdir}/${pkgname}-${pkgver}/vl/pgm.c"
+ # fix octave building, see https://github.com/vlfeat/vlfeat/issues/188
+ mkdir -p "${srcdir}/${pkgname}-${pkgver}/toolbox/mex/octave/mexa64"
+ sed -i '32,35d' "${srcdir}/${pkgname}-${pkgver}/toolbox/mexutils.h"
+}
+
build() {
- cd "${srcdir}/${pkgname}-${pkgver}"
- make CC=clang CXX=clang++ DISABLE_OPENMP=no
+ cd "${srcdir}/${_pkgname}-${pkgver}"
+ make CC=clang CXX=clang++ DISABLE_OPENMP=no MKOCTFILE=mkoctfile
}
-package() {
+package_vlfeat() {
# delete unneeded files and install binary & libs to correct location
- find "${srcdir}/${pkgname}-${pkgver}/bin" -type f -perm 0755 -name "test_*" -delete
- find "${srcdir}/${pkgname}-${pkgver}/bin" -type f -perm 0755 -exec patchelf --remove-rpath {} \;
- find "${srcdir}/${pkgname}-${pkgver}/bin" -type f -perm 0755 -name "*.so" -exec install -Dm755 {} -t "${pkgdir}/usr/lib" \;
- find "${srcdir}/${pkgname}-${pkgver}/bin" -type f -perm 0755 -name "*.so" -delete
- find "${srcdir}/${pkgname}-${pkgver}/bin" -type f -perm 0755 -exec install -Dm755 {} -t "${pkgdir}/usr/bin" \;
+ find "${srcdir}/${_pkgname}-${pkgver}/bin" -type f -perm 0755 -name "test_*" -delete
+ install -Dm755 "${srcdir}/${_pkgname}-${pkgver}/bin/glnxa64/libvl.so" -t "${pkgdir}/usr/lib"
+ install -Dm755 "${srcdir}/${_pkgname}-${pkgver}/bin/glnxa64/aib" -t "${pkgdir}/usr/bin"
+ install -Dm755 "${srcdir}/${_pkgname}-${pkgver}/bin/glnxa64/mser" -t "${pkgdir}/usr/bin"
+ install -Dm755 "${srcdir}/${_pkgname}-${pkgver}/bin/glnxa64/sift" -t "${pkgdir}/usr/bin"
+ # patch rpath
+ find "${pkgdir}/usr" -type f -perm 0755 -exec patchelf --remove-rpath {} \;
# install headers
- find "${srcdir}/${pkgname}-${pkgver}/vl" -type f -name "*.h" -exec install -Dm644 {} -t "${pkgdir}/usr/include/vl" \;
+ find "${srcdir}/${_pkgname}-${pkgver}/vl" -type f -name "*.h" -exec install -Dm644 {} -t "${pkgdir}/usr/include/vl" \;
# install manpages
for manfile in mser.1 sift.1 vlfeat.7; do
- gzip "${srcdir}/${pkgname}-${pkgver}/src/${manfile}"
+ gzip "${srcdir}/${_pkgname}-${pkgver}/src/${manfile}"
+ done
+ install -Dm644 "${srcdir}/${_pkgname}-${pkgver}/src/mser.1.gz" -t "${pkgdir}/usr/share/man/man1"
+ install -Dm644 "${srcdir}/${_pkgname}-${pkgver}/src/sift.1.gz" -t "${pkgdir}/usr/share/man/man1"
+ install -Dm644 "${srcdir}/${_pkgname}-${pkgver}/src/vlfeat.7.gz" -t "${pkgdir}/usr/share/man/man7"
+
+ install -Dm644 "${srcdir}/${_pkgname}-${pkgver}/COPYING" -t "${pkgdir}/usr/share/licenses/${pkgname}"
+}
+
+package_octave-vlfeat() {
+ pkgdesc+=' (octave package)'
+ depends+=(vlfeat octave)
+
+ install -d "${pkgdir}/usr/share/octave/packages/${_pkgname}-${pkgver}"
+ find "${srcdir}/${_pkgname}-${pkgver}/toolbox" -type f -perm 0755 -name "*.mex" -exec install -Dm755 {} -t "${pkgdir}/usr/lib/octave/packages/${_pkgname}-${pkgver}" \;
+ cp -a "${srcdir}/${_pkgname}-${pkgver}/toolbox" "${pkgdir}/usr/share/octave/packages/${_pkgname}-${pkgver}"
+ cp -a "${srcdir}/${_pkgname}-${pkgver}/data" "${pkgdir}/usr/share/octave/packages/${_pkgname}-${pkgver}"
+ for mexfile in $(ls "${pkgdir}/usr/share/octave/packages/${_pkgname}-${pkgver}/toolbox/mex/octave/mexa64/"); do
+ ln -sf "/usr/lib/octave/packages/${_pkgname}-${pkgver}/${mexfile}" "${pkgdir}/usr/share/octave/packages/${_pkgname}-${pkgver}/toolbox/mex/octave/mexa64/${mexfile}"
done
- install -Dm644 "${srcdir}/${pkgname}-${pkgver}/src/mser.1.gz" -t "${pkgdir}/usr/share/man/man1"
- install -Dm644 "${srcdir}/${pkgname}-${pkgver}/src/sift.1.gz" -t "${pkgdir}/usr/share/man/man1"
- install -Dm644 "${srcdir}/${pkgname}-${pkgver}/src/vlfeat.7.gz" -t "${pkgdir}/usr/share/man/man7"
- install -Dm644 "${srcdir}/${pkgname}-${pkgver}/COPYING" -t "${pkgdir}/usr/share/licenses/${pkgname}"
+ # patch rpath
+ find "${pkgdir}/usr/lib" -type f -perm 0755 -exec patchelf --remove-rpath {} \;
+
+ install -Dm644 "${srcdir}/${_pkgname}-${pkgver}/COPYING" -t "${pkgdir}/usr/share/licenses/${pkgname}"
}
# vim:set ts=2 sw=2 et: