diff options
author | Daniel Gomez <daniel@qtec.com> | 2022-10-01 23:46:20 +0200 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2022-10-02 13:10:17 -0700 |
commit | ff7666cae8b3e6cca45e5d0652b16d6caa6be7a5 (patch) | |
tree | ea17383cda610b455f06df66ea07ce29dd0e7c1d /meta-oe/recipes-multimedia/v4l2apps | |
parent | 0e30cdf9a9b13ec874289eadfde26c8bdbe1afac (diff) | |
download | meta-openembedded-ff7666cae8b3e6cca45e5d0652b16d6caa6be7a5.tar.gz |
v4l-utils: Update 1.22.1 -> 1.23.0+fd544473
Use git instead of release tarball to close the gap between the latest
1.22.1 and master.
Add 'bootstrap.sh' call to fix configuration issues:
Error:
config.status: error: cannot find input file:
`v4l-utils-po/Makefile.in.in
Adapt patch '0007-Do-not-use-getsubopt.patch': Upstream has replaced
the use of getsubopt with v4l_subopt which detects if getsubopt is
provided via glibc or not. Otherwise it uses a static
v4l_getsubopt copied from glibc.
(From v4l-utils: 6e19bb895a16a9a247524ac526ab47f576cc36f6)
Also rename patch number to '0004-Do-not-use-getsubopt.patch'.
Add qv4l2 and qvidcap packages support but keep them disabled as
they require meta-qt5.
Enable alsa support if alsa is part of the DISTRO_FEATURES.
Signed-off-by: Daniel Gomez <daniel@qtec.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-oe/recipes-multimedia/v4l2apps')
-rw-r--r-- | meta-oe/recipes-multimedia/v4l2apps/v4l-utils/0004-Do-not-use-getsubopt.patch (renamed from meta-oe/recipes-multimedia/v4l2apps/v4l-utils/0007-Do-not-use-getsubopt.patch) | 19 | ||||
-rw-r--r-- | meta-oe/recipes-multimedia/v4l2apps/v4l-utils_1.23.0.bb (renamed from meta-oe/recipes-multimedia/v4l2apps/v4l-utils_1.22.1.bb) | 47 |
2 files changed, 53 insertions, 13 deletions
diff --git a/meta-oe/recipes-multimedia/v4l2apps/v4l-utils/0007-Do-not-use-getsubopt.patch b/meta-oe/recipes-multimedia/v4l2apps/v4l-utils/0004-Do-not-use-getsubopt.patch index d8d1b8d18..fb844acbe 100644 --- a/meta-oe/recipes-multimedia/v4l2apps/v4l-utils/0007-Do-not-use-getsubopt.patch +++ b/meta-oe/recipes-multimedia/v4l2apps/v4l-utils/0004-Do-not-use-getsubopt.patch | |||
@@ -1,4 +1,4 @@ | |||
1 | From e4582c11f76b9390a3e172dcf0741dca90a9dc8d Mon Sep 17 00:00:00 2001 | 1 | From 6e7e52de7afe29597016952a7317faf9c3ea3268 Mon Sep 17 00:00:00 2001 |
2 | From: Khem Raj <raj.khem@gmail.com> | 2 | From: Khem Raj <raj.khem@gmail.com> |
3 | Date: Sat, 30 Nov 2019 18:50:34 -0800 | 3 | Date: Sat, 30 Nov 2019 18:50:34 -0800 |
4 | Subject: [PATCH] Do not use getsubopt | 4 | Subject: [PATCH] Do not use getsubopt |
@@ -11,24 +11,32 @@ Simply avoid getsubopt, since we cannot rely on it. | |||
11 | Imported from Alpine Linux | 11 | Imported from Alpine Linux |
12 | 12 | ||
13 | Upstream-Status: Pending | 13 | Upstream-Status: Pending |
14 | |||
14 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | 15 | Signed-off-by: Khem Raj <raj.khem@gmail.com> |
15 | 16 | ||
17 | Adapt patch to 1.23.0. | ||
18 | |||
19 | (v4l-utils rev fd544473800d02e90bc289434cc44e5aa8fadd0f). | ||
20 | |||
21 | %% original patch: 0007-Do-not-use-getsubopt.patch | ||
22 | |||
23 | Signed-off-by: Daniel Gomez <daniel@qtec.com> | ||
16 | --- | 24 | --- |
17 | utils/v4l2-ctl/v4l2-ctl-common.cpp | 18 ++++++++++-------- | 25 | utils/v4l2-ctl/v4l2-ctl-common.cpp | 18 ++++++++++-------- |
18 | 1 file changed, 10 insertions(+), 8 deletions(-) | 26 | 1 file changed, 10 insertions(+), 8 deletions(-) |
19 | 27 | ||
20 | diff --git a/utils/v4l2-ctl/v4l2-ctl-common.cpp b/utils/v4l2-ctl/v4l2-ctl-common.cpp | 28 | diff --git a/utils/v4l2-ctl/v4l2-ctl-common.cpp b/utils/v4l2-ctl/v4l2-ctl-common.cpp |
21 | index c940171..49c0f39 100644 | 29 | index d77f7104..838c297d 100644 |
22 | --- a/utils/v4l2-ctl/v4l2-ctl-common.cpp | 30 | --- a/utils/v4l2-ctl/v4l2-ctl-common.cpp |
23 | +++ b/utils/v4l2-ctl/v4l2-ctl-common.cpp | 31 | +++ b/utils/v4l2-ctl/v4l2-ctl-common.cpp |
24 | @@ -956,15 +956,17 @@ static bool parse_subset(char *optarg) | 32 | @@ -994,15 +994,17 @@ static bool parse_subset(char *optarg) |
25 | 33 | ||
26 | static bool parse_next_subopt(char **subs, char **value) | 34 | static bool parse_next_subopt(char **subs, char **value) |
27 | { | 35 | { |
28 | - static char *const subopts[] = { | 36 | - static char *const subopts[] = { |
29 | - nullptr | 37 | - nullptr |
30 | - }; | 38 | - }; |
31 | - int opt = getsubopt(subs, subopts, value); | 39 | - int opt = v4l_getsubopt(subs, subopts, value); |
32 | + char *p = *subs; | 40 | + char *p = *subs; |
33 | + *value = *subs; | 41 | + *value = *subs; |
34 | 42 | ||
@@ -47,3 +55,6 @@ index c940171..49c0f39 100644 | |||
47 | } | 55 | } |
48 | 56 | ||
49 | void common_cmd(const std::string &media_bus_info, int ch, char *optarg) | 57 | void common_cmd(const std::string &media_bus_info, int ch, char *optarg) |
58 | -- | ||
59 | 2.35.1 | ||
60 | |||
diff --git a/meta-oe/recipes-multimedia/v4l2apps/v4l-utils_1.22.1.bb b/meta-oe/recipes-multimedia/v4l2apps/v4l-utils_1.23.0.bb index 741e1030c..2f5ae3586 100644 --- a/meta-oe/recipes-multimedia/v4l2apps/v4l-utils_1.22.1.bb +++ b/meta-oe/recipes-multimedia/v4l2apps/v4l-utils_1.23.0.bb | |||
@@ -6,7 +6,10 @@ PROVIDES = "libv4l media-ctl" | |||
6 | 6 | ||
7 | DEPENDS = "jpeg \ | 7 | DEPENDS = "jpeg \ |
8 | ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'virtual/libx11', '', d)} \ | 8 | ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'virtual/libx11', '', d)} \ |
9 | ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)}" | 9 | ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \ |
10 | ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', 'alsa-lib', '', d)} \ | ||
11 | ${@bb.utils.contains_any('PACKAGECONFIG', 'qv4l2 qvidcap', 'qtbase qtbase-native', '', d)}" | ||
12 | |||
10 | DEPENDS:append:libc-musl = " argp-standalone" | 13 | DEPENDS:append:libc-musl = " argp-standalone" |
11 | DEPENDS:append:class-target = " udev" | 14 | DEPENDS:append:class-target = " udev" |
12 | LDFLAGS:append = " -pthread" | 15 | LDFLAGS:append = " -pthread" |
@@ -15,30 +18,56 @@ inherit autotools gettext pkgconfig | |||
15 | 18 | ||
16 | PACKAGECONFIG ??= "media-ctl" | 19 | PACKAGECONFIG ??= "media-ctl" |
17 | PACKAGECONFIG[media-ctl] = "--enable-v4l-utils,--disable-v4l-utils,," | 20 | PACKAGECONFIG[media-ctl] = "--enable-v4l-utils,--disable-v4l-utils,," |
21 | PACKAGECONFIG[qv4l2] = ",--disable-qv4l2" | ||
22 | PACKAGECONFIG[qvidcap] = ",--disable-qvidcap" | ||
23 | |||
24 | SRC_URI = "\ | ||
25 | git://git.linuxtv.org/v4l-utils.git;protocol=https;branch=master \ | ||
26 | file://0001-Revert-media-ctl-Don-t-install-libmediactl-and-libv4.patch \ | ||
27 | file://0002-original-patch-mediactl-pkgconfig.patch \ | ||
28 | file://0003-original-patch-export-mediactl-headers.patch \ | ||
29 | file://0004-Do-not-use-getsubopt.patch \ | ||
30 | " | ||
31 | |||
32 | SRCREV = "fd544473800d02e90bc289434cc44e5aa8fadd0f" | ||
33 | |||
34 | S = "${WORKDIR}/git" | ||
35 | B = "${S}" | ||
18 | 36 | ||
19 | SRC_URI = "http://linuxtv.org/downloads/v4l-utils/v4l-utils-${PV}.tar.bz2 \ | 37 | do_configure:prepend() { |
20 | file://0001-Revert-media-ctl-Don-t-install-libmediactl-and-libv4.patch \ | 38 | ${S}/bootstrap.sh |
21 | file://0002-original-patch-mediactl-pkgconfig.patch \ | 39 | } |
22 | file://0003-original-patch-export-mediactl-headers.patch \ | ||
23 | file://0007-Do-not-use-getsubopt.patch \ | ||
24 | " | ||
25 | 40 | ||
26 | SRC_URI[md5sum] = "8aa73287320a49e9170a8255d7b2c7e6" | 41 | SRC_URI[md5sum] = "8aa73287320a49e9170a8255d7b2c7e6" |
27 | SRC_URI[sha256sum] = "65c6fbe830a44ca105c443b027182c1b2c9053a91d1e72ad849dfab388b94e31" | 42 | SRC_URI[sha256sum] = "65c6fbe830a44ca105c443b027182c1b2c9053a91d1e72ad849dfab388b94e31" |
28 | 43 | ||
29 | EXTRA_OECONF = "--disable-qv4l2 --enable-shared --with-udevdir=${base_libdir}/udev \ | 44 | EXTRA_OECONF = "--enable-shared --with-udevdir=${base_libdir}/udev \ |
30 | --disable-v4l2-compliance-32 --disable-v4l2-ctl-32" | 45 | --disable-v4l2-compliance-32 --disable-v4l2-ctl-32" |
31 | 46 | ||
32 | VIRTUAL-RUNTIME_ir-keytable-keymaps ?= "rc-keymaps" | 47 | VIRTUAL-RUNTIME_ir-keytable-keymaps ?= "rc-keymaps" |
33 | 48 | ||
34 | PACKAGES =+ "media-ctl ir-keytable rc-keymaps libv4l libv4l-dev" | 49 | PACKAGES =+ "media-ctl ir-keytable rc-keymaps libv4l libv4l-dev qv4l2 qvidcap" |
35 | 50 | ||
36 | RPROVIDES:${PN}-dbg += "libv4l-dbg" | 51 | RPROVIDES:${PN}-dbg += "libv4l-dbg" |
37 | 52 | ||
38 | FILES:media-ctl = "${bindir}/media-ctl ${libdir}/libmediactl.so.*" | 53 | FILES:media-ctl = "${bindir}/media-ctl ${libdir}/libmediactl.so.*" |
54 | FILES:qv4l2 = "\ | ||
55 | ${bindir}/qv4l2 \ | ||
56 | ${datadir}/applications/qv4l2.desktop \ | ||
57 | ${datadir}/icons/hicolor/*/apps/qv4l2.* \ | ||
58 | " | ||
59 | FILES:qvidcap = "\ | ||
60 | ${bindir}/qvidcap \ | ||
61 | ${datadir}/applications/qvidcap.desktop \ | ||
62 | ${datadir}/icons/hicolor/*/apps/qvidcap.* \ | ||
63 | " | ||
39 | 64 | ||
40 | FILES:ir-keytable = "${bindir}/ir-keytable ${base_libdir}/udev/rules.d/*-infrared.rules" | 65 | FILES:ir-keytable = "${bindir}/ir-keytable ${base_libdir}/udev/rules.d/*-infrared.rules" |
41 | RDEPENDS:ir-keytable += "${VIRTUAL-RUNTIME_ir-keytable-keymaps}" | 66 | RDEPENDS:ir-keytable += "${VIRTUAL-RUNTIME_ir-keytable-keymaps}" |
67 | RDEPENDS:qv4l2 += "\ | ||
68 | ${@bb.utils.contains('PACKAGECONFIG', 'qv4l2', 'qtbase', '', d)}" | ||
69 | RDEPENDS:qvidcap += "\ | ||
70 | ${@bb.utils.contains('PACKAGECONFIG', 'qvidcap', 'qtbase', '', d)}" | ||
42 | 71 | ||
43 | FILES:rc-keymaps = "${sysconfdir}/rc* ${base_libdir}/udev/rc*" | 72 | FILES:rc-keymaps = "${sysconfdir}/rc* ${base_libdir}/udev/rc*" |
44 | 73 | ||