The package rpms/libcec.git has added or updated architecture specific content in its spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s): https://src.fedoraproject.org/cgit/rpms/libcec.git/commit/?id=4e99c943e23378....
Change: +ExcludeArch: %{ix86}
Thanks.
Full change: ============
commit 4e99c943e233782905774d3c2cf0d0befbc85425 Author: Andrew Bauer zonexpertconsulting@outlook.com Date: Mon May 12 18:39:27 2025 -0500
exclide i686 arch per fedora leaf package policy
diff --git a/libcec.spec b/libcec.spec index a19e87f..328e951 100644 --- a/libcec.spec +++ b/libcec.spec @@ -1,6 +1,6 @@ Name: libcec Version: 7.0.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Library and utilities for HDMI-CEC device control License: GPL-2.0-or-later URL: http://libcec.pulse-eight.com/ @@ -9,6 +9,10 @@ Source0: https://github.com/Pulse-Eight/%%7Bname%7D/archive/%%7Bname%7D-%%7Bversion%7... # https://github.com/knight-of-ni/libcec/commit/f4a314a601b3d1d074c9ebed0abb89... Patch1: libcec-pythonlib.patch
+# Per i686 leaf package policy +# https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval +ExcludeArch: %{ix86} + BuildRequires: gcc BuildRequires: gcc-c++ BuildRequires: cmake @@ -108,6 +112,9 @@ mv %{buildroot}%{_bindir}/cecc-client-%{version} %{buildroot}%{_bindir}/cecc-cli %{python3_sitearch}/cec/
%changelog +* Mon May 12 2025 Andrew Bauer zonexpertconsulting@outlook.com - 7.0.0-2 +- exclide i686 arch per fedora leaf package policy + * Mon May 12 2025 Andrew Bauer zonexpertconsulting@outlook.com - 7.0.0-1 - 7.0.0 release - install bundled systemd service files
commit 1a72de2fb7de59e119bea201ab2a72342549bb7b Author: Andrew Bauer zonexpertconsulting@outlook.com Date: Mon May 12 18:28:45 2025 -0500
7.0.0 release
install bundled systemd service files build python3 bindings for epel
diff --git a/libcec-python13.patch b/libcec-python13.patch deleted file mode 100644 index 87f419a..0000000 --- a/libcec-python13.patch +++ /dev/null @@ -1,26 +0,0 @@ -diff --git a/src/libcec/SwigHelper.h b/src/libcec/SwigHelper.h -index 9855976..cc73024 100644 ---- a/src/libcec/SwigHelper.h -+++ b/src/libcec/SwigHelper.h -@@ -119,7 +119,7 @@ namespace CEC - if (!!m_callbacks[callback]) - { - /** call the callback */ -- result = PyEval_CallObject(m_callbacks[callback], arglist); -+ result = PyObject_CallObject(m_callbacks[callback], arglist); - - /** unref the argument and result */ - if (!!arglist) -diff --git a/src/libcec/libcec.i b/src/libcec/libcec.i -index 88250be..03ccd2a 100644 ---- a/src/libcec/libcec.i -+++ b/src/libcec/libcec.i -@@ -141,7 +141,7 @@ namespace std { - if (!!lib) - { - lib->InitVideoStandalone(); -- PyEval_InitThreads(); -+ // PyEval_InitThreads(); - } - return lib; - } diff --git a/libcec-pythonlib.patch b/libcec-pythonlib.patch index e7c78e3..69a6577 100644 --- a/libcec-pythonlib.patch +++ b/libcec-pythonlib.patch @@ -1,11 +1,20 @@ +From f4a314a601b3d1d074c9ebed0abb898533935c59 Mon Sep 17 00:00:00 2001 +From: Andrew Bauer zonexpertconsulting@outlook.com +Date: Mon, 12 May 2025 14:55:18 -0500 +Subject: [PATCH] fixup pythonlib target folders + +--- + src/libcec/cmake/CheckPlatformSupport.cmake | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + diff --git a/src/libcec/cmake/CheckPlatformSupport.cmake b/src/libcec/cmake/CheckPlatformSupport.cmake -index 1d99bd8..8a5e3d2 100644 +index 24f3765d..c005dfbe 100644 --- a/src/libcec/cmake/CheckPlatformSupport.cmake +++ b/src/libcec/cmake/CheckPlatformSupport.cmake -@@ -280,16 +280,16 @@ else() +@@ -363,16 +363,16 @@ else()
if (${PYTHON_MAJOR_VERSION} EQUAL 2) - install(TARGETS ${SWIG_MODULE_cec_REAL_NAME} + install(TARGETS ${SWIG_MODULE_pycec_REAL_NAME} - DESTINATION lib/python${PYTHON_VERSION}/${PYTHON_PKG_DIR}/${PYTHON_LIB_INSTALL_PATH}/cec) + DESTINATION lib${LIB_SUFFIX}/python${PYTHON_VERSION}/${PYTHON_PKG_DIR}/${PYTHON_LIB_INSTALL_PATH}/cec) install(FILES ${CMAKE_BINARY_DIR}/src/libcec/cec.py @@ -15,7 +24,7 @@ index 1d99bd8..8a5e3d2 100644 - DESTINATION lib/python${PYTHON_VERSION}/${PYTHON_PKG_DIR}/cec) + DESTINATION lib${LIB_SUFFIX}/python${PYTHON_VERSION}/${PYTHON_PKG_DIR}/cec) else() - install(TARGETS ${SWIG_MODULE_cec_REAL_NAME} + install(TARGETS ${SWIG_MODULE_pycec_REAL_NAME} - DESTINATION lib/python${PYTHON_VERSION}/${PYTHON_PKG_DIR}/${PYTHON_LIB_INSTALL_PATH}) + DESTINATION lib${LIB_SUFFIX}/python${PYTHON_VERSION}/${PYTHON_PKG_DIR}/${PYTHON_LIB_INSTALL_PATH}/cec) install(FILES ${CMAKE_BINARY_DIR}/src/libcec/cec.py diff --git a/libcec.spec b/libcec.spec index eb24b77..a19e87f 100644 --- a/libcec.spec +++ b/libcec.spec @@ -1,17 +1,13 @@ -%if 0%{?fedora} -%global with_python 1 -%endif - Name: libcec -Version: 6.0.2 -Release: 19%{?dist} +Version: 7.0.0 +Release: 1%{?dist} Summary: Library and utilities for HDMI-CEC device control License: GPL-2.0-or-later URL: http://libcec.pulse-eight.com/ Source0: https://github.com/Pulse-Eight/%%7Bname%7D/archive/%%7Bname%7D-%%7Bversion%7... + +# https://github.com/knight-of-ni/libcec/commit/f4a314a601b3d1d074c9ebed0abb89... Patch1: libcec-pythonlib.patch -# Fix FTBFS with Python 3.13 -Patch2: libcec-python13.patch
BuildRequires: gcc BuildRequires: gcc-c++ @@ -20,38 +16,35 @@ BuildRequires: libXrandr-devel BuildRequires: lockdev-devel BuildRequires: ncurses-devel BuildRequires: platform-devel -%if 0%{?with_python} BuildRequires: python3-devel -%endif BuildRequires: swig BuildRequires: systemd-devel BuildRequires: findutils
%description -libCEC allows you in combination with the right hardware to control your device +libCEC allows you in combination with the right hardware to control your device with your TV remote control over your existing HDMI cabling.
-libCEC is an enabling platform for the CEC bus in HDMI, it allows developers to -interact with other HDMI devices without having to worry about the communication +libCEC is an enabling platform for the CEC bus in HDMI, it allows developers to +interact with other HDMI devices without having to worry about the communication overhead, handshaking, and the various ways of send messages for each vendor.
%package devel -Summary: Development package for %{name} +Summary: Development files for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} Requires: pkgconfig
-%description devel -Files for development with %{name}. +%description devel +This package contains libraries and header files for +developing applications that use %{name}.
-%if 0%{?with_python} %package -n python3-libcec -Summary: A Python 3 interface to libcec +Summary: Python3 bindings for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} %py_provides python3-cec
%description -n python3-libcec -Python 3 bindings for libcec -%endif +This package contains Python3 bindings for %{name}.
%prep %autosetup -p1 -n %{name}-%{name}-%{version} @@ -62,42 +55,64 @@ rm -rf driver
%build %cmake \ - -DHAVE_LINUX_API=on + -DHAVE_LINUX_API=on \ + .
%cmake_build
%install %cmake_install
+# install systemd unit files +install -Dm 644 systemd/cec-active-source.service %{buildroot}%{_unitdir}/cec-active-source.service +install -Dm 644 systemd/cec-active-source.timer %{buildroot}%{_unitdir}/cec-active-source.timer +install -Dm 644 systemd/cec-poweroff-tv.service %{buildroot}%{_unitdir}/cec-poweroff-tv.service + #Remove libtool archives. find %{buildroot} -name '*.la' -delete
# Remove versioned binaries -rm %{buildroot}/%{_bindir}/cec-client %{buildroot}/%{_bindir}/cecc-client -mv %{buildroot}/%{_bindir}/cec-client-%{version} %{buildroot}/%{_bindir}/cec-client -mv %{buildroot}/%{_bindir}/cecc-client-%{version} %{buildroot}/%{_bindir}/cecc-client +rm %{buildroot}%{_bindir}/cec-client %{buildroot}%{_bindir}/cecc-client +mv %{buildroot}%{_bindir}/cec-client-%{version} %{buildroot}%{_bindir}/cec-client +mv %{buildroot}%{_bindir}/cecc-client-%{version} %{buildroot}%{_bindir}/cecc-client
%ldconfig_scriptlets
+%post +%systemd_post cec-active-source.service cec-active-source.timer cec-poweroff-tv.service + +%preun +%systemd_preun cec-active-source.service cec-active-source.timer cec-poweroff-tv.service + +%postun +%systemd_postun_with_restart cec-active-source.service cec-active-source.timer cec-poweroff-tv.service + %files -%license COPYING -%doc AUTHORS +%license LICENSE.md +%doc AUTHORS README.md %{_bindir}/cec-client %{_bindir}/cecc-client %{_libdir}/libcec.so.*
+%{_unitdir}/cec-active-source.service +%{_unitdir}/cec-active-source.timer +%{_unitdir}/cec-poweroff-tv.service + %files devel %{_includedir}/libcec %{_libdir}/pkgconfig/libcec.pc %{_libdir}/libcec.so
-%if 0%{?with_python} %files -n python3-libcec %{_bindir}/pyCecClient %{python3_sitearch}/cec/ -%endif
%changelog +* Mon May 12 2025 Andrew Bauer zonexpertconsulting@outlook.com - 7.0.0-1 +- 7.0.0 release +- install bundled systemd service files +- build python3 bindings for epel + * Fri Jan 17 2025 Fedora Release Engineering releng@fedoraproject.org - 6.0.2-19 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
diff --git a/sources b/sources index 793c079..2ce022b 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libcec-6.0.2.tar.gz) = c16ac268e67b01d4e35fad644e5927e1d9fc7bcaeff698ac5f0eadd31ec63a0bef2a2b2bc37860d1571e1e0cdc55911c2de468c661c7c7ae1d492f80188035cb +SHA512 (libcec-7.0.0.tar.gz) = 76e6686252dd53fca72130fadcc90d88f6b255a6fed12330d68ef0cc3f34906053ecfc23c6570991614c49857e13bbb37963fea5803560a19a97f097f4b0ae60
arch-excludes@lists.fedoraproject.org