media-libs/libv4l: Drop old 1.30.1

Signed-off-by: James Le Cuirot <chewi@gentoo.org>
This commit is contained in:
James Le Cuirot 2025-12-01 23:11:51 +00:00
parent 41721f0119
commit 57a2327c35
No known key found for this signature in database
GPG Key ID: 1226415D00DD3137
4 changed files with 0 additions and 313 deletions

View File

@ -1,2 +1 @@
DIST v4l-utils-1.30.1.tar.xz 1381748 BLAKE2B f8341b77ca132dda8ed410643ae0afc32417aa59d5e7b8c756972354e8d314c53ed1585f784a970c855de6464e8f3c9652efede4a48b6f252808c55198f27976 SHA512 b34ff9a233da9cb5a569cb5a6fcee288216277eb6f2f6e83c75e717422c1440f58da5e4f4c557b95a11f7650bbacc603c79edaa7451c277398aebf9c232761b3
DIST v4l-utils-1.32.0.tar.xz 1384024 BLAKE2B 6656c564f7d1a432ebad7f4b35b0b9c351eed0b07f927652076a261356afe1c57ea094d5bffd24c5b9826025bd8da4772159ab4e10a11e059fdb07749cfc6247 SHA512 5bf24c28ec66a7ac1a0c9ee976521d825d4c2f8abbbeb59c7ac55e89db10dde6ebb643d238d217d636d79fda363244558fee1effe8c5e8c573c1a3e957fe391f

View File

@ -1,29 +0,0 @@
From f431bb813df169858540b8a819cedeb1805515c9 Mon Sep 17 00:00:00 2001
From: James Le Cuirot <chewi@gentoo.org>
Date: Sun, 3 Aug 2025 23:42:08 +0100
Subject: [PATCH] compiler.h: Fix libc++ build now that _LIBCPP_FALLTHROUGH has
gone
This has been dropped in favour of [[__fallthrough__]].
https://github.com/llvm/llvm-project/commit/cb43fe33b5d5084cf3b5a2723a03b692edb68018
Signed-off-by: James Le Cuirot <chewi@gentoo.org>
--- a/include/compiler.h
+++ b/include/compiler.h
@@ -3,7 +3,11 @@
#else
#include <ciso646>
#ifdef _LIBCPP_VERSION
- #define fallthrough _LIBCPP_FALLTHROUGH()
+ #ifdef _LIBCPP_FALLTHROUGH
+ #define fallthrough _LIBCPP_FALLTHROUGH()
+ #else
+ #define fallthrough [[__fallthrough__]]
+ #endif // _LIBCPP_FALLTHROUGH
#else
#ifdef __clang__
#define fallthrough [[clang::fallthrough]]
--
2.50.1

View File

