All of lore.kernel.org
 help / color / mirror / Atom feed
* [meta-oe][PATCH] opencv: install test and sample binaries under bin/opencv
@ 2025-07-28  9:45 Keerthivasan Raghavan
  2025-07-28 17:56 ` [oe] " Khem Raj
  2025-07-29  6:56 ` [meta-oe][PATCH v2] opencv: install test and sample binaries, rename /usr/bin/shape Keerthivasan Raghavan
  0 siblings, 2 replies; 6+ messages in thread
From: Keerthivasan Raghavan @ 2025-07-28  9:45 UTC (permalink / raw)
  To: openembedded-devel; +Cc: Keerthivasan Raghavan

The test and sample binaries were not getting installed.
Install them under "<prefix>/bin/opencv". Installing
binaries under "<prefix>/bin/opencv" avoids conflict with
/usr/bin/shape file contributed to rootfs by mesa-demos
package.

Signed-off-by: Keerthivasan Raghavan <kraghava@qti.qualcomm.com>
---
 meta-oe/recipes-support/opencv/opencv_4.12.0.bb | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/meta-oe/recipes-support/opencv/opencv_4.12.0.bb b/meta-oe/recipes-support/opencv/opencv_4.12.0.bb
index d8295912fa..4118e96fc5 100644
--- a/meta-oe/recipes-support/opencv/opencv_4.12.0.bb
+++ b/meta-oe/recipes-support/opencv/opencv_4.12.0.bb
@@ -75,6 +75,7 @@ EXTRA_OECMAKE = "-DOPENCV_EXTRA_MODULES_PATH=${S}/contrib/modules \
     -DOPENCV_GENERATE_PKGCONFIG=ON \
     -DOPENCV_DOWNLOAD_PATH=${OPENCV_DLDIR} \
     -DOPENCV_ALLOW_DOWNLOADS=OFF \
+    -DOPENCV_BIN_INSTALL_PATH=bin/opencv \
     ${@bb.utils.contains("TARGET_CC_ARCH", "-msse3", "-DCPU_DISPATCH=SSE,SSE2,SSE3,SSSE3", "", d)} \
     ${@bb.utils.contains("TARGET_CC_ARCH", "-msse4.1", "-DCPU_DISPATCH=SSE,SSE2,SSE3,SSSE3,SSE41", "", d)} \
     ${@bb.utils.contains("TARGET_CC_ARCH", "-msse4.2", "-DCPU_DISPATCH=SSE,SSE2,SSE3,SSSE3,SSE41,SSE42", "", d)} \
@@ -113,9 +114,9 @@ PACKAGECONFIG[openvino] = "-DWITH_OPENVINO=ON,-DWITH_OPENVINO=OFF,openvino-infer
 PACKAGECONFIG[oracle-java] = "-DJAVA_INCLUDE_PATH=${ORACLE_JAVA_HOME}/include -DJAVA_INCLUDE_PATH2=${ORACLE_JAVA_HOME}/include/linux -DJAVA_AWT_INCLUDE_PATH=${ORACLE_JAVA_HOME}/include -DJAVA_AWT_LIBRARY=${ORACLE_JAVA_HOME}/lib/amd64/libjawt.so -DJAVA_JVM_LIBRARY=${ORACLE_JAVA_HOME}/lib/amd64/server/libjvm.so,,ant-native oracle-jse-jdk oracle-jse-jdk-native,"
 PACKAGECONFIG[png] = "-DWITH_PNG=ON,-DWITH_PNG=OFF,libpng,"
 PACKAGECONFIG[python3] = "-DPYTHON3_INCLUDE_PATH=${STAGING_INCDIR}/${PYTHON_DIR}${PYTHON_ABI} -DPYTHON3_NUMPY_INCLUDE_DIRS:PATH=${STAGING_LIBDIR}/${PYTHON_DIR}/site-packages/numpy/_core/include,,python3-numpy,"
-PACKAGECONFIG[samples] = "-DBUILD_EXAMPLES=ON -DINSTALL_PYTHON_EXAMPLES=ON,-DBUILD_EXAMPLES=OFF,,"
+PACKAGECONFIG[samples] = "-DBUILD_EXAMPLES=ON -DINSTALL_BIN_EXAMPLES=ON -DINSTALL_PYTHON_EXAMPLES=ON,-DBUILD_EXAMPLES=OFF,,"
 PACKAGECONFIG[tbb] = "-DWITH_TBB=ON,-DWITH_TBB=OFF,tbb,"
