All of lore.kernel.org
 help / color / mirror / Atom feed
* [meta-oe][patch 1/4] libcec: workaround wrong choice of PYTHON_PKG_DIR when building on Debian
@ 2020-09-09  8:45 Yann Dirson
  2020-09-09  8:45 ` [meta-oe][patch 2/4] libcec: build with Linux CEC API Yann Dirson
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Yann Dirson @ 2020-09-09  8:45 UTC (permalink / raw)
  To: openembedded-devel; +Cc: Yann Dirson

From: Yann Dirson <yann@blade-group.com>

As described in https://github.com/Pulse-Eight/libcec/issues/530 the
cmake code looks at the host to make decisions about the target, and
we can't even override this with a flag.

Signed-off-by: Yann Dirson <yann@blade-group.com>
---
 ...buggy-test-confusing-host-and-target.patch | 31 +++++++++++++++++++
 .../recipes-extended/libcec/libcec_6.0.2.bb   |  1 +
 2 files changed, 32 insertions(+)
 create mode 100644 meta-oe/recipes-extended/libcec/libcec/0001-Remove-buggy-test-confusing-host-and-target.patch

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
new file mode 100644
index 000000000..7c29e15e2
--- /dev/null
+++ b/meta-oe/recipes-extended/libcec/libcec/0001-Remove-buggy-test-confusing-host-and-target.patch
@@ -0,0 +1,31 @@
+From 8ce50bf569ec2d931735180079bbe507730626c8 Mon Sep 17 00:00:00 2001
+From: Yann Dirson <yann@blade-group.com>
+Date: Mon, 7 Sep 2020 18:17:21 +0200
+Subject: [PATCH] Remove buggy test confusing host and target
+
+---
+ src/libcec/cmake/CheckPlatformSupport.cmake | 8 --------
+ 1 file changed, 8 deletions(-)
+
+diff --git a/src/libcec/cmake/CheckPlatformSupport.cmake b/src/libcec/cmake/CheckPlatformSupport.cmake
+index 1d99bd8..31dac4f 100644
+--- a/src/libcec/cmake/CheckPlatformSupport.cmake
++++ b/src/libcec/cmake/CheckPlatformSupport.cmake
+@@ -266,14 +266,6 @@ else()
+                 DESTINATION python/cec)
+       endif()
+     else()
+-      if(EXISTS "/etc/os-release")
+-        file(READ "/etc/os-release" OS_RELEASE)
+-        string(REGEX MATCH "ID(_LIKE)?=debian" IS_DEBIAN ${OS_RELEASE})
+-        if (IS_DEBIAN)
+-          SET(PYTHON_PKG_DIR "dist-packages")
+-        endif()
+-      endif()
+-
+       if (NOT PYTHON_PKG_DIR)
+         SET(PYTHON_PKG_DIR "site-packages")
+       endif()
+-- 
+2.28.0
+
diff --git a/meta-oe/recipes-extended/libcec/libcec_6.0.2.bb b/meta-oe/recipes-extended/libcec/libcec_6.0.2.bb
index 894ee52f9..c4aeb8c55 100644
--- a/meta-oe/recipes-extended/libcec/libcec_6.0.2.bb
+++ b/meta-oe/recipes-extended/libcec/libcec_6.0.2.bb
@@ -13,6 +13,7 @@ SRCREV = "29d82c80bcc62be2878a9ac080de7eb286c4beb9"
 SRC_URI = "git://github.com/Pulse-Eight/libcec.git;branch=release \
            file://0001-CheckPlatformSupport.cmake-Do-not-hardcode-lib-path.patch \
            file://0001-Enhance-reproducibility.patch \
+           file://0001-Remove-buggy-test-confusing-host-and-target.patch \
           "
 
 S = "${WORKDIR}/git"
-- 
2.28.0


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [meta-oe][patch 2/4] libcec: build with Linux CEC API
  2020-09-09  8:45 [meta-oe][patch 1/4] libcec: workaround wrong choice of PYTHON_PKG_DIR when building on Debian Yann Dirson
@ 2020-09-09  8:45 ` Yann Dirson
  2020-09-09  8:45 ` [meta-oe][patch 3/4] libcec: rename libcec-tools to libcec-examples Yann Dirson
  2020-09-09  8:45 ` [meta-oe][patch 4/4] libcec: split the python example into a separate package Yann Dirson
  2 siblings, 0 replies; 5+ messages in thread
From: Yann Dirson @ 2020-09-09  8:45 UTC (permalink / raw)
  To: openembedded-devel; +Cc: Yann Dirson

From: Yann Dirson <yann@blade-group.com>

The Linux CEC API is available in linux-kernel-headers 4.10 and newer,
and supported since libcec 5.0.0, though they still default to the
legacy Raspberry Pi API.

Signed-off-by: Yann Dirson <yann@blade-group.com>
---
 meta-oe/recipes-extended/libcec/libcec_6.0.2.bb | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/meta-oe/recipes-extended/libcec/libcec_6.0.2.bb b/meta-oe/recipes-extended/libcec/libcec_6.0.2.bb