@ -1,125 +0,0 @@
From 48316b8a20aac35f982991b617f84fb3c104e7b0 Mon Sep 17 00:00:00 2001
From: James Le Cuirot <chewi@gentoo.org>
Date: Sun, 10 Aug 2025 15:20:06 +0100
Subject: [PATCH] meson: Allow BPF code to be built with GCC
GCC can also target BPF, but it does not understand the "-target bpf"
arguments passed to Clang.
Detect it as either bpf-gcc, bpf-none-gcc, or bpf-unknown-none-gcc, the
same as systemd does.
Determine the include paths with the compiler used by the rest of the
build rather than Clang, which might not be installed or might not give
the right answer, especially when cross-compiling.
Check whether Clang actually supports the BPF target so that
auto-detection doesn't cause the build to fail when it doesn't.
Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Signed-off-by: Sean Young <sean@mess.org>
--- a/meson.build
+++ b/meson.build
@@ -83,11 +83,34 @@ endif
v4l2_utils_incdir = include_directories(v4l2_utils_incdir_arr)
prog_bash = find_program('bash')
-prog_clang = find_program('clang', required : get_option('bpf'))
prog_doxygen = find_program('doxygen', required : get_option('doxygen-doc'))
prog_grep = find_program('grep')
prog_perl = find_program('perl')
+if get_option('bpf').allowed()
+ bpf_args = []
+ prog_bpf = find_program('bpf-gcc',
+ 'bpf-none-gcc',
+ 'bpf-unknown-none-gcc',
+ required : false)
+
+ if prog_bpf.found()
+ bpf_args += ['-fno-tree-switch-conversion']
+ else
+ prog_bpf = find_program('clang', required : get_option('bpf'))
+ if prog_bpf.found()
+ target_bpf = run_command(prog_bpf, '-target', 'bpf', '--print-supported-cpus', check : get_option('bpf').enabled())
+ if target_bpf.returncode() == 0
+ bpf_args += ['-target', 'bpf']
+ else
+ prog_bpf = disabler()
+ endif
+ endif
+ endif
+else
+ prog_bpf = disabler()
+endif
+
dep_alsa = dependency('alsa', required : false)
if dep_alsa.found()
conf.set('HAVE_ALSA', 1)
--- /dev/null
+++ b/utils/keytable/bpf_protocols/cc_sys_includes.sh
@@ -0,0 +1,10 @@
+#!/bin/sh
+# Get C compiler's default includes on this system, as the BPF toolchain
+# generally doesn't see the Linux headers. This fixes "missing" files on some
+# architectures/distros, such as asm/byteorder.h, asm/socket.h, asm/sockios.h,
+# sys/cdefs.h etc.
+#
+# Use '-idirafter': Don't interfere with include mechanics except where the
+# build would have failed anyways.
+"$@" -v -E - </dev/null 2>&1 \
+ | sed -n '/<...> search starts here:/,/End of search list./{ s| \(/.*\)|-idirafter \1|p }'
--- a/utils/keytable/bpf_protocols/clang_sys_includes.sh
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/sh
-# Get Clang's default includes on this system, as opposed to those seen by
-# '-target bpf'. This fixes "missing" files on some architectures/distros,
-# such as asm/byteorder.h, asm/socket.h, asm/sockios.h, sys/cdefs.h etc.
-#
-# Use '-idirafter': Don't interfere with include mechanics except where the
-# build would have failed anyways.
-$CLANG -v -E - </dev/null 2>&1 \
- | sed -n '/<...> search starts here:/,/End of search list./{ s| \(/.*\)|-idirafter \1|p }'
--- a/utils/keytable/bpf_protocols/meson.build
+++ b/utils/keytable/bpf_protocols/meson.build
@@ -10,9 +10,9 @@ bpf_protocols_files = [
'xbox-dvd',
]
-clang_sys_includes = run_command('clang_sys_includes.sh',
- check : true,
- env : ['CLANG=' + prog_clang.full_path()])
+bpf_args += run_command('cc_sys_includes.sh',
+ cc.cmd_array(),
+ check : true).stdout().split()
foreach file : bpf_protocols_files
output = file + '.o'
@@ -21,9 +21,9 @@ foreach file : bpf_protocols_files
output : output,
input : input,
command : [
- prog_clang,
- clang_sys_includes.stdout().split(),
- '-D__linux__', '-fno-stack-protector', '-target', 'bpf',
+ prog_bpf,
+ bpf_args,
+ '-D__linux__', '-fno-stack-protector',
'-O2', '-c', '@INPUT@', '-o', '@OUTPUT@',
],
install : true,
--- a/utils/keytable/meson.build
+++ b/utils/keytable/meson.build
@@ -22,7 +22,7 @@ ir_keytable_c_args = [
'-DIR_KEYTABLE_USER_DIR="@0@"'.format(ir_keytable_user_dir),
]
-ir_bpf_enabled = prog_clang.found() and dep_libbpf.found() and dep_libelf.found()
+ir_bpf_enabled = prog_bpf.found() and dep_libbpf.found() and dep_libelf.found()
if ir_bpf_enabled
ir_keytable_sources += files(
--
2.50.1

View File

@ -1,158 +0,0 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit eapi9-ver 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"
S="${WORKDIR}/${MY_P}"
LICENSE="LGPL-2.1+ utils? ( MIT || ( BSD GPL-2 ) )"
SLOT="0/0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux"
IUSE="bpf doc dvb jpeg qt6 tracer +utils"
REQUIRED_USE="
bpf? ( utils )
qt6? ( utils )
tracer? ( utils )
"
RDEPEND="
!<media-tv/v4l-utils-1.26
dvb? ( virtual/libudev[${MULTILIB_USEDEP}] )
jpeg? ( media-libs/libjpeg-turbo:=[${MULTILIB_USEDEP}] )
utils? (
virtual/libudev
!sys-apps/edid-decode
!elibc_glibc? (
sys-libs/argp-standalone
)
bpf? (
dev-libs/libbpf:=
virtual/libelf:=
)
qt6? (
dev-qt/qtbase:6[gui,opengl,widgets,-gles2-only]
dev-qt/qt5compat:6
media-libs/alsa-lib
virtual/opengl
)
tracer? (
dev-libs/json-c:=
)
)
"
DEPEND="
${RDEPEND}
"
BDEPEND="
sys-devel/gettext
virtual/pkgconfig
bpf? ( || (
sys-devel/bpf-toolchain
llvm-core/clang:*[llvm_targets_BPF]
) )
doc? ( app-text/doxygen )
utils? (
dev-lang/perl
qt6? ( dev-qt/qtbase:6 )
)
"
PATCHES=(
"${FILESDIR}"/${P}-cpp-fallthrough.patch
"${FILESDIR}"/${PN}-bpf-toolchain.patch
"${FILESDIR}"/${PN}-1.32-bpf-locale.patch
)
# Not really prebuilt but BPF objects make our QA checks go crazy.
QA_PREBUILT="*/rc_keymaps/protocols/*.o"
# This is intended to be preloaded.
QA_SONAME=".*/libv4l2tracer\.so"
check_llvm() {
if [[ ${MERGE_TYPE} != binary ]] && use bpf &&
! has_version -b sys-devel/bpf-toolchain && has_version -b llvm-core/clang; then
clang -target bpf -print-supported-cpus &>/dev/null ||
die "clang does not support the BPF target. Please check LLVM_TARGETS."
fi
}
pkg_pretend() {
check_llvm
}
pkg_setup() {
check_llvm
CONFIG_CHECK="~SHMEM" linux-info_pkg_setup
}
src_prepare() {
default
use qt6 || sed -i "/^dep_qt6/s/'qt6/&DiSaBlEd/" meson.build || die
}
multilib_src_configure() {
local emesonargs=(
$(meson_native_use_feature bpf)
-Dgconv=disabled
$(meson_feature jpeg)
$(meson_feature dvb libdvbv5)
$(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="${EPREFIX}$(get_udevdir)"
$(meson_native_use_feature doc doxygen-doc)
$(meson_native_use_bool doc doxygen-html)
$(meson_native_use_bool doc doxygen-man)
)
if multilib_is_native_abi && use qt6; then
emesonargs+=(
-Dqv4l2=enabled
-Dqvidcap=enabled
)
else
emesonargs+=(
-Dqv4l2=disabled
-Dqvidcap=disabled
)
fi
PATH+=":${BROOT}/usr/lib/bpf-toolchain/bin" 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 && ver_replacing -lt 1.20.0; 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
}