-PACKAGECONFIG[tests] = "-DBUILD_TESTS=ON,-DBUILD_TESTS=OFF,,"
+PACKAGECONFIG[tests] = "-DBUILD_TESTS=ON -DINSTALL_TESTS=ON,-DBUILD_TESTS=OFF,,"
 PACKAGECONFIG[text] = "-DBUILD_opencv_text=ON,-DBUILD_opencv_text=OFF,tesseract,"
 PACKAGECONFIG[tiff] = "-DWITH_TIFF=ON,-DWITH_TIFF=OFF,tiff,"
 PACKAGECONFIG[v4l] = "-DWITH_V4L=ON,-DWITH_V4L=OFF,v4l-utils,"
-- 
2.34.1



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

* Re: [oe] [meta-oe][PATCH] opencv: install test and sample binaries under bin/opencv
  2025-07-28  9:45 [meta-oe][PATCH] opencv: install test and sample binaries under bin/opencv Keerthivasan Raghavan
@ 2025-07-28 17:56 ` Khem Raj
  2025-07-29  6:58   ` Keerthivasan Raghavan
  2025-07-29  6:56 ` [meta-oe][PATCH v2] opencv: install test and sample binaries, rename /usr/bin/shape Keerthivasan Raghavan
  1 sibling, 1 reply; 6+ messages in thread
From: Khem Raj @ 2025-07-28 17:56 UTC (permalink / raw)
  To: kraghava; +Cc: openembedded-devel

On Mon, Jul 28, 2025 at 2:45 AM Keerthivasan Raghavan via
lists.openembedded.org
<kraghava=qti.qualcomm.com@lists.openembedded.org> wrote:
>
> The test and sample binaries were not getting installed.
> Install them under "<prefix>/bin/opencv". Installing
> binaries under "<prefix>/bin/opencv" avoids conflict with
> /usr/bin/shape file contributed to rootfs by mesa-demos
> package.
>
> Signed-off-by: Keerthivasan Raghavan <kraghava@qti.qualcomm.com>
> ---
>  meta-oe/recipes-support/opencv/opencv_4.12.0.bb | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/meta-oe/recipes-support/opencv/opencv_4.12.0.bb b/meta-oe/recipes-support/opencv/opencv_4.12.0.bb
> index d8295912fa..4118e96fc5 100644
> --- a/meta-oe/recipes-support/opencv/opencv_4.12.0.bb
> +++ b/meta-oe/recipes-support/opencv/opencv_4.12.0.bb
> @@ -75,6 +75,7 @@ EXTRA_OECMAKE = "-DOPENCV_EXTRA_MODULES_PATH=${S}/contrib/modules \
>      -DOPENCV_GENERATE_PKGCONFIG=ON \
>      -DOPENCV_DOWNLOAD_PATH=${OPENCV_DLDIR} \
>      -DOPENCV_ALLOW_DOWNLOADS=OFF \
> +    -DOPENCV_BIN_INSTALL_PATH=bin/opencv \

This will install all binaries ( not only test bins ) into the new
directory isn't it. ? I wonder if it's better to just rename the
conflicting binary


>      ${@bb.utils.contains("TARGET_CC_ARCH", "-msse3", "-DCPU_DISPATCH=SSE,SSE2,SSE3,SSSE3", "", d)} \
>      ${@bb.utils.contains("TARGET_CC_ARCH", "-msse4.1", "-DCPU_DISPATCH=SSE,SSE2,SSE3,SSSE3,SSE41", "", d)} \
>      ${@bb.utils.contains("TARGET_CC_ARCH", "-msse4.2", "-DCPU_DISPATCH=SSE,SSE2,SSE3,SSSE3,SSE41,SSE42", "", d)} \
> @@ -113,9 +114,9 @@ PACKAGECONFIG[openvino] = "-DWITH_OPENVINO=ON,-DWITH_OPENVINO=OFF,openvino-infer
>  PACKAGECONFIG[oracle-java] = "-DJAVA_INCLUDE_PATH=${ORACLE_JAVA_HOME}/include -DJAVA_INCLUDE_PATH2=${ORACLE_JAVA_HOME}/include/linux -DJAVA_AWT_INCLUDE_PATH=${ORACLE_JAVA_HOME}/include -DJAVA_AWT_LIBRARY=${ORACLE_JAVA_HOME}/lib/amd64/libjawt.so -DJAVA_JVM_LIBRARY=${ORACLE_JAVA_HOME}/lib/amd64/server/libjvm.so,,ant-native oracle-jse-jdk oracle-jse-jdk-native,"
>  PACKAGECONFIG[png] = "-DWITH_PNG=ON,-DWITH_PNG=OFF,libpng,"
>  PACKAGECONFIG[python3] = "-DPYTHON3_INCLUDE_PATH=${STAGING_INCDIR}/${PYTHON_DIR}${PYTHON_ABI} -DPYTHON3_NUMPY_INCLUDE_DIRS:PATH=${STAGING_LIBDIR}/${PYTHON_DIR}/site-packages/numpy/_core/include,,python3-numpy,"
> -PACKAGECONFIG[samples] = "-DBUILD_EXAMPLES=ON -DINSTALL_PYTHON_EXAMPLES=ON,-DBUILD_EXAMPLES=OFF,,"
> +PACKAGECONFIG[samples] = "-DBUILD_EXAMPLES=ON -DINSTALL_BIN_EXAMPLES=ON -DINSTALL_PYTHON_EXAMPLES=ON,-DBUILD_EXAMPLES=OFF,,"
>  PACKAGECONFIG[tbb] = "-DWITH_TBB=ON,-DWITH_TBB=OFF,tbb,"
> -PACKAGECONFIG[tests] = "-DBUILD_TESTS=ON,-DBUILD_TESTS=OFF,,"
> +PACKAGECONFIG[tests] = "-DBUILD_TESTS=ON -DINSTALL_TESTS=ON,-DBUILD_TESTS=OFF,,"
>  PACKAGECONFIG[text] = "-DBUILD_opencv_text=ON,-DBUILD_opencv_text=OFF,tesseract,"
>  PACKAGECONFIG[tiff] = "-DWITH_TIFF=ON,-DWITH_TIFF=OFF,tiff,"
>  PACKAGECONFIG[v4l] = "-DWITH_V4L=ON,-DWITH_V4L=OFF,v4l-utils,"
> --
> 2.34.1
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#118745): https://lists.openembedded.org/g/openembedded-devel/message/118745
> Mute This Topic: https://lists.openembedded.org/mt/114410691/1997914
> Group Owner: openembedded-devel+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [raj.khem@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>


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

* [meta-oe][PATCH v2] opencv: install test and sample binaries, rename /usr/bin/shape
  2025-07-28  9:45 [meta-oe][PATCH] opencv: install test and sample binaries under bin/opencv Keerthivasan Raghavan
  2025-07-28 17:56 ` [oe] " Khem Raj
