Accepting request 1280955 from home:alarrosa:branches:devel:libraries:c_c++

- Update to 1.30.1 
  * licenses: update copyright files to remove fsf address
  * v4l2-compliance: run testBlockingWait when streaming
- Update to 1.30.0
  * media-ctl: libv4l2subdev: Add Y16 format
  * v4l2-ctl: process events before queues in stateful_m2m()
  * v4l2-compliance: Add test for V4L2_FMTDESC_FLAG_ENUM_ALL flag
  * v4l2-ctl-vidcap: Add options to enumerate all pixel formats
  * edid-decode: support parsing EDID-Like Data
  * buildsystem: Start v4l-utils 1.29.0 development cycle
  * qvidcap: fix core dump
  * qv4l2: fix crash when disabling openGL
  * qv4l2: always set m_haveFramebufferSRGB to false
  * v4l-utils: sync with latest kernel
  * cec-ctl: add support for CEC_MSG_FL_REPLY_VENDOR_ID
  * cec-compliance: add tests for CEC_MSG_FL_REPLY_VENDOR_ID
  * contrib/test/test-media: re-add cec-compliance -A tests
  * v4l-utils: sync with latest kernel
  * v4l2-compliance: testRequests(): drop V4L2_BUF_FLAG_QUEUED
    check
  * contrib/test/test-media: set log level to info at end
  * v4l2-compliance: only do request-queued checks while streaming
    is off
  * v4l2-compliance: always test blocking wait
  * v4l-utils: sync with latest kernel
  * utils/common: add V4L2_CAP_EDID support
  * v4l2-compliance: add support for V4L2_CAP_EDID
  * test-media: move visl out of the vivid test sequence
  * contrib/test/test-media: test unbind in DQBUF
  * v4l2-ctl/compliance: add -32-time64 variants

OBS-URL: https://build.opensuse.org/request/show/1280955
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/v4l-utils?expand=0&rev=86
This commit is contained in:
Asterios Dramis
2025-05-28 20:56:57 +00:00
committed by Git OBS Bridge
commit d1ce15a0cf
15 changed files with 3418 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

1
.gitignore vendored Normal file
View File

@@ -0,0 +1 @@
.osc

3
_multibuild Normal file
View File

@@ -0,0 +1,3 @@
<multibuild>
<package>qv4l2</package>
</multibuild>

11
baselibs.conf Normal file
View File

@@ -0,0 +1,11 @@
libdvbv5-0
libv4l
libv4l1-0
libv4l2-0
libv4l2rds0
libv4lconvert0
libv4l-devel
requires "libv4l1-0-<targettype> = %version"
requires "libv4l2-0-<targettype> = %version"
requires "libv4l2rds0-<targettype> = %version"
requires "libv4lconvert0-<targettype> = %version"

View File

