aboutsummaryrefslogtreecommitdiffstats
path: root/community/v4l-utils
diff options
context:
space:
mode:
Diffstat (limited to 'community/v4l-utils')
-rw-r--r--community/v4l-utils/APKBUILD95
-rw-r--r--community/v4l-utils/getsubopt.patch33
2 files changed, 59 insertions, 69 deletions
diff --git a/community/v4l-utils/APKBUILD b/community/v4l-utils/APKBUILD
index e76e4999603..11556b8f1af 100644
--- a/community/v4l-utils/APKBUILD
+++ b/community/v4l-utils/APKBUILD
@@ -1,22 +1,45 @@
# Contributor: Leonardo Arena <rnalrd@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=v4l-utils
-pkgver=1.20.0
-pkgrel=0
+pkgver=1.24.1
+pkgrel=1
pkgdesc="Userspace tools and conversion library for Video 4 Linux"
-url="http://freshmeat.net/projects/libv4l"
+url="https://linuxtv.org/"
arch="all"
license="LGPL-2.0-or-later"
-makedepends="qt5-qtbase-dev libjpeg-turbo-dev argp-standalone linux-headers
- eudev-dev alsa-lib-dev"
-subpackages="$pkgname-dev $pkgname-doc qv4l2 $pkgname-dvbv5 $pkgname-libs ir_keytable"
+makedepends="
+ alsa-lib-dev
+ argp-standalone
+ eudev-dev
+ libjpeg-turbo-dev
+ linux-headers
+ qt5-qtbase-dev
+ "
+subpackages="
+ $pkgname-dev
+ $pkgname-doc
+ $pkgname-dvbv5
+ libdvbv5
+ $pkgname-libs
+ qv4l2
+ ir_keytable
+ "
source="https://linuxtv.org/downloads/v4l-utils/v4l-utils-$pkgver.tar.bz2
- getsubopt.patch
types.patch
"
+
+case "$CARCH" in
+arm*|aarch64)
+ # no desktop opengl on arm, only es2
+ ;;
+*)
+ subpackages="$subpackages qvidcap"
+ ;;
+esac
+
build() {
- export CFLAGS="$CFLAGS -D__off_t=off_t"
- export LIBS="-largp -lintl"
+ export CFLAGS="$CFLAGS -O2 -flto=auto"
+ export CXXFLAGS="$CXXFLAGS -O2 -flto=auto"
./configure \
--build=$CBUILD \
--host=$CHOST \
@@ -44,44 +67,44 @@ package() {
qv4l2() {
pkgdesc="QT v4l2 test control and streaming test application"
- mkdir -p "$subpkgdir"/usr/bin
- mv "$pkgdir"/usr/bin/qv4l2 "$subpkgdir"/usr/bin/
- mv "$pkgdir"/usr/share "$subpkgdir"/usr/
+
+ amove usr/bin/qv4l2 \
+ usr/share
+}
+
+qvidcap() {
+ pkgdesc="v4l2 video capture viewer"
+
+ amove usr/bin/qvidcap
}
dvbv5() {
pkgdesc="Backwards compatible DVBv5 command line utilities"
- mkdir -p "$subpkgdir"/usr/bin \
- "$subpkgdir"/usr/lib
- mv "$pkgdir"/usr/bin/dvb* \
- "$subpkgdir"/usr/bin/
- mv "$pkgdir"/usr/lib/libdvbv5.* \
- "$subpkgdir"/usr/lib/
+
+ amove usr/bin/dvb*
+}
+
+libdvbv5() {
+ pkgdesc="libdvbv5 library"
+
+ amove usr/lib/libdvbv5.*
}
libs() {
pkgdesc="Collection of video4linux support libraries"
- mkdir -p "$subpkgdir"/usr/lib
- mv "$pkgdir"/usr/lib/* \
- "$subpkgdir"/usr/lib
+
+ amove usr/lib
}
ir_keytable() {
pkgdesc="Alter keymaps of Remote Controller devices"
- mkdir -p "$subpkgdir"/lib/udev/rc_keymaps \
- "$subpkgdir"/lib/udev/rules.d \
- "$subpkgdir"/usr/bin \
- "$subpkgdir"/etc
- mv "$pkgdir"/lib/udev/rc_keymaps/* \
- "$subpkgdir"/lib/udev/rc_keymaps
- mv "$pkgdir"/lib/udev/rules.d/* \
- "$subpkgdir"/lib/udev/rules.d
- mv "$pkgdir"/usr/bin/ir-keytable \
- "$subpkgdir"/usr/bin
- mv "$pkgdir"/etc/rc_maps.cfg \
- "$subpkgdir"/etc
+
+ amove lib/udev \
+ usr/bin/ir-keytable \
+ etc/rc_maps.cfg
}
-sha512sums="179ca8dbbf7af5fa4870b70f17645d7834fe6ba52670ae6b58473efa257db0cd812ce14f16574cc4491c0bcb218835e4c29f1354882a151687eecec97852fc63 v4l-utils-1.20.0.tar.bz2
-3e51af7a77a8f06e1278022362347808b233cf021a277ce9cd66a9553e754bf91b3923c32ab17a86b11f4ef2555a5f1d544d0fc22e82a2997e34060dd561f760 getsubopt.patch
-358611fbae8348f17bf49c08820b4641deb1f7282ce2c1e20b8fdf0a85cd73ca4b46f6668c2a7328b5261e401c12f471170a9a1f3fc2982b6897ff11386c06c6 types.patch"
+sha512sums="
+1e82ba125285e875bf4a216adedab9147009e6af1aadd79a3a1770231d3c96ec29245b33e75f69a9ce1b25011e71746db242c778ac3369148de1e9de2e318663 v4l-utils-1.24.1.tar.bz2
+358611fbae8348f17bf49c08820b4641deb1f7282ce2c1e20b8fdf0a85cd73ca4b46f6668c2a7328b5261e401c12f471170a9a1f3fc2982b6897ff11386c06c6 types.patch
+"
diff --git a/community/v4l-utils/getsubopt.patch b/community/v4l-utils/getsubopt.patch
deleted file mode 100644
index 8ac87a8c7a7..00000000000
--- a/community/v4l-utils/getsubopt.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-POSIX says that behavior when subopts list is empty is undefined.
-musl libs will set value to NULL which leads to crash.
-
-Simply avoid getsubopt, since we cannot rely on it.
-
---- a/utils/v4l2-ctl/v4l2-ctl-common.cpp
-+++ b/utils/v4l2-ctl/v4l2-ctl-common.cpp
-@@ -782,15 +782,17 @@
-
- static bool parse_next_subopt(char **subs, char **value)
- {
-- static char *const subopts[] = {
-- NULL
-- };
-- int opt = getsubopt(subs, subopts, value);
-+ char *p = *subs;
-+ *value = *subs;
-
-- if (opt < 0 || *value)
-- return false;
-- fprintf(stderr, "Missing suboption value\n");
-- return true;
-+ while (*p && *p != ',')
-+ p++;
-+
-+ if (*p)
-+ *p++ = '\0';
-+
-+ *subs = p;
-+ return false;
- }
-
- void common_cmd(const std::string &media_bus_info, int ch, char *optarg)