@ 2025-07-29  6:56 ` Keerthivasan Raghavan
  2025-07-29 15:23   ` [oe] " Khem Raj
  1 sibling, 1 reply; 6+ messages in thread
From: Keerthivasan Raghavan @ 2025-07-29  6:56 UTC (permalink / raw)
  To: openembedded-devel; +Cc: Keerthivasan Raghavan

Install the test and sample binaries. Rename "/usr/bin/shape"
directory to "/usr/bin/opencv_shape". This avoids conflict
with "/usr/bin/shape" file installed by mesa-demos.

Signed-off-by: Keerthivasan Raghavan <kraghava@qti.qualcomm.com>
---
 meta-oe/recipes-support/opencv/opencv_4.12.0.bb | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/meta-oe/recipes-support/opencv/opencv_4.12.0.bb b/meta-oe/recipes-support/opencv/opencv_4.12.0.bb
index d8295912fa..8652baa0e9 100644
--- a/meta-oe/recipes-support/opencv/opencv_4.12.0.bb
+++ b/meta-oe/recipes-support/opencv/opencv_4.12.0.bb
@@ -113,9 +113,9 @@ PACKAGECONFIG[openvino] = "-DWITH_OPENVINO=ON,-DWITH_OPENVINO=OFF,openvino-infer
 PACKAGECONFIG[oracle-java] = "-DJAVA_INCLUDE_PATH=${ORACLE_JAVA_HOME}/include -DJAVA_INCLUDE_PATH2=${ORACLE_JAVA_HOME}/include/linux -DJAVA_AWT_INCLUDE_PATH=${ORACLE_JAVA_HOME}/include -DJAVA_AWT_LIBRARY=${ORACLE_JAVA_HOME}/lib/amd64/libjawt.so -DJAVA_JVM_LIBRARY=${ORACLE_JAVA_HOME}/lib/amd64/server/libjvm.so,,ant-native oracle-jse-jdk oracle-jse-jdk-native,"
 PACKAGECONFIG[png] = "-DWITH_PNG=ON,-DWITH_PNG=OFF,libpng,"
 PACKAGECONFIG[python3] = "-DPYTHON3_INCLUDE_PATH=${STAGING_INCDIR}/${PYTHON_DIR}${PYTHON_ABI} -DPYTHON3_NUMPY_INCLUDE_DIRS:PATH=${STAGING_LIBDIR}/${PYTHON_DIR}/site-packages/numpy/_core/include,,python3-numpy,"