index c4aeb8c55..94d967f4c 100644
--- a/meta-oe/recipes-extended/libcec/libcec_6.0.2.bb
+++ b/meta-oe/recipes-extended/libcec/libcec_6.0.2.bb
@@ -20,6 +20,10 @@ S = "${WORKDIR}/git"
 
 inherit cmake pkgconfig
 
+# default config is for RaspberryPi API, use the Linux 4.10+ API by default
+PLATFORM_CMAKE_FLAGS ?= "-DHAVE_LINUX_API=1 -DHAVE_RPI_API=0"
+EXTRA_OECMAKE += "${PLATFORM_CMAKE_FLAGS}"
+
 # Put client tools into a separate package
 PACKAGE_BEFORE_PN += "${PN}-tools"
 FILES_${PN}-tools = "${bindir}"
-- 
2.28.0


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [meta-oe][patch 3/4] libcec: rename libcec-tools to libcec-examples
  2020-09-09  8:45 [meta-oe][patch 1/4] libcec: workaround wrong choice of PYTHON_PKG_DIR when building on Debian Yann Dirson
  2020-09-09  8:45 ` [meta-oe][patch 2/4] libcec: build with Linux CEC API Yann Dirson
@ 2020-09-09  8:45 ` Yann Dirson
  2020-09-09  8:45 ` [meta-oe][patch 4/4] libcec: split the python example into a separate package Yann Dirson
  2 siblings, 0 replies; 5+ messages in thread
From: Yann Dirson @ 2020-09-09  8:45 UTC (permalink / raw)
  To: openembedded-devel; +Cc: Yann Dirson

From: Yann Dirson <yann@blade-group.com>

Those are really not general-usage tools, just examples of the API usage.
Let's use a more explicit package name.

Signed-off-by: Yann Dirson <yann@blade-group.com>
---
 meta-oe/recipes-extended/libcec/libcec_6.0.2.bb | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/meta-oe/recipes-extended/libcec/libcec_6.0.2.bb b/meta-oe/recipes-extended/libcec/libcec_6.0.2.bb
index 94d967f4c..f55801c39 100644
--- a/meta-oe/recipes-extended/libcec/libcec_6.0.2.bb
+++ b/meta-oe/recipes-extended/libcec/libcec_6.0.2.bb
@@ -24,10 +24,10 @@ inherit cmake pkgconfig
 PLATFORM_CMAKE_FLAGS ?= "-DHAVE_LINUX_API=1 -DHAVE_RPI_API=0"
 EXTRA_OECMAKE += "${PLATFORM_CMAKE_FLAGS}"
 
-# Put client tools into a separate package
-PACKAGE_BEFORE_PN += "${PN}-tools"
-FILES_${PN}-tools = "${bindir}"
-RDEPENDS_${PN}-tools = "python3-${BPN} python3-core"
+# Put client examples into a separate package
+PACKAGE_BEFORE_PN += "${PN}-examples"
+FILES_${PN}-examples = "${bindir}"
+RDEPENDS_${PN}-examples = "python3-${BPN} python3-core"
 
 # Create the wrapper for python3
 PACKAGES += "python3-${BPN}"
-- 
2.28.0


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [meta-oe][patch 4/4] libcec: split the python example into a separate package
  2020-09-09  8:45 [meta-oe][patch 1/4] libcec: workaround wrong choice of PYTHON_PKG_DIR when building on Debian Yann Dirson
  2020-09-09  8:45 ` [meta-oe][patch 2/4] libcec: build with Linux CEC API Yann Dirson
  2020-09-09  8:45 ` [meta-oe][patch 3/4] libcec: rename libcec-tools to libcec-examples Yann Dirson
@ 2020-09-09  8:45 ` Yann Dirson
  2 siblings, 0 replies; 5+ messages in thread
From: Yann Dirson @ 2020-09-09  8:45 UTC (permalink / raw)
  To: openembedded-devel; +Cc: Yann Dirson

From: Yann Dirson <yann@blade-group.com>

It does not provide more functionality than the C-based examples, so
is of little value on a target except for checking the python module
is working.

Signed-off-by: Yann Dirson <yann@blade-group.com>
---
 meta-oe/recipes-extended/libcec/libcec_6.0.2.bb | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/meta-oe/recipes-extended/libcec/libcec_6.0.2.bb b/meta-oe/recipes-extended/libcec/libcec_6.0.2.bb
index f55801c39..48be1fdac 100644
--- a/meta-oe/recipes-extended/libcec/libcec_6.0.2.bb
+++ b/meta-oe/recipes-extended/libcec/libcec_6.0.2.bb
@@ -24,10 +24,11 @@ inherit cmake pkgconfig
 PLATFORM_CMAKE_FLAGS ?= "-DHAVE_LINUX_API=1 -DHAVE_RPI_API=0"
 EXTRA_OECMAKE += "${PLATFORM_CMAKE_FLAGS}"
 
