# # spec file for package zvbi # # 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/ # %define sover 0 %define libname lib%{name}%{sover} %define libchains lib%{name}-chains%{sover} Name: zvbi Version: 0.2.44 Release: 1.1 Summary: Linux "VBI proxy" License: GPL-2.0-or-later AND LGPL-2.1-or-later Group: Productivity/Multimedia/Other URL: https://github.com/zapping-vbi/zvbi/ Source: https://github.com/zapping-vbi/zvbi/archive/refs/tags/v%{version}.tar.gz Source2: baselibs.conf Patch10: 10_fix_private_libs.patch BuildRequires: autoconf BuildRequires: automake BuildRequires: gcc-c++ BuildRequires: gettext >= 0.21.0 BuildRequires: libpng-devel BuildRequires: libtool BuildRequires: pkgconfig BuildRequires: timezone BuildRequires: pkgconfig(ice) BuildRequires: pkgconfig(x11) Recommends: %{name}-lang %description With "video4linux" drivers, only one application at a time can capture VB data. The 2nd generation "v4l2" API allows multiple clients to open a device, but still only one client may read from the device. If, for example, the Nxtvepg daemon runs in the background, users will not be able to start a Teletext application. The VBI proxy was developed as a solution to this problem. %package -n %{libname} Summary: VBI Decoding Library Group: System/Libraries %description -n %{libname} VBI stands for Vertical Blanking Interval, a gap between the image data transmitted in an analog video signal. This gap is used to transmit AM modulated data for various data services like Teletext and Closed Caption. The zvbi library provides routines to read from raw VBI sampling devices, to demodulate raw to sliced VBI data, and to interpret the data of several popular services. %package -n %{libchains} Summary: VBI Decoding Library Group: System/Libraries Conflicts: %{libname} < %{version}-%{release} %description -n %{libchains} VBI stands for Vertical Blanking Interval, a gap between the image data transmitted in an analog video signal. This gap is used to transmit AM modulated data for various data services like Teletext and Closed Caption. The zvbi library provides routines to read from raw VBI sampling devices, to demodulate raw to sliced VBI data, and to interpret the data of several popular services. %package devel Summary: Development files for the VBI decoding library Group: Development/Libraries/C and C++ Requires: %{libchains} = %{version} Requires: %{libname} = %{version} %description devel This package includes the development files for the zvbi library which provides routines to read from raw VBI sampling devices, to demodulate raw to sliced VBI data, and to interpret the data of several popular services. %lang_package %prep %autosetup -p1 %build ACLOCAL="aclocal -I m4" autoreconf -fi %configure --disable-static %make_build %install %make_install find %{buildroot} -type f -name "*.la" -delete -print %find_lang %{name} %check # This requires timezone package to be installed %make_build check %post -n %{libname} -p /sbin/ldconfig %post -n %{libchains} -p /sbin/ldconfig %postun -n %{libname} -p /sbin/ldconfig %postun -n %{libchains} -p /sbin/ldconfig %files %license COPYING %doc AUTHORS BUGS ChangeLog NEWS README.md TODO %{_bindir}/zvbi-atsc-cc %{_bindir}/zvbi-chains %{_bindir}/zvbi-ntsc-cc %{_sbindir}/zvbid %{_mandir}/man1/zvbi-atsc-cc.1%{?ext_man} %{_mandir}/man1/zvbi-chains.1%{?ext_man} %{_mandir}/man1/zvbi-ntsc-cc.1%{?ext_man} %{_mandir}/man1/zvbid.1%{?ext_man} %files lang -f %{name}.lang %files -n %{libname} %{_libdir}/libzvbi.so.%{sover}* %files -n %{libchains} %{_libdir}/libzvbi-chains.so.%{sover}* %files devel %{_includedir}/libzvbi.h %{_libdir}/libzvbi.so %{_libdir}/libzvbi-chains.so %{_libdir}/pkgconfig/zvbi-*.pc %changelog * Wed Mar 12 2025 pgajdos@suse.com - version update to 0.2.44 * configure.ac: Add comments to help eith debugging gettext. * doc/Doxyfile.in: Bump version from 1.9.4 to 1.9.8. * src/conv.c: Check src_length to avoid an unitinialized heap read. * src/conv.c, src/io-sim.c, src/search.c: Avoid integer overflow leading to heap overflow. * src/export.c, src/misc.*: Use standard va_copy(), not GNU __va_copy(). * src/teletext.c: Fix accidental G3 character modification. * src/vbi.c: Add support for a larger range of framerates, from 12.5fps to 60fps. - fixes: CVE-2025-2173 [bsc#1239222] CVE-2025-2174 [bsc#1239299] CVE-2025-2175 [bsc#1239312] CVE-2025-2176 [bsc#1239319] CVE-2025-2177 [bsc#1239320] * Tue Feb 11 2025 pgajdos@suse.com - version update to 0.2.43 * Fix building and enable testing for Windows platforms. * Fix building for musl. * Add options to disable tests and examples. * Fix for static declaration of ‘sincos’ follows non-static declaration. - Drop obsoleted patch: zvbi-gcc14.patch * Tue May 14 2024 pgajdos@suse.com - added patches fix build with gcc14 https://github.com/zapping-vbi/zvbi/commit/ae74ae513714f81b9b8abdb12e1b235d16fad74e + zvbi-gcc14.patch * Tue Feb 20 2024 Dominique Leuenberger - Use %%autosetup macro. Allows to eliminate the usage of deprecated %%patchN. * Mon Sep 4 2023 pgajdos@suse.com - version update to 0.2.42 * Fix several compiler warnings. * Apply patch to consider ERASE_PAGE flag with single page transmissions. * Mon Apr 10 2023 Dave Plater - Set minimum version for gettext * Mon Mar 13 2023 Andrea Manzini - update to 0.2.41: * src/libzvbi.h: In libzvbi.h, remove #include version.h and replace with version number macros * po/*.po: Update Project-Id-Version. * Wed Dec 28 2022 Dirk Müller - update to 0.2.39: * Updates to remove compiler warnings during tests. * Allow autogen.sh and configure to run separately by default. * Add Georgian language translation po files. * Fri Dec 2 2022 Dirk Müller - update to 0.2.38: * Updates to remove compiler and Doxygen warnings. * Fix cross-compile issues from autotools updates. * Update header files to UTF-8 encoding. * Update new maintainer and repository information after moving * the project to github. * Upgrade build system to new autotools versions. * Apply simple patches from SourceForge and debian. - drop 05_MAXPATHLEN.patch 01_Makefile.am.patch 00_fix-configure.in.patch 08_fix-manpage.patch 07_fix-spelling-in-binaries.patch 06_sizeof-FTBFS.patch 09_fix-FTBFS-GCC6.patch 03_fails-to-write.patch : upstream / obsolete * Sat Apr 14 2018 daniel.molkentin@suse.com - Add patch to separate private libs from required libs: * 10_fix_private_libs.patch * Mon Dec 11 2017 jengelh@inai.de - Update RPM groups and descriptions. * Wed Dec 6 2017 mpluskal@suse.com - Cleanup spec file with spec-cleaner - Add dropped dependency for libICE - Add dependency for libpng support - Split lang subpackage - Split library subpackages - Use patches from debian: * 00_fix-configure.in.patch * 01_Makefile.am.patch * 03_fails-to-write.patch * 05_MAXPATHLEN.patch * 06_sizeof-FTBFS.patch * 07_fix-spelling-in-binaries.patch * 08_fix-manpage.patch * 09_fix-FTBFS-GCC6.patch - Drop zvbi-automake-1.13.patch - Enable tests - Use url for source * Tue Dec 5 2017 crrodriguez@opensuse.org - BuildRequire pkgconfig(x11) instead of xorg-x11-devel * Tue Sep 24 2013 stephan.barth@suse.com - update to version 0.2.35 which includes numerous fixes that are listed in the ChangeLog - added upstream ChangeLog to the package - removed fix-headers.patch because it is included in upstream now - added an fdupes call for the documentation files in the devel package * Wed Mar 13 2013 pgajdos@suse.cz - builds with automake 1.13 * automake-1.13.patch * Mon Aug 27 2012 cfarrell@suse.com - license update: LGPL-2.1+ and GPL-2.0+ Use SPDX format and include the LGPL as well * Sat Nov 19 2011 coolo@suse.com - add libtool as buildrequire to avoid implicit dependency * Fri Sep 16 2011 jengelh@medozas.de - Implement baselibs.conf for package - Remove redundant tags/sections; remove author list (encoding screwed up and no longer used in factory) * Mon Jun 6 2011 aj@suse.de - Add missing includes for * Thu Sep 11 2008 mmarek@suse.cz - updated to 0.2.33 * includes zvbi-0.2.32-atsc-cc-include.patch * Wed Sep 3 2008 mmarek@suse.cz - updated to 0.2.32 * This version adds a new tool named zvbi-atsc-cc to record Closed Caption from ATSC digital TV. It supports legacy NTSC caption (EIA 608-B) and DTVCC (CEA 708-C). * Mon Jul 28 2008 mmarek@suse.cz - updated to 0.2.31 * The vbi_caption_unicode() function did not correctly translate the small letter i with diaresis. * The files daemon/chains.c, daemon/proxyd.c, test/proxy-test.c and test/cc-test-stream.dtd are now licensed under GPLv2 or later as stated in the top README file. (fixes bnc#408881) * Fri Jul 4 2008 mmarek@suse.cz - updated to 0.2.30 * The ZVBI libraries libzvbi and libzvbi-chains are now licensed under the terms of the GNU Library General Public License version 2 or later. Example programs are now licensed under a 2-clause BSD-style license. The VBI proxy daemon, contributed programs, test programs and programs required to build the library remain licensed under GNU General Public License version 2 or later. * The VTX export module has been disabled for licensing reasons. It may return after a rewrite. * New BCD functions and vbi_ham24p(), counterpart of vbi_unham24p(), were added. * The artificial 41st column in Teletext pages is no longer black but continues the previous column if appropriate. * The --default-cs option of the export test tool now works with libzvbi 0.2 as well. * bugfixes - split the library package into libzvbi0, updated package descriptions * Mon Feb 4 2008 mmarek@suse.cz - updated to 0.2.26 * new program zvbi-ntsc-cc: ntsc-cc Closed Caption decoder from the Xawtv package using libzvbi for driver access and bit slicing. * support for raw VBI capturing with unknown field order * lots of other enhancements and bugfixes - don't install static libraries and *.la files * Fri Aug 31 2007 mmarek@suse.cz - fixed build with new glibc - specfile cleanup * Wed Jan 25 2006 mls@suse.de - converted neededforbuild to BuildRequires * Mon Sep 26 2005 mls@suse.de - make devel package require base package * Wed Jul 27 2005 kraxel@suse.de - update to version 0.2.16. * Mon Jan 24 2005 kraxel@suse.de - update to version 0.2.13. * Tue Jan 11 2005 kraxel@suse.de - build fix: doygen needs libpng. * Wed Jan 5 2005 kraxel@suse.de - fix documentation build. * Tue Jan 4 2005 kraxel@suse.de - update to version 0.2.11 * Tue Jun 8 2004 kraxel@suse.de - update to version 0.2.8 * Wed Feb 11 2004 kraxel@suse.de - update to version 0.2.5 * Sun Nov 9 2003 adrian@suse.de - add %%run_ldconfig * Thu Jun 19 2003 ro@suse.de - build with current gettext * Tue May 27 2003 ro@suse.de - add .la file to devel file list * Mon Feb 17 2003 kraxel@suse.de - updated to version 0.2.4 (adds v4l2 support) * Fri Jan 17 2003 kraxel@suse.de - fixed spec to make the package build on older distributions too. * Tue Jan 14 2003 kraxel@suse.de - updated to version 0.2.3 * Mon Nov 18 2002 schwab@suse.de - Add AM_GNU_GETTEXT_VERSION. * Wed Nov 13 2002 kraxel@suse.de - updated to version 0.2.2 * Mon Nov 11 2002 ro@suse.de - use x-devel-packages in neededforbuild * Mon Jun 17 2002 kraxel@suse.de - updated to version 0.2.1 * Tue Apr 30 2002 kraxel@suse.de - fixed lib64 build problems. * Thu Apr 11 2002 kraxel@suse.de - initial release.