-PACKAGECONFIG[samples] = "-DBUILD_EXAMPLES=ON -DINSTALL_PYTHON_EXAMPLES=ON,-DBUILD_EXAMPLES=OFF,,"
+PACKAGECONFIG[samples] = "-DBUILD_EXAMPLES=ON -DINSTALL_BIN_EXAMPLES=ON -DINSTALL_PYTHON_EXAMPLES=ON,-DBUILD_EXAMPLES=OFF,,"
 PACKAGECONFIG[tbb] = "-DWITH_TBB=ON,-DWITH_TBB=OFF,tbb,"
-PACKAGECONFIG[tests] = "-DBUILD_TESTS=ON,-DBUILD_TESTS=OFF,,"
+PACKAGECONFIG[tests] = "-DBUILD_TESTS=ON -DINSTALL_TESTS=ON,-DBUILD_TESTS=OFF,,"
 PACKAGECONFIG[text] = "-DBUILD_opencv_text=ON,-DBUILD_opencv_text=OFF,tesseract,"
 PACKAGECONFIG[tiff] = "-DWITH_TIFF=ON,-DWITH_TIFF=OFF,tiff,"
 PACKAGECONFIG[v4l] = "-DWITH_V4L=ON,-DWITH_V4L=OFF,v4l-utils,"
@@ -213,4 +213,6 @@ do_install:append() {
             sed -i -e 's,${S},/usr/src/debug/${PN}/${PV},g' ${B}/modules/core/$fn
         fi
     done
+
+    mv ${D}/usr/bin/shape ${D}/usr/bin/opencv_shape
 }
-- 
2.34.1



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

* Re: [meta-oe][PATCH] opencv: install test and sample binaries under bin/opencv
  2025-07-28 17:56 ` [oe] " Khem Raj
@ 2025-07-29  6:58   ` Keerthivasan Raghavan
  0 siblings, 0 replies; 6+ messages in thread
From: Keerthivasan Raghavan @ 2025-07-29  6:58 UTC (permalink / raw)
  To: openembedded-devel

I have updated the patch to v2 that makes the renames the conflicting file alone.


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