@@ -0,0 +1,94 @@
Index: v4l-utils-1.28.1/meson.build
===================================================================
--- v4l-utils-1.28.1.orig/meson.build
+++ v4l-utils-1.28.1/meson.build
@@ -386,13 +386,17 @@ man_pages = []
i18n_gettext_arguments = ['--directory=' + source_root,
'--keyword=_', '--keyword=N_', '--keyword=P_:1,2']
+if get_option('qv4l2').disabled()
subdir('libdvbv5-po')
subdir('v4l-utils-po')
subdir('lib')
+else
+ ir_bpf_enabled = false
+endif
+subdir('utils')
if get_option('v4l-utils')
- subdir('utils')
subdir('contrib')
else
ir_bpf_enabled = false
Index: v4l-utils-1.28.1/utils/qv4l2/meson.build
===================================================================
--- v4l-utils-1.28.1.orig/utils/qv4l2/meson.build
+++ v4l-utils-1.28.1/utils/qv4l2/meson.build
@@ -23,14 +23,17 @@ qv4l2_sources = files(
'v4l2-tpg-core.c',
'vbi-tab.cpp',
'vbi-tab.h',
+ '../libv4l2util/frequencies.c',
)
+dep_libv4l2 = dependency('libv4l2')
+dep_libv4lconvert = dependency('libv4lconvert')
+
qv4l2_deps = [
dep_alsa,
dep_gl,
dep_libmedia_dev,
dep_libv4l2,
- dep_libv4l2util,
dep_libv4lconvert,
dep_qt,
dep_qt_opengl,
Index: v4l-utils-1.28.1/utils/meson.build
===================================================================
--- v4l-utils-1.28.1.orig/utils/meson.build
+++ v4l-utils-1.28.1/utils/meson.build
@@ -19,6 +19,7 @@ endforeach
# Libraries
subdir('libcecutil')
subdir('libmedia_dev')
+if get_option('qv4l2').disabled()
subdir('libv4l2util')
# Utils
@@ -30,8 +31,10 @@ subdir('ir-ctl')
subdir('ivtv-ctl')
subdir('keytable')
subdir('media-ctl')
+endif
subdir('qv4l2')
subdir('qvidcap')
+if get_option('qv4l2').disabled()
subdir('rds-ctl')
subdir('v4l2-ctl')
subdir('v4l2-dbg')
@@ -41,3 +44,4 @@ subdir('v4l2-tracer')
# Compliance tools
subdir('cec-compliance')
subdir('v4l2-compliance')
+endif
Index: v4l-utils-1.28.1/utils/qvidcap/meson.build
===================================================================
--- v4l-utils-1.28.1.orig/utils/qvidcap/meson.build
+++ v4l-utils-1.28.1/utils/qvidcap/meson.build
@@ -20,6 +20,7 @@ qvidcap_sources = files(
'v4l2-info.cpp',
'v4l2-tpg-colors.c',
'v4l2-tpg-core.c',
+ '../libv4l2util/frequencies.c',
)
qvidcap_deps = [
@@ -27,7 +28,6 @@ qvidcap_deps = [
dep_gl,
dep_libmedia_dev,
dep_libv4l2,
- dep_libv4l2util,
dep_libv4lconvert,
dep_qt,
dep_qt_opengl,

BIN
v4l-utils-1.24.1.tar.bz2 (Stored with Git LFS) Normal file

Binary file not shown.

View File

@@ -0,0 +1,16 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEEBdAWnCbkFZNBgSnfGZpk+t+1AP8FAmP47hkACgkQGZpk+t+1
AP8hhA/9Hkg3y58XRW4OqL1AsS156nBgYretYdESVTt0bCAuB/k6bdMCzk8cIdYG
drXpbMqKSNoaZgKmHJ0+rpNySw2aJscdWPlROUNqpnCmCyFB1I5oKLZUNMzxbmlK
M+MGtNiQrJmWZvwyIqfYQNGL1KncXA1oUaIQYFsWQvWbqY5GSDcSoPLhLLm1kS8E
HgkqJISvP8n9VbtENnr8Fdtt3tHja/B4l67o7wvFCjsFWw7e7pzzMfuhoH16etga
xArhCMy4vE6sdNGBjK7Jz6kdwCTNcyP/H/INxJ5c878OjBe8KZJiGYq4H4yCxCp4
fHlRtcHTD7jBaYUgoS7GYQlguz3SBM8g1FIxyekueclCYgIcV8ojm7LnfE9WIYgN
icK20RgX18IToB5ms3fph9TBCYdxkOmJ9Cn3hgM5p7Hsz6m9gGba7sYlHTn2TURD
YO47MJ583lJ+lYRSb9fqhDUu4J2mmw04j0A7n67iolYyYD9CiXH5VQuizjufTMtx
vVB8WgRvv5wuoGrwkBesT5xSf/lhOu1iEFaxs4MmqeCixWZUSq2/leW/Drp3oLWP
BkUbzmeTQ437bVwudw+keL1I6PpBN+YIiguQe6p8QDfJYAZN3dDZ5LCUwxkc8FxH
yg5ofWW9lWyVAM+xREsYUjVx78iDvtkzTTMnKvvmi/pN6apBVMM=
=D6V8
-----END PGP SIGNATURE-----

3
v4l-utils-1.28.1.tar.xz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:0fa075ce59b6618847af6ea191b6155565ccaa44de0504581ddfed795a328a82
size 1246516

View File

@@ -0,0 +1,16 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEEBdAWnCbkFZNBgSnfGZpk+t+1AP8FAmagA8MACgkQGZpk+t+1
AP+SKQ//YgaIcJl/BQrUVZOpGyOB72A8JthY7X2CO0LqiMfg55MY5R4tPChoGo9M
3jN1Q6NDMkku87ZXQSl3y08a1jTWw56+Smy7Ak8jCHHCu0vZNaikPiJdSeHNdjqX
K2+OX+de7fkUnTpavg/V/3Ug64CWhrVU+J7YbltTzLtykIdpPSnlUQwoHXHppfWD
ogEhF7zku73uZEYm8cHmxQ2y3coGgLT817ZSu3wCbow9WXih0nPd8LKbytP/BYdF
BjYtUm/WFixQGG1y+ngn63y4UtqJBvwKshjDuhkJBM5N1iwBk8Gb10KpANf2rr+q
v41fZPUTsALkl0e9XCDl1LzWXxCAN1JydW/xGTpc0uZ0ls6WZDL/mIcBescxFUK0
eMagdjPpN9dPyu9onhrqsC7Aqebr7Z/hDJiVCgVrwoXkjc6dzOmqEcpaITxtKTXI
3u9bmzz38bImooWslQ6AqV9+SFC6wV4F5gl5eBeQWwwGCkIylp6S7Fur37nsj/B+
ZSlT8gtY3IYrFLUm6RPNjWAC0VSBFBsMlqfqHz+P68oVfR0TcY19MwUD6eEkJC8q
XLDug3YNfwGe1X1lyPobsncVsljU2EWMtjUUu4lYsQmc1UlA3k/AIdgV1JbjEyc2
adRn6kpaBA2wR2sOwIFmD44OQ7oVzxb8Ubv1rGeLBuK7sY097Xs=
=m5u9
-----END PGP SIGNATURE-----

BIN
v4l-utils-1.30.1.tar.xz (Stored with Git LFS) Normal file

Binary file not shown.

View File

@@ -0,0 +1,16 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEEBdAWnCbkFZNBgSnfGZpk+t+1AP8FAmgTZy8ACgkQGZpk+t+1
AP//Rg//bYWnir7jfpJX50VWS5QiBb5FYtU7Jdd7NHmkLB7Hd+YbmQxX33rxMhTA
szHwOnpUZGpYnZW957TlWwi0V0a8TaoXzTYJCB5P+KjblWjFly2eQK5L7VsUsTms
3LVpzFARAgegbb9/E5EmeaBfjnIaeytYdrDoBEKgMd0iEcNAJt6WM+yXs98aWYo/
44OQ7xsfcBOZxcEGefbP17Cf+CqWdj6qbWetjt5aFSsFMUxugZbE0F6cw3J7Ycpq
4zzk77dFd5dziKULSATh1F40Q0t3/fNSSJ9rruasgw53p2t/CabKYujwMzed9coN
+03fHHW1g3Qc5m64p/ZxWETePqReY7UD2+CfT9qT+wxWFH/lP5ygmUQKrIOIQriT
bb5395A7hk+zQv9zJLf3197AwFugk/IzL/JomtwiO0atEePFLxCFarkcOHcwjZx4
T9qddcgWdeiIKBUUUs/T4tapaTB9mDRmJXs7toaC9iiCXBksqMtDaPMZ4pOMjSC6
3BoT9yXfB7DaMAmzZgEpFwqKj7BD+I5sSGlLTh8arPgr+9lNDCJH7Llm0f090rfQ
Dn7zrR8+mU/Xk7PSlhhS/yHrgWyGnORe+eM5UvrKfIRbihWpGkcjU2dTyQ85Ixf/
LbY7CFJHewHZk3OzBv4MTJhAHt9irhclw9jZmLuLV5XUWjEXz8M=
=3PqQ
-----END PGP SIGNATURE-----

24
v4l-utils-32bitfix.patch Normal file
View File

@@ -0,0 +1,24 @@
Index: v4l-utils-1.22.1/lib/libdvbv5/dvb-file.c
===================================================================
--- v4l-utils-1.22.1.orig/lib/libdvbv5/dvb-file.c
+++ v4l-utils-1.22.1/lib/libdvbv5/dvb-file.c
@@ -594,7 +594,8 @@ static int fill_entry(struct dvb_entry *
n_prop = entry->n_props;
entry->props[n_prop].cmd = i;
if (!attr_name || !*attr_name)
- entry->props[n_prop].u.data = atol(value);
+ /* some put stream_id=4294967295 (-1) which is more than LONG_MAX on 32bit... */
+ entry->props[n_prop].u.data = (uint32_t)atoll(value);
else {
for (j = 0; attr_name[j]; j++)
if (!strcasecmp(value, attr_name[j]))
@@ -713,7 +714,8 @@ static int fill_entry(struct dvb_entry *
/* FIXME: this works only for integer values */
n_prop = entry->n_props;
entry->props[n_prop].cmd = cmd;
- entry->props[n_prop].u.data = atol(value);
+ /* some put stream_id=4294967295 (-1) which is more than LONG_MAX on 32bit... */
+ entry->props[n_prop].u.data = (uint32_t)atoll(value);
entry->n_props++;
return 0;

1491
v4l-utils.changes Normal file

File diff suppressed because it is too large Load Diff

1334
v4l-utils.keyring Normal file

File diff suppressed because it is too large Load Diff

380
v4l-utils.spec Normal file
View File

@@ -0,0 +1,380 @@
#
# spec file for package v4l-utils
#
# Copyright (c) 2025 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%global flavor @BUILD_FLAVOR@%{nil}
%if "%{flavor}" == "qv4l2"
%global psuffix -%{flavor}
%ifarch armv7l armv7hl aarch64
# Qt6 doesn't have gl support in these archs
%bcond_with qvidcap
%else
%if 0%{?suse_version} == 1500
# Neither does Qt in SLE15
%bcond_with qvidcap
%else
%bcond_without qvidcap
%endif
%endif
%endif
%define _udevdir %(pkg-config --variable udevdir udev)
%define so_ver 0
%define sname v4l-utils
Name: v4l-utils%{?psuffix}
Version: 1.30.1
Release: 0
Summary: Utilities for video4linux
License: GPL-2.0-only AND GPL-2.0-or-later AND LGPL-2.1-or-later
URL: https://linuxtv.org/downloads/v4l-utils/
Source0: https://linuxtv.org/downloads/v4l-utils/%{sname}-%{version}.tar.xz
Source1: https://linuxtv.org/downloads/v4l-utils/%{sname}-%{version}.tar.xz.asc
Source2: %{sname}.keyring
Source100: baselibs.conf
Patch0: use_system_v4l_for_qv4l.patch
Patch1: v4l-utils-32bitfix.patch
BuildRequires: alsa-devel
%if 0%{?suse_version} == 1500
BuildRequires: gcc13-c++
%else
BuildRequires: gcc-c++
%endif
BuildRequires: libjpeg-devel
BuildRequires: meson
BuildRequires: pkgconfig
BuildRequires: pkgconfig(json-c)
BuildRequires: pkgconfig(libudev)
BuildRequires: pkgconfig(systemd)
BuildRequires: pkgconfig(udev)
Requires: libv4l = %{version}
%if "%{flavor}" == ""
BuildRequires: doxygen
BuildRequires: kernel-headers
%endif
%if "%{flavor}" == "qv4l2"
BuildRequires: pkgconfig(Qt6Core)
BuildRequires: pkgconfig(Qt6Core5Compat)
BuildRequires: pkgconfig(Qt6Gui)
BuildRequires: pkgconfig(Qt6OpenGL)
BuildRequires: pkgconfig(Qt6OpenGLWidgets)
BuildRequires: pkgconfig(Qt6Platform)
BuildRequires: pkgconfig(Qt6Widgets)
BuildRequires: pkgconfig(alsa)
BuildRequires: pkgconfig(gl)
BuildRequires: pkgconfig(libv4l2)
BuildRequires: pkgconfig(libv4lconvert)
%endif
%description
v4l-utils is a collection of various video4linux (V4L) utilities.
%lang_package
%package devel-tools
Summary: Utilities for v4l2 / DVB driver development and debugging
License: GPL-2.0-only AND GPL-2.0-or-later
Requires: libv4l = %{version}
%description devel-tools
Utilities for v4l2 / DVB driver authors for development and debugging.
%package -n dvb-utils
Summary: Utilities for DVB devices
License: GPL-2.0-only
Recommends: dtv-scan-tables-v5
%description -n dvb-utils
dvb-utils is a collection of various DVB utilities.
%package -n libdvbv5-%{so_ver}
Summary: Library that provides access to DVB adapter cards
License: GPL-2.0-only
%description -n libdvbv5-%{so_ver}
libdvbv5 is a library meant to be used by digital TV applications that need to
talk with media hardware.
This package contains shared lib for packages that use libdvbv5.
%package -n libdvbv5-devel
Summary: Development files for libdvbv5
License: GPL-2.0-only
Requires: libdvbv5-%{so_ver} = %{version}
%description -n libdvbv5-devel
The libdvbv5-devel package contains libraries and header files for
developing applications that use libdvbv5.
%package -n libdvbv5-gconv
Summary: Gconv files with the charsets For Digital TV
License: GPL-2.0-only
Requires: libdvbv5-%{so_ver} = %{version}
%description -n libdvbv5-gconv
Some digital TV standards define their own charsets. Add library
support for them: EN 300 468 and ARIB STD-B24
%package -n libv4l
Summary: Collection of video4linux support libraries
License: GPL-2.0-only AND LGPL-2.1-or-later
%description -n libv4l
libv4l is a collection of libraries which adds a thin abstraction layer on
top of video4linux2 devices. The purpose of this (thin) layer is to make it
easy for application writers to support a wide variety of devices without
having to write separate code for different devices in the same class.
%package -n libv4l1-%{so_ver}
Summary: Video4linux support library
License: LGPL-2.1-or-later
Requires: libv4l
%description -n libv4l1-%{so_ver}
libv4l1 offers the (deprecated) v4l1 API on top of v4l2 devices, independent
of the drivers for those devices supporting v4l1 compatibility (which many
v4l2 drivers do not).
This package contains shared lib for packages that use libv4l1.
%package -n libv4l2-%{so_ver}
Summary: Video4linux support library
License: LGPL-2.1-or-later
Requires: libv4l
%description -n libv4l2-%{so_ver}
libv4l2 offers the v4l2 API on top of v4l2 devices, while adding for the
application transparent libv4lconvert conversion where necessary.
This package contains shared lib for packages that use libv4l2.
%package -n libv4l2rds%{so_ver}
Summary: Video4linux support library
License: LGPL-2.1-or-later
Requires: libv4l
%description -n libv4l2rds%{so_ver}
libv4l2rds offers decoding raw RDS data from V4L2 Radio devices and simple ways
to access the received RDS information.
This package contains shared lib for packages that use libv4l2rds.
%package -n libv4lconvert%{so_ver}
Summary: Video4linux support library
License: LGPL-2.1-or-later
Requires: libv4l
%description -n libv4lconvert%{so_ver}
libv4lconvert offers functions to convert from any (known) pixel-format
to V4l2_PIX_FMT_BGR24 or V4l2_PIX_FMT_YUV420.
This package contains shared lib for packages that use libv4lconvert.
%package -n libv4l-devel
Summary: Development files for libv4l
License: LGPL-2.1-or-later
Requires: libv4l1-%{so_ver} = %{version}
Requires: libv4l2-%{so_ver} = %{version}
Requires: libv4l2rds%{so_ver} = %{version}
Requires: libv4lconvert%{so_ver} = %{version}
%description -n libv4l-devel
The libv4l-devel package contains libraries and header files for
developing applications that use libv4l.
%package -n qv4l2
Summary: Video4linux test control and streaming test application
License: GPL-2.0-or-later
Requires: libv4l = %{version}
%description -n qv4l2
qv4l2 is a test control and streaming test application for video4linux.
%prep
%autosetup -p1 -n %{sname}-%{version}
%build
%if 0%{?suse_version} == 1500
export CC=gcc-13
export CXX=g++-13
%endif
%meson \
-Dudevdir=%{_udevdir} \
-Ddoxygen-doc=disabled \
-Ddoxygen-man=false \
-Ddoxygen-html=false \
-Dbpf=disabled \
%if "%{flavor}" == "qv4l2"
-Dqv4l2=enabled \
%if %{with qvidcap}
-Dqvidcap=enabled \
%else
-Dqvidcap=disabled \
%endif
-Dlibdvbv5=disabled \
-Dv4l-plugins=false \
-Dv4l-utils=false \
-Dv4l-wrappers=false \
-Dv4l2-compliance-libv4l=false \
-Dv4l2-ctl-libv4l=false \
-Dv4l2-ctl-stream-to=false \
%else
-Dqv4l2=disabled \
-Dqvidcap=disabled \
-Dlibdvbv5=enabled \
%endif
%{nil}
%meson_build
%install
%meson_install
%if "%{flavor}" == ""
install -dm 0755 %{buildroot}%{_libdir}/gconv/gconv-modules.d
mv %{buildroot}%{_libdir}/gconv/gconv-modules %{buildroot}%{_libdir}/gconv/gconv-modules.d/libdvbv5.conf
%find_lang "%{name}"
%find_lang libdvbv5
%endif
find %{buildroot} -type f -name "*.la" -delete -print
%if "%{flavor}" == ""
%post -n libdvbv5-%{so_ver} -p /sbin/ldconfig
%postun -n libdvbv5-%{so_ver} -p /sbin/ldconfig
%post -n libdvbv5-gconv -p %{_sbindir}/iconvconfig
%postun -n libdvbv5-gconv -p %{_sbindir}/iconvconfig
%post -n libv4l1-%{so_ver} -p /sbin/ldconfig
%postun -n libv4l1-%{so_ver} -p /sbin/ldconfig
%post -n libv4l2-%{so_ver} -p /sbin/ldconfig
%postun -n libv4l2-%{so_ver} -p /sbin/ldconfig
%post -n libv4l2rds%{so_ver} -p /sbin/ldconfig
%postun -n libv4l2rds%{so_ver} -p /sbin/ldconfig
%post -n libv4lconvert%{so_ver} -p /sbin/ldconfig
%postun -n libv4lconvert%{so_ver} -p /sbin/ldconfig
%endif
%if "%{flavor}" == ""
%files
%license COPYING
%doc ChangeLog README.md TODO
%dir %{_sysconfdir}/rc_keymaps/
%config(noreplace) %{_sysconfdir}/rc_maps.cfg
%{_udevdir}/rc_keymaps
%{_udevrulesdir}/70-infrared.rules
%{_bindir}/cx18-ctl
%{_bindir}/cec-compliance
%{_bindir}/cec-ctl
%{_bindir}/cec-follower
%{_bindir}/edid-decode
%{_bindir}/ir-ctl
%{_bindir}/ir-keytable
%{_bindir}/ivtv-ctl
%{_bindir}/media-ctl
%{_bindir}/rds-ctl
%{_bindir}/v4l2-ctl
%{_bindir}/v4l2-sysfs-path
%{_mandir}/man5/rc_keymap.5%{?ext_man}
%{_mandir}/man1/ir-keytable.1%{?ext_man}
%{_mandir}/man1/v4l2-ctl.1%{?ext_man}
%{_mandir}/man1/cec-compliance.1%{?ext_man}
%{_mandir}/man1/cec-ctl.1%{?ext_man}
%{_mandir}/man1/cec-follower.1%{?ext_man}
%{_mandir}/man1/ir-ctl.1%{?ext_man}
%{_mandir}/man1/edid-decode.1%{?ext_man}
%files lang -f "%{name}.lang"
%files devel-tools
%license COPYING
%doc ChangeLog README.md TODO
%{_bindir}/decode_tm6000
%{_bindir}/v4l2-compliance
%{_bindir}/v4l2-tracer
%{_sbindir}/v4l2-dbg
%{_mandir}/man1/v4l2-compliance.1%{?ext_man}
%{_mandir}/man1/v4l2-tracer.1%{?ext_man}
%files -n dvb-utils
%license COPYING
%doc ChangeLog README.md TODO
%{_bindir}/dvb-*
%{_bindir}/dvbv5-*
%{_mandir}/man1/dvb-*1%{?ext_man}
%{_mandir}/man1/dvbv5-*1%{?ext_man}
%files -n libdvbv5-%{so_ver} -f libdvbv5.lang
%{_libdir}/libdvbv5.so.%{so_ver}*
%files -n libdvbv5-devel
%license COPYING.libdvbv5
%doc TODO.libdvbv5
%{_includedir}/libdvbv5/
%{_libdir}/libdvbv5.so
%{_libdir}/pkgconfig/libdvbv5*.pc
%files -n libdvbv5-gconv
%{_libdir}/gconv/*.so
%{_libdir}/gconv/gconv-modules.d/libdvbv5.conf
%files -n libv4l
%license COPYING.libv4l
%doc ChangeLog README.md README.libv4l TODO
%{_libdir}/libv4l/
%files -n libv4l1-%{so_ver}
%{_libdir}/libv4l1.so.%{so_ver}*
%files -n libv4l2-%{so_ver}
%{_libdir}/libv4l2.so.%{so_ver}*
%files -n libv4l2rds%{so_ver}
%{_libdir}/libv4l2rds.so.%{so_ver}*
%files -n libv4lconvert%{so_ver}
%{_libdir}/libv4lconvert.so.%{so_ver}*
%files -n libv4l-devel
%license COPYING.libv4l
%doc README.lib-multi-threading
%{_includedir}/libv4l*.h
%{_libdir}/libv4l*.so
%{_libdir}/pkgconfig/libv4l*.pc
%endif
%if "%{flavor}" == "qv4l2"
%files -n qv4l2
%license COPYING
%doc ChangeLog README.md TODO
%{_bindir}/qv4l2
%{_datadir}/applications/qv4l2.desktop
%dir %{_datadir}/icons/hicolor
%dir %{_datadir}/icons/hicolor/??x??
%dir %{_datadir}/icons/hicolor/??x??/apps
%dir %{_datadir}/icons/hicolor/scalable
%dir %{_datadir}/icons/hicolor/scalable/apps
%{_datadir}/icons/hicolor/*/apps/qv4l2.*
%{_mandir}/man1/qv4l2.1%{?ext_man}
%if %{with qvidcap}
%{_bindir}/qvidcap
%{_datadir}/applications/qvidcap.desktop
%{_datadir}/icons/hicolor/*/apps/qvidcap.*
%{_mandir}/man1/qvidcap.1%{?ext_man}
%endif
%endif
%changelog