summaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-support/opencv
diff options
context:
space:
mode:
authorAlexander Kanavin <alex.kanavin@gmail.com>2022-01-22 22:46:52 +0100
committerKhem Raj <raj.khem@gmail.com>2022-01-25 09:13:09 -0800
commitea427dceaa23ea1bca4b96a31040d47414d72c58 (patch)
treeccb22417198e124dbb96ee5bbc8279ed06e32fe1 /meta-oe/recipes-support/opencv
parent4a4abee38aaf441419dab2494af0833794094005 (diff)
downloadmeta-openembedded-ea427dceaa23ea1bca4b96a31040d47414d72c58.tar.gz
opencv: update 4.5.2 -> 4.5.5
Drop backports. Disable ffmpeg, as opencv is not yet compatible with ffmpeg 5.0. Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-oe/recipes-support/opencv')
-rw-r--r--meta-oe/recipes-support/opencv/opencv/0001-Use-the-one-argument-version-of-SetTotalBytesLimit.patch41
-rw-r--r--meta-oe/recipes-support/opencv/opencv/0001-sfm-link-with-Glog_LIBS.patch44
-rw-r--r--meta-oe/recipes-support/opencv/opencv_4.5.5.bb (renamed from meta-oe/recipes-support/opencv/opencv_4.5.2.bb)6
3 files changed, 2 insertions, 89 deletions
diff --git a/meta-oe/recipes-support/opencv/opencv/0001-Use-the-one-argument-version-of-SetTotalBytesLimit.patch b/meta-oe/recipes-support/opencv/opencv/0001-Use-the-one-argument-version-of-SetTotalBytesLimit.patch
deleted file mode 100644
index 5d88d1a6ab..0000000000
--- a/meta-oe/recipes-support/opencv/opencv/0001-Use-the-one-argument-version-of-SetTotalBytesLimit.patch
+++ /dev/null
@@ -1,41 +0,0 @@
1From 9cfa84313c5833d7295fcf57be93d5d2aaadfd88 Mon Sep 17 00:00:00 2001
2From: Vincent Rabaud <vrabaud@google.com>
3Date: Sat, 10 Jul 2021 00:21:52 +0200
4Subject: [PATCH] Use the one argument version of SetTotalBytesLimit.
5
6The two argument versions has been deprecated, cf
7https://developers.google.com/protocol-buffers/docs/reference/cpp/google.protobuf.io.coded_stream
8
9Upstream-Status: Backport [9cfa84313c5833d7295fcf57be93d5d2aaadfd88 - from master after 4.5.3 tag]
10Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
11---
12 modules/dnn/src/caffe/caffe_io.cpp | 5 +++++
13 1 file changed, 5 insertions(+)
14
15diff --git a/modules/dnn/src/caffe/caffe_io.cpp b/modules/dnn/src/caffe/caffe_io.cpp
16index 2fc4d84f46..ebecf95eea 100644
17--- a/modules/dnn/src/caffe/caffe_io.cpp
18+++ b/modules/dnn/src/caffe/caffe_io.cpp
19@@ -92,6 +92,7 @@
20 #ifdef HAVE_PROTOBUF
21 #include <google/protobuf/io/coded_stream.h>
22 #include <google/protobuf/io/zero_copy_stream_impl.h>
23+#include <google/protobuf/stubs/common.h>
24 #include <google/protobuf/text_format.h>
25
26 #include <opencv2/core.hpp>
27@@ -1111,7 +1112,11 @@ static const int kProtoReadBytesLimit = INT_MAX; // Max size of 2 GB minus 1 by
28
29 bool ReadProtoFromBinary(ZeroCopyInputStream* input, Message *proto) {
30 CodedInputStream coded_input(input);
31+#if GOOGLE_PROTOBUF_VERSION >= 3006000
32+ coded_input.SetTotalBytesLimit(kProtoReadBytesLimit);
33+#else
34 coded_input.SetTotalBytesLimit(kProtoReadBytesLimit, 536870912);
35+#endif
36
37 return proto->ParseFromCodedStream(&coded_input);
38 }
39--
402.32.0
41
diff --git a/meta-oe/recipes-support/opencv/opencv/0001-sfm-link-with-Glog_LIBS.patch b/meta-oe/recipes-support/opencv/opencv/0001-sfm-link-with-Glog_LIBS.patch
deleted file mode 100644
index 7b2c4100a2..0000000000
--- a/meta-oe/recipes-support/opencv/opencv/0001-sfm-link-with-Glog_LIBS.patch
+++ /dev/null
@@ -1,44 +0,0 @@
1From ffe20fc4ec46c6b491eff29a38f90686d4d035f6 Mon Sep 17 00:00:00 2001
2From: Martin Jansa <Martin.Jansa@gmail.com>
3Date: Mon, 12 Apr 2021 20:37:40 +0000
4Subject: [PATCH] sfm: link with Glog_LIBS
5
6* in 4.5.0 there was explicit linkage with GLOG_LIBRARY, but since 4.5.1 with:
7 https://github.com/opencv/opencv_contrib/commit/23ee62a19b7a3e50d6dbf295359d8b1aff2e03fd
8
9 it's gone, probably because Glog_FOUND is already set from Ceres,
10 but then GLOG_LIBRARIES is empty in LIBMV_LIGHT_LIBS and build with gold fails:
11
12FAILED: bin/example_tutorial_perspective_correction
13: && TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/recipe-sysroot-native/usr/bin/x86_64-oe-linux/x86_64-oe-linux-g++ -m64 -march=core2 -mtune=core2 -msse3 -mfpmath=sse -ITOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/git/include -fstack-protector-strong -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/recipe-sysroot -O2 -pipe -g -feliminate-unused-debug-types -fmacro-prefix-map=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0=/usr/src/debug/opencv/4.5.2-r0 -fdebug-prefix-map=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0=/usr/src/debug/opencv/4.5.2-r0 -fdebug-prefix-map=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/recipe-sysroot= -fdebug-prefix-map=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/recipe-sysroot-native= -fvisibility-inlines-hidden -m64 -march=core2 -mtune=core2 -msse3 -mfpmath=sse -ITOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/git/include -fstack-protector-strong -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/recipe-sysroot -fsigned-char -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wuninitialized -Wsuggest-override -Wno-delete-non-virtual-dtor -Wno-comment -Wimplicit-fallthrough=3 -Wno-strict-overflow -fdiagnostics-show-option -Wno-long-long -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections -msse -msse2 -msse3 -mssse3 -DNDEBUG -DNDEBUG -m64 -march=core2 -mtune=core2 -msse3 -mfpmath=sse -ITOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/git/include -fstack-protector-strong -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/recipe-sysroot -O2 -pipe -g -feliminate-unused-debug-types -fmacro-prefix-map=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0=/usr/src/debug/opencv/4.5.2-r0 -fdebug-prefix-map=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0=/usr/src/debug/opencv/4.5.2-r0 -fdebug-prefix-map=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/recipe-sysroot= -fdebug-prefix-map=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/recipe-sysroot-native= -fvisibility-inlines-hidden -m64 -march=core2 -mtune=core2 -msse3 -mfpmath=sse -ITOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/git/include -fstack-protector-strong -O2 -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/recipe-sysroot -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -Wl,-z,relro,-z,now -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -Wl,-z,relro,-z,now -Wl,--gc-sections -Wl,--as-needed samples/cpp/CMakeFiles/example_tutorial_perspective_correction.dir/tutorial_code/features2D/Homography/perspective_correction.cpp.o -o bin/example_tutorial_perspective_correction -ldl -lm -lpthread -lrt lib/libopencv_gapi.so.4.5.2 lib/libopencv_stitching.so.4.5.2 lib/libopencv_ts.so.4.5.2 lib/libopencv_alphamat.so.4.5.2 lib/libopencv_aruco.so.4.5.2 lib/libopencv_bgsegm.so.4.5.2 lib/libopencv_bioinspired.so.4.5.2 lib/libopencv_ccalib.so.4.5.2 lib/libopencv_dnn_objdetect.so.4.5.2 lib/libopencv_dnn_superres.so.4.5.2 lib/libopencv_dpm.so.4.5.2 lib/libopencv_face.so.4.5.2 lib/libopencv_fuzzy.so.4.5.2 lib/libopencv_hfs.so.4.5.2 lib/libopencv_img_hash.so.4.5.2 lib/libopencv_intensity_transform.so.4.5.2 lib/libopencv_line_descriptor.so.4.5.2 lib/libopencv_mcc.so.4.5.2 lib/libopencv_quality.so.4.5.2 lib/libopencv_rapid.so.4.5.2 lib/libopencv_reg.so.4.5.2 lib/libopencv_rgbd.so.4.5.2 lib/libopencv_saliency.so.4.5.2 lib/libopencv_sfm.so.4.5.2 lib/libopencv_stereo.so.4.5.2 lib/libopencv_structured_light.so.4.5.2 lib/libopencv_superres.so.4.5.2 lib/libopencv_surface_matching.so.4.5.2 lib/libopencv_tracking.so.4.5.2 lib/libopencv_videostab.so.4.5.2 lib/libopencv_wechat_qrcode.so.4.5.2 lib/libopencv_xfeatures2d.so.4.5.2 lib/libopencv_xobjdetect.so.4.5.2 lib/libopencv_xphoto.so.4.5.2 lib/libopencv_shape.so.4.5.2 lib/libopencv_highgui.so.4.5.2 lib/libopencv_datasets.so.4.5.2 lib/libopencv_ml.so.4.5.2 lib/libopencv_plot.so.4.5.2 lib/libopencv_phase_unwrapping.so.4.5.2 lib/libopencv_optflow.so.4.5.2 lib/libopencv_ximgproc.so.4.5.2 lib/libopencv_videoio.so.4.5.2 lib/libopencv_video.so.4.5.2 lib/libopencv_dnn.so.4.5.2 lib/libopencv_imgcodecs.so.4.5.2 lib/libopencv_objdetect.so.4.5.2 lib/libopencv_calib3d.so.4.5.2 lib/libopencv_features2d.so.4.5.2 lib/libopencv_flann.so.4.5.2 lib/libopencv_photo.so.4.5.2 lib/libopencv_imgproc.so.4.5.2 lib/libopencv_core.so.4.5.2 -Wl,-rpath-link,TOPDIR/tmp-glibc/work/core2-64-oe-linux/opencv/4.5.2-r0/build/lib && :
14lib/libopencv_sfm.so.4.5.2: error: undefined reference to 'google::LogMessage::LogMessage(char const*, int)'
15lib/libopencv_sfm.so.4.5.2: error: undefined reference to 'google::LogMessage::stream()'
16lib/libopencv_sfm.so.4.5.2: error: undefined reference to 'google::LogMessage::~LogMessage()'
17lib/libopencv_sfm.so.4.5.2: error: undefined reference to 'google::kLogSiteUninitialized'
18lib/libopencv_sfm.so.4.5.2: error: undefined reference to 'fLI::FLAGS_v'
19lib/libopencv_sfm.so.4.5.2: error: undefined reference to 'google::InitVLOG3__(int**, int*, char const*, int)'
20lib/libopencv_sfm.so.4.5.2: error: undefined reference to 'google::LogMessageFatal::LogMessageFatal(char const*, int)'
21lib/libopencv_sfm.so.4.5.2: error: undefined reference to 'google::LogMessageFatal::~LogMessageFatal()'
22collect2: error: ld returned 1 exit status
23
24 Add Glog_LIBS which is set to the same value as GLOG_LIBRARIES used to be.
25
26Upstream-Status: Submitted [https://github.com/opencv/opencv_contrib/pull/2923]
27
28Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
29---
30 modules/sfm/CMakeLists.txt | 1 +
31 1 file changed, 1 insertion(+)
32
33diff --git a/modules/sfm/CMakeLists.txt b/modules/sfm/CMakeLists.txt
34index 045a1fe6e..ee7cecdac 100644
35--- a/modules/sfm/CMakeLists.txt
36+++ b/modules/sfm/CMakeLists.txt
37@@ -84,6 +84,7 @@ set(LIBMV_LIGHT_LIBS
38 multiview
39 numeric
40 ${GLOG_LIBRARIES}
41+ ${Glog_LIBS}
42 ${GFLAGS_LIBRARIES}
43 )
44
diff --git a/meta-oe/recipes-support/opencv/opencv_4.5.2.bb b/meta-oe/recipes-support/opencv/opencv_4.5.5.bb
index 2f2a505ed3..ca50e80b0a 100644
--- a/meta-oe/recipes-support/opencv/opencv_4.5.2.bb
+++ b/meta-oe/recipes-support/opencv/opencv_4.5.5.bb
@@ -10,7 +10,7 @@ ARM_INSTRUCTION_SET:armv5 = "arm"
10 10
11DEPENDS = "libtool swig-native bzip2 zlib glib-2.0 libwebp" 11DEPENDS = "libtool swig-native bzip2 zlib glib-2.0 libwebp"
12 12
13SRCREV_opencv = "69357b1e88680658a07cffde7678a4d697469f03" 13SRCREV_opencv = "dad26339a975b49cfb6c7dbe4bd5276c9dcb36e2"
14SRCREV_contrib = "f5d7f6712d4ff229ba4f45cf79dfd11c557d56fd" 14SRCREV_contrib = "f5d7f6712d4ff229ba4f45cf79dfd11c557d56fd"
15SRCREV_ipp = "a56b6ac6f030c312b2dce17430eef13aed9af274" 15SRCREV_ipp = "a56b6ac6f030c312b2dce17430eef13aed9af274"
16SRCREV_boostdesc = "34e4206aef44d50e6bbcd0ab06354b52e7466d26" 16SRCREV_boostdesc = "34e4206aef44d50e6bbcd0ab06354b52e7466d26"
@@ -51,8 +51,6 @@ SRC_URI = "git://github.com/opencv/opencv.git;name=opencv;branch=master;protocol
51 file://0001-Dont-use-isystem.patch \ 51 file://0001-Dont-use-isystem.patch \
52 file://download.patch \ 52 file://download.patch \
53 file://0001-Make-ts-module-external.patch \ 53 file://0001-Make-ts-module-external.patch \
54 file://0001-sfm-link-with-Glog_LIBS.patch;patchdir=../contrib \
55 file://0001-Use-the-one-argument-version-of-SetTotalBytesLimit.patch \
56 " 54 "
57SRC_URI:append:riscv64 = " file://0001-Use-Os-to-compile-tinyxml2.cpp.patch;patchdir=../contrib" 55SRC_URI:append:riscv64 = " file://0001-Use-Os-to-compile-tinyxml2.cpp.patch;patchdir=../contrib"
58 56
@@ -105,7 +103,7 @@ EXTRA_OECMAKE:append:x86 = " -DX86=ON"
105 103
106PACKAGECONFIG ??= "gapi python3 eigen jpeg png tiff v4l libv4l gstreamer samples tbb gphoto2 \ 104PACKAGECONFIG ??= "gapi python3 eigen jpeg png tiff v4l libv4l gstreamer samples tbb gphoto2 \
107 ${@bb.utils.contains("DISTRO_FEATURES", "x11", "gtk", "", d)} \ 105 ${@bb.utils.contains("DISTRO_FEATURES", "x11", "gtk", "", d)} \
108 ${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "libav", "", d)}" 106 "
109 107
110# TBB does not build for powerpc so disable that package config 108# TBB does not build for powerpc so disable that package config
111PACKAGECONFIG:remove:powerpc = "tbb" 109PACKAGECONFIG:remove:powerpc = "tbb"