* Re: [oe] [meta-oe][PATCH v2] opencv: install test and sample binaries, rename /usr/bin/shape
  2025-07-29  6:56 ` [meta-oe][PATCH v2] opencv: install test and sample binaries, rename /usr/bin/shape Keerthivasan Raghavan
@ 2025-07-29 15:23   ` Khem Raj
  2025-07-30  5:27     ` Keerthivasan Raghavan
  0 siblings, 1 reply; 6+ messages in thread
From: Khem Raj @ 2025-07-29 15:23 UTC (permalink / raw)
  To: kraghava; +Cc: openembedded-devel

On Mon, Jul 28, 2025 at 11:57 PM Keerthivasan Raghavan via
lists.openembedded.org
<kraghava=qti.qualcomm.com@lists.openembedded.org> wrote:
>
> Install the test and sample binaries. Rename "/usr/bin/shape"
> directory to "/usr/bin/opencv_shape". This avoids conflict
> with "/usr/bin/shape" file installed by mesa-demos.
>
> Signed-off-by: Keerthivasan Raghavan <kraghava@qti.qualcomm.com>
> ---
>  meta-oe/recipes-support/opencv/opencv_4.12.0.bb | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/meta-oe/recipes-support/opencv/opencv_4.12.0.bb b/meta-oe/recipes-support/opencv/opencv_4.12.0.bb
> index d8295912fa..8652baa0e9 100644
> --- a/meta-oe/recipes-support/opencv/opencv_4.12.0.bb
> +++ b/meta-oe/recipes-support/opencv/opencv_4.12.0.bb
> @@ -113,9 +113,9 @@ PACKAGECONFIG[openvino] = "-DWITH_OPENVINO=ON,-DWITH_OPENVINO=OFF,openvino-infer
>  PACKAGECONFIG[oracle-java] = "-DJAVA_INCLUDE_PATH=${ORACLE_JAVA_HOME}/include -DJAVA_INCLUDE_PATH2=${ORACLE_JAVA_HOME}/include/linux -DJAVA_AWT_INCLUDE_PATH=${ORACLE_JAVA_HOME}/include -DJAVA_AWT_LIBRARY=${ORACLE_JAVA_HOME}/lib/amd64/libjawt.so -DJAVA_JVM_LIBRARY=${ORACLE_JAVA_HOME}/lib/amd64/server/libjvm.so,,ant-native oracle-jse-jdk oracle-jse-jdk-native,"
>  PACKAGECONFIG[png] = "-DWITH_PNG=ON,-DWITH_PNG=OFF,libpng,"
>  PACKAGECONFIG[python3] = "-DPYTHON3_INCLUDE_PATH=${STAGING_INCDIR}/${PYTHON_DIR}${PYTHON_ABI} -DPYTHON3_NUMPY_INCLUDE_DIRS:PATH=${STAGING_LIBDIR}/${PYTHON_DIR}/site-packages/numpy/_core/include,,python3-numpy,"
> -PACKAGECONFIG[samples] = "-DBUILD_EXAMPLES=ON -DINSTALL_PYTHON_EXAMPLES=ON,-DBUILD_EXAMPLES=OFF,,"
> +PACKAGECONFIG[samples] = "-DBUILD_EXAMPLES=ON -DINSTALL_BIN_EXAMPLES=ON -DINSTALL_PYTHON_EXAMPLES=ON,-DBUILD_EXAMPLES=OFF,,"
>  PACKAGECONFIG[tbb] = "-DWITH_TBB=ON,-DWITH_TBB=OFF,tbb,"
> -PACKAGECONFIG[tests] = "-DBUILD_TESTS=ON,-DBUILD_TESTS=OFF,,"
> +PACKAGECONFIG[tests] = "-DBUILD_TESTS=ON -DINSTALL_TESTS=ON,-DBUILD_TESTS=OFF,,"
>  PACKAGECONFIG[text] = "-DBUILD_opencv_text=ON,-DBUILD_opencv_text=OFF,tesseract,"
>  PACKAGECONFIG[tiff] = "-DWITH_TIFF=ON,-DWITH_TIFF=OFF,tiff,"
>  PACKAGECONFIG[v4l] = "-DWITH_V4L=ON,-DWITH_V4L=OFF,v4l-utils,"
> @@ -213,4 +213,6 @@ do_install:append() {
>              sed -i -e 's,${S},/usr/src/debug/${PN}/${PV},g' ${B}/modules/core/$fn
>          fi
>      done
> +
> +    mv ${D}/usr/bin/shape ${D}/usr/bin/opencv_shape

Use bitbake variables instead of hardcodings in path, replace /usr/bin
with ${bindir}
secondly, I wonder how this binary is used because those calls need to
change to use this name as well.

>  }
> --
> 2.34.1
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#118755): https://lists.openembedded.org/g/openembedded-devel/message/118755
> Mute This Topic: https://lists.openembedded.org/mt/114427547/1997914
> Group Owner: openembedded-devel+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [raj.khem@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>


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

* Re: [meta-oe][PATCH v2] opencv: install test and sample binaries, rename /usr/bin/shape
  2025-07-29 15:23   ` [oe] " Khem Raj
@ 2025-07-30  5:27     ` Keerthivasan Raghavan
  0 siblings, 0 replies; 6+ messages in thread
From: Keerthivasan Raghavan @ 2025-07-30  5:27 UTC (permalink / raw)
  To: openembedded-devel

The usage part is complex as tracking down every consumer would be impossible.
Could this be mitigated with change/release notes ?
Between installing all binaries in the /usr/bin/opencv directory vs renaming just the affected
file/directory the later minimizes the impact. If opencv cmake list files changes the installation
it is still the same problem originating from a different file/owner. symlink based migration also
does not help as the files would still collide. 

Regarding the bindir change, I will raise a new patch addressing it.


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

end of thread, other threads:[~2025-07-30  5:27 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-07-28  9:45 [meta-oe][PATCH] opencv: install test and sample binaries under bin/opencv Keerthivasan Raghavan
2025-07-28 17:56 ` [oe] " Khem Raj
2025-07-29  6:58   ` Keerthivasan Raghavan
2025-07-29  6:56 ` [meta-oe][PATCH v2] opencv: install test and sample binaries, rename /usr/bin/shape Keerthivasan Raghavan
2025-07-29 15:23   ` [oe] " Khem Raj
2025-07-30  5:27     ` Keerthivasan Raghavan

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.