diff options
author | V3n3RiX <venerix@koprulu.sector> | 2023-12-12 23:32:21 +0000 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2023-12-12 23:32:21 +0000 |
commit | 05644e4ce4886d97a712fcdca7d4144a7ced4191 (patch) | |
tree | 3954657c7c37c0621e63080b0e0530b9e1d8ad50 /media-libs/libv4l | |
parent | 3bcdaa6f06fae7659c3ac8294503c45e6736a2e1 (diff) |
gentoo auto-resync : 12:12:2023 - 23:32:21
Diffstat (limited to 'media-libs/libv4l')
-rw-r--r-- | media-libs/libv4l/Manifest | 5 | ||||
-rw-r--r-- | media-libs/libv4l/files/libv4l-1.26.0-meson.patch | 86 | ||||
-rw-r--r-- | media-libs/libv4l/libv4l-1.26.0.ebuild | 135 | ||||
-rw-r--r-- | media-libs/libv4l/metadata.xml | 5 |
4 files changed, 230 insertions, 1 deletions
diff --git a/media-libs/libv4l/Manifest b/media-libs/libv4l/Manifest index c8fd49baffbc..ba6cfde057c1 100644 --- a/media-libs/libv4l/Manifest +++ b/media-libs/libv4l/Manifest @@ -1,5 +1,8 @@ +AUX libv4l-1.26.0-meson.patch 2470 BLAKE2B 8dbd40173673a057cab139a3c17109c50083d0dbaba093f40f9caf683d426a897a7454121da29c54c892c2f605afe9db74ff45e189c148fda4fff0074488ebc8 SHA512 6ff7f21a054d23892e47eae495ebfae2a68cea5528f5d6d9cfe6a63ff86779ce78b327fa45a0ca4061d32bf2af62c5d868ca025e3954365f1ccda4e2332657b9 DIST v4l-utils-1.22.1.tar.bz2 2086238 BLAKE2B a3f01a17ea7c8925c74dd883d30b42f54b7926d253dac79e4cadaba43abc33672804257b3b92e5aa640ead6b5aaaa2458f05e21642044d7dea77e5580a8dbe9a SHA512 8a634d8995d13f453dfaf90ca5d0dfb26f2f4b10a0d200d76a949c46f77040d12fc0a5b35e05d7b1ba68bcfc85a445be5a5ab1d4a7d4eabfe3a254038ccc6170 DIST v4l-utils-1.24.1.tar.bz2 2238340 BLAKE2B 1702918699d47b17467e012c2b1875c58851175c1007351a3b40d0b0fa40437eb695efa9e21afe3351f66780899d45798eef7f23c90a4831bface70a245b8a54 SHA512 1e82ba125285e875bf4a216adedab9147009e6af1aadd79a3a1770231d3c96ec29245b33e75f69a9ce1b25011e71746db242c778ac3369148de1e9de2e318663 +DIST v4l-utils-1.26.0.tar.xz 1191988 BLAKE2B 8a4899f7b0d71ca6fd4b296ce9f154c3125c59389130df2db772d66984652b135178d712cc7b39e9f53b6587a4e128e2240d28382ab3ce7d1172d939260b15e2 SHA512 7820a91beb5cfc8e3ecf54145f2503fbbbf879abf1551d5bba5d8454f5a93242daaa51ff4636959d3434aa0d352bdf35afcd5f56e0eb9ab50c8191e8f6283f4a EBUILD libv4l-1.22.1.ebuild 1474 BLAKE2B 02e405372e756e104f9f12fbcf91fdad9065a7da032cdec3b5ef1e1978ec816625d605f89b79a428a5cc21cdfc9422148cb133160aee9d97775d45565ed5516c SHA512 a4b2facc7b261e0b7231374ffe7e049460b1f9da123d02e9b82e5371e6d6dea77e052ea007554b0090a2c5bfe452ca9a02f43d86d3add0bc942fde22563e577d EBUILD libv4l-1.24.1.ebuild 1481 BLAKE2B 1ea5253e7f594b4ed2f51a3bbe002992ba979c4beb662497e5912faebfb30ce23363b851f114873b44a7d4030e20c4a350f2d92afafc1c20f503f31e4c575923 SHA512 b55663f8836ecef9c5b45a0e436c9bef3842e058af4f066c1586c6bc38a315ffe57e489741ca273816e5e99420a97ead030224f1e6058f1059d61a3d7a5b38ab -MISC metadata.xml 1117 BLAKE2B 1d9a1bb6f3e6f2fdeb8c892b8714f8e36ccee4e95defb2ddd9e2fe43e4e9901636e7fa717475b13efe111a2b4be89d78b1b610c153de778ab625b9bee566b783 SHA512 63617e7fccd7394ba402cde356011429b60d7781197fcbfaf473ff88a788fd0a7b631ab10e6cc198bd5a5985cef7ccf026359d4c4ff7a28616661cd8cef1b07d +EBUILD libv4l-1.26.0.ebuild 3240 BLAKE2B cf4413fcc7f47d97a69fbdb00f47f9b6b0468fc8f35f306dfc619a466debef278993bbedfafa60ae0a6c440833ae226ef5e97581f9e94540e8dcf5cad1dc7a73 SHA512 8e29f3a74d122119776cb54848f4e65afbc5e7db476ded3b76df81c9352cc324c5c050f5e58c21bf2b40c70e430508496ae1da1ab769ef275413ad913caf9e96 +MISC metadata.xml 1333 BLAKE2B 980117d95da191d35287e97e99c1add4231438d0e5f763cd576bd9bf79ce894297bd32252b8e73a1356d14be66dde09ef0ae3307a0e856554cb024569eee63ee SHA512 da28f9574865217098fb8602d7860131e58b7c16501bef840814a3ef7870a5565795151c8b574ecc895c9614400b5ac5b444430fd147dabea0f747174d6ae7a0 diff --git a/media-libs/libv4l/files/libv4l-1.26.0-meson.patch b/media-libs/libv4l/files/libv4l-1.26.0-meson.patch new file mode 100644 index 000000000000..0c993dd0da96 --- /dev/null +++ b/media-libs/libv4l/files/libv4l-1.26.0-meson.patch @@ -0,0 +1,86 @@ +From 11ca2682040d14ba1a3d65e95a6f0dfded5e4365 Mon Sep 17 00:00:00 2001 +From: James Le Cuirot <chewi@gentoo.org> +Date: Tue, 12 Dec 2023 13:39:21 +0000 +Subject: [PATCH 1/2] meson: Fix building with -Dv4l-utils=false + +ir_bpf_enabled was referenced without being defined. +--- + meson.build | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/meson.build b/meson.build +index ab632976..7495a9c2 100644 +--- a/meson.build ++++ b/meson.build +@@ -358,6 +358,8 @@ subdir('lib') + if get_option('v4l-utils') + subdir('utils') + subdir('contrib') ++else ++ ir_bpf_enabled = false + endif + + subdir('doc') +-- +2.42.1 + +From 15343c83e43805223c098e4c5efe9e176343e801 Mon Sep 17 00:00:00 2001 +From: James Le Cuirot <chewi@gentoo.org> +Date: Tue, 12 Dec 2023 13:59:13 +0000 +Subject: [PATCH 2/2] meson: Allow documentation directory to be specified with + -Ddocdir + +This is needed by Gentoo Linux QA. + +Signed-off-by: James Le Cuirot <chewi@gentoo.org> +--- + doc/meson.build | 2 +- + meson.build | 5 +++++ + meson_options.txt | 2 ++ + 3 files changed, 8 insertions(+), 1 deletion(-) + +diff --git a/doc/meson.build b/doc/meson.build +index 8f4437e7..4b23c3de 100644 +--- a/doc/meson.build ++++ b/doc/meson.build +@@ -20,7 +20,7 @@ doxygen_install_dirs = [] + doxygen_output = [] + if get_option('doxygen-html') + doxygen_output += 'html' +- doxygen_install_dirs += get_option('datadir') / 'doc' / '@0@'.format(meson.project_name()) ++ doxygen_install_dirs += docdir + endif + if get_option('doxygen-man') + doxygen_output += 'man' +diff --git a/meson.build b/meson.build +index 7495a9c2..0348b43b 100644 +--- a/meson.build ++++ b/meson.build +@@ -289,6 +289,11 @@ if udevdir == '' + udevdir = '/lib/udev' + endif + ++docdir = get_option('docdir') ++if docdir == '' ++ docdir = get_option('datadir') / 'doc' / '@0@'.format(meson.project_name()) ++endif ++ + qt5_opengl_test = ''' + #define GL_GLEXT_PROTOTYPES + #define QT_NO_OPENGL_ES_2 +diff --git a/meson_options.txt b/meson_options.txt +index 2fa046c0..53cf832f 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -32,6 +32,8 @@ option('v4l2-ctl-stream-to', type : 'boolean', + description : 'Enable use of --stream-to in v4l2-ctl') + + # Directories ++option('docdir', type : 'string', ++ description : 'Set documentation directory') + option('gconvsysdir', type : 'string', + description : 'Set system gconv directory (default is to autodetect)') + option('libv4l1subdir', type : 'string', value : 'libv4l', +-- +2.42.1 + diff --git a/media-libs/libv4l/libv4l-1.26.0.ebuild b/media-libs/libv4l/libv4l-1.26.0.ebuild new file mode 100644 index 000000000000..2913916767cc --- /dev/null +++ b/media-libs/libv4l/libv4l-1.26.0.ebuild @@ -0,0 +1,135 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit linux-info meson-multilib systemd udev xdg + +MY_P="v4l-utils-${PV}" + +DESCRIPTION="v4l-utils libraries and optional utilities" +HOMEPAGE="https://git.linuxtv.org/v4l-utils.git" +SRC_URI="https://linuxtv.org/downloads/v4l-utils/${MY_P}.tar.xz" + +LICENSE="LGPL-2.1+" +SLOT="0/0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" +IUSE="bpf doc dvb jpeg qt5 tracer +utils" + +REQUIRED_USE=" + bpf? ( utils ) + qt5? ( utils ) + tracer? ( utils ) +" + +RDEPEND=" + dvb? ( virtual/libudev[${MULTILIB_USEDEP}] ) + jpeg? ( media-libs/libjpeg-turbo:=[${MULTILIB_USEDEP}] ) + utils? ( + !elibc_glibc? ( sys-libs/argp-standalone ) + bpf? ( + dev-libs/libbpf:= + virtual/libelf:= + ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtopengl:5[-gles2(-)] + dev-qt/qtwidgets:5 + media-libs/alsa-lib + virtual/opengl + ) + tracer? ( dev-libs/json-c:= ) + virtual/libudev + ) + !<media-tv/v4l-utils-1.26 +" + +DEPEND=" + ${RDEPEND} +" + +BDEPEND=" + sys-devel/gettext + virtual/pkgconfig + bpf? ( sys-devel/clang:*[llvm_targets_BPF] ) + doc? ( app-doc/doxygen ) + utils? ( + dev-lang/perl + qt5? ( dev-qt/qtcore:5 ) + ) +" + +# Not really prebuilt but BPF objects make our QA checks go crazy. +QA_PREBUILT="*/rc_keymaps/protocols/*.o" + +S="${WORKDIR}/${MY_P}" + +PATCHES=( + "${FILESDIR}"/${PN}-1.26.0-meson.patch +) + +check_llvm() { + if [[ ${MERGE_TYPE} != binary ]] && use bpf; then + local clang=${ac_cv_prog_CLANG:-${CLANG:-clang}} + ${clang} -target bpf -print-supported-cpus &>/dev/null || + die "${clang} does not support the BPF target. Please check LLVM_TARGETS." + fi +} + +pkg_pretend() { + has_version -b sys-devel/clang && check_llvm +} + +pkg_setup() { + check_llvm + CONFIG_CHECK="~SHMEM" linux-info_pkg_setup +} + +multilib_src_configure() { + local emesonargs=( + $(meson_native_use_feature bpf) + -Dgconv=disabled + $(meson_feature jpeg) + $(meson_feature dvb libdvbv5) + $(meson_native_use_feature qt5 qv4l2) + $(meson_native_use_feature qt5 qvidcap) + $(meson_native_use_feature tracer v4l2-tracer) + $(meson_native_use_bool utils v4l-utils) + -Ddocdir="${EPREFIX}/usr/share/doc/${PF}" + -Dsystemdsystemunitdir="$(systemd_get_systemunitdir)" + -Dudevdir="$(get_udevdir)" + $(meson_native_use_feature doc doxygen-doc) + $(meson_native_use_bool doc doxygen-html) + $(meson_native_use_bool doc doxygen-man) + ) + meson_src_configure +} + +multilib_src_install_all() { + dodoc ChangeLog README.lib* TODO + + if use utils; then + dodoc README.md + newdoc utils/dvb/README README.dvb + newdoc utils/libv4l2util/TODO TODO.libv4l2util + newdoc utils/libmedia_dev/README README.libmedia_dev + newdoc utils/v4l2-compliance/fixme.txt fixme.txt.v4l2-compliance + fi +} + +pkg_postinst() { + xdg_pkg_postinst + use utils && udev_reload + + if use utils && [[ -n ${REPLACING_VERSIONS} ]] && ver_test 1.20.0 -ge ${REPLACING_VERSIONS%% *}; then + ewarn "WARNING! ir-keytable has changed significantly from version 1.20.0 so" + ewarn "you may need to take action to avoid breakage. See" + ewarn "https://bugs.gentoo.org/767175 for more details." + fi +} + +pkg_postrm() { + xdg_pkg_postrm + use utils && udev_reload +} diff --git a/media-libs/libv4l/metadata.xml b/media-libs/libv4l/metadata.xml index cfda73acc478..05b7d499b3fc 100644 --- a/media-libs/libv4l/metadata.xml +++ b/media-libs/libv4l/metadata.xml @@ -23,4 +23,9 @@ libv4l2 offers the v4l2 API on top of v4l2 devices, while adding for the application transparent libv4lconvert conversion where necessary. </longdescription> + <use> + <flag name="bpf">Enable support for IR BPF decoders</flag> + <flag name="tracer">Build the v4l2-tracer tool and library</flag> + <flag name="utils">Build the v4l-utils collection of utilities</flag> + </use> </pkgmetadata> |