-# Put client examples into a separate package
-PACKAGE_BEFORE_PN += "${PN}-examples"
+# Put client examples into separate packages
+PACKAGE_BEFORE_PN += "${PN}-examples-python ${PN}-examples"
+FILES_${PN}-examples-python = "${bindir}/py*"
 FILES_${PN}-examples = "${bindir}"
-RDEPENDS_${PN}-examples = "python3-${BPN} python3-core"
+RDEPENDS_${PN}-examples-python = "python3-${BPN} python3-core"
 
 # Create the wrapper for python3
 PACKAGES += "python3-${BPN}"
-- 
2.28.0


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [meta-oe][patch 1/4] libcec: workaround wrong choice of PYTHON_PKG_DIR when building on Debian
@ 2020-09-09  8:41 Yann Dirson
  0 siblings, 0 replies; 5+ messages in thread
From: Yann Dirson @ 2020-09-09  8:41 UTC (permalink / raw)
  To: openembedded-devel; +Cc: Yann Dirson

From: Yann Dirson <yann@blade-group.com>

As described in https://github.com/Pulse-Eight/libcec/issues/530 the
cmake code looks at the host to make decisions about the target, and
we can't even override this with a flag.

Signed-off-by: Yann Dirson <yann@blade-group.com>
---
 ...buggy-test-confusing-host-and-target.patch | 31 +++++++++++++++++++
 .../recipes-extended/libcec/libcec_6.0.2.bb   |  1 +
 2 files changed, 32 insertions(+)
 create mode 100644 meta-oe/recipes-extended/libcec/libcec/0001-Remove-buggy-test-confusing-host-and-target.patch

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
new file mode 100644
index 000000000..7c29e15e2
--- /dev/null
+++ b/meta-oe/recipes-extended/libcec/libcec/0001-Remove-buggy-test-confusing-host-and-target.patch
@@ -0,0 +1,31 @@
+From 8ce50bf569ec2d931735180079bbe507730626c8 Mon Sep 17 00:00:00 2001
+From: Yann Dirson <yann@blade-group.com>
+Date: Mon, 7 Sep 2020 18:17:21 +0200
+Subject: [PATCH] Remove buggy test confusing host and target
+
+---
+ src/libcec/cmake/CheckPlatformSupport.cmake | 8 --------
+ 1 file changed, 8 deletions(-)
+
+diff --git a/src/libcec/cmake/CheckPlatformSupport.cmake b/src/libcec/cmake/CheckPlatformSupport.cmake
+index 1d99bd8..31dac4f 100644
+--- a/src/libcec/cmake/CheckPlatformSupport.cmake
++++ b/src/libcec/cmake/CheckPlatformSupport.cmake
+@@ -266,14 +266,6 @@ else()
+                 DESTINATION python/cec)
+       endif()
+     else()
+-      if(EXISTS "/etc/os-release")
+-        file(READ "/etc/os-release" OS_RELEASE)
+-        string(REGEX MATCH "ID(_LIKE)?=debian" IS_DEBIAN ${OS_RELEASE})
+-        if (IS_DEBIAN)
+-          SET(PYTHON_PKG_DIR "dist-packages")
+-        endif()
+-      endif()
+-
+       if (NOT PYTHON_PKG_DIR)
+         SET(PYTHON_PKG_DIR "site-packages")
+       endif()
+-- 
+2.28.0
+
diff --git a/meta-oe/recipes-extended/libcec/libcec_6.0.2.bb b/meta-oe/recipes-extended/libcec/libcec_6.0.2.bb
index 894ee52f9..c4aeb8c55 100644
--- a/meta-oe/recipes-extended/libcec/libcec_6.0.2.bb
+++ b/meta-oe/recipes-extended/libcec/libcec_6.0.2.bb
@@ -13,6 +13,7 @@ SRCREV = "29d82c80bcc62be2878a9ac080de7eb286c4beb9"
 SRC_URI = "git://github.com/Pulse-Eight/libcec.git;branch=release \
            file://0001-CheckPlatformSupport.cmake-Do-not-hardcode-lib-path.patch \
            file://0001-Enhance-reproducibility.patch \
+           file://0001-Remove-buggy-test-confusing-host-and-target.patch \
           "
 
 S = "${WORKDIR}/git"
-- 
2.28.0


^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2020-09-09  8:46 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-09-09  8:45 [meta-oe][patch 1/4] libcec: workaround wrong choice of PYTHON_PKG_DIR when building on Debian Yann Dirson
2020-09-09  8:45 ` [meta-oe][patch 2/4] libcec: build with Linux CEC API Yann Dirson
2020-09-09  8:45 ` [meta-oe][patch 3/4] libcec: rename libcec-tools to libcec-examples Yann Dirson
2020-09-09  8:45 ` [meta-oe][patch 4/4] libcec: split the python example into a separate package Yann Dirson
  -- strict thread matches above, loose matches on Subject: below --
2020-09-09  8:41 [meta-oe][patch 1/4] libcec: workaround wrong choice of PYTHON_PKG_DIR when building on Debian Yann Dirson

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.