Message ID | 1433672799-21387-13-git-send-email-s.martin49@gmail.com |
---|---|
State | Superseded |
Headers | show |
Samuel, All, On 2015-06-07 12:26 +0200, Samuel Martin spake thusly: > This change adds 2 patches (backported from upstream) to vlc fixing the > build against opencv2 APIs. > This allows to select the minimal set of opencv modules when opencv > support is enabled. > > Signed-off-by: Samuel Martin <s.martin49@gmail.com> > > --- > changes v4->v5: > - new patch > --- > ...opencv_wrapper-use-opencv2-style-includes.patch | 34 ++++++++++++++++++++++ > ...cv_example-add-missing-include-statements.patch | 27 +++++++++++++++++ > package/vlc/Config.in | 2 ++ > package/vlc/vlc.mk | 8 ++++- > 4 files changed, 70 insertions(+), 1 deletion(-) > create mode 100644 package/vlc/0008-opencv_wrapper-use-opencv2-style-includes.patch > create mode 100644 package/vlc/0009-opencv_example-add-missing-include-statements.patch > > diff --git a/package/vlc/0008-opencv_wrapper-use-opencv2-style-includes.patch b/package/vlc/0008-opencv_wrapper-use-opencv2-style-includes.patch > new file mode 100644 > index 0000000..c8a3e02 > --- /dev/null > +++ b/package/vlc/0008-opencv_wrapper-use-opencv2-style-includes.patch > @@ -0,0 +1,34 @@ > +From cc236e4652255902f2c2cee3b18f83367f35a8c7 Mon Sep 17 00:00:00 2001 > +From: Samuel Martin <s.martin49@gmail.com> > +Date: Sun, 24 May 2015 14:30:09 +0200 > +Subject: [PATCH 8/9] opencv_wrapper: use opencv2-style includes > + > +If old opencv1-style legacy include directory is available, this change > +becomes purely cosmetic (maybe will compile a bit faster). > +It becomes an FTBFS fix when opencv1-style include directory is missing > +(i.e. from opencv-3.0). > + > +Signed-off-by: Samuel Martin <s.martin49@gmail.com> > +Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org> Since this patch is a backport from upstream, it would be nice to provide the link to the corresponding commit: https://git.videolan.org/?p=vlc.git;a=commit;h=cc236e4652255902f2c2cee3b18f83367f35a8c7 [--SNIP--] > diff --git a/package/vlc/0009-opencv_example-add-missing-include-statements.patch b/package/vlc/0009-opencv_example-add-missing-include-statements.patch > new file mode 100644 > index 0000000..1754066 > --- /dev/null > +++ b/package/vlc/0009-opencv_example-add-missing-include-statements.patch > @@ -0,0 +1,27 @@ > +From b82416d7000a993b33e903095a590fe32212a85e Mon Sep 17 00:00:00 2001 > +From: Samuel Martin <s.martin49@gmail.com> > +Date: Sun, 24 May 2015 14:30:10 +0200 > +Subject: [PATCH 9/9] opencv_example: add missing #include statements > + > +Signed-off-by: Samuel Martin <s.martin49@gmail.com> > +Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org> Ditto; https://git.videolan.org/?p=vlc.git;a=commit;h=b82416d7000a993b33e903095a590fe32212a85e Otherwise, looks good: Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Regards, Yann E. MORIN.
diff --git a/package/vlc/0008-opencv_wrapper-use-opencv2-style-includes.patch b/package/vlc/0008-opencv_wrapper-use-opencv2-style-includes.patch new file mode 100644 index 0000000..c8a3e02 --- /dev/null +++ b/package/vlc/0008-opencv_wrapper-use-opencv2-style-includes.patch @@ -0,0 +1,34 @@ +From cc236e4652255902f2c2cee3b18f83367f35a8c7 Mon Sep 17 00:00:00 2001 +From: Samuel Martin <s.martin49@gmail.com> +Date: Sun, 24 May 2015 14:30:09 +0200 +Subject: [PATCH 8/9] opencv_wrapper: use opencv2-style includes + +If old opencv1-style legacy include directory is available, this change +becomes purely cosmetic (maybe will compile a bit faster). +It becomes an FTBFS fix when opencv1-style include directory is missing +(i.e. from opencv-3.0). + +Signed-off-by: Samuel Martin <s.martin49@gmail.com> +Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org> +--- + modules/video_filter/opencv_wrapper.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/modules/video_filter/opencv_wrapper.c b/modules/video_filter/opencv_wrapper.c +index e36e1a5..5d74241 100644 +--- a/modules/video_filter/opencv_wrapper.c ++++ b/modules/video_filter/opencv_wrapper.c +@@ -39,8 +39,8 @@ + #include <vlc_image.h> + #include "filter_picture.h" + +-#include <cxcore.h> +-#include <cv.h> ++#include <opencv2/core/core_c.h> ++#include <opencv2/core/types_c.h> + + /***************************************************************************** + * Local prototypes +-- +2.4.2 + diff --git a/package/vlc/0009-opencv_example-add-missing-include-statements.patch b/package/vlc/0009-opencv_example-add-missing-include-statements.patch new file mode 100644 index 0000000..1754066 --- /dev/null +++ b/package/vlc/0009-opencv_example-add-missing-include-statements.patch @@ -0,0 +1,27 @@ +From b82416d7000a993b33e903095a590fe32212a85e Mon Sep 17 00:00:00 2001 +From: Samuel Martin <s.martin49@gmail.com> +Date: Sun, 24 May 2015 14:30:10 +0200 +Subject: [PATCH 9/9] opencv_example: add missing #include statements + +Signed-off-by: Samuel Martin <s.martin49@gmail.com> +Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org> +--- + modules/video_filter/opencv_example.cpp | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/modules/video_filter/opencv_example.cpp b/modules/video_filter/opencv_example.cpp +index ae3af05..998f286 100644 +--- a/modules/video_filter/opencv_example.cpp ++++ b/modules/video_filter/opencv_example.cpp +@@ -41,6 +41,8 @@ + + #include <opencv2/core/core_c.h> + #include <opencv2/core/core.hpp> ++#include <opencv2/imgproc/imgproc_c.h> ++#include <opencv2/imgproc/imgproc.hpp> + #include <opencv2/objdetect/objdetect.hpp> + + /***************************************************************************** +-- +2.4.2 + diff --git a/package/vlc/Config.in b/package/vlc/Config.in index b030a56..471f4a7 100644 --- a/package/vlc/Config.in +++ b/package/vlc/Config.in @@ -11,6 +11,8 @@ config BR2_PACKAGE_VLC depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 select BR2_PACKAGE_LIBVORBIS if BR2_PACKAGE_OPUS + select BR2_PACKAGE_OPENCV_LIB_IMGPROC if BR2_PACKAGE_OPENCV + select BR2_PACKAGE_OPENCV_LIB_OBJDETECT if BR2_PACKAGE_OPENCV help VLC is a free and open source cross-platform multimedia player and framework that plays most multimedia files as well as DVD, diff --git a/package/vlc/vlc.mk b/package/vlc/vlc.mk index acd67ee..f609041 100644 --- a/package/vlc/vlc.mk +++ b/package/vlc/vlc.mk @@ -41,7 +41,6 @@ VLC_CONF_OPTS += \ --disable-projectm \ --disable-vsxu \ --disable-mtp \ - --disable-opencv \ --disable-mmal-codec \ --disable-mmal-vout \ --disable-dvdnav \ @@ -145,6 +144,13 @@ else VLC_CONF_OPTS += --disable-gles2 endif +ifeq ($(BR2_PACKAGE_OPENCV),y) +VLC_CONF_OPTS += --enable-opencv +VLC_DEPENDENCIES += opencv +else +VLC_CONF_OPTS += --disable-opencv +endif + ifeq ($(BR2_PACKAGE_OPUS),y) VLC_CONF_OPTS += --enable-opus VLC_DEPENDENCIES += libvorbis opus
This change adds 2 patches (backported from upstream) to vlc fixing the build against opencv2 APIs. This allows to select the minimal set of opencv modules when opencv support is enabled. Signed-off-by: Samuel Martin <s.martin49@gmail.com> --- changes v4->v5: - new patch --- ...opencv_wrapper-use-opencv2-style-includes.patch | 34 ++++++++++++++++++++++ ...cv_example-add-missing-include-statements.patch | 27 +++++++++++++++++ package/vlc/Config.in | 2 ++ package/vlc/vlc.mk | 8 ++++- 4 files changed, 70 insertions(+), 1 deletion(-) create mode 100644 package/vlc/0008-opencv_wrapper-use-opencv2-style-includes.patch create mode 100644 package/vlc/0009-opencv_example-add-missing-include-statements.patch