summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarkus Volk <f_l_k@t-online.de>2025-03-25 07:02:18 +0100
committerKhem Raj <raj.khem@gmail.com>2025-03-25 01:24:19 -0700
commit868c11831bb5932d57d6a19b9a5feb3902863748 (patch)
treef086dea2252577a1a3480897ab2c7749bd15f4db
parentb0a4bccd4119c118ceba8f4eaab15eb0cc9a3b02 (diff)
downloadmeta-openembedded-868c11831bb5932d57d6a19b9a5feb3902863748.tar.gz
libcec: update 6.0.2 -> 7.0.0
Changelog modernise CMakeLists.txt Use cmake TIMESTAMP function to be more portable and to allow for reproducible builds fixed: potential null deref. closes #556 python 3.13 compatibility added: vs2022 support fixed: creating (unsigned) windows installer fixed: nsis installer not creating start menu icons and uninstaller bump to .net framework 4.5 and .net 8.0 fixed: null terminate .net device language field. added CecLogicalAddresses::Unset() fixed: don't call the config updated callback if nothing has changed. auto set wake devices or activate source so these values match what happens on the tv fixed: tv would power on even if the options to power on were disabled in cec-tray changed/fixed: windows installer, eventghost plugin, .net libraries, python imports, debug builds fixed: use input() for python3 and raw_input() for python2 changed: debian python install to match arch specific too fixed: libusb0.dll wasn't included in the installer fixed: remove call to PyEcal_InitThreads(). swig already includes SWIG_PYTHON_INITIALIZE_THREADS in SWIG_init() CheckPlatformSupport.cmake: various improvements Ease copy-paste by invoking apt noninteractively Rename COPYING to LICENSE.md so follow standard naming conversion cecloader.h: fix null return Mark all devices as inactive when new active source is unknown Fix use after free in callbacks with results. Add a commandHandler callback to allow external libs to handle CEC commands themselves. Remove debug printfs. Attempt to fix race condition when freeing the callback wrapper. Allow command handler callback to intercept broadcast messages and fix inconsistent callback wrapper deletion again. Remove useless mutex. Remove useless 'keepResult' parameter and make sure the CCallbackWrap is only deleted once even in case of timeout. Fix Python module import fix assert issue with systemd udev tegra-cec support. closes #636 Add support for Windows ARM64. Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r--meta-oe/recipes-extended/libcec/libcec/0001-CheckPlatformSupport.cmake-Do-not-hardcode-lib-path.patch42
-rw-r--r--meta-oe/recipes-extended/libcec/libcec/0001-Remove-buggy-test-confusing-host-and-target.patch33
-rw-r--r--meta-oe/recipes-extended/libcec/libcec/0001-cecloader-Match-return-type-of-function-LibCecBootlo.patch41
-rw-r--r--meta-oe/recipes-extended/libcec/libcec_7.0.0.bb (renamed from meta-oe/recipes-extended/libcec/libcec_6.0.2.bb)7
4 files changed, 2 insertions, 121 deletions
diff --git a/meta-oe/recipes-extended/libcec/libcec/0001-CheckPlatformSupport.cmake-Do-not-hardcode-lib-path.patch b/meta-oe/recipes-extended/libcec/libcec/0001-CheckPlatformSupport.cmake-Do-not-hardcode-lib-path.patch
deleted file mode 100644
index 3ecbfce250..0000000000
--- a/meta-oe/recipes-extended/libcec/libcec/0001-CheckPlatformSupport.cmake-Do-not-hardcode-lib-path.patch
+++ /dev/null
@@ -1,42 +0,0 @@
1From 95d4df3b713925e2c4894a2e4d50b06df861d9ef Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Wed, 18 Dec 2019 23:37:40 -0800
4Subject: [PATCH] CheckPlatformSupport.cmake: Do not hardcode lib path
5
6Using CMAKE_INSTALL_LIBDIR ensures that we can build for multilib env
7
8Upstream-Status: Pending
9Signed-off-by: Khem Raj <raj.khem@gmail.com>
10---
11 src/libcec/cmake/CheckPlatformSupport.cmake | 10 +++++-----
12 1 file changed, 5 insertions(+), 5 deletions(-)
13
14diff --git a/src/libcec/cmake/CheckPlatformSupport.cmake b/src/libcec/cmake/CheckPlatformSupport.cmake
15index 2d7102f..55e78f8 100644
16--- a/src/libcec/cmake/CheckPlatformSupport.cmake
17+++ b/src/libcec/cmake/CheckPlatformSupport.cmake
18@@ -224,16 +224,16 @@ else()
19
20 if (${PYTHON_MAJOR_VERSION} EQUAL 2)
21 install(TARGETS ${SWIG_MODULE_cec_REAL_NAME}
22- DESTINATION lib/python${PYTHON_VERSION}/${PYTHON_PKG_DIR}/${PYTHON_LIB_INSTALL_PATH}/cec)
23+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/python${PYTHON_VERSION}/${PYTHON_PKG_DIR}/${PYTHON_LIB_INSTALL_PATH}/cec)
24 install(FILES ${CMAKE_BINARY_DIR}/src/libcec/cec.py
25- DESTINATION lib/python${PYTHON_VERSION}/${PYTHON_PKG_DIR})
26+ DESTINATION l${CMAKE_INSTALL_LIBDIR}/python${PYTHON_VERSION}/${PYTHON_PKG_DIR})
27 install(FILES ${CMAKE_SOURCE_DIR}/src/libcec/cmake/__init__.py
28- DESTINATION lib/python${PYTHON_VERSION}/${PYTHON_PKG_DIR}/cec)
29+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/python${PYTHON_VERSION}/${PYTHON_PKG_DIR}/cec)
30 else()
31 install(TARGETS ${SWIG_MODULE_cec_REAL_NAME}
32- DESTINATION lib/python${PYTHON_VERSION}/${PYTHON_PKG_DIR}/${PYTHON_LIB_INSTALL_PATH})
33+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/python${PYTHON_VERSION}/${PYTHON_PKG_DIR}/${PYTHON_LIB_INSTALL_PATH})
34 install(FILES ${CMAKE_BINARY_DIR}/src/libcec/cec.py
35- DESTINATION lib/python${PYTHON_VERSION}/${PYTHON_PKG_DIR})
36+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/python${PYTHON_VERSION}/${PYTHON_PKG_DIR})
37 endif()
38 endif()
39 endif()
40--
412.24.1
42
diff --git a/meta-oe/recipes-extended/libcec/libcec/0001-Remove-buggy-test-confusing-host-and-target.patch b/meta-oe/recipes-extended/libcec/libcec/0001-Remove-buggy-test-confusing-host-and-target.patch
deleted file mode 100644
index 07277f7064..0000000000
--- a/meta-oe/recipes-extended/libcec/libcec/0001-Remove-buggy-test-confusing-host-and-target.patch
+++ /dev/null
@@ -1,33 +0,0 @@
1From 8ce50bf569ec2d931735180079bbe507730626c8 Mon Sep 17 00:00:00 2001
2From: Yann Dirson <yann@blade-group.com>
3Date: Mon, 7 Sep 2020 18:17:21 +0200
4Subject: [PATCH] Remove buggy test confusing host and target
5
6---
7Upstream-Status: Pending
8
9 src/libcec/cmake/CheckPlatformSupport.cmake | 8 --------
10 1 file changed, 8 deletions(-)
11
12diff --git a/src/libcec/cmake/CheckPlatformSupport.cmake b/src/libcec/cmake/CheckPlatformSupport.cmake
13index 1d99bd8..31dac4f 100644
14--- a/src/libcec/cmake/CheckPlatformSupport.cmake
15+++ b/src/libcec/cmake/CheckPlatformSupport.cmake
16@@ -266,14 +266,6 @@ else()
17 DESTINATION python/cec)
18 endif()
19 else()
20- if(EXISTS "/etc/os-release")
21- file(READ "/etc/os-release" OS_RELEASE)
22- string(REGEX MATCH "ID(_LIKE)?=debian" IS_DEBIAN ${OS_RELEASE})
23- if (IS_DEBIAN)
24- SET(PYTHON_PKG_DIR "dist-packages")
25- endif()
26- endif()
27-
28 if (NOT PYTHON_PKG_DIR)
29 SET(PYTHON_PKG_DIR "site-packages")
30 endif()
31--
322.28.0
33
diff --git a/meta-oe/recipes-extended/libcec/libcec/0001-cecloader-Match-return-type-of-function-LibCecBootlo.patch b/meta-oe/recipes-extended/libcec/libcec/0001-cecloader-Match-return-type-of-function-LibCecBootlo.patch
deleted file mode 100644
index ab1ab5b8eb..0000000000
--- a/meta-oe/recipes-extended/libcec/libcec/0001-cecloader-Match-return-type-of-function-LibCecBootlo.patch
+++ /dev/null
@@ -1,41 +0,0 @@
1From 2241edc8b70c2a54d109ac9c0e821889ac138d40 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Thu, 27 Jan 2022 22:49:52 -0800
4Subject: [PATCH] cecloader: Match return type of function LibCecBootloader
5
6Fixes
7include/cecloader.h:175:14: error: cannot initialize return object of type 'bool' with an rvalue of type 'nullptr_t'
8 return NULL;
9 ^~~~
10
11Upstream-Status: Pending
12Signed-off-by: Khem Raj <raj.khem@gmail.com>
13---
14 include/cecloader.h | 4 ++--
15 1 file changed, 2 insertions(+), 2 deletions(-)
16
17diff --git a/include/cecloader.h b/include/cecloader.h
18index be76468f..550f598e 100644
19--- a/include/cecloader.h
20+++ b/include/cecloader.h
21@@ -172,7 +172,7 @@ bool LibCecBootloader(const char *strLib = NULL)
22 if (!g_libCEC)
23 {
24 std::cout << dlerror() << std::endl;
25- return NULL;
26+ return false;
27 }
28 }
29
30@@ -181,7 +181,7 @@ bool LibCecBootloader(const char *strLib = NULL)
31 if (!LibCecBootloader)
32 {
33 std::cout << "cannot find CECStartBootloader" << std::endl;
34- return NULL;
35+ return false;
36 }
37
38 bool bReturn = LibCecBootloader();
39--
402.35.0
41
diff --git a/meta-oe/recipes-extended/libcec/libcec_6.0.2.bb b/meta-oe/recipes-extended/libcec/libcec_7.0.0.bb
index 22155e534c..532179a9bb 100644
--- a/meta-oe/recipes-extended/libcec/libcec_6.0.2.bb
+++ b/meta-oe/recipes-extended/libcec/libcec_7.0.0.bb
@@ -2,19 +2,16 @@ SUMMARY = "USB CEC Adaptor communication Library"
2HOMEPAGE = "http://libcec.pulse-eight.com/" 2HOMEPAGE = "http://libcec.pulse-eight.com/"
3 3
4LICENSE = "GPL-2.0-or-later" 4LICENSE = "GPL-2.0-or-later"
5LIC_FILES_CHKSUM = "file://COPYING;md5=b3a719e97f49e4841e90573f9b1a98ac" 5LIC_FILES_CHKSUM = "file://LICENSE.md;md5=b3a719e97f49e4841e90573f9b1a98ac"
6 6
7DEPENDS = "p8platform udev ncurses swig-native python3" 7DEPENDS = "p8platform udev ncurses swig-native python3"
8 8
9DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'libx11 libxrandr', '', d)}" 9DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'libx11 libxrandr', '', d)}"
10DEPENDS:append:rpi = "${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', '', ' userland', d)}" 10DEPENDS:append:rpi = "${@bb.utils.contains('MACHINE_FEATURES', 'vc4graphics', '', ' userland', d)}"
11 11
12SRCREV = "29d82c80bcc62be2878a9ac080de7eb286c4beb9" 12SRCREV = "ceeec8bfd2242792b6de59ce8fb854437208dc11"
13SRC_URI = "git://github.com/Pulse-Eight/libcec.git;branch=release;protocol=https \ 13SRC_URI = "git://github.com/Pulse-Eight/libcec.git;branch=release;protocol=https \
14 file://0001-CheckPlatformSupport.cmake-Do-not-hardcode-lib-path.patch \
15 file://0001-Enhance-reproducibility.patch \ 14 file://0001-Enhance-reproducibility.patch \
16 file://0001-Remove-buggy-test-confusing-host-and-target.patch \
17 file://0001-cecloader-Match-return-type-of-function-LibCecBootlo.patch \
18 " 15 "
19 16
20S = "${WORKDIR}/git" 17S = "${WORKDIR}/git"