* [Buildroot] [PATCH v5 01/13] package/opencv: cleanup spaces at ends of line
2015-06-07 10:26 [Buildroot] [PATCH v5 00/13] OpenCV bump Samuel Martin
@ 2015-06-07 10:26 ` Samuel Martin
2015-06-07 11:31 ` Yann E. MORIN
2015-06-09 20:45 ` Thomas Petazzoni
2015-06-07 10:26 ` [Buildroot] [PATCH v5 02/13] package/opencv: alphabetically sorted each _CONF_OPTS group Samuel Martin
` (11 subsequent siblings)
12 siblings, 2 replies; 31+ messages in thread
From: Samuel Martin @ 2015-06-07 10:26 UTC (permalink / raw)
To: buildroot
Nothing more than removing white spaces before '\' characters.
Of course, 'git diff -w' shows no change at all.
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
---
changes v4->v5:
- new patch
---
package/opencv/opencv.mk | 112 +++++++++++++++++++++++------------------------
1 file changed, 56 insertions(+), 56 deletions(-)
diff --git a/package/opencv/opencv.mk b/package/opencv/opencv.mk
index ee84312..9967abc 100644
--- a/package/opencv/opencv.mk
+++ b/package/opencv/opencv.mk
@@ -18,51 +18,51 @@ OPENCV_CONF_OPTS += \
# OpenCV build options
OPENCV_CONF_OPTS += \
- -DBUILD_WITH_STATIC_CRT=OFF \
- -DENABLE_FAST_MATH=ON \
- -DENABLE_NOISY_WARNINGS=OFF \
- -DENABLE_OMIT_FRAME_POINTER=ON \
+ -DBUILD_WITH_STATIC_CRT=OFF \
+ -DENABLE_FAST_MATH=ON \
+ -DENABLE_NOISY_WARNINGS=OFF \
+ -DENABLE_OMIT_FRAME_POINTER=ON \
-DENABLE_PRECOMPILED_HEADERS=OFF \
- -DENABLE_PROFILING=OFF \
+ -DENABLE_PROFILING=OFF \
-DOPENCV_CAN_BREAK_BINARY_COMPATIBILITY=ON
# OpenCV link options
OPENCV_CONF_OPTS += \
-DCMAKE_INSTALL_RPATH_USE_LINK_PATH=OFF \
- -DCMAKE_SKIP_RPATH=OFF \
+ -DCMAKE_SKIP_RPATH=OFF \
-DCMAKE_USE_RELATIVE_PATHS=OFF
# OpenCV packaging options:
OPENCV_CONF_OPTS += \
- -DBUILD_PACKAGE=OFF \
+ -DBUILD_PACKAGE=OFF \
-DENABLE_SOLUTION_FOLDERS=OFF \
-DINSTALL_CREATE_DISTRIB=OFF
# OpenCV module selection
OPENCV_CONF_OPTS += \
- -DBUILD_opencv_androidcamera=OFF \
- -DBUILD_opencv_apps=OFF \
- -DBUILD_opencv_calib3d=$(if $(BR2_PACKAGE_OPENCV_LIB_CALIB3D),ON,OFF) \
- -DBUILD_opencv_contrib=$(if $(BR2_PACKAGE_OPENCV_LIB_CONTRIB),ON,OFF) \
- -DBUILD_opencv_core=ON \
- -DBUILD_opencv_dynamicuda=OFF \
+ -DBUILD_opencv_androidcamera=OFF \
+ -DBUILD_opencv_apps=OFF \
+ -DBUILD_opencv_calib3d=$(if $(BR2_PACKAGE_OPENCV_LIB_CALIB3D),ON,OFF) \
+ -DBUILD_opencv_contrib=$(if $(BR2_PACKAGE_OPENCV_LIB_CONTRIB),ON,OFF) \
+ -DBUILD_opencv_core=ON \
+ -DBUILD_opencv_dynamicuda=OFF \
-DBUILD_opencv_features2d=$(if $(BR2_PACKAGE_OPENCV_LIB_FEATURES2D),ON,OFF) \
- -DBUILD_opencv_flann=$(if $(BR2_PACKAGE_OPENCV_LIB_FLANN),ON,OFF) \
- -DBUILD_opencv_gpu=$(if $(BR2_PACKAGE_OPENCV_LIB_GPU),ON,OFF) \
- -DBUILD_opencv_highgui=$(if $(BR2_PACKAGE_OPENCV_LIB_HIGHGUI),ON,OFF) \
- -DBUILD_opencv_imgproc=$(if $(BR2_PACKAGE_OPENCV_LIB_IMGPROC),ON,OFF) \
- -DBUILD_opencv_java=OFF \
- -DBUILD_opencv_legacy=$(if $(BR2_PACKAGE_OPENCV_LIB_LEGACY),ON,OFF) \
- -DBUILD_opencv_ml=$(if $(BR2_PACKAGE_OPENCV_LIB_ML),ON,OFF) \
- -DBUILD_opencv_nonfree=$(if $(BR2_PACKAGE_OPENCV_LIB_NONFREE),ON,OFF) \
+ -DBUILD_opencv_flann=$(if $(BR2_PACKAGE_OPENCV_LIB_FLANN),ON,OFF) \
+ -DBUILD_opencv_gpu=$(if $(BR2_PACKAGE_OPENCV_LIB_GPU),ON,OFF) \
+ -DBUILD_opencv_highgui=$(if $(BR2_PACKAGE_OPENCV_LIB_HIGHGUI),ON,OFF) \
+ -DBUILD_opencv_imgproc=$(if $(BR2_PACKAGE_OPENCV_LIB_IMGPROC),ON,OFF) \
+ -DBUILD_opencv_java=OFF \
+ -DBUILD_opencv_legacy=$(if $(BR2_PACKAGE_OPENCV_LIB_LEGACY),ON,OFF) \
+ -DBUILD_opencv_ml=$(if $(BR2_PACKAGE_OPENCV_LIB_ML),ON,OFF) \
+ -DBUILD_opencv_nonfree=$(if $(BR2_PACKAGE_OPENCV_LIB_NONFREE),ON,OFF) \
-DBUILD_opencv_objdetect=$(if $(BR2_PACKAGE_OPENCV_LIB_OBJDETECT),ON,OFF) \
- -DBUILD_opencv_ocl=OFF \
- -DBUILD_opencv_photo=$(if $(BR2_PACKAGE_OPENCV_LIB_PHOTO),ON,OFF) \
- -DBUILD_opencv_python=OFF \
+ -DBUILD_opencv_ocl=OFF \
+ -DBUILD_opencv_photo=$(if $(BR2_PACKAGE_OPENCV_LIB_PHOTO),ON,OFF) \
+ -DBUILD_opencv_python=OFF \
-DBUILD_opencv_stitching=$(if $(BR2_PACKAGE_OPENCV_LIB_STITCHING),ON,OFF) \
-DBUILD_opencv_superres=$(if $(BR2_PACKAGE_OPENCV_LIB_SUPERRES),ON,OFF) \
- -DBUILD_opencv_ts=$(if $(BR2_PACKAGE_OPENCV_LIB_TS),ON,OFF) \
- -DBUILD_opencv_video=$(if $(BR2_PACKAGE_OPENCV_LIB_VIDEO),ON,OFF) \
+ -DBUILD_opencv_ts=$(if $(BR2_PACKAGE_OPENCV_LIB_TS),ON,OFF) \
+ -DBUILD_opencv_video=$(if $(BR2_PACKAGE_OPENCV_LIB_VIDEO),ON,OFF) \
-DBUILD_opencv_videostab=$(if $(BR2_PACKAGE_OPENCV_LIB_VIDEOSTAB),ON,OFF) \
-DBUILD_opencv_world=OFF
@@ -72,10 +72,10 @@ OPENCV_CONF_OPTS += \
# adding '-mcpu=G3 -mtune=G5' to them, which is already handled by Buildroot.
OPENCV_CONF_OPTS += \
-DENABLE_POWERPC=OFF \
- -DENABLE_SSE=$(if $(BR2_X86_CPU_HAS_SSE),ON,OFF) \
- -DENABLE_SSE2=$(if $(BR2_X86_CPU_HAS_SSE2),ON,OFF) \
- -DENABLE_SSE3=$(if $(BR2_X86_CPU_HAS_SSE3),ON,OFF) \
- -DENABLE_SSE41=$(if $(BR2_X86_CPU_HAS_SSE4),ON,OFF) \
+ -DENABLE_SSE=$(if $(BR2_X86_CPU_HAS_SSE),ON,OFF) \
+ -DENABLE_SSE2=$(if $(BR2_X86_CPU_HAS_SSE2),ON,OFF) \
+ -DENABLE_SSE3=$(if $(BR2_X86_CPU_HAS_SSE3),ON,OFF) \
+ -DENABLE_SSE41=$(if $(BR2_X86_CPU_HAS_SSE4),ON,OFF) \
-DENABLE_SSE42=$(if $(BR2_X86_CPU_HAS_SSE42),ON,OFF) \
-DENABLE_AVX=$(if $(BR2_X86_CPU_HAS_AVX),ON,OFF) \
-DENABLE_AVX2=$(if $(BR2_X86_CPU_HAS_AVX2),ON,OFF) \
@@ -84,7 +84,7 @@ OPENCV_CONF_OPTS += \
# Cuda stuff
OPENCV_CONF_OPTS += \
-DWITH_CUBLAS=OFF \
- -DWITH_CUDA=OFF \
+ -DWITH_CUDA=OFF \
-DWITH_CUFFT=OFF
# NVidia stuff
@@ -98,7 +98,7 @@ OPENCV_CONF_OPTS += \
# Intel stuff
OPENCV_CONF_OPTS += \
-DWITH_INTELPERC=OFF \
- -DWITH_IPP=OFF \
+ -DWITH_IPP=OFF \
-DWITH_TBB=OFF
# Smartek stuff
@@ -112,53 +112,53 @@ OPENCV_CONF_OPTS += -DWITH_XIMEA=OFF
# Non-Linux support (Android options) must remain OFF:
OPENCV_CONF_OPTS += \
- -DWITH_ANDROID_CAMERA=OFF \
+ -DWITH_ANDROID_CAMERA=OFF \
-DBUILD_ANDROID_CAMERA_WRAPPER=OFF \
- -DBUILD_ANDROID_EXAMPLES=OFF \
- -DINSTALL_ANDROID_EXAMPLES=OFF \
- -DBUILD_FAT_JAVA_LIB=OFF \
+ -DBUILD_ANDROID_EXAMPLES=OFF \
+ -DINSTALL_ANDROID_EXAMPLES=OFF \
+ -DBUILD_FAT_JAVA_LIB=OFF \
-DBUILD_JAVA_SUPPORT=OFF
# Non-Linux support (Mac OSX options) must remain OFF:
OPENCV_CONF_OPTS += \
- -DWITH_AVFOUNDATION=OFF \
- -DWITH_CARBON=OFF \
+ -DWITH_AVFOUNDATION=OFF \
+ -DWITH_CARBON=OFF \
-DWITH_QUICKTIME=OFF
# Non-Linux support (Windows options) must remain OFF:
OPENCV_CONF_OPTS += \
- -DWITH_VFW=OFF \
- -DWITH_WIN32UI=OFF \
+ -DWITH_VFW=OFF \
+ -DWITH_WIN32UI=OFF \
-DWITH_CSTRIPES=OFF \
- -DWITH_DSHOW=OFF \
- -DWITH_MSMF=OFF \
+ -DWITH_DSHOW=OFF \
+ -DWITH_MSMF=OFF \
-DWITH_VIDEOINPUT=OFF
# Software/3rd-party support options.
OPENCV_CONF_OPTS += \
- -DBUILD_JASPER=OFF \
- -DBUILD_JPEG=OFF \
+ -DBUILD_JASPER=OFF \
+ -DBUILD_JPEG=OFF \
-DBUILD_OPENEXR=OFF \
- -DBUILD_PNG=OFF \
- -DBUILD_TIFF=OFF \
- -DBUILD_ZLIB=OFF \
+ -DBUILD_PNG=OFF \
+ -DBUILD_TIFF=OFF \
+ -DBUILD_ZLIB=OFF \
-DBUILD_NEW_PYTHON_SUPPORT=OFF \
- -DINSTALL_C_EXAMPLES=OFF \
- -DINSTALL_PYTHON_EXAMPLES=OFF \
+ -DINSTALL_C_EXAMPLES=OFF \
+ -DINSTALL_PYTHON_EXAMPLES=OFF \
-DINSTALL_TO_MANGLED_PATHS=OFF
# Disabled features (mostly because they are not available in Buildroot), but
# - eigen: OpenCV does not use it, not take any benefit from it.
OPENCV_CONF_OPTS += \
- -DWITH_1394=OFF \
- -DWITH_EIGEN=OFF \
+ -DWITH_1394=OFF \
+ -DWITH_EIGEN=OFF \
-DWITH_IMAGEIO=OFF \
- -DWITH_OPENCL=OFF \
+ -DWITH_OPENCL=OFF \
-DWITH_OPENEXR=OFF \
- -DWITH_OPENGL=OFF \
- -DWITH_OPENMP=OFF \
- -DWITH_OPENNI=OFF \
- -DWITH_UNICAP=OFF \
+ -DWITH_OPENGL=OFF \
+ -DWITH_OPENMP=OFF \
+ -DWITH_OPENNI=OFF \
+ -DWITH_UNICAP=OFF \
-DWITH_XINE=OFF
OPENCV_DEPENDENCIES += zlib
--
2.4.2
^ permalink raw reply related [flat|nested] 31+ messages in thread* [Buildroot] [PATCH v5 01/13] package/opencv: cleanup spaces at ends of line
2015-06-07 10:26 ` [Buildroot] [PATCH v5 01/13] package/opencv: cleanup spaces at ends of line Samuel Martin
@ 2015-06-07 11:31 ` Yann E. MORIN
2015-06-09 20:45 ` Thomas Petazzoni
1 sibling, 0 replies; 31+ messages in thread
From: Yann E. MORIN @ 2015-06-07 11:31 UTC (permalink / raw)
To: buildroot
Samuel, All,
On 2015-06-07 12:26 +0200, Samuel Martin spake thusly:
> Nothing more than removing white spaces before '\' characters.
> Of course, 'git diff -w' shows no change at all.
>
> Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Regards,
Yann E. MORIN.
> ---
> changes v4->v5:
> - new patch
> ---
> package/opencv/opencv.mk | 112 +++++++++++++++++++++++------------------------
> 1 file changed, 56 insertions(+), 56 deletions(-)
>
> diff --git a/package/opencv/opencv.mk b/package/opencv/opencv.mk
> index ee84312..9967abc 100644
> --- a/package/opencv/opencv.mk
> +++ b/package/opencv/opencv.mk
> @@ -18,51 +18,51 @@ OPENCV_CONF_OPTS += \
>
> # OpenCV build options
> OPENCV_CONF_OPTS += \
> - -DBUILD_WITH_STATIC_CRT=OFF \
> - -DENABLE_FAST_MATH=ON \
> - -DENABLE_NOISY_WARNINGS=OFF \
> - -DENABLE_OMIT_FRAME_POINTER=ON \
> + -DBUILD_WITH_STATIC_CRT=OFF \
> + -DENABLE_FAST_MATH=ON \
> + -DENABLE_NOISY_WARNINGS=OFF \
> + -DENABLE_OMIT_FRAME_POINTER=ON \
> -DENABLE_PRECOMPILED_HEADERS=OFF \
> - -DENABLE_PROFILING=OFF \
> + -DENABLE_PROFILING=OFF \
> -DOPENCV_CAN_BREAK_BINARY_COMPATIBILITY=ON
>
> # OpenCV link options
> OPENCV_CONF_OPTS += \
> -DCMAKE_INSTALL_RPATH_USE_LINK_PATH=OFF \
> - -DCMAKE_SKIP_RPATH=OFF \
> + -DCMAKE_SKIP_RPATH=OFF \
> -DCMAKE_USE_RELATIVE_PATHS=OFF
>
> # OpenCV packaging options:
> OPENCV_CONF_OPTS += \
> - -DBUILD_PACKAGE=OFF \
> + -DBUILD_PACKAGE=OFF \
> -DENABLE_SOLUTION_FOLDERS=OFF \
> -DINSTALL_CREATE_DISTRIB=OFF
>
> # OpenCV module selection
> OPENCV_CONF_OPTS += \
> - -DBUILD_opencv_androidcamera=OFF \
> - -DBUILD_opencv_apps=OFF \
> - -DBUILD_opencv_calib3d=$(if $(BR2_PACKAGE_OPENCV_LIB_CALIB3D),ON,OFF) \
> - -DBUILD_opencv_contrib=$(if $(BR2_PACKAGE_OPENCV_LIB_CONTRIB),ON,OFF) \
> - -DBUILD_opencv_core=ON \
> - -DBUILD_opencv_dynamicuda=OFF \
> + -DBUILD_opencv_androidcamera=OFF \
> + -DBUILD_opencv_apps=OFF \
> + -DBUILD_opencv_calib3d=$(if $(BR2_PACKAGE_OPENCV_LIB_CALIB3D),ON,OFF) \
> + -DBUILD_opencv_contrib=$(if $(BR2_PACKAGE_OPENCV_LIB_CONTRIB),ON,OFF) \
> + -DBUILD_opencv_core=ON \
> + -DBUILD_opencv_dynamicuda=OFF \
> -DBUILD_opencv_features2d=$(if $(BR2_PACKAGE_OPENCV_LIB_FEATURES2D),ON,OFF) \
> - -DBUILD_opencv_flann=$(if $(BR2_PACKAGE_OPENCV_LIB_FLANN),ON,OFF) \
> - -DBUILD_opencv_gpu=$(if $(BR2_PACKAGE_OPENCV_LIB_GPU),ON,OFF) \
> - -DBUILD_opencv_highgui=$(if $(BR2_PACKAGE_OPENCV_LIB_HIGHGUI),ON,OFF) \
> - -DBUILD_opencv_imgproc=$(if $(BR2_PACKAGE_OPENCV_LIB_IMGPROC),ON,OFF) \
> - -DBUILD_opencv_java=OFF \
> - -DBUILD_opencv_legacy=$(if $(BR2_PACKAGE_OPENCV_LIB_LEGACY),ON,OFF) \
> - -DBUILD_opencv_ml=$(if $(BR2_PACKAGE_OPENCV_LIB_ML),ON,OFF) \
> - -DBUILD_opencv_nonfree=$(if $(BR2_PACKAGE_OPENCV_LIB_NONFREE),ON,OFF) \
> + -DBUILD_opencv_flann=$(if $(BR2_PACKAGE_OPENCV_LIB_FLANN),ON,OFF) \
> + -DBUILD_opencv_gpu=$(if $(BR2_PACKAGE_OPENCV_LIB_GPU),ON,OFF) \
> + -DBUILD_opencv_highgui=$(if $(BR2_PACKAGE_OPENCV_LIB_HIGHGUI),ON,OFF) \
> + -DBUILD_opencv_imgproc=$(if $(BR2_PACKAGE_OPENCV_LIB_IMGPROC),ON,OFF) \
> + -DBUILD_opencv_java=OFF \
> + -DBUILD_opencv_legacy=$(if $(BR2_PACKAGE_OPENCV_LIB_LEGACY),ON,OFF) \
> + -DBUILD_opencv_ml=$(if $(BR2_PACKAGE_OPENCV_LIB_ML),ON,OFF) \
> + -DBUILD_opencv_nonfree=$(if $(BR2_PACKAGE_OPENCV_LIB_NONFREE),ON,OFF) \
> -DBUILD_opencv_objdetect=$(if $(BR2_PACKAGE_OPENCV_LIB_OBJDETECT),ON,OFF) \
> - -DBUILD_opencv_ocl=OFF \
> - -DBUILD_opencv_photo=$(if $(BR2_PACKAGE_OPENCV_LIB_PHOTO),ON,OFF) \
> - -DBUILD_opencv_python=OFF \
> + -DBUILD_opencv_ocl=OFF \
> + -DBUILD_opencv_photo=$(if $(BR2_PACKAGE_OPENCV_LIB_PHOTO),ON,OFF) \
> + -DBUILD_opencv_python=OFF \
> -DBUILD_opencv_stitching=$(if $(BR2_PACKAGE_OPENCV_LIB_STITCHING),ON,OFF) \
> -DBUILD_opencv_superres=$(if $(BR2_PACKAGE_OPENCV_LIB_SUPERRES),ON,OFF) \
> - -DBUILD_opencv_ts=$(if $(BR2_PACKAGE_OPENCV_LIB_TS),ON,OFF) \
> - -DBUILD_opencv_video=$(if $(BR2_PACKAGE_OPENCV_LIB_VIDEO),ON,OFF) \
> + -DBUILD_opencv_ts=$(if $(BR2_PACKAGE_OPENCV_LIB_TS),ON,OFF) \
> + -DBUILD_opencv_video=$(if $(BR2_PACKAGE_OPENCV_LIB_VIDEO),ON,OFF) \
> -DBUILD_opencv_videostab=$(if $(BR2_PACKAGE_OPENCV_LIB_VIDEOSTAB),ON,OFF) \
> -DBUILD_opencv_world=OFF
>
> @@ -72,10 +72,10 @@ OPENCV_CONF_OPTS += \
> # adding '-mcpu=G3 -mtune=G5' to them, which is already handled by Buildroot.
> OPENCV_CONF_OPTS += \
> -DENABLE_POWERPC=OFF \
> - -DENABLE_SSE=$(if $(BR2_X86_CPU_HAS_SSE),ON,OFF) \
> - -DENABLE_SSE2=$(if $(BR2_X86_CPU_HAS_SSE2),ON,OFF) \
> - -DENABLE_SSE3=$(if $(BR2_X86_CPU_HAS_SSE3),ON,OFF) \
> - -DENABLE_SSE41=$(if $(BR2_X86_CPU_HAS_SSE4),ON,OFF) \
> + -DENABLE_SSE=$(if $(BR2_X86_CPU_HAS_SSE),ON,OFF) \
> + -DENABLE_SSE2=$(if $(BR2_X86_CPU_HAS_SSE2),ON,OFF) \
> + -DENABLE_SSE3=$(if $(BR2_X86_CPU_HAS_SSE3),ON,OFF) \
> + -DENABLE_SSE41=$(if $(BR2_X86_CPU_HAS_SSE4),ON,OFF) \
> -DENABLE_SSE42=$(if $(BR2_X86_CPU_HAS_SSE42),ON,OFF) \
> -DENABLE_AVX=$(if $(BR2_X86_CPU_HAS_AVX),ON,OFF) \
> -DENABLE_AVX2=$(if $(BR2_X86_CPU_HAS_AVX2),ON,OFF) \
> @@ -84,7 +84,7 @@ OPENCV_CONF_OPTS += \
> # Cuda stuff
> OPENCV_CONF_OPTS += \
> -DWITH_CUBLAS=OFF \
> - -DWITH_CUDA=OFF \
> + -DWITH_CUDA=OFF \
> -DWITH_CUFFT=OFF
>
> # NVidia stuff
> @@ -98,7 +98,7 @@ OPENCV_CONF_OPTS += \
> # Intel stuff
> OPENCV_CONF_OPTS += \
> -DWITH_INTELPERC=OFF \
> - -DWITH_IPP=OFF \
> + -DWITH_IPP=OFF \
> -DWITH_TBB=OFF
>
> # Smartek stuff
> @@ -112,53 +112,53 @@ OPENCV_CONF_OPTS += -DWITH_XIMEA=OFF
>
> # Non-Linux support (Android options) must remain OFF:
> OPENCV_CONF_OPTS += \
> - -DWITH_ANDROID_CAMERA=OFF \
> + -DWITH_ANDROID_CAMERA=OFF \
> -DBUILD_ANDROID_CAMERA_WRAPPER=OFF \
> - -DBUILD_ANDROID_EXAMPLES=OFF \
> - -DINSTALL_ANDROID_EXAMPLES=OFF \
> - -DBUILD_FAT_JAVA_LIB=OFF \
> + -DBUILD_ANDROID_EXAMPLES=OFF \
> + -DINSTALL_ANDROID_EXAMPLES=OFF \
> + -DBUILD_FAT_JAVA_LIB=OFF \
> -DBUILD_JAVA_SUPPORT=OFF
>
> # Non-Linux support (Mac OSX options) must remain OFF:
> OPENCV_CONF_OPTS += \
> - -DWITH_AVFOUNDATION=OFF \
> - -DWITH_CARBON=OFF \
> + -DWITH_AVFOUNDATION=OFF \
> + -DWITH_CARBON=OFF \
> -DWITH_QUICKTIME=OFF
>
> # Non-Linux support (Windows options) must remain OFF:
> OPENCV_CONF_OPTS += \
> - -DWITH_VFW=OFF \
> - -DWITH_WIN32UI=OFF \
> + -DWITH_VFW=OFF \
> + -DWITH_WIN32UI=OFF \
> -DWITH_CSTRIPES=OFF \
> - -DWITH_DSHOW=OFF \
> - -DWITH_MSMF=OFF \
> + -DWITH_DSHOW=OFF \
> + -DWITH_MSMF=OFF \
> -DWITH_VIDEOINPUT=OFF
>
> # Software/3rd-party support options.
> OPENCV_CONF_OPTS += \
> - -DBUILD_JASPER=OFF \
> - -DBUILD_JPEG=OFF \
> + -DBUILD_JASPER=OFF \
> + -DBUILD_JPEG=OFF \
> -DBUILD_OPENEXR=OFF \
> - -DBUILD_PNG=OFF \
> - -DBUILD_TIFF=OFF \
> - -DBUILD_ZLIB=OFF \
> + -DBUILD_PNG=OFF \
> + -DBUILD_TIFF=OFF \
> + -DBUILD_ZLIB=OFF \
> -DBUILD_NEW_PYTHON_SUPPORT=OFF \
> - -DINSTALL_C_EXAMPLES=OFF \
> - -DINSTALL_PYTHON_EXAMPLES=OFF \
> + -DINSTALL_C_EXAMPLES=OFF \
> + -DINSTALL_PYTHON_EXAMPLES=OFF \
> -DINSTALL_TO_MANGLED_PATHS=OFF
>
> # Disabled features (mostly because they are not available in Buildroot), but
> # - eigen: OpenCV does not use it, not take any benefit from it.
> OPENCV_CONF_OPTS += \
> - -DWITH_1394=OFF \
> - -DWITH_EIGEN=OFF \
> + -DWITH_1394=OFF \
> + -DWITH_EIGEN=OFF \
> -DWITH_IMAGEIO=OFF \
> - -DWITH_OPENCL=OFF \
> + -DWITH_OPENCL=OFF \
> -DWITH_OPENEXR=OFF \
> - -DWITH_OPENGL=OFF \
> - -DWITH_OPENMP=OFF \
> - -DWITH_OPENNI=OFF \
> - -DWITH_UNICAP=OFF \
> + -DWITH_OPENGL=OFF \
> + -DWITH_OPENMP=OFF \
> + -DWITH_OPENNI=OFF \
> + -DWITH_UNICAP=OFF \
> -DWITH_XINE=OFF
>
> OPENCV_DEPENDENCIES += zlib
> --
> 2.4.2
>
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
^ permalink raw reply [flat|nested] 31+ messages in thread
* [Buildroot] [PATCH v5 01/13] package/opencv: cleanup spaces at ends of line
2015-06-07 10:26 ` [Buildroot] [PATCH v5 01/13] package/opencv: cleanup spaces at ends of line Samuel Martin
2015-06-07 11:31 ` Yann E. MORIN
@ 2015-06-09 20:45 ` Thomas Petazzoni
1 sibling, 0 replies; 31+ messages in thread
From: Thomas Petazzoni @ 2015-06-09 20:45 UTC (permalink / raw)
To: buildroot
Dear Samuel Martin,
On Sun, 7 Jun 2015 12:26:27 +0200, Samuel Martin wrote:
> Nothing more than removing white spaces before '\' characters.
> Of course, 'git diff -w' shows no change at all.
>
> Signed-off-by: Samuel Martin <s.martin49@gmail.com>
>
> ---
> changes v4->v5:
> - new patch
> ---
> package/opencv/opencv.mk | 112 +++++++++++++++++++++++------------------------
> 1 file changed, 56 insertions(+), 56 deletions(-)
Applied, thanks.
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 31+ messages in thread
* [Buildroot] [PATCH v5 02/13] package/opencv: alphabetically sorted each _CONF_OPTS group
2015-06-07 10:26 [Buildroot] [PATCH v5 00/13] OpenCV bump Samuel Martin
2015-06-07 10:26 ` [Buildroot] [PATCH v5 01/13] package/opencv: cleanup spaces at ends of line Samuel Martin
@ 2015-06-07 10:26 ` Samuel Martin
2015-06-07 11:35 ` Yann E. MORIN
2015-06-07 10:26 ` [Buildroot] [PATCH v5 03/13] package/opencv: bump to version 3.0 Samuel Martin
` (10 subsequent siblings)
12 siblings, 1 reply; 31+ messages in thread
From: Samuel Martin @ 2015-06-07 10:26 UTC (permalink / raw)
To: buildroot
No new option added nor removed.
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
---
changes v4->v5:
- new patch
---
package/opencv/opencv.mk | 32 ++++++++++++++++----------------
1 file changed, 16 insertions(+), 16 deletions(-)
diff --git a/package/opencv/opencv.mk b/package/opencv/opencv.mk
index 9967abc..4d08481 100644
--- a/package/opencv/opencv.mk
+++ b/package/opencv/opencv.mk
@@ -12,9 +12,9 @@ OPENCV_LICENSE_FILES = LICENSE
# OpenCV component options
OPENCV_CONF_OPTS += \
- -DBUILD_WITH_DEBUG_INFO=OFF \
-DBUILD_PERF_TESTS=$(if $(BR2_PACKAGE_OPENCV_BUILD_PERF_TESTS),ON,OFF) \
- -DBUILD_TESTS=$(if $(BR2_PACKAGE_OPENCV_BUILD_TESTS),ON,OFF)
+ -DBUILD_TESTS=$(if $(BR2_PACKAGE_OPENCV_BUILD_TESTS),ON,OFF) \
+ -DBUILD_WITH_DEBUG_INFO=OFF
# OpenCV build options
OPENCV_CONF_OPTS += \
@@ -71,14 +71,14 @@ OPENCV_CONF_OPTS += \
# * PowerPC support is turned off since its only effect is altering CFLAGS,
# adding '-mcpu=G3 -mtune=G5' to them, which is already handled by Buildroot.
OPENCV_CONF_OPTS += \
+ -DENABLE_AVX2=$(if $(BR2_X86_CPU_HAS_AVX2),ON,OFF) \
+ -DENABLE_AVX=$(if $(BR2_X86_CPU_HAS_AVX),ON,OFF) \
-DENABLE_POWERPC=OFF \
- -DENABLE_SSE=$(if $(BR2_X86_CPU_HAS_SSE),ON,OFF) \
-DENABLE_SSE2=$(if $(BR2_X86_CPU_HAS_SSE2),ON,OFF) \
-DENABLE_SSE3=$(if $(BR2_X86_CPU_HAS_SSE3),ON,OFF) \
-DENABLE_SSE41=$(if $(BR2_X86_CPU_HAS_SSE4),ON,OFF) \
-DENABLE_SSE42=$(if $(BR2_X86_CPU_HAS_SSE42),ON,OFF) \
- -DENABLE_AVX=$(if $(BR2_X86_CPU_HAS_AVX),ON,OFF) \
- -DENABLE_AVX2=$(if $(BR2_X86_CPU_HAS_AVX2),ON,OFF) \
+ -DENABLE_SSE=$(if $(BR2_X86_CPU_HAS_SSE),ON,OFF) \
-DENABLE_SSSE3=$(if $(BR2_X86_CPU_HAS_SSSE3),ON,OFF)
# Cuda stuff
@@ -92,8 +92,8 @@ OPENCV_CONF_OPTS += -DWITH_NVCUVID=OFF
# AMD stuff
OPENCV_CONF_OPTS += \
- -DWITH_OPENCLAMDFFT=OFF \
- -DWITH_OPENCLAMDBLAS=OFF
+ -DWITH_OPENCLAMDBLAS=OFF \
+ -DWITH_OPENCLAMDFFT=OFF
# Intel stuff
OPENCV_CONF_OPTS += \
@@ -112,12 +112,12 @@ OPENCV_CONF_OPTS += -DWITH_XIMEA=OFF
# Non-Linux support (Android options) must remain OFF:
OPENCV_CONF_OPTS += \
- -DWITH_ANDROID_CAMERA=OFF \
-DBUILD_ANDROID_CAMERA_WRAPPER=OFF \
-DBUILD_ANDROID_EXAMPLES=OFF \
- -DINSTALL_ANDROID_EXAMPLES=OFF \
-DBUILD_FAT_JAVA_LIB=OFF \
- -DBUILD_JAVA_SUPPORT=OFF
+ -DBUILD_JAVA_SUPPORT=OFF \
+ -DINSTALL_ANDROID_EXAMPLES=OFF \
+ -DWITH_ANDROID_CAMERA=OFF
# Non-Linux support (Mac OSX options) must remain OFF:
OPENCV_CONF_OPTS += \
@@ -127,22 +127,22 @@ OPENCV_CONF_OPTS += \
# Non-Linux support (Windows options) must remain OFF:
OPENCV_CONF_OPTS += \
- -DWITH_VFW=OFF \
- -DWITH_WIN32UI=OFF \
-DWITH_CSTRIPES=OFF \
-DWITH_DSHOW=OFF \
-DWITH_MSMF=OFF \
- -DWITH_VIDEOINPUT=OFF
+ -DWITH_VFW=OFF \
+ -DWITH_VIDEOINPUT=OFF \
+ -DWITH_WIN32UI=OFF
# Software/3rd-party support options.
OPENCV_CONF_OPTS += \
-DBUILD_JASPER=OFF \
-DBUILD_JPEG=OFF \
+ -DBUILD_NEW_PYTHON_SUPPORT=OFF \
-DBUILD_OPENEXR=OFF \
-DBUILD_PNG=OFF \
-DBUILD_TIFF=OFF \
-DBUILD_ZLIB=OFF \
- -DBUILD_NEW_PYTHON_SUPPORT=OFF \
-DINSTALL_C_EXAMPLES=OFF \
-DINSTALL_PYTHON_EXAMPLES=OFF \
-DINSTALL_TO_MANGLED_PATHS=OFF
@@ -221,8 +221,8 @@ endif
ifeq ($(BR2_PACKAGE_OPENCV_WITH_V4L),y)
OPENCV_CONF_OPTS += \
- -DWITH_V4L=ON \
- -DWITH_LIBV4L=$(if $(BR2_PACKAGE_LIBV4L),ON,OFF)
+ -DWITH_LIBV4L=$(if $(BR2_PACKAGE_LIBV4L),ON,OFF) \
+ -DWITH_V4L=ON
OPENCV_DEPENDENCIES += $(if $(BR2_PACKAGE_LIBV4L),libv4l)
else
OPENCV_CONF_OPTS += -DWITH_V4L=OFF -DWITH_LIBV4L=OFF
--
2.4.2
^ permalink raw reply related [flat|nested] 31+ messages in thread* [Buildroot] [PATCH v5 02/13] package/opencv: alphabetically sorted each _CONF_OPTS group
2015-06-07 10:26 ` [Buildroot] [PATCH v5 02/13] package/opencv: alphabetically sorted each _CONF_OPTS group Samuel Martin
@ 2015-06-07 11:35 ` Yann E. MORIN
2015-06-07 11:49 ` Samuel Martin
0 siblings, 1 reply; 31+ messages in thread
From: Yann E. MORIN @ 2015-06-07 11:35 UTC (permalink / raw)
To: buildroot
Samuel, All,
On 2015-06-07 12:26 +0200, Samuel Martin spake thusly:
> No new option added nor removed.
>
> Signed-off-by: Samuel Martin <s.martin49@gmail.com>
>
> diff --git a/package/opencv/opencv.mk b/package/opencv/opencv.mk
> index 9967abc..4d08481 100644
> --- a/package/opencv/opencv.mk
> +++ b/package/opencv/opencv.mk
[--SNIP--]
> @@ -71,14 +71,14 @@ OPENCV_CONF_OPTS += \
> # * PowerPC support is turned off since its only effect is altering CFLAGS,
> # adding '-mcpu=G3 -mtune=G5' to them, which is already handled by Buildroot.
> OPENCV_CONF_OPTS += \
> + -DENABLE_AVX2=$(if $(BR2_X86_CPU_HAS_AVX2),ON,OFF) \
> + -DENABLE_AVX=$(if $(BR2_X86_CPU_HAS_AVX),ON,OFF) \
> -DENABLE_POWERPC=OFF \
> - -DENABLE_SSE=$(if $(BR2_X86_CPU_HAS_SSE),ON,OFF) \
> -DENABLE_SSE2=$(if $(BR2_X86_CPU_HAS_SSE2),ON,OFF) \
> -DENABLE_SSE3=$(if $(BR2_X86_CPU_HAS_SSE3),ON,OFF) \
> -DENABLE_SSE41=$(if $(BR2_X86_CPU_HAS_SSE4),ON,OFF) \
> -DENABLE_SSE42=$(if $(BR2_X86_CPU_HAS_SSE42),ON,OFF) \
> - -DENABLE_AVX=$(if $(BR2_X86_CPU_HAS_AVX),ON,OFF) \
> - -DENABLE_AVX2=$(if $(BR2_X86_CPU_HAS_AVX2),ON,OFF) \
> + -DENABLE_SSE=$(if $(BR2_X86_CPU_HAS_SSE),ON,OFF) \
> -DENABLE_SSSE3=$(if $(BR2_X86_CPU_HAS_SSSE3),ON,OFF)
I don't know how you sorted, but for me, SSE sorts before SSE2.
Regards,
Yann E. MORIN.
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
^ permalink raw reply [flat|nested] 31+ messages in thread
* [Buildroot] [PATCH v5 02/13] package/opencv: alphabetically sorted each _CONF_OPTS group
2015-06-07 11:35 ` Yann E. MORIN
@ 2015-06-07 11:49 ` Samuel Martin
0 siblings, 0 replies; 31+ messages in thread
From: Samuel Martin @ 2015-06-07 11:49 UTC (permalink / raw)
To: buildroot
On Sun, Jun 7, 2015 at 1:35 PM, Yann E. MORIN <yann.morin.1998@free.fr> wrote:
> Samuel, All,
>
> On 2015-06-07 12:26 +0200, Samuel Martin spake thusly:
>> No new option added nor removed.
>>
>> Signed-off-by: Samuel Martin <s.martin49@gmail.com>
>>
>> diff --git a/package/opencv/opencv.mk b/package/opencv/opencv.mk
>> index 9967abc..4d08481 100644
>> --- a/package/opencv/opencv.mk
>> +++ b/package/opencv/opencv.mk
> [--SNIP--]
>> @@ -71,14 +71,14 @@ OPENCV_CONF_OPTS += \
>> # * PowerPC support is turned off since its only effect is altering CFLAGS,
>> # adding '-mcpu=G3 -mtune=G5' to them, which is already handled by Buildroot.
>> OPENCV_CONF_OPTS += \
>> + -DENABLE_AVX2=$(if $(BR2_X86_CPU_HAS_AVX2),ON,OFF) \
>> + -DENABLE_AVX=$(if $(BR2_X86_CPU_HAS_AVX),ON,OFF) \
>> -DENABLE_POWERPC=OFF \
>> - -DENABLE_SSE=$(if $(BR2_X86_CPU_HAS_SSE),ON,OFF) \
>> -DENABLE_SSE2=$(if $(BR2_X86_CPU_HAS_SSE2),ON,OFF) \
>> -DENABLE_SSE3=$(if $(BR2_X86_CPU_HAS_SSE3),ON,OFF) \
>> -DENABLE_SSE41=$(if $(BR2_X86_CPU_HAS_SSE4),ON,OFF) \
>> -DENABLE_SSE42=$(if $(BR2_X86_CPU_HAS_SSE42),ON,OFF) \
>> - -DENABLE_AVX=$(if $(BR2_X86_CPU_HAS_AVX),ON,OFF) \
>> - -DENABLE_AVX2=$(if $(BR2_X86_CPU_HAS_AVX2),ON,OFF) \
>> + -DENABLE_SSE=$(if $(BR2_X86_CPU_HAS_SSE),ON,OFF) \
>> -DENABLE_SSSE3=$(if $(BR2_X86_CPU_HAS_SSSE3),ON,OFF)
>
> I don't know how you sorted, but for me, SSE sorts before SSE2.
vim sort...
>
> Regards,
> Yann E. MORIN.
>
> --
> .-----------------.--------------------.------------------.--------------------.
> | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
> | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
> | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no |
> | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
> '------------------------------^-------^------------------^--------------------'
--
Samuel
^ permalink raw reply [flat|nested] 31+ messages in thread
* [Buildroot] [PATCH v5 03/13] package/opencv: bump to version 3.0
2015-06-07 10:26 [Buildroot] [PATCH v5 00/13] OpenCV bump Samuel Martin
2015-06-07 10:26 ` [Buildroot] [PATCH v5 01/13] package/opencv: cleanup spaces at ends of line Samuel Martin
2015-06-07 10:26 ` [Buildroot] [PATCH v5 02/13] package/opencv: alphabetically sorted each _CONF_OPTS group Samuel Martin
@ 2015-06-07 10:26 ` Samuel Martin
2015-06-07 12:03 ` Yann E. MORIN
2015-06-07 10:26 ` [Buildroot] [PATCH v5 04/13] package/opencv: define modules inter-dependencies Samuel Martin
` (9 subsequent siblings)
12 siblings, 1 reply; 31+ messages in thread
From: Samuel Martin @ 2015-06-07 10:26 UTC (permalink / raw)
To: buildroot
This major version bump is in fact a bump from 2.4.10 to 2.4.11, then to
3.0.
OpenCV-2.4.11 improves a lot the Buildroot integration, including a
couple of patches that no longer need to be carried in Buildroot tree:
- x86 PIC code compilation fix in core module [1];
- return type fix in superes module [2];
- opencv.pc generation [3].
It also improves the gstreamer-0.10/1.x detection [4], that will needed
in a follow-up patch.
The OpenCV-3.0 does some major changes, for which a transition guide
has been published [5].
Among these changes coming with OpenCV-3.0, some new modules have been
introduced and others got removed; leading to a bunch of configure
option updates (to keep as much as possible an iso-functional-perimeter)
and the legacy menu has been updated too.
The worth noticing removal being:
- the opencv_legacy and opencv_nonfree modules no longer exist;
- the opencv_contrib module has moved out of the opencv base tree and
now has its own repository [6].
There is currently no plan to support it.
Some 3rd-party supports have been improved or added; their integrations
in Buildroot will be addressed in follow-up patches.
[1] https://github.com/Itseez/opencv/commit/ea50be0529c248961e1b66293f8a9e4b807294a6
[2] https://github.com/Itseez/opencv/commit/2e393ab83362743ba1825ad4b31d4a2925c606b4
[3] https://github.com/Itseez/opencv/commit/eceada586bbf18fc267e437522ec4f1f23ddc656
[4] https://github.com/Itseez/opencv/commit/38bb0db9dbec08666c8a64b3e4ead8fadf15c980
[5] http://docs.opencv.org/master/db/dfa/tutorial_transition_guide.html
[6] https://github.com/itseez/opencv_contrib
Cc: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
---
changes v4->v5:
- new patch
---
Config.in.legacy | 16 +++
.../0001-core-fix-x86-PIC-code-compilation.patch | 49 -------
...ix-return-type-value-VideoFrameSource_GPU.patch | 40 ------
...VGenPkgconfig.cmake-rework-opencv.pc-gene.patch | 156 ---------------------
package/opencv/Config.in | 44 +++---
package/opencv/opencv.mk | 70 +++++++--
6 files changed, 96 insertions(+), 279 deletions(-)
delete mode 100644 package/opencv/0001-core-fix-x86-PIC-code-compilation.patch
delete mode 100644 package/opencv/0002-superres-Fix-return-type-value-VideoFrameSource_GPU.patch
delete mode 100644 package/opencv/0003-cmake-OpenCVGenPkgconfig.cmake-rework-opencv.pc-gene.patch
diff --git a/Config.in.legacy b/Config.in.legacy
index 9b9fff0..e4a963b 100644
--- a/Config.in.legacy
+++ b/Config.in.legacy
@@ -113,6 +113,22 @@ config BR2_TARGET_UBOOT_NETWORK
help
U-Boot's custom network settings options have been removed.
+config BR2_PACKAGE_OPENCV_LIB_CONTRIB
+ bool "opencv contrib module"
+ select BR2_LEGACY
+
+config BR2_PACKAGE_OPENCV_LIB_GPU
+ bool "opencv gpu module (splited in several 'cudaXXX' modules)"
+ select BR2_LEGACY
+
+config BR2_PACKAGE_OPENCV_LIB_LEGACY
+ bool "opencv legacy module"
+ select BR2_LEGACY
+
+config BR2_PACKAGE_OPENCV_LIB_NONFREE
+ bool "opencv nonfree module"
+ select BR2_LEGACY
+
###############################################################################
comment "Legacy options removed in 2015.05"
diff --git a/package/opencv/0001-core-fix-x86-PIC-code-compilation.patch b/package/opencv/0001-core-fix-x86-PIC-code-compilation.patch
deleted file mode 100644
index 9e8c2e9..0000000
--- a/package/opencv/0001-core-fix-x86-PIC-code-compilation.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From ea50be0529c248961e1b66293f8a9e4b807294a6 Mon Sep 17 00:00:00 2001
-From: Samuel Martin <s.martin49@gmail.com>
-Date: Sun, 12 Oct 2014 10:17:23 +0200
-Subject: [PATCH] core: fix x86 PIC code compilation
-
-This bug was triggered by Buildroot autobuilders [1,2], causing this
-kind of failures [3,4]:
-
- [ 14%] Building CXX object modules/core/CMakeFiles/opencv_core.dir/src/system.cpp.o
- /home/test/autobuild/instance-0/output/build/opencv-2.4.10/modules/core/src/system.cpp: In function '(static initializers for /home/test/autobuild/instance-0/output/build/opencv-2.4.10/modules/core/src/system.cpp)':
- /home/test/autobuild/instance-0/output/build/opencv-2.4.10/modules/core/src/system.cpp:280:10: error: inconsistent operand constraints in an 'asm'
- make[3]: *** [modules/core/CMakeFiles/opencv_core.dir/src/system.cpp.o] Error 1
-
-[1] http://buildroot.org/
-[2] http://autobuild.buildroot.org/
-[3] http://autobuild.buildroot.org/?reason=opencv-2.4.10
-[4] http://autobuild.buildroot.org/results/483/4838285b25d6293a5cf0bb9eadd5040a7c75d766/build-end.log
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
----
- modules/core/src/system.cpp | 5 ++++-
- 1 file changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/modules/core/src/system.cpp b/modules/core/src/system.cpp
-index 5a970d5..e9ffdc7 100644
---- a/modules/core/src/system.cpp
-+++ b/modules/core/src/system.cpp
-@@ -267,14 +267,17 @@ struct HWFeatures
- : "cc"
- );
- #else
-+ // We need to preserve ebx since we are compiling PIC code.
-+ // This means we cannot use "=b" for the 2nd output register.
- asm volatile
- (
- "pushl %%ebx\n\t"
- "movl $7,%%eax\n\t"
- "movl $0,%%ecx\n\t"
- "cpuid\n\t"
-+ "movl %%ebx,%1\n\t"
- "popl %%ebx\n\t"
-- : "=a"(cpuid_data[0]), "=b"(cpuid_data[1]), "=c"(cpuid_data[2]), "=d"(cpuid_data[3])
-+ : "=a"(cpuid_data[0]), "=r"(cpuid_data[1]), "=c"(cpuid_data[2]), "=d"(cpuid_data[3])
- :
- : "cc"
- );
---
-2.1.2
-
diff --git a/package/opencv/0002-superres-Fix-return-type-value-VideoFrameSource_GPU.patch b/package/opencv/0002-superres-Fix-return-type-value-VideoFrameSource_GPU.patch
deleted file mode 100644
index d71235d..0000000
--- a/package/opencv/0002-superres-Fix-return-type-value-VideoFrameSource_GPU.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-superres: Fix return value VideoFrameSource_GPU
-
-Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
-
-From 2e393ab83362743ba1825ad4b31d4a2925c606b4 Mon Sep 17 00:00:00 2001
-From: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
-Date: Mon, 27 Oct 2014 13:39:35 +0000
-Subject: [PATCH] superres: Fix return value VideoFrameSource_GPU
-
-superres module fails to compile with the following error messages:
-
-[100%] Building CXX object modules/superres/CMakeFiles/opencv_superres.dir/src/super_resolution.cpp.o
-/opencv-2.4.10/modules/superres/src/frame_source.cpp: In function 'cv::Ptr<cv::superres::FrameSource> cv::superres::createFrameSource_Video_GPU(const string&)':
-/opencv-2.4.10/modules/superres/src/frame_source.cpp:263:16: error: expected type-specifier before 'VideoFrameSource'
-/opencv-2.4.10/modules/superres/src/frame_source.cpp:263:16: error: could not convert '(int*)operator new(4ul)' from 'int*' to 'cv::Ptr<cv::superres::FrameSource>'
-/opencv-2.4.10/modules/superres/src/frame_source.cpp:263:16: error: expected ';' before 'VideoFrameSource'
-/opencv-2.4.10/modules/superres/src/frame_source.cpp:263:41: error: 'VideoFrameSource' was not declared in this scope
-/opencv-2.4.10/modules/superres/src/frame_source.cpp:264:1: error: control reaches end of non-void function [-Werror=return-type]
-cc1plus: some warnings being treated as errors
-make[3]: *** [modules/superres/CMakeFiles/opencv_superres.dir/src/frame_source.cpp.o] Error 1
-make[3]: *** Waiting for unfinished jobs....
-
-This is caused because the return value of the createFrameSource_Video_GPU function should be a VideoFrameSource_GPU object.
----
- modules/superres/src/frame_source.cpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/modules/superres/src/frame_source.cpp b/modules/superres/src/frame_source.cpp
-index 5f59a98..c5b2e76 100644
---- a/modules/superres/src/frame_source.cpp
-+++ b/modules/superres/src/frame_source.cpp
-@@ -260,7 +260,7 @@ namespace
-
- Ptr<FrameSource> cv::superres::createFrameSource_Video_GPU(const string& fileName)
- {
-- return new VideoFrameSource(fileName);
-+ return new VideoFrameSource_GPU(fileName);
- }
-
- #endif // HAVE_OPENCV_GPU
diff --git a/package/opencv/0003-cmake-OpenCVGenPkgconfig.cmake-rework-opencv.pc-gene.patch b/package/opencv/0003-cmake-OpenCVGenPkgconfig.cmake-rework-opencv.pc-gene.patch
deleted file mode 100644
index 768f08d..0000000
--- a/package/opencv/0003-cmake-OpenCVGenPkgconfig.cmake-rework-opencv.pc-gene.patch
+++ /dev/null
@@ -1,156 +0,0 @@
-From eceada586bbf18fc267e437522ec4f1f23ddc656 Mon Sep 17 00:00:00 2001
-From: Samuel Martin <s.martin49@gmail.com>
-Date: Fri, 3 Oct 2014 00:32:40 +0200
-Subject: [PATCH] cmake/OpenCVGenPkgconfig.cmake: rework opencv.pc generation
-
-Using absolute path to locate the components in the "Libs:" field of the
-*.pc can badly break cross-compilation, especially when building
-statically linked objects.
-
-Indeed, pkg-config automatically replaces the '-I...' and '-L...' paths
-when the PKG_CONFIG_SYSROOT_DIR and PKG_CONFIG_LIBDIR environment
-variables are set [1]. This feature is very helpful and common in
-cross-compilation framework like Buildroot [2,3].
-
-When there are absolute paths in the *.pc files, pkg-config won't be
-able to do the path substitions for these paths when the afromentioned
-environment variables are set.
-In such case, since the prefix is the target one, not the sysroot one,
-these libraries' abolute paths will point to:
-- in the best case: a non-existing file (i.e. these files do not exists
- on the host system;
-- at worst: the host system's libraries. This will make the linking
- failed because these host system's libraries will most likely not be
- build for the target architecture [4].
-
-So, this patch replace the components' absolute paths by the form:
- -L<libdir> -l<libname>
-
-This way, the linker will be able to resolve each dependency path,
-whatever the kind of objects/build (shared object or static build) it
-is dealing with.
-
-Note that for static link, the library order does matter [5]. The order
-of the opencv components has been carefully chosen to comply with this
-requirement.
-
-Fixes #3931
-
-[1] http://linux.die.net/man/1/pkg-config
-[2] http://buildroot.org/
-[3] http://git.buildroot.net/buildroot/tree/package/pkgconf/pkg-config.in
-[4] http://autobuild.buildroot.net/results/e8a/e8a859276db34aff87ef181b0cce98916b0afc90/build-end.log
-[5] http://stackoverflow.com/questions/45135/linker-order-gcc
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
-
----
-Note: this patch properly applies on top of the master branch, though it
- has been written on top of the 2.4 branch.
----
- cmake/OpenCVGenPkgconfig.cmake | 64 +++++++++++++++++++++++++++---------------
- 1 file changed, 42 insertions(+), 22 deletions(-)
-
-diff --git a/cmake/OpenCVGenPkgconfig.cmake b/cmake/OpenCVGenPkgconfig.cmake
-index fa57db9..183c56d 100644
---- a/cmake/OpenCVGenPkgconfig.cmake
-+++ b/cmake/OpenCVGenPkgconfig.cmake
-@@ -8,10 +8,6 @@
- #
- # ${BIN_DIR}/unix-install/opencv.pc -> For use *with* "make install"
- # -------------------------------------------------------------------------------------------
--set(prefix "${CMAKE_INSTALL_PREFIX}")
--set(exec_prefix "\${prefix}")
--set(libdir "") #TODO: need link paths for OpenCV_EXTRA_COMPONENTS
--set(includedir "\${prefix}/${OPENCV_INCLUDE_INSTALL_PATH}")
-
- if(CMAKE_BUILD_TYPE MATCHES "Release")
- set(ocv_optkind OPT)
-@@ -35,42 +31,66 @@ ocv_list_reverse(OpenCV_LIB_COMPONENTS)
- ocv_list_reverse(OpenCV_EXTRA_COMPONENTS)
-
- #build the list of components
--set(OpenCV_LIB_COMPONENTS_ "")
--foreach(CVLib ${OpenCV_LIB_COMPONENTS})
-- get_target_property(libpath ${CVLib} LOCATION_${CMAKE_BUILD_TYPE})
-- get_filename_component(libname "${libpath}" NAME)
-
-- if(INSTALL_TO_MANGLED_PATHS)
-- set(libname "${libname}.${OPENCV_VERSION}")
-- endif()
-+# Note:
-+# when linking against static libraries, if libfoo depends on libbar, then
-+# libfoo must come first in the linker flags.
-+
-+# world is a special target whose library should come first, especially for
-+# static link.
-+if(OpenCV_LIB_COMPONENTS MATCHES "opencv_world")
-+ list(REMOVE_ITEM OpenCV_LIB_COMPONENTS "opencv_world")
-+ list(INSERT OpenCV_LIB_COMPONENTS 0 "opencv_world")
-+endif()
-+
-+set(OpenCV_LIB_COMPONENTS_)
-+foreach(CVLib ${OpenCV_LIB_COMPONENTS})
-
-- #need better solution....
-- if(libpath MATCHES "3rdparty")
-- set(installDir "share/OpenCV/3rdparty/${OPENCV_LIB_INSTALL_PATH}")
-+ get_target_property(libloc ${CVLib} LOCATION_${CMAKE_BUILD_TYPE})
-+ if(libloc MATCHES "3rdparty")
-+ set(libpath "\${exec_prefix}/share/OpenCV/3rdparty/${OPENCV_LIB_INSTALL_PATH}")
- else()
-- set(installDir "${OPENCV_LIB_INSTALL_PATH}")
-+ set(libpath "\${exec_prefix}/${OPENCV_LIB_INSTALL_PATH}")
- endif()
-+ list(APPEND OpenCV_LIB_COMPONENTS_ "-L${libpath}")
-+
-+ get_filename_component(libname ${CVLib} NAME_WE)
-+ string(REGEX REPLACE "^lib" "" libname "${libname}")
-+ list(APPEND OpenCV_LIB_COMPONENTS_ "-l${libname}")
-
-- set(OpenCV_LIB_COMPONENTS_ "${OpenCV_LIB_COMPONENTS_} \${exec_prefix}/${installDir}/${libname}")
- endforeach()
-
- # add extra dependencies required for OpenCV
--set(OpenCV_LIB_COMPONENTS ${OpenCV_LIB_COMPONENTS_})
- if(OpenCV_EXTRA_COMPONENTS)
- foreach(extra_component ${OpenCV_EXTRA_COMPONENTS})
-
-- if(extra_component MATCHES "^-[lL]" OR extra_component MATCHES "[\\/]")
-- set(maybe_l_prefix "")
-+ if(extra_component MATCHES "^-[lL]")
-+ set(libprefix "")
-+ set(libname "${extra_component}")
-+ elseif(extra_component MATCHES "[\\/]")
-+ get_filename_component(libdir "${extra_component}" PATH)
-+ list(APPEND OpenCV_LIB_COMPONENTS_ "-L${libdir}")
-+ get_filename_component(libname "${extra_component}" NAME_WE)
-+ string(REGEX REPLACE "^lib" "" libname "${libname}")
-+ set(libprefix "-l")
- else()
-- set(maybe_l_prefix "-l")
-+ set(libprefix "-l")
-+ set(libname "${extra_component}")
- endif()
--
-- set(OpenCV_LIB_COMPONENTS "${OpenCV_LIB_COMPONENTS} ${maybe_l_prefix}${extra_component}")
-+ list(APPEND OpenCV_LIB_COMPONENTS_ "${libprefix}${libname}")
-
- endforeach()
- endif()
-
-+list(REMOVE_DUPLICATES OpenCV_LIB_COMPONENTS_)
-+string(REPLACE ";" " " OpenCV_LIB_COMPONENTS "${OpenCV_LIB_COMPONENTS_}")
-+
- #generate the .pc file
-+set(prefix "${CMAKE_INSTALL_PREFIX}")
-+set(exec_prefix "\${prefix}")
-+set(libdir "\${exec_prefix}/${OPENCV_LIB_INSTALL_PATH}")
-+set(includedir "\${prefix}/${OPENCV_INCLUDE_INSTALL_PATH}")
-+
- if(INSTALL_TO_MANGLED_PATHS)
- set(OPENCV_PC_FILE_NAME "opencv-${OPENCV_VERSION}.pc")
- else()
---
-2.4.1
-
diff --git a/package/opencv/Config.in b/package/opencv/Config.in
index e40437f..a3f1f5e 100644
--- a/package/opencv/Config.in
+++ b/package/opencv/Config.in
@@ -8,6 +8,9 @@ menuconfig BR2_PACKAGE_OPENCV
OpenCV (Open Source Computer Vision) is a library of programming
functions for real time computer vision.
+ Note that the opencv_core module and the opencv_hal library are
+ automatically enabled.
+
http://opencv.org/
if BR2_PACKAGE_OPENCV
@@ -20,11 +23,7 @@ config BR2_PACKAGE_OPENCV_LIB_CALIB3D
help
Include opencv_calib3d module into the OpenCV build.
-config BR2_PACKAGE_OPENCV_LIB_CONTRIB
- bool "contrib"
- default y
- help
- Include opencv_contrib module into the OpenCV build.
+# opencv_core module is automatically enabled when OpenCV package is selected
config BR2_PACKAGE_OPENCV_LIB_FEATURES2D
bool "features2d"
@@ -38,10 +37,8 @@ config BR2_PACKAGE_OPENCV_LIB_FLANN
help
Include opencv_flann module into the OpenCV build.
-config BR2_PACKAGE_OPENCV_LIB_GPU
- bool "gpu"
- help
- Include opencv_gpu module into the OpenCV build.
+# opencv_hal (hardware acceleration layer (hal) module is required by
+# opencv_core, so it is automatically enabled
config BR2_PACKAGE_OPENCV_LIB_HIGHGUI
bool "highgui"
@@ -49,17 +46,17 @@ config BR2_PACKAGE_OPENCV_LIB_HIGHGUI
help
Include opencv_highgui module into the OpenCV build.
-config BR2_PACKAGE_OPENCV_LIB_IMGPROC
- bool "imgproc"
+config BR2_PACKAGE_OPENCV_LIB_IMGCODECS
+ bool "imgcodecs (image codecs)"
default y
help
- Include opencv_imgproc module into the OpenCV build.
+ Include opencv_imgcodecs module into the OpenCV build.
-config BR2_PACKAGE_OPENCV_LIB_LEGACY
- bool "legacy"
+config BR2_PACKAGE_OPENCV_LIB_IMGPROC
+ bool "imgproc (image processing)"
default y
help
- Include opencv_legacy module into the OpenCV build.
+ Include opencv_imgproc module into the OpenCV build.
config BR2_PACKAGE_OPENCV_LIB_ML
bool "ml (machine learning)"
@@ -67,11 +64,6 @@ config BR2_PACKAGE_OPENCV_LIB_ML
help
Include opencv_ml module into the OpenCV build.
-config BR2_PACKAGE_OPENCV_LIB_NONFREE
- bool "nonfree"
- help
- Include opencv_nonfree module into the OpenCV build.
-
config BR2_PACKAGE_OPENCV_LIB_OBJDETECT
bool "objdetect"
default y
@@ -86,6 +78,12 @@ config BR2_PACKAGE_OPENCV_LIB_PHOTO
comment "opencv_python module requires numpy which is not yet available."
+config BR2_PACKAGE_OPENCV_LIB_SHAPE
+ bool "shape (shape descriptors and matchers)"
+ default y
+ help
+ Include opencv_shape module into the OpenCV build.
+
config BR2_PACKAGE_OPENCV_LIB_STITCHING
bool "stitching"
default y
@@ -106,6 +104,12 @@ config BR2_PACKAGE_OPENCV_LIB_TS
help
Include opencv_ts module into the OpenCV build.
+config BR2_PACKAGE_OPENCV_LIB_VIDEOIO
+ bool "videoio (media i/o)"
+ default y
+ help
+ Include opencv_videoio module into the OpenCV build.
+
config BR2_PACKAGE_OPENCV_LIB_VIDEO
bool "video"
default y
diff --git a/package/opencv/opencv.mk b/package/opencv/opencv.mk
index 4d08481..0a1b94c 100644
--- a/package/opencv/opencv.mk
+++ b/package/opencv/opencv.mk
@@ -4,7 +4,7 @@
#
################################################################################
-OPENCV_VERSION = 2.4.10
+OPENCV_VERSION = 3.0.0
OPENCV_SITE = $(call github,itseez,opencv,$(OPENCV_VERSION))
OPENCV_INSTALL_STAGING = YES
OPENCV_LICENSE = BSD-3c
@@ -12,19 +12,28 @@ OPENCV_LICENSE_FILES = LICENSE
# OpenCV component options
OPENCV_CONF_OPTS += \
+ -DBUILD_DOCS=OFF \
-DBUILD_PERF_TESTS=$(if $(BR2_PACKAGE_OPENCV_BUILD_PERF_TESTS),ON,OFF) \
-DBUILD_TESTS=$(if $(BR2_PACKAGE_OPENCV_BUILD_TESTS),ON,OFF) \
-DBUILD_WITH_DEBUG_INFO=OFF
+ifneq ($(BR2_PACKAGE_OPENCV_BUILD_TESTS)$(BR2_PACKAGE_OPENCV_BUILD_PERF_TESTS),)
+OPENCV_CONF_OPTS += -DINSTALL_TEST=ON
+else
+OPENCV_CONF_OPTS += -DINSTALL_TEST=OFF
+endif
+
# OpenCV build options
OPENCV_CONF_OPTS += \
-DBUILD_WITH_STATIC_CRT=OFF \
+ -DENABLE_COVERAGE=OFF \
-DENABLE_FAST_MATH=ON \
+ -DENABLE_IMPL_COLLECTION=OFF \
-DENABLE_NOISY_WARNINGS=OFF \
-DENABLE_OMIT_FRAME_POINTER=ON \
-DENABLE_PRECOMPILED_HEADERS=OFF \
-DENABLE_PROFILING=OFF \
- -DOPENCV_CAN_BREAK_BINARY_COMPATIBILITY=ON
+ -DOPENCV_WARNINGS_ARE_ERRORS=OFF
# OpenCV link options
OPENCV_CONF_OPTS += \
@@ -39,40 +48,49 @@ OPENCV_CONF_OPTS += \
-DINSTALL_CREATE_DISTRIB=OFF
# OpenCV module selection
+# - contrib modules are disabled.
OPENCV_CONF_OPTS += \
-DBUILD_opencv_androidcamera=OFF \
-DBUILD_opencv_apps=OFF \
-DBUILD_opencv_calib3d=$(if $(BR2_PACKAGE_OPENCV_LIB_CALIB3D),ON,OFF) \
- -DBUILD_opencv_contrib=$(if $(BR2_PACKAGE_OPENCV_LIB_CONTRIB),ON,OFF) \
-DBUILD_opencv_core=ON \
- -DBUILD_opencv_dynamicuda=OFF \
-DBUILD_opencv_features2d=$(if $(BR2_PACKAGE_OPENCV_LIB_FEATURES2D),ON,OFF) \
-DBUILD_opencv_flann=$(if $(BR2_PACKAGE_OPENCV_LIB_FLANN),ON,OFF) \
- -DBUILD_opencv_gpu=$(if $(BR2_PACKAGE_OPENCV_LIB_GPU),ON,OFF) \
+ -DBUILD_opencv_hal=ON \
-DBUILD_opencv_highgui=$(if $(BR2_PACKAGE_OPENCV_LIB_HIGHGUI),ON,OFF) \
+ -DBUILD_opencv_imgcodecs=$(if $(BR2_PACKAGE_OPENCV_LIB_IMGCODECS),ON,OFF) \
-DBUILD_opencv_imgproc=$(if $(BR2_PACKAGE_OPENCV_LIB_IMGPROC),ON,OFF) \
-DBUILD_opencv_java=OFF \
- -DBUILD_opencv_legacy=$(if $(BR2_PACKAGE_OPENCV_LIB_LEGACY),ON,OFF) \
-DBUILD_opencv_ml=$(if $(BR2_PACKAGE_OPENCV_LIB_ML),ON,OFF) \
- -DBUILD_opencv_nonfree=$(if $(BR2_PACKAGE_OPENCV_LIB_NONFREE),ON,OFF) \
-DBUILD_opencv_objdetect=$(if $(BR2_PACKAGE_OPENCV_LIB_OBJDETECT),ON,OFF) \
- -DBUILD_opencv_ocl=OFF \
-DBUILD_opencv_photo=$(if $(BR2_PACKAGE_OPENCV_LIB_PHOTO),ON,OFF) \
- -DBUILD_opencv_python=OFF \
+ -DBUILD_opencv_python2=OFF \
+ -DBUILD_opencv_python3=OFF \
+ -DBUILD_opencv_shape=$(if $(BR2_PACKAGE_OPENCV_LIB_SHAPE),ON,OFF) \
-DBUILD_opencv_stitching=$(if $(BR2_PACKAGE_OPENCV_LIB_STITCHING),ON,OFF) \
-DBUILD_opencv_superres=$(if $(BR2_PACKAGE_OPENCV_LIB_SUPERRES),ON,OFF) \
-DBUILD_opencv_ts=$(if $(BR2_PACKAGE_OPENCV_LIB_TS),ON,OFF) \
-DBUILD_opencv_video=$(if $(BR2_PACKAGE_OPENCV_LIB_VIDEO),ON,OFF) \
+ -DBUILD_opencv_videoio=$(if $(BR2_PACKAGE_OPENCV_LIB_VIDEOIO),ON,OFF) \
-DBUILD_opencv_videostab=$(if $(BR2_PACKAGE_OPENCV_LIB_VIDEOSTAB),ON,OFF) \
+ -DBUILD_opencv_viz=OFF \
-DBUILD_opencv_world=OFF
# Hardware support options.
#
# * PowerPC support is turned off since its only effect is altering CFLAGS,
# adding '-mcpu=G3 -mtune=G5' to them, which is already handled by Buildroot.
+# * fma3 and popcnt support is disabled because according to gcc manual [1], it
+# is only available on x86_64 haswell, broadwell and knl architecture.
+#
+# [1] https://gcc.gnu.org/onlinedocs/gcc-5.1.0/gcc/x86-Options.html#x86-Options
OPENCV_CONF_OPTS += \
-DENABLE_AVX2=$(if $(BR2_X86_CPU_HAS_AVX2),ON,OFF) \
+ -DENABLE_AVX2=$(if $(BR2_X86_CPU_HAS_AVX2),ON,OFF) \
+ -DENABLE_AVX=$(if $(BR2_X86_CPU_HAS_AVX),ON,OFF) \
-DENABLE_AVX=$(if $(BR2_X86_CPU_HAS_AVX),ON,OFF) \
+ -DENABLE_FMA3=OFF \
+ -DENABLE_POPCNT=OFF \
-DENABLE_POWERPC=OFF \
-DENABLE_SSE2=$(if $(BR2_X86_CPU_HAS_SSE2),ON,OFF) \
-DENABLE_SSE3=$(if $(BR2_X86_CPU_HAS_SSE3),ON,OFF) \
@@ -83,6 +101,19 @@ OPENCV_CONF_OPTS += \
# Cuda stuff
OPENCV_CONF_OPTS += \
+ -DBUILD_CUDA_STUBS=OFF \
+ -DBUILD_opencv_cudaarithm=OFF \
+ -DBUILD_opencv_cudabgsegm=OFF \
+ -DBUILD_opencv_cudacodec=OFF \
+ -DBUILD_opencv_cudafeatures2d=OFF \
+ -DBUILD_opencv_cudafilters=OFF \
+ -DBUILD_opencv_cudaimgproc=OFF \
+ -DBUILD_opencv_cudalegacy=OFF \
+ -DBUILD_opencv_cudaobjdetect=OFF \
+ -DBUILD_opencv_cudaoptflow=OFF \
+ -DBUILD_opencv_cudastereo=OFF \
+ -DBUILD_opencv_cudawarping=OFF \
+ -DBUILD_opencv_cudev=OFF \
-DWITH_CUBLAS=OFF \
-DWITH_CUDA=OFF \
-DWITH_CUFFT=OFF
@@ -97,8 +128,10 @@ OPENCV_CONF_OPTS += \
# Intel stuff
OPENCV_CONF_OPTS += \
+ -DBUILD_WITH_DYNAMIC_IPP=OFF \
-DWITH_INTELPERC=OFF \
-DWITH_IPP=OFF \
+ -DWITH_IPP_A=OFF \
-DWITH_TBB=OFF
# Smartek stuff
@@ -112,10 +145,11 @@ OPENCV_CONF_OPTS += -DWITH_XIMEA=OFF
# Non-Linux support (Android options) must remain OFF:
OPENCV_CONF_OPTS += \
+ -DANDROID=OFF \
-DBUILD_ANDROID_CAMERA_WRAPPER=OFF \
-DBUILD_ANDROID_EXAMPLES=OFF \
+ -DBUILD_ANDROID_SERVICE=OFF \
-DBUILD_FAT_JAVA_LIB=OFF \
- -DBUILD_JAVA_SUPPORT=OFF \
-DINSTALL_ANDROID_EXAMPLES=OFF \
-DWITH_ANDROID_CAMERA=OFF
@@ -130,15 +164,17 @@ OPENCV_CONF_OPTS += \
-DWITH_CSTRIPES=OFF \
-DWITH_DSHOW=OFF \
-DWITH_MSMF=OFF \
+ -DWITH_PTHREADS_PF=OFF \
-DWITH_VFW=OFF \
-DWITH_VIDEOINPUT=OFF \
-DWITH_WIN32UI=OFF
-# Software/3rd-party support options.
+# Software/3rd-party support options:
+# - disable all examples
OPENCV_CONF_OPTS += \
+ -DBUILD_EXAMPLES=OFF \
-DBUILD_JASPER=OFF \
-DBUILD_JPEG=OFF \
- -DBUILD_NEW_PYTHON_SUPPORT=OFF \
-DBUILD_OPENEXR=OFF \
-DBUILD_PNG=OFF \
-DBUILD_TIFF=OFF \
@@ -151,14 +187,20 @@ OPENCV_CONF_OPTS += \
# - eigen: OpenCV does not use it, not take any benefit from it.
OPENCV_CONF_OPTS += \
-DWITH_1394=OFF \
+ -DWITH_CLP=OFF \
-DWITH_EIGEN=OFF \
- -DWITH_IMAGEIO=OFF \
+ -DWITH_GDAL=OFF \
+ -DWITH_GPHOTO2=OFF \
-DWITH_OPENCL=OFF \
+ -DWITH_OPENCL_SVM=OFF \
-DWITH_OPENEXR=OFF \
-DWITH_OPENGL=OFF \
-DWITH_OPENMP=OFF \
+ -DWITH_OPENNI2=OFF \
-DWITH_OPENNI=OFF \
-DWITH_UNICAP=OFF \
+ -DWITH_VTK=OFF \
+ -DWITH_WEBP=OFF \
-DWITH_XINE=OFF
OPENCV_DEPENDENCIES += zlib
@@ -178,7 +220,7 @@ OPENCV_CONF_OPTS += -DWITH_GSTREAMER=OFF
endif
ifeq ($(BR2_PACKAGE_OPENCV_WITH_GTK),y)
-OPENCV_CONF_OPTS += -DWITH_GTK=ON
+OPENCV_CONF_OPTS += -DWITH_GTK=ON -DWITH_GTK_2_X=ON
OPENCV_DEPENDENCIES += libgtk2
else
OPENCV_CONF_OPTS += -DWITH_GTK=OFF
--
2.4.2
^ permalink raw reply related [flat|nested] 31+ messages in thread* [Buildroot] [PATCH v5 03/13] package/opencv: bump to version 3.0
2015-06-07 10:26 ` [Buildroot] [PATCH v5 03/13] package/opencv: bump to version 3.0 Samuel Martin
@ 2015-06-07 12:03 ` Yann E. MORIN
2015-06-14 14:05 ` Samuel Martin
0 siblings, 1 reply; 31+ messages in thread
From: Yann E. MORIN @ 2015-06-07 12:03 UTC (permalink / raw)
To: buildroot
Samuel, All,
On 2015-06-07 12:26 +0200, Samuel Martin spake thusly:
> This major version bump is in fact a bump from 2.4.10 to 2.4.11, then to
> 3.0.
>
> OpenCV-2.4.11 improves a lot the Buildroot integration, including a
> couple of patches that no longer need to be carried in Buildroot tree:
...that are no longer needed:
> - x86 PIC code compilation fix in core module [1];
> - return type fix in superes module [2];
> - opencv.pc generation [3].
>
> It also improves the gstreamer-0.10/1.x detection [4], that will needed
...that will be needed...
> in a follow-up patch.
>
> The OpenCV-3.0 does some major changes, for which a transition guide
> has been published [5].
>
> Among these changes coming with OpenCV-3.0, some new modules have been
> introduced and others got removed; leading to a bunch of configure
> option updates (to keep as much as possible an iso-functional-perimeter)
> and the legacy menu has been updated too.
> The worth noticing removal being:
> - the opencv_legacy and opencv_nonfree modules no longer exist;
> - the opencv_contrib module has moved out of the opencv base tree and
> now has its own repository [6].
> There is currently no plan to support it.
>
> Some 3rd-party supports have been improved or added; their integrations
> in Buildroot will be addressed in follow-up patches.
>
> [1] https://github.com/Itseez/opencv/commit/ea50be0529c248961e1b66293f8a9e4b807294a6
> [2] https://github.com/Itseez/opencv/commit/2e393ab83362743ba1825ad4b31d4a2925c606b4
> [3] https://github.com/Itseez/opencv/commit/eceada586bbf18fc267e437522ec4f1f23ddc656
> [4] https://github.com/Itseez/opencv/commit/38bb0db9dbec08666c8a64b3e4ead8fadf15c980
> [5] http://docs.opencv.org/master/db/dfa/tutorial_transition_guide.html
> [6] https://github.com/itseez/opencv_contrib
>
> Cc: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
> Signed-off-by: Samuel Martin <s.martin49@gmail.com>
>
> ---
> changes v4->v5:
> - new patch
> ---
> Config.in.legacy | 16 +++
> .../0001-core-fix-x86-PIC-code-compilation.patch | 49 -------
> ...ix-return-type-value-VideoFrameSource_GPU.patch | 40 ------
> ...VGenPkgconfig.cmake-rework-opencv.pc-gene.patch | 156 ---------------------
> package/opencv/Config.in | 44 +++---
> package/opencv/opencv.mk | 70 +++++++--
> 6 files changed, 96 insertions(+), 279 deletions(-)
> delete mode 100644 package/opencv/0001-core-fix-x86-PIC-code-compilation.patch
> delete mode 100644 package/opencv/0002-superres-Fix-return-type-value-VideoFrameSource_GPU.patch
> delete mode 100644 package/opencv/0003-cmake-OpenCVGenPkgconfig.cmake-rework-opencv.pc-gene.patch
>
> diff --git a/Config.in.legacy b/Config.in.legacy
> index 9b9fff0..e4a963b 100644
> --- a/Config.in.legacy
> +++ b/Config.in.legacy
> @@ -113,6 +113,22 @@ config BR2_TARGET_UBOOT_NETWORK
> help
> U-Boot's custom network settings options have been removed.
>
> +config BR2_PACKAGE_OPENCV_LIB_CONTRIB
> + bool "opencv contrib module"
> + select BR2_LEGACY
We're usually to be more explicit in the legacy option, either with a
longer prompt (e.g. "opencv contrib module no longer exists") or a help
entry (e.g. "help\nOpenCV contrib module no longer exists") or both.
> +config BR2_PACKAGE_OPENCV_LIB_GPU
> + bool "opencv gpu module (splited in several 'cudaXXX' modules)"
> + select BR2_LEGACY
'split' is an irregular verb, so its participle past is just 'split'.
Also, I did not see those new cudaXXX modules being added in that patch,
nor did I see a further patch adding them.
If we're not adding them, then no need to reference them in the legacy
prompt, or that would confuse the user.
> +config BR2_PACKAGE_OPENCV_LIB_LEGACY
> + bool "opencv legacy module"
> + select BR2_LEGACY
Ditto, we're usually trying to be more explicit about legacy options.
> +config BR2_PACKAGE_OPENCV_LIB_NONFREE
> + bool "opencv nonfree module"
> + select BR2_LEGACY
Ditto.
> diff --git a/package/opencv/opencv.mk b/package/opencv/opencv.mk
> index 4d08481..0a1b94c 100644
> --- a/package/opencv/opencv.mk
> +++ b/package/opencv/opencv.mk
[--SNIP--]
> @@ -12,19 +12,28 @@ OPENCV_LICENSE_FILES = LICENSE
>
> # OpenCV component options
> OPENCV_CONF_OPTS += \
> + -DBUILD_DOCS=OFF \
> -DBUILD_PERF_TESTS=$(if $(BR2_PACKAGE_OPENCV_BUILD_PERF_TESTS),ON,OFF) \
> -DBUILD_TESTS=$(if $(BR2_PACKAGE_OPENCV_BUILD_TESTS),ON,OFF) \
> -DBUILD_WITH_DEBUG_INFO=OFF
>
> +ifneq ($(BR2_PACKAGE_OPENCV_BUILD_TESTS)$(BR2_PACKAGE_OPENCV_BUILD_PERF_TESTS),)
> +OPENCV_CONF_OPTS += -DINSTALL_TEST=ON
> +else
> +OPENCV_CONF_OPTS += -DINSTALL_TEST=OFF
> +endif
We usually prefer positive logic, like so:
ifeq ($(BR2_PACKAGE_OPENCV_BUILD_TESTS)$(BR2_PACKAGE_OPENCV_BUILD_PERF_TESTS),)
OPENCV_CONF_OPTS += -DINSTALL_TEST=OFF
else
OPENCV_CONF_OPTS += -DINSTALL_TEST=ON
endif
> @@ -39,40 +48,49 @@ OPENCV_CONF_OPTS += \
> -DINSTALL_CREATE_DISTRIB=OFF
>
> # OpenCV module selection
> +# - contrib modules are disabled.
'disabled' or 'no longer exist' ?
> OPENCV_CONF_OPTS += \
> -DBUILD_opencv_androidcamera=OFF \
> -DBUILD_opencv_apps=OFF \
> -DBUILD_opencv_calib3d=$(if $(BR2_PACKAGE_OPENCV_LIB_CALIB3D),ON,OFF) \
> - -DBUILD_opencv_contrib=$(if $(BR2_PACKAGE_OPENCV_LIB_CONTRIB),ON,OFF) \
> -DBUILD_opencv_core=ON \
> - -DBUILD_opencv_dynamicuda=OFF \
> -DBUILD_opencv_features2d=$(if $(BR2_PACKAGE_OPENCV_LIB_FEATURES2D),ON,OFF) \
> -DBUILD_opencv_flann=$(if $(BR2_PACKAGE_OPENCV_LIB_FLANN),ON,OFF) \
> - -DBUILD_opencv_gpu=$(if $(BR2_PACKAGE_OPENCV_LIB_GPU),ON,OFF) \
> + -DBUILD_opencv_hal=ON \
> -DBUILD_opencv_highgui=$(if $(BR2_PACKAGE_OPENCV_LIB_HIGHGUI),ON,OFF) \
> + -DBUILD_opencv_imgcodecs=$(if $(BR2_PACKAGE_OPENCV_LIB_IMGCODECS),ON,OFF) \
> -DBUILD_opencv_imgproc=$(if $(BR2_PACKAGE_OPENCV_LIB_IMGPROC),ON,OFF) \
> -DBUILD_opencv_java=OFF \
> - -DBUILD_opencv_legacy=$(if $(BR2_PACKAGE_OPENCV_LIB_LEGACY),ON,OFF) \
> -DBUILD_opencv_ml=$(if $(BR2_PACKAGE_OPENCV_LIB_ML),ON,OFF) \
> - -DBUILD_opencv_nonfree=$(if $(BR2_PACKAGE_OPENCV_LIB_NONFREE),ON,OFF) \
> -DBUILD_opencv_objdetect=$(if $(BR2_PACKAGE_OPENCV_LIB_OBJDETECT),ON,OFF) \
> - -DBUILD_opencv_ocl=OFF \
> -DBUILD_opencv_photo=$(if $(BR2_PACKAGE_OPENCV_LIB_PHOTO),ON,OFF) \
> - -DBUILD_opencv_python=OFF \
> + -DBUILD_opencv_python2=OFF \
> + -DBUILD_opencv_python3=OFF \
> + -DBUILD_opencv_shape=$(if $(BR2_PACKAGE_OPENCV_LIB_SHAPE),ON,OFF) \
> -DBUILD_opencv_stitching=$(if $(BR2_PACKAGE_OPENCV_LIB_STITCHING),ON,OFF) \
> -DBUILD_opencv_superres=$(if $(BR2_PACKAGE_OPENCV_LIB_SUPERRES),ON,OFF) \
> -DBUILD_opencv_ts=$(if $(BR2_PACKAGE_OPENCV_LIB_TS),ON,OFF) \
> -DBUILD_opencv_video=$(if $(BR2_PACKAGE_OPENCV_LIB_VIDEO),ON,OFF) \
> + -DBUILD_opencv_videoio=$(if $(BR2_PACKAGE_OPENCV_LIB_VIDEOIO),ON,OFF) \
> -DBUILD_opencv_videostab=$(if $(BR2_PACKAGE_OPENCV_LIB_VIDEOSTAB),ON,OFF) \
> + -DBUILD_opencv_viz=OFF \
Any reason not to add a Config.in option for viz?
> -DBUILD_opencv_world=OFF
>
> # Hardware support options.
> #
> # * PowerPC support is turned off since its only effect is altering CFLAGS,
> # adding '-mcpu=G3 -mtune=G5' to them, which is already handled by Buildroot.
> +# * fma3 and popcnt support is disabled because according to gcc manual [1], it
> +# is only available on x86_64 haswell, broadwell and knl architecture.
> +#
> +# [1] https://gcc.gnu.org/onlinedocs/gcc-5.1.0/gcc/x86-Options.html#x86-Options
> OPENCV_CONF_OPTS += \
> -DENABLE_AVX2=$(if $(BR2_X86_CPU_HAS_AVX2),ON,OFF) \
> + -DENABLE_AVX2=$(if $(BR2_X86_CPU_HAS_AVX2),ON,OFF) \
> + -DENABLE_AVX=$(if $(BR2_X86_CPU_HAS_AVX),ON,OFF) \
> -DENABLE_AVX=$(if $(BR2_X86_CPU_HAS_AVX),ON,OFF) \
Uho... Duplicating avx and avx2.
And like I said for SSE/. SE2: AVX sorts before AVX2. Don't trust your
vim! ;-)
[--SNIP--]
> @@ -83,6 +101,19 @@ OPENCV_CONF_OPTS += \
>
> # Cuda stuff
> OPENCV_CONF_OPTS += \
> + -DBUILD_CUDA_STUBS=OFF \
> + -DBUILD_opencv_cudaarithm=OFF \
> + -DBUILD_opencv_cudabgsegm=OFF \
> + -DBUILD_opencv_cudacodec=OFF \
> + -DBUILD_opencv_cudafeatures2d=OFF \
> + -DBUILD_opencv_cudafilters=OFF \
> + -DBUILD_opencv_cudaimgproc=OFF \
> + -DBUILD_opencv_cudalegacy=OFF \
> + -DBUILD_opencv_cudaobjdetect=OFF \
> + -DBUILD_opencv_cudaoptflow=OFF \
> + -DBUILD_opencv_cudastereo=OFF \
> + -DBUILD_opencv_cudawarping=OFF \
> + -DBUILD_opencv_cudev=OFF \
Oh, we're adding all of the CUDA modules here, and they are forcibly
disabled. So, don't refer to them in the legacy prompt, or the user
would hunt for the corresponding options to enable/disable them, when
they are always disabled anyway, and that would be quite confusing
(He!, look how I was confused! ;-] ).
Regards,
Yann E. MORIN.
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
^ permalink raw reply [flat|nested] 31+ messages in thread* [Buildroot] [PATCH v5 03/13] package/opencv: bump to version 3.0
2015-06-07 12:03 ` Yann E. MORIN
@ 2015-06-14 14:05 ` Samuel Martin
0 siblings, 0 replies; 31+ messages in thread
From: Samuel Martin @ 2015-06-14 14:05 UTC (permalink / raw)
To: buildroot
Yann, all,
On Sun, Jun 7, 2015 at 2:03 PM, Yann E. MORIN <yann.morin.1998@free.fr> wrote:
[...]
>> # OpenCV module selection
>> +# - contrib modules are disabled.
>
> 'disabled' or 'no longer exist' ?
Sorry for the confusion, I mean:
opencv contrib modules from [1] are not available because we don't set
the OPENCV_EXTRA_MODULES_PATH CMake configure option.
I'll make the comment less cryptic in the next revision ;-).
>
>> OPENCV_CONF_OPTS += \
>> -DBUILD_opencv_androidcamera=OFF \
>> -DBUILD_opencv_apps=OFF \
>> -DBUILD_opencv_calib3d=$(if $(BR2_PACKAGE_OPENCV_LIB_CALIB3D),ON,OFF) \
>> - -DBUILD_opencv_contrib=$(if $(BR2_PACKAGE_OPENCV_LIB_CONTRIB),ON,OFF) \
>> -DBUILD_opencv_core=ON \
>> - -DBUILD_opencv_dynamicuda=OFF \
>> -DBUILD_opencv_features2d=$(if $(BR2_PACKAGE_OPENCV_LIB_FEATURES2D),ON,OFF) \
>> -DBUILD_opencv_flann=$(if $(BR2_PACKAGE_OPENCV_LIB_FLANN),ON,OFF) \
>> - -DBUILD_opencv_gpu=$(if $(BR2_PACKAGE_OPENCV_LIB_GPU),ON,OFF) \
>> + -DBUILD_opencv_hal=ON \
>> -DBUILD_opencv_highgui=$(if $(BR2_PACKAGE_OPENCV_LIB_HIGHGUI),ON,OFF) \
>> + -DBUILD_opencv_imgcodecs=$(if $(BR2_PACKAGE_OPENCV_LIB_IMGCODECS),ON,OFF) \
>> -DBUILD_opencv_imgproc=$(if $(BR2_PACKAGE_OPENCV_LIB_IMGPROC),ON,OFF) \
>> -DBUILD_opencv_java=OFF \
>> - -DBUILD_opencv_legacy=$(if $(BR2_PACKAGE_OPENCV_LIB_LEGACY),ON,OFF) \
>> -DBUILD_opencv_ml=$(if $(BR2_PACKAGE_OPENCV_LIB_ML),ON,OFF) \
>> - -DBUILD_opencv_nonfree=$(if $(BR2_PACKAGE_OPENCV_LIB_NONFREE),ON,OFF) \
>> -DBUILD_opencv_objdetect=$(if $(BR2_PACKAGE_OPENCV_LIB_OBJDETECT),ON,OFF) \
>> - -DBUILD_opencv_ocl=OFF \
>> -DBUILD_opencv_photo=$(if $(BR2_PACKAGE_OPENCV_LIB_PHOTO),ON,OFF) \
>> - -DBUILD_opencv_python=OFF \
>> + -DBUILD_opencv_python2=OFF \
>> + -DBUILD_opencv_python3=OFF \
>> + -DBUILD_opencv_shape=$(if $(BR2_PACKAGE_OPENCV_LIB_SHAPE),ON,OFF) \
>> -DBUILD_opencv_stitching=$(if $(BR2_PACKAGE_OPENCV_LIB_STITCHING),ON,OFF) \
>> -DBUILD_opencv_superres=$(if $(BR2_PACKAGE_OPENCV_LIB_SUPERRES),ON,OFF) \
>> -DBUILD_opencv_ts=$(if $(BR2_PACKAGE_OPENCV_LIB_TS),ON,OFF) \
>> -DBUILD_opencv_video=$(if $(BR2_PACKAGE_OPENCV_LIB_VIDEO),ON,OFF) \
>> + -DBUILD_opencv_videoio=$(if $(BR2_PACKAGE_OPENCV_LIB_VIDEOIO),ON,OFF) \
>> -DBUILD_opencv_videostab=$(if $(BR2_PACKAGE_OPENCV_LIB_VIDEOSTAB),ON,OFF) \
>> + -DBUILD_opencv_viz=OFF \
>
> Any reason not to add a Config.in option for viz?
Yes, it needs VTK. I'll add a comment about it as well in the next
revision of the patch.
Regards,
[1] https://github.com/itseez/opencv_contrib
--
Samuel
^ permalink raw reply [flat|nested] 31+ messages in thread
* [Buildroot] [PATCH v5 04/13] package/opencv: define modules inter-dependencies
2015-06-07 10:26 [Buildroot] [PATCH v5 00/13] OpenCV bump Samuel Martin
` (2 preceding siblings ...)
2015-06-07 10:26 ` [Buildroot] [PATCH v5 03/13] package/opencv: bump to version 3.0 Samuel Martin
@ 2015-06-07 10:26 ` Samuel Martin
2015-06-07 12:11 ` Yann E. MORIN
2015-06-07 10:26 ` [Buildroot] [PATCH v5 05/13] package/opencv: reword modules' prompt and help text Samuel Martin
` (8 subsequent siblings)
12 siblings, 1 reply; 31+ messages in thread
From: Samuel Martin @ 2015-06-07 10:26 UTC (permalink / raw)
To: buildroot
OpenCV allows to enable/disable the selection of modules (a.k.a.
opencv libraries). These modules depend one on the others; these
dependencies are already handled by the build-system (CMake).
However, the way we handled them in Buildroot was not really clean.
For each opencv module, there is a kconfig option, but we forced the
corresponding CMake config option without checking for the modules'
dependencies.
This patch replicates the modules' dependency relations in the
Config.in, so that the selection of the user will actually be built.
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Cc: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Cc: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
changes v4->v5:
- rebase
- remove Reviewed-by tag form Yann (because of the changes introduced
with the version bump)
changes v3->v4:
- rebase
- update ts module dependencies
changes v2->v3:
- rebase
- fix typo in commit log (Yann)
- update A/R/T tags
changes v1->v2:
- rebase
---
package/opencv/Config.in | 53 +++++++++++++++++++++++++++++++++---------------
1 file changed, 37 insertions(+), 16 deletions(-)
diff --git a/package/opencv/Config.in b/package/opencv/Config.in
index a3f1f5e..4ab4dc7 100644
--- a/package/opencv/Config.in
+++ b/package/opencv/Config.in
@@ -19,7 +19,8 @@ comment "OpenCV modules"
config BR2_PACKAGE_OPENCV_LIB_CALIB3D
bool "calib3d"
- default y
+ select BR2_PACKAGE_OPENCV_LIB_FEATURES2D
+ select BR2_PACKAGE_OPENCV_LIB_IMGPROC
help
Include opencv_calib3d module into the OpenCV build.
@@ -27,13 +28,15 @@ config BR2_PACKAGE_OPENCV_LIB_CALIB3D
config BR2_PACKAGE_OPENCV_LIB_FEATURES2D
bool "features2d"
- default y
+ select BR2_PACKAGE_OPENCV_LIB_FLANN
+ select BR2_PACKAGE_OPENCV_LIB_IMGPROC
+ select BR2_PACKAGE_OPENCV_LIB_ML
help
Include opencv_features2d module into the OpenCV build.
config BR2_PACKAGE_OPENCV_LIB_FLANN
bool "flann"
- default y
+ # opencv_core dependency is already enabled
help
Include opencv_flann module into the OpenCV build.
@@ -42,37 +45,41 @@ config BR2_PACKAGE_OPENCV_LIB_FLANN
config BR2_PACKAGE_OPENCV_LIB_HIGHGUI
bool "highgui"
- default y
+ select BR2_PACKAGE_OPENCV_LIB_IMGCODECS
+ select BR2_PACKAGE_OPENCV_LIB_IMGPROC
+ select BR2_PACKAGE_OPENCV_LIB_VIDEOIO
help
Include opencv_highgui module into the OpenCV build.
config BR2_PACKAGE_OPENCV_LIB_IMGCODECS
bool "imgcodecs (image codecs)"
- default y
+ select BR2_PACKAGE_OPENCV_LIB_IMGPROC
help
Include opencv_imgcodecs module into the OpenCV build.
config BR2_PACKAGE_OPENCV_LIB_IMGPROC
bool "imgproc (image processing)"
- default y
+ # opencv_core dependency is already enabled
help
Include opencv_imgproc module into the OpenCV build.
config BR2_PACKAGE_OPENCV_LIB_ML
bool "ml (machine learning)"
- default y
+ # opencv_core dependency is already enabled
help
Include opencv_ml module into the OpenCV build.
config BR2_PACKAGE_OPENCV_LIB_OBJDETECT
bool "objdetect"
- default y
+ # opencv_core dependency is already enabled
+ select BR2_PACKAGE_OPENCV_LIB_IMGPROC
+ select BR2_PACKAGE_OPENCV_LIB_ML
help
Include opencv_objdetect module into the OpenCV build.
config BR2_PACKAGE_OPENCV_LIB_PHOTO
bool "photo"
- default y
+ select BR2_PACKAGE_OPENCV_LIB_IMGPROC
help
Include opencv_photo module into the OpenCV build.
@@ -80,45 +87,59 @@ comment "opencv_python module requires numpy which is not yet available."
config BR2_PACKAGE_OPENCV_LIB_SHAPE
bool "shape (shape descriptors and matchers)"
- default y
+ # opencv_core dependency is already enabled
+ select BR2_PACKAGE_OPENCV_LIB_IMGPROC
+ select BR2_PACKAGE_OPENCV_LIB_VIDEO
help
Include opencv_shape module into the OpenCV build.
config BR2_PACKAGE_OPENCV_LIB_STITCHING
bool "stitching"
- default y
+ select BR2_PACKAGE_OPENCV_LIB_CALIB3D
+ select BR2_PACKAGE_OPENCV_LIB_FEATURES2D
+ select BR2_PACKAGE_OPENCV_LIB_IMGPROC
+ select BR2_PACKAGE_OPENCV_LIB_OBJDETECT
help
Include opencv_stitching module into the OpenCV build.
config BR2_PACKAGE_OPENCV_LIB_SUPERRES
bool "superres"
- default y
+ select BR2_PACKAGE_OPENCV_LIB_IMGPROC
+ select BR2_PACKAGE_OPENCV_LIB_VIDEO
help
Include opencv_superres "super resolution" - module into the OpenCV
build.
config BR2_PACKAGE_OPENCV_LIB_TS
bool "ts (touchscreen)"
+ # opencv_core dependency is already enabled
select BR2_PACKAGE_OPENCV_LIB_HIGHGUI
- default y
+ select BR2_PACKAGE_OPENCV_LIB_IMGCODECS
+ select BR2_PACKAGE_OPENCV_LIB_IMGPROC
+ select BR2_PACKAGE_OPENCV_LIB_VIDEOIO
help
Include opencv_ts module into the OpenCV build.
config BR2_PACKAGE_OPENCV_LIB_VIDEOIO
bool "videoio (media i/o)"
- default y
+ select BR2_PACKAGE_OPENCV_LIB_IMGCODECS
+ select BR2_PACKAGE_OPENCV_LIB_IMGPROC
help
Include opencv_videoio module into the OpenCV build.
config BR2_PACKAGE_OPENCV_LIB_VIDEO
bool "video"
- default y
+ select BR2_PACKAGE_OPENCV_LIB_IMGPROC
help
Include opencv_video module into the OpenCV build.
config BR2_PACKAGE_OPENCV_LIB_VIDEOSTAB
bool "videostab"
- default y
+ select BR2_PACKAGE_OPENCV_LIB_CALIB3D
+ select BR2_PACKAGE_OPENCV_LIB_FEATURES2D
+ select BR2_PACKAGE_OPENCV_LIB_IMGPROC
+ select BR2_PACKAGE_OPENCV_LIB_PHOTO
+ select BR2_PACKAGE_OPENCV_LIB_VIDEO
help
Include opencv_videostab module into the OpenCV build.
--
2.4.2
^ permalink raw reply related [flat|nested] 31+ messages in thread* [Buildroot] [PATCH v5 04/13] package/opencv: define modules inter-dependencies
2015-06-07 10:26 ` [Buildroot] [PATCH v5 04/13] package/opencv: define modules inter-dependencies Samuel Martin
@ 2015-06-07 12:11 ` Yann E. MORIN
0 siblings, 0 replies; 31+ messages in thread
From: Yann E. MORIN @ 2015-06-07 12:11 UTC (permalink / raw)
To: buildroot
Samuel, All,
On 2015-06-07 12:26 +0200, Samuel Martin spake thusly:
> OpenCV allows to enable/disable the selection of modules (a.k.a.
> opencv libraries). These modules depend one on the others; these
> dependencies are already handled by the build-system (CMake).
>
> However, the way we handled them in Buildroot was not really clean.
> For each opencv module, there is a kconfig option, but we forced the
> corresponding CMake config option without checking for the modules'
> dependencies.
>
> This patch replicates the modules' dependency relations in the
> Config.in, so that the selection of the user will actually be built.
>
> Signed-off-by: Samuel Martin <s.martin49@gmail.com>
> Cc: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
> Cc: "Yann E. MORIN" <yann.morin.1998@free.fr>
[--SNIP--]
> diff --git a/package/opencv/Config.in b/package/opencv/Config.in
> index a3f1f5e..4ab4dc7 100644
> --- a/package/opencv/Config.in
> +++ b/package/opencv/Config.in
> @@ -19,7 +19,8 @@ comment "OpenCV modules"
>
> config BR2_PACKAGE_OPENCV_LIB_CALIB3D
> bool "calib3d"
> - default y
> + select BR2_PACKAGE_OPENCV_LIB_FEATURES2D
> + select BR2_PACKAGE_OPENCV_LIB_IMGPROC
You remove the 'default y' but that means existing defconfig files will
no longer be usable.
Also, it is not documented in the commit log.
And it leaves quite a few options to default to 'y' anyway.
I'm not opposed to changing that, but it must be really thought about.
And in any case, this should probably be a separate patch, that removes
all 'default y' for all options, while this patch only enforces
dependency, like is explained in the commit log.
Regards,
Yann E. MORIN.
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
^ permalink raw reply [flat|nested] 31+ messages in thread
* [Buildroot] [PATCH v5 05/13] package/opencv: reword modules' prompt and help text
2015-06-07 10:26 [Buildroot] [PATCH v5 00/13] OpenCV bump Samuel Martin
` (3 preceding siblings ...)
2015-06-07 10:26 ` [Buildroot] [PATCH v5 04/13] package/opencv: define modules inter-dependencies Samuel Martin
@ 2015-06-07 10:26 ` Samuel Martin
2015-06-07 12:12 ` Yann E. MORIN
2015-06-07 10:26 ` [Buildroot] [PATCH v5 06/13] package/opencv: add qt5 support Samuel Martin
` (7 subsequent siblings)
12 siblings, 1 reply; 31+ messages in thread
From: Samuel Martin @ 2015-06-07 10:26 UTC (permalink / raw)
To: buildroot
This patch is mostly cosmetic changes improving the human interface.
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
---
changes v4->v5:
- new patch
---
package/opencv/Config.in | 25 ++++++++++++-------------
1 file changed, 12 insertions(+), 13 deletions(-)
diff --git a/package/opencv/Config.in b/package/opencv/Config.in
index 4ab4dc7..58a6ccb 100644
--- a/package/opencv/Config.in
+++ b/package/opencv/Config.in
@@ -18,7 +18,7 @@ if BR2_PACKAGE_OPENCV
comment "OpenCV modules"
config BR2_PACKAGE_OPENCV_LIB_CALIB3D
- bool "calib3d"
+ bool "calib3d (camera calibration and 3d reconstruction)"
select BR2_PACKAGE_OPENCV_LIB_FEATURES2D
select BR2_PACKAGE_OPENCV_LIB_IMGPROC
help
@@ -27,7 +27,7 @@ config BR2_PACKAGE_OPENCV_LIB_CALIB3D
# opencv_core module is automatically enabled when OpenCV package is selected
config BR2_PACKAGE_OPENCV_LIB_FEATURES2D
- bool "features2d"
+ bool "features2d (2d features framework)"
select BR2_PACKAGE_OPENCV_LIB_FLANN
select BR2_PACKAGE_OPENCV_LIB_IMGPROC
select BR2_PACKAGE_OPENCV_LIB_ML
@@ -35,7 +35,7 @@ config BR2_PACKAGE_OPENCV_LIB_FEATURES2D
Include opencv_features2d module into the OpenCV build.
config BR2_PACKAGE_OPENCV_LIB_FLANN
- bool "flann"
+ bool "flann (clustering and search in multi-dimensional spaces)"
# opencv_core dependency is already enabled
help
Include opencv_flann module into the OpenCV build.
@@ -44,7 +44,7 @@ config BR2_PACKAGE_OPENCV_LIB_FLANN
# opencv_core, so it is automatically enabled
config BR2_PACKAGE_OPENCV_LIB_HIGHGUI
- bool "highgui"
+ bool "highgui (high-level gui and media i/o)"
select BR2_PACKAGE_OPENCV_LIB_IMGCODECS
select BR2_PACKAGE_OPENCV_LIB_IMGPROC
select BR2_PACKAGE_OPENCV_LIB_VIDEOIO
@@ -70,7 +70,7 @@ config BR2_PACKAGE_OPENCV_LIB_ML
Include opencv_ml module into the OpenCV build.
config BR2_PACKAGE_OPENCV_LIB_OBJDETECT
- bool "objdetect"
+ bool "objdetect (object detection)"
# opencv_core dependency is already enabled
select BR2_PACKAGE_OPENCV_LIB_IMGPROC
select BR2_PACKAGE_OPENCV_LIB_ML
@@ -78,7 +78,7 @@ config BR2_PACKAGE_OPENCV_LIB_OBJDETECT
Include opencv_objdetect module into the OpenCV build.
config BR2_PACKAGE_OPENCV_LIB_PHOTO
- bool "photo"
+ bool "photo (computational photography)"
select BR2_PACKAGE_OPENCV_LIB_IMGPROC
help
Include opencv_photo module into the OpenCV build.
@@ -94,7 +94,7 @@ config BR2_PACKAGE_OPENCV_LIB_SHAPE
Include opencv_shape module into the OpenCV build.
config BR2_PACKAGE_OPENCV_LIB_STITCHING
- bool "stitching"
+ bool "stitching (images stitching)"
select BR2_PACKAGE_OPENCV_LIB_CALIB3D
select BR2_PACKAGE_OPENCV_LIB_FEATURES2D
select BR2_PACKAGE_OPENCV_LIB_IMGPROC
@@ -103,15 +103,14 @@ config BR2_PACKAGE_OPENCV_LIB_STITCHING
Include opencv_stitching module into the OpenCV build.
config BR2_PACKAGE_OPENCV_LIB_SUPERRES
- bool "superres"
+ bool "superres (super resolution)"
select BR2_PACKAGE_OPENCV_LIB_IMGPROC
select BR2_PACKAGE_OPENCV_LIB_VIDEO
help
- Include opencv_superres "super resolution" - module into the OpenCV
- build.
+ Include opencv_superres module into the OpenCV build.
config BR2_PACKAGE_OPENCV_LIB_TS
- bool "ts (touchscreen)"
+ bool "ts (test module)"
# opencv_core dependency is already enabled
select BR2_PACKAGE_OPENCV_LIB_HIGHGUI
select BR2_PACKAGE_OPENCV_LIB_IMGCODECS
@@ -128,13 +127,13 @@ config BR2_PACKAGE_OPENCV_LIB_VIDEOIO
Include opencv_videoio module into the OpenCV build.
config BR2_PACKAGE_OPENCV_LIB_VIDEO
- bool "video"
+ bool "video (video analysis)"
select BR2_PACKAGE_OPENCV_LIB_IMGPROC
help
Include opencv_video module into the OpenCV build.
config BR2_PACKAGE_OPENCV_LIB_VIDEOSTAB
- bool "videostab"
+ bool "videostab (video stabilization)"
select BR2_PACKAGE_OPENCV_LIB_CALIB3D
select BR2_PACKAGE_OPENCV_LIB_FEATURES2D
select BR2_PACKAGE_OPENCV_LIB_IMGPROC
--
2.4.2
^ permalink raw reply related [flat|nested] 31+ messages in thread* [Buildroot] [PATCH v5 05/13] package/opencv: reword modules' prompt and help text
2015-06-07 10:26 ` [Buildroot] [PATCH v5 05/13] package/opencv: reword modules' prompt and help text Samuel Martin
@ 2015-06-07 12:12 ` Yann E. MORIN
2015-06-09 20:46 ` Thomas Petazzoni
0 siblings, 1 reply; 31+ messages in thread
From: Yann E. MORIN @ 2015-06-07 12:12 UTC (permalink / raw)
To: buildroot
Samuel, All,
On 2015-06-07 12:26 +0200, Samuel Martin spake thusly:
> This patch is mostly cosmetic changes improving the human interface.
We're not usually doing that in the prompt, but in the help texts.
So I'm not sure...
Regards,
Yann E. MORIN.
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
^ permalink raw reply [flat|nested] 31+ messages in thread
* [Buildroot] [PATCH v5 05/13] package/opencv: reword modules' prompt and help text
2015-06-07 12:12 ` Yann E. MORIN
@ 2015-06-09 20:46 ` Thomas Petazzoni
0 siblings, 0 replies; 31+ messages in thread
From: Thomas Petazzoni @ 2015-06-09 20:46 UTC (permalink / raw)
To: buildroot
Yann, Samuel,
On Sun, 7 Jun 2015 14:12:38 +0200, Yann E. MORIN wrote:
> On 2015-06-07 12:26 +0200, Samuel Martin spake thusly:
> > This patch is mostly cosmetic changes improving the human interface.
>
> We're not usually doing that in the prompt, but in the help texts.
>
> So I'm not sure...
Agreed with Yann here. Keep just the module name in the prompt, and
extend the help text if needed.
Thanks,
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 31+ messages in thread
* [Buildroot] [PATCH v5 06/13] package/opencv: add qt5 support
2015-06-07 10:26 [Buildroot] [PATCH v5 00/13] OpenCV bump Samuel Martin
` (4 preceding siblings ...)
2015-06-07 10:26 ` [Buildroot] [PATCH v5 05/13] package/opencv: reword modules' prompt and help text Samuel Martin
@ 2015-06-07 10:26 ` Samuel Martin
2015-06-07 12:16 ` Yann E. MORIN
2015-06-07 10:26 ` [Buildroot] [PATCH v5 07/13] package/opencv: add python support Samuel Martin
` (6 subsequent siblings)
12 siblings, 1 reply; 31+ messages in thread
From: Samuel Martin @ 2015-06-07 10:26 UTC (permalink / raw)
To: buildroot
Starting with the 2.4.6 release, OpenCV supports both Qt4 and Qt5,
but only one can be enabled at the same time.
Since Buildroot does not support Qt4/Qt5 co-existence, we keep the Qt
support knob as a boolean, but make it depend on BR2_PACKAGE_QT or
BR2_PACKAGE_QT5, and automatically uses the enabled one.
Note that we usually use 'select ...' to express the dependencies
between packages, but in this case, we cannot since the Qt4/Qt5
co-existence exclusion is not handled by a simple choice, but by a
dependency. This makes impossible using 'select ...' for the Qt
support knob without triggering a circular dependency at the kconfig
level.
Besides, we already use 'depends on ...' to express the dependencies
with some "big" packages (like xorg or libgtk2). qt or qt5* packages
are fairly big. So, I don't think it will hurt that much to use a
'depends on ...' statement in this case.
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Cc: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
changes v4->v5:
- rebase
changes v3->v4:
- rebase
- rename _OPT -> _OPTS options
- rework qt backend selection (Yann)
changes v2->v3:
- rebase
- remove duplicate qt/qt5 dependencies (Yann)
- add missing 'depends on' to the comment about qt4
changes v1->v2:
- rebase
- update threads support dependency for qt5
---
package/opencv/Config.in | 32 ++++++++++++++++++++++++++++----
package/opencv/opencv.mk | 4 ++--
2 files changed, 30 insertions(+), 6 deletions(-)
diff --git a/package/opencv/Config.in b/package/opencv/Config.in
index 58a6ccb..4866780 100644
--- a/package/opencv/Config.in
+++ b/package/opencv/Config.in
@@ -209,13 +209,37 @@ config BR2_PACKAGE_OPENCV_WITH_QT
bool "qt backend support"
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_USE_MMU # qt
- depends on BR2_PACKAGE_OPENCV_LIB_HIGHGUI
- select BR2_PACKAGE_QT
+ depends on BR2_PACKAGE_QT || BR2_PACKAGE_QT5
+ select BR2_PACKAGE_OPENCV_QT_BACKEND if BR2_PACKAGE_QT
+ select BR2_PACKAGE_OPENCV_QT5_BACKEND if BR2_PACKAGE_QT5
+ help
+ Enable Qt support for OpenCV.
+
+ This uses whatever Qt version you enabled: Qt4 or Qt5.
+
+ If Qt4 is already enabled, then QtTest and QtGui modules and STL support
+ will be enabled as well.
+
+ If Qt5 is already enabled, then the following components will be enabled
+ as well: base, concurrent, test, gui and widgets.
+
+config BR2_PACKAGE_OPENCV_QT_BACKEND
+ bool
select BR2_PACKAGE_QT_STL
select BR2_PACKAGE_QT_GUI_MODULE
select BR2_PACKAGE_QT_TEST
- help
- Use Qt with QtTest module and STL support
+
+config BR2_PACKAGE_OPENCV_QT5_BACKEND
+ bool
+ select BR2_PACKAGE_QT5BASE
+ select BR2_PACKAGE_QT5BASE_CONCURRENT
+ select BR2_PACKAGE_QT5BASE_TEST
+ select BR2_PACKAGE_QT5BASE_GUI
+ select BR2_PACKAGE_QT5BASE_WIDGETS
+
+comment "qt backend needs either Qt4 or Qt5"
+ depends on !BR2_PACKAGE_QT && !BR2_PACKAGE_QT5
+ depends on !BR2_avr32
config BR2_PACKAGE_OPENCV_WITH_TIFF
bool "tiff support"
diff --git a/package/opencv/opencv.mk b/package/opencv/opencv.mk
index 0a1b94c..07bc893 100644
--- a/package/opencv/opencv.mk
+++ b/package/opencv/opencv.mk
@@ -248,8 +248,8 @@ OPENCV_CONF_OPTS += -DWITH_PNG=OFF
endif
ifeq ($(BR2_PACKAGE_OPENCV_WITH_QT),y)
-OPENCV_CONF_OPTS += -DWITH_QT=4
-OPENCV_DEPENDENCIES += qt
+OPENCV_CONF_OPTS += -DWITH_QT=$(if $(BR2_PACKAGE_QT),4,5)
+OPENCV_DEPENDENCIES += $(if $(BR2_PACKAGE_QT),qt,qt5base)
else
OPENCV_CONF_OPTS += -DWITH_QT=OFF
endif
--
2.4.2
^ permalink raw reply related [flat|nested] 31+ messages in thread* [Buildroot] [PATCH v5 06/13] package/opencv: add qt5 support
2015-06-07 10:26 ` [Buildroot] [PATCH v5 06/13] package/opencv: add qt5 support Samuel Martin
@ 2015-06-07 12:16 ` Yann E. MORIN
0 siblings, 0 replies; 31+ messages in thread
From: Yann E. MORIN @ 2015-06-07 12:16 UTC (permalink / raw)
To: buildroot
Samuel, All,
On 2015-06-07 12:26 +0200, Samuel Martin spake thusly:
> Starting with the 2.4.6 release, OpenCV supports both Qt4 and Qt5,
> but only one can be enabled at the same time.
>
> Since Buildroot does not support Qt4/Qt5 co-existence, we keep the Qt
> support knob as a boolean, but make it depend on BR2_PACKAGE_QT or
> BR2_PACKAGE_QT5, and automatically uses the enabled one.
>
> Note that we usually use 'select ...' to express the dependencies
> between packages, but in this case, we cannot since the Qt4/Qt5
> co-existence exclusion is not handled by a simple choice, but by a
> dependency. This makes impossible using 'select ...' for the Qt
> support knob without triggering a circular dependency at the kconfig
> level.
>
> Besides, we already use 'depends on ...' to express the dependencies
> with some "big" packages (like xorg or libgtk2). qt or qt5* packages
> are fairly big. So, I don't think it will hurt that much to use a
> 'depends on ...' statement in this case.
>
> Signed-off-by: Samuel Martin <s.martin49@gmail.com>
> Cc: "Yann E. MORIN" <yann.morin.1998@free.fr>
[--SNIP--]
> diff --git a/package/opencv/Config.in b/package/opencv/Config.in
> index 58a6ccb..4866780 100644
> --- a/package/opencv/Config.in
> +++ b/package/opencv/Config.in
> @@ -209,13 +209,37 @@ config BR2_PACKAGE_OPENCV_WITH_QT
[--SNIP--]
> +comment "qt backend needs either Qt4 or Qt5"
> + depends on !BR2_PACKAGE_QT && !BR2_PACKAGE_QT5
> + depends on !BR2_avr32
We no longer support avr32. I should know, I ditched it! ;-)
Otherwise, looks good.
Regards,
Yann E. MORIN.
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
^ permalink raw reply [flat|nested] 31+ messages in thread
* [Buildroot] [PATCH v5 07/13] package/opencv: add python support
2015-06-07 10:26 [Buildroot] [PATCH v5 00/13] OpenCV bump Samuel Martin
` (5 preceding siblings ...)
2015-06-07 10:26 ` [Buildroot] [PATCH v5 06/13] package/opencv: add qt5 support Samuel Martin
@ 2015-06-07 10:26 ` Samuel Martin
2015-06-07 12:22 ` Yann E. MORIN
2015-06-07 10:26 ` [Buildroot] [PATCH v5 08/13] package/opencv: add gstreamer-1.x support Samuel Martin
` (5 subsequent siblings)
12 siblings, 1 reply; 31+ messages in thread
From: Samuel Martin @ 2015-06-07 10:26 UTC (permalink / raw)
To: buildroot
opencv_python module needs python-numpy because it uses some numpy
headers in this wrapper.
From its 2.4 release, OpenCV offers python bindings, but they required
most of the OpenCV modules to be enabled.
Since OpenCV-3.0.0, python bindings have been reworked:
- it now supports both python2 and python3
- only built modules supporting wrapped in python will be included in
the bindings.
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
---
changes v4->v5:
- rebase
- update commit log
- fix python-numpy selection
- add python3 support
changes v3->v4:
- rebase
- rename _OPT -> _OPTS
- remove python/numpy patch (merged upstream since opencv bump)
changes v2->v3:
- rebase
- add fetch uri in the opencv's patch (Yann)
- move pyhton module knob under the multi-line if block about python deps
(Yann)
changes v1->v2:
- rebase
- use patch merged upstream
---
package/opencv/Config.in | 12 +++++++++++-
package/opencv/opencv.mk | 33 +++++++++++++++++++++++++++++++--
2 files changed, 42 insertions(+), 3 deletions(-)
diff --git a/package/opencv/Config.in b/package/opencv/Config.in
index 4866780..db950f4 100644
--- a/package/opencv/Config.in
+++ b/package/opencv/Config.in
@@ -83,7 +83,17 @@ config BR2_PACKAGE_OPENCV_LIB_PHOTO
help
Include opencv_photo module into the OpenCV build.
-comment "opencv_python module requires numpy which is not yet available."
+config BR2_PACKAGE_OPENCV_LIB_PYTHON
+ bool "python"
+ depends on BR2_PACKAGE_PYTHON || BR2_PACKAGE_PYTHON3
+ depends on BR2_aarch64 || BR2_arm || BR2_armeb || BR2_i386 \
+ || BR2_mips || BR2_mipsel || BR2_powerpc || BR2_powerpc64 \
+ || BR2_sh || BR2_x86_64 # python-numpy
+ depends on !BR2_TOOLCHAIN_USES_UCLIBC || BR2_i386 || BR2_x86_64 # python-numpy
+ select BR2_PACKAGE_PYTHON_NUMPY
+ help
+ Include opencv_python module into the OpenCV build.
+ No python example is installed.
config BR2_PACKAGE_OPENCV_LIB_SHAPE
bool "shape (shape descriptors and matchers)"
diff --git a/package/opencv/opencv.mk b/package/opencv/opencv.mk
index 07bc893..aa972dc 100644
--- a/package/opencv/opencv.mk
+++ b/package/opencv/opencv.mk
@@ -64,8 +64,6 @@ OPENCV_CONF_OPTS += \
-DBUILD_opencv_ml=$(if $(BR2_PACKAGE_OPENCV_LIB_ML),ON,OFF) \
-DBUILD_opencv_objdetect=$(if $(BR2_PACKAGE_OPENCV_LIB_OBJDETECT),ON,OFF) \
-DBUILD_opencv_photo=$(if $(BR2_PACKAGE_OPENCV_LIB_PHOTO),ON,OFF) \
- -DBUILD_opencv_python2=OFF \
- -DBUILD_opencv_python3=OFF \
-DBUILD_opencv_shape=$(if $(BR2_PACKAGE_OPENCV_LIB_SHAPE),ON,OFF) \
-DBUILD_opencv_stitching=$(if $(BR2_PACKAGE_OPENCV_LIB_STITCHING),ON,OFF) \
-DBUILD_opencv_superres=$(if $(BR2_PACKAGE_OPENCV_LIB_SUPERRES),ON,OFF) \
@@ -270,6 +268,37 @@ else
OPENCV_CONF_OPTS += -DWITH_V4L=OFF -DWITH_LIBV4L=OFF
endif
+ifeq ($(BR2_PACKAGE_OPENCV_LIB_PYTHON),y)
+ifeq ($(BR2_PACKAGE_PYTHON),y)
+OPENCV_CONF_OPTS += \
+ -DBUILD_opencv_python2=ON \
+ -DBUILD_opencv_python3=OFF \
+ -DPYTHON2_EXECUTABLE=$(HOST_DIR)/usr/bin/python2 \
+ -DPYTHON2_INCLUDE_PATH=$(STAGING_DIR)/usr/include/python$(PYTHON_VERSION_MAJOR) \
+ -DPYTHON2_LIBRARIES=$(STAGING_DIR)/usr/lib/libpython$(PYTHON_VERSION_MAJOR).so \
+ -DPYTHON2_NUMPY_INCLUDE_DIRS=$(STAGING_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages/numpy/core/include \
+ -DPYTHON2_PACKAGES_PATH=/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages \
+ -DPYTHON2_NUMPY_VERSION=$(PYTHON_NUMPY_VERSION)
+OPENCV_DEPENDENCIES += python
+else
+OPENCV_CONF_OPTS += \
+ -DBUILD_opencv_python2=OFF \
+ -DBUILD_opencv_python3=ON \
+ -DPYTHON3_EXECUTABLE=$(HOST_DIR)/usr/bin/python3 \
+ -DPYTHON3_INCLUDE_PATH=$(STAGING_DIR)/usr/include/python$(PYTHON3_VERSION_MAJOR)m \
+ -DPYTHON3_LIBRARIES=$(STAGING_DIR)/usr/lib/libpython$(PYTHON3_VERSION_MAJOR)m.so \
+ -DPYTHON3_NUMPY_INCLUDE_DIRS=$(STAGING_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages/numpy/core/include \
+ -DPYTHON3_PACKAGES_PATH=/usr/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages \
+ -DPYTHON3_NUMPY_VERSION=$(PYTHON_NUMPY_VERSION)
+OPENCV_DEPENDENCIES += python3
+endif
+OPENCV_DEPENDENCIES += python-numpy
+else
+OPENCV_CONF_OPTS += \
+ -DBUILD_opencv_python2=OFF \
+ -DBUILD_opencv_python3=OFF
+endif
+
# Installation hooks:
define OPENCV_CLEAN_INSTALL_DOC
$(RM) -fr $(TARGET_DIR)/usr/share/OpenCV/doc
--
2.4.2
^ permalink raw reply related [flat|nested] 31+ messages in thread* [Buildroot] [PATCH v5 07/13] package/opencv: add python support
2015-06-07 10:26 ` [Buildroot] [PATCH v5 07/13] package/opencv: add python support Samuel Martin
@ 2015-06-07 12:22 ` Yann E. MORIN
0 siblings, 0 replies; 31+ messages in thread
From: Yann E. MORIN @ 2015-06-07 12:22 UTC (permalink / raw)
To: buildroot
Samuel, All,
On 2015-06-07 12:26 +0200, Samuel Martin spake thusly:
> opencv_python module needs python-numpy because it uses some numpy
> headers in this wrapper.
>
> From its 2.4 release, OpenCV offers python bindings, but they required
> most of the OpenCV modules to be enabled.
>
> Since OpenCV-3.0.0, python bindings have been reworked:
> - it now supports both python2 and python3
> - only built modules supporting wrapped in python will be included in
> the bindings.
>
> Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Regards,
Yann E. MORIN.
> ---
> changes v4->v5:
> - rebase
> - update commit log
> - fix python-numpy selection
> - add python3 support
>
> changes v3->v4:
> - rebase
> - rename _OPT -> _OPTS
> - remove python/numpy patch (merged upstream since opencv bump)
>
> changes v2->v3:
> - rebase
> - add fetch uri in the opencv's patch (Yann)
> - move pyhton module knob under the multi-line if block about python deps
> (Yann)
>
> changes v1->v2:
> - rebase
> - use patch merged upstream
> ---
> package/opencv/Config.in | 12 +++++++++++-
> package/opencv/opencv.mk | 33 +++++++++++++++++++++++++++++++--
> 2 files changed, 42 insertions(+), 3 deletions(-)
>
> diff --git a/package/opencv/Config.in b/package/opencv/Config.in
> index 4866780..db950f4 100644
> --- a/package/opencv/Config.in
> +++ b/package/opencv/Config.in
> @@ -83,7 +83,17 @@ config BR2_PACKAGE_OPENCV_LIB_PHOTO
> help
> Include opencv_photo module into the OpenCV build.
>
> -comment "opencv_python module requires numpy which is not yet available."
> +config BR2_PACKAGE_OPENCV_LIB_PYTHON
> + bool "python"
> + depends on BR2_PACKAGE_PYTHON || BR2_PACKAGE_PYTHON3
> + depends on BR2_aarch64 || BR2_arm || BR2_armeb || BR2_i386 \
> + || BR2_mips || BR2_mipsel || BR2_powerpc || BR2_powerpc64 \
> + || BR2_sh || BR2_x86_64 # python-numpy
> + depends on !BR2_TOOLCHAIN_USES_UCLIBC || BR2_i386 || BR2_x86_64 # python-numpy
> + select BR2_PACKAGE_PYTHON_NUMPY
> + help
> + Include opencv_python module into the OpenCV build.
> + No python example is installed.
>
> config BR2_PACKAGE_OPENCV_LIB_SHAPE
> bool "shape (shape descriptors and matchers)"
> diff --git a/package/opencv/opencv.mk b/package/opencv/opencv.mk
> index 07bc893..aa972dc 100644
> --- a/package/opencv/opencv.mk
> +++ b/package/opencv/opencv.mk
> @@ -64,8 +64,6 @@ OPENCV_CONF_OPTS += \
> -DBUILD_opencv_ml=$(if $(BR2_PACKAGE_OPENCV_LIB_ML),ON,OFF) \
> -DBUILD_opencv_objdetect=$(if $(BR2_PACKAGE_OPENCV_LIB_OBJDETECT),ON,OFF) \
> -DBUILD_opencv_photo=$(if $(BR2_PACKAGE_OPENCV_LIB_PHOTO),ON,OFF) \
> - -DBUILD_opencv_python2=OFF \
> - -DBUILD_opencv_python3=OFF \
> -DBUILD_opencv_shape=$(if $(BR2_PACKAGE_OPENCV_LIB_SHAPE),ON,OFF) \
> -DBUILD_opencv_stitching=$(if $(BR2_PACKAGE_OPENCV_LIB_STITCHING),ON,OFF) \
> -DBUILD_opencv_superres=$(if $(BR2_PACKAGE_OPENCV_LIB_SUPERRES),ON,OFF) \
> @@ -270,6 +268,37 @@ else
> OPENCV_CONF_OPTS += -DWITH_V4L=OFF -DWITH_LIBV4L=OFF
> endif
>
> +ifeq ($(BR2_PACKAGE_OPENCV_LIB_PYTHON),y)
> +ifeq ($(BR2_PACKAGE_PYTHON),y)
> +OPENCV_CONF_OPTS += \
> + -DBUILD_opencv_python2=ON \
> + -DBUILD_opencv_python3=OFF \
> + -DPYTHON2_EXECUTABLE=$(HOST_DIR)/usr/bin/python2 \
> + -DPYTHON2_INCLUDE_PATH=$(STAGING_DIR)/usr/include/python$(PYTHON_VERSION_MAJOR) \
> + -DPYTHON2_LIBRARIES=$(STAGING_DIR)/usr/lib/libpython$(PYTHON_VERSION_MAJOR).so \
> + -DPYTHON2_NUMPY_INCLUDE_DIRS=$(STAGING_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages/numpy/core/include \
> + -DPYTHON2_PACKAGES_PATH=/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages \
> + -DPYTHON2_NUMPY_VERSION=$(PYTHON_NUMPY_VERSION)
> +OPENCV_DEPENDENCIES += python
> +else
> +OPENCV_CONF_OPTS += \
> + -DBUILD_opencv_python2=OFF \
> + -DBUILD_opencv_python3=ON \
> + -DPYTHON3_EXECUTABLE=$(HOST_DIR)/usr/bin/python3 \
> + -DPYTHON3_INCLUDE_PATH=$(STAGING_DIR)/usr/include/python$(PYTHON3_VERSION_MAJOR)m \
> + -DPYTHON3_LIBRARIES=$(STAGING_DIR)/usr/lib/libpython$(PYTHON3_VERSION_MAJOR)m.so \
> + -DPYTHON3_NUMPY_INCLUDE_DIRS=$(STAGING_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages/numpy/core/include \
> + -DPYTHON3_PACKAGES_PATH=/usr/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages \
> + -DPYTHON3_NUMPY_VERSION=$(PYTHON_NUMPY_VERSION)
> +OPENCV_DEPENDENCIES += python3
> +endif
> +OPENCV_DEPENDENCIES += python-numpy
> +else
> +OPENCV_CONF_OPTS += \
> + -DBUILD_opencv_python2=OFF \
> + -DBUILD_opencv_python3=OFF
> +endif
> +
> # Installation hooks:
> define OPENCV_CLEAN_INSTALL_DOC
> $(RM) -fr $(TARGET_DIR)/usr/share/OpenCV/doc
> --
> 2.4.2
>
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
^ permalink raw reply [flat|nested] 31+ messages in thread
* [Buildroot] [PATCH v5 08/13] package/opencv: add gstreamer-1.x support
2015-06-07 10:26 [Buildroot] [PATCH v5 00/13] OpenCV bump Samuel Martin
` (6 preceding siblings ...)
2015-06-07 10:26 ` [Buildroot] [PATCH v5 07/13] package/opencv: add python support Samuel Martin
@ 2015-06-07 10:26 ` Samuel Martin
2015-06-07 12:34 ` Yann E. MORIN
2015-06-07 10:26 ` [Buildroot] [PATCH v5 09/13] package/opencv: add opengl support Samuel Martin
` (4 subsequent siblings)
12 siblings, 1 reply; 31+ messages in thread
From: Samuel Martin @ 2015-06-07 10:26 UTC (permalink / raw)
To: buildroot
Starting with the 2.4.10 release, OpenCV supports both Gstreamer-0.10
and Gstreamer-1, but only one can be enabled at the same time (OpenCV
uses Gstreamer-1 when available).
Since Buildroot allows both Gstreamer versions to co-exist, the
configure options and dependencies are set to reflect the OpenCV
preference.
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Cc: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
changes v4->v5:
- rebase
- rework gst-X backend selection (use similar structure for qt)
- remove patch merged upstream
changes v3->v4:
- new patch
---
package/opencv/Config.in | 34 ++++++++++++++++++++++++++--------
package/opencv/opencv.mk | 9 +++++++--
2 files changed, 33 insertions(+), 10 deletions(-)
diff --git a/package/opencv/Config.in b/package/opencv/Config.in
index db950f4..55e7580 100644
--- a/package/opencv/Config.in
+++ b/package/opencv/Config.in
@@ -170,17 +170,35 @@ config BR2_PACKAGE_OPENCV_WITH_FFMPEG
Use ffmpeg from the target system.
config BR2_PACKAGE_OPENCV_WITH_GSTREAMER
- bool "gstreamer support"
- depends on BR2_USE_MMU # gstreamer -> libglib2
- depends on BR2_USE_WCHAR # gstreamer -> libglib2
- depends on BR2_TOOLCHAIN_HAS_THREADS # gstreamer -> libglib2
- select BR2_PACKAGE_GSTREAMER
+ bool "gstreamer backend support"
+ depends on BR2_PACKAGE_GSTREAMER || BR2_PACKAGE_GSTREAMER1
+ select BR2_PACKAGE_OPENCV_GSTREAMER_BACKEND if BR2_PACKAGE_GSTREAMER && \
+ !BR2_PACKAGE_GSTREAMER1
+ select BR2_PACKAGE_OPENCV_GSTREAMER1_BACKEND if BR2_PACKAGE_GSTREAMER1
+ help
+ Enable Gstreamer support for OpenCV.
+
+ This uses whatever Gstreamer version you enabled: Gstreamer-0.10
+ or Gstreamer-1.
+
+ If both Gstreamer version are enable, only Gstreamer-1 will be
+ used by OpenCV.
+
+config BR2_PACKAGE_OPENCV_GSTREAMER_BACKEND
+ bool
+ # no need to select gstreamer
select BR2_PACKAGE_GST_PLUGINS_BASE
select BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_APP
-comment "gstreamer support needs a toolchain w/ wchar, threads"
- depends on BR2_USE_MMU
- depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
+config BR2_PACKAGE_OPENCV_GSTREAMER1_BACKEND
+ bool
+ # no need to select gstreamer1
+ select BR2_PACKAGE_GST1_PLUGINS_BASE
+ select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_APP
+
+comment "gstreamer backend needs either Gstreamer-0.10 or Gstreamer-1"
+ depends on !BR2_PACKAGE_GSTREAMER && !BR2_PACKAGE_GSTREAMER1
+ depends on BR2_USE_MMU # gstreamer -> libglib2
config BR2_PACKAGE_OPENCV_WITH_GTK
bool "gtk support"
diff --git a/package/opencv/opencv.mk b/package/opencv/opencv.mk
index aa972dc..6162d1e 100644
--- a/package/opencv/opencv.mk
+++ b/package/opencv/opencv.mk
@@ -211,10 +211,15 @@ OPENCV_CONF_OPTS += -DWITH_FFMPEG=OFF
endif
ifeq ($(BR2_PACKAGE_OPENCV_WITH_GSTREAMER),y)
-OPENCV_CONF_OPTS += -DWITH_GSTREAMER=ON
+ifeq ($(BR2_PACKAGE_GSTREAMER1),y)
+OPENCV_CONF_OPTS += -DWITH_GSTREAMER=ON -DWITH_GSTREAMER_0_10=OFF
+OPENCV_DEPENDENCIES += gstreamer1 gst1-plugins-base
+else
+OPENCV_CONF_OPTS += -DWITH_GSTREAMER=OFF -DWITH_GSTREAMER_0_10=ON
OPENCV_DEPENDENCIES += gstreamer gst-plugins-base
+endif
else
-OPENCV_CONF_OPTS += -DWITH_GSTREAMER=OFF
+OPENCV_CONF_OPTS += -DWITH_GSTREAMER=OFF -DWITH_GSTREAMER_0_10=OFF
endif
ifeq ($(BR2_PACKAGE_OPENCV_WITH_GTK),y)
--
2.4.2
^ permalink raw reply related [flat|nested] 31+ messages in thread* [Buildroot] [PATCH v5 08/13] package/opencv: add gstreamer-1.x support
2015-06-07 10:26 ` [Buildroot] [PATCH v5 08/13] package/opencv: add gstreamer-1.x support Samuel Martin
@ 2015-06-07 12:34 ` Yann E. MORIN
0 siblings, 0 replies; 31+ messages in thread
From: Yann E. MORIN @ 2015-06-07 12:34 UTC (permalink / raw)
To: buildroot
Samuel, All,
On 2015-06-07 12:26 +0200, Samuel Martin spake thusly:
> Starting with the 2.4.10 release, OpenCV supports both Gstreamer-0.10
> and Gstreamer-1, but only one can be enabled at the same time (OpenCV
> uses Gstreamer-1 when available).
>
> Since Buildroot allows both Gstreamer versions to co-exist, the
> configure options and dependencies are set to reflect the OpenCV
> preference.
>
> Signed-off-by: Samuel Martin <s.martin49@gmail.com>
> Cc: "Yann E. MORIN" <yann.morin.1998@free.fr>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
But see a comment below...
> diff --git a/package/opencv/opencv.mk b/package/opencv/opencv.mk
> index aa972dc..6162d1e 100644
> --- a/package/opencv/opencv.mk
> +++ b/package/opencv/opencv.mk
> @@ -211,10 +211,15 @@ OPENCV_CONF_OPTS += -DWITH_FFMPEG=OFF
> endif
>
> ifeq ($(BR2_PACKAGE_OPENCV_WITH_GSTREAMER),y)
> -OPENCV_CONF_OPTS += -DWITH_GSTREAMER=ON
> +ifeq ($(BR2_PACKAGE_GSTREAMER1),y)
> +OPENCV_CONF_OPTS += -DWITH_GSTREAMER=ON -DWITH_GSTREAMER_0_10=OFF
> +OPENCV_DEPENDENCIES += gstreamer1 gst1-plugins-base
> +else
> +OPENCV_CONF_OPTS += -DWITH_GSTREAMER=OFF -DWITH_GSTREAMER_0_10=ON
> OPENCV_DEPENDENCIES += gstreamer gst-plugins-base
> +endif
> else
> -OPENCV_CONF_OPTS += -DWITH_GSTREAMER=OFF
> +OPENCV_CONF_OPTS += -DWITH_GSTREAMER=OFF -DWITH_GSTREAMER_0_10=OFF
This -DWITH_GSTREAMER_0_10=OFF should be added at the time you do the
OpenCV bump, I believe.
Regards,
Yann E. MORIN.
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
^ permalink raw reply [flat|nested] 31+ messages in thread
* [Buildroot] [PATCH v5 09/13] package/opencv: add opengl support
2015-06-07 10:26 [Buildroot] [PATCH v5 00/13] OpenCV bump Samuel Martin
` (7 preceding siblings ...)
2015-06-07 10:26 ` [Buildroot] [PATCH v5 08/13] package/opencv: add gstreamer-1.x support Samuel Martin
@ 2015-06-07 10:26 ` Samuel Martin
2015-06-07 12:41 ` Yann E. MORIN
2015-06-07 10:26 ` [Buildroot] [PATCH v5 10/13] package/opencv: add openmp support Samuel Martin
` (3 subsequent siblings)
12 siblings, 1 reply; 31+ messages in thread
From: Samuel Martin @ 2015-06-07 10:26 UTC (permalink / raw)
To: buildroot
In OpenCV, OpenGL support is done using extensions from 3rd party
framework: either Qt5OpenGL with Qt5 (with GL support only, not GLES);
or gtkglext (which is not available in Buildroot) with gtk2
So, make OpenGL knob visible when Qt5 support is selected.
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
---
changes v4->v5:
- new patch
---
package/opencv/Config.in | 11 +++++++++++
package/opencv/opencv.mk | 7 +++++++
2 files changed, 18 insertions(+)
diff --git a/package/opencv/Config.in b/package/opencv/Config.in
index 55e7580..f4072ef 100644
--- a/package/opencv/Config.in
+++ b/package/opencv/Config.in
@@ -227,6 +227,17 @@ config BR2_PACKAGE_OPENCV_WITH_JPEG
help
Use shared libjpeg from the target system.
+config BR2_PACKAGE_OPENCV_WITH_OPENGL
+ bool "opengl support"
+ # OpenGL support done using Qt5OpenGL, so depends on QT5_BACKEND
+ depends on BR2_PACKAGE_OPENCV_QT5_BACKEND
+ # OpenGL support requires Qt5OpenGL with GL support
+ depends on BR2_PACKAGE_QT5_GL_AVAILABLE
+ depends on BR2_PACKAGE_HAS_LIBGL
+ select BR2_PACKAGE_QT5BASE_OPENGL
+ help
+ Enable OpenGL for UI.
+
config BR2_PACKAGE_OPENCV_WITH_PNG
bool "png support"
select BR2_PACKAGE_LIBPNG
diff --git a/package/opencv/opencv.mk b/package/opencv/opencv.mk
index 6162d1e..2902a20 100644
--- a/package/opencv/opencv.mk
+++ b/package/opencv/opencv.mk
@@ -243,6 +243,13 @@ else
OPENCV_CONF_OPTS += -DWITH_JPEG=OFF
endif
+ifeq ($(BR2_PACKAGE_OPENCV_WITH_OPENGL),y)
+OPENCV_CONF_OPTS += -DWITH_OPENGL=ON
+OPENCV_DEPENDENCIES += libgl qt5base
+else
+OPENCV_CONF_OPTS += -DWITH_OPENGL=OFF
+endif
+
ifeq ($(BR2_PACKAGE_OPENCV_WITH_PNG),y)
OPENCV_CONF_OPTS += -DWITH_PNG=ON
OPENCV_DEPENDENCIES += libpng
--
2.4.2
^ permalink raw reply related [flat|nested] 31+ messages in thread* [Buildroot] [PATCH v5 09/13] package/opencv: add opengl support
2015-06-07 10:26 ` [Buildroot] [PATCH v5 09/13] package/opencv: add opengl support Samuel Martin
@ 2015-06-07 12:41 ` Yann E. MORIN
0 siblings, 0 replies; 31+ messages in thread
From: Yann E. MORIN @ 2015-06-07 12:41 UTC (permalink / raw)
To: buildroot
Samuel, All,
On 2015-06-07 12:26 +0200, Samuel Martin spake thusly:
> In OpenCV, OpenGL support is done using extensions from 3rd party
> framework: either Qt5OpenGL with Qt5 (with GL support only, not GLES);
> or gtkglext (which is not available in Buildroot) with gtk2
>
> So, make OpenGL knob visible when Qt5 support is selected.
>
> Signed-off-by: Samuel Martin <s.martin49@gmail.com>
>
> ---
> changes v4->v5:
> - new patch
> ---
> package/opencv/Config.in | 11 +++++++++++
> package/opencv/opencv.mk | 7 +++++++
> 2 files changed, 18 insertions(+)
>
> diff --git a/package/opencv/Config.in b/package/opencv/Config.in
> index 55e7580..f4072ef 100644
> --- a/package/opencv/Config.in
> +++ b/package/opencv/Config.in
> @@ -227,6 +227,17 @@ config BR2_PACKAGE_OPENCV_WITH_JPEG
> help
> Use shared libjpeg from the target system.
>
> +config BR2_PACKAGE_OPENCV_WITH_OPENGL
> + bool "opengl support"
> + # OpenGL support done using Qt5OpenGL, so depends on QT5_BACKEND
> + depends on BR2_PACKAGE_OPENCV_QT5_BACKEND
> + # OpenGL support requires Qt5OpenGL with GL support
> + depends on BR2_PACKAGE_QT5_GL_AVAILABLE
> + depends on BR2_PACKAGE_HAS_LIBGL
I was going to say that BR2_PACKAGE_QT5_GL_AVAILABLE already depends on
BR2_PACKAGE_HAS_LIBGL, so it was not needed.
However, as you say in the commit log, BR2_PACKAGE_QT5_GL_AVAILABLE also
alternatively depends on BR2_PACKAGE_HAS_LIBGLES, which OpenCV does not
support.
So, that 'depends on BR2_PACKAGE_HAS_LIBGL' makes sense. I'd however add
a comment about that, like so:
# OpenGL support requires Qt5OpenGL with GL support, not GLES
depends on BR2_PACKAGE_QT5_GL_AVAILABLE
depends on BR2_PACKAGE_HAS_LIBGL
> + select BR2_PACKAGE_QT5BASE_OPENGL
> + help
> + Enable OpenGL for UI.
Maybe add a comment about the Qt5 dependency:
comment "OpenGL support needs Qt5 and an OpenGL provider"
Regards,
Yann E. MORIN.
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
^ permalink raw reply [flat|nested] 31+ messages in thread
* [Buildroot] [PATCH v5 10/13] package/opencv: add openmp support
2015-06-07 10:26 [Buildroot] [PATCH v5 00/13] OpenCV bump Samuel Martin
` (8 preceding siblings ...)
2015-06-07 10:26 ` [Buildroot] [PATCH v5 09/13] package/opencv: add opengl support Samuel Martin
@ 2015-06-07 10:26 ` Samuel Martin
2015-06-07 12:43 ` Yann E. MORIN
2015-06-07 10:26 ` [Buildroot] [PATCH v5 11/13] package/opencv: add gtk3 support Samuel Martin
` (2 subsequent siblings)
12 siblings, 1 reply; 31+ messages in thread
From: Samuel Martin @ 2015-06-07 10:26 UTC (permalink / raw)
To: buildroot
Note that this situation is not ideal because it only add openmp support
to the Buildroot toolchain, not the external ones; but a couple of
packages already are in this situation.
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Cc: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
changes v4->v5:
- new patch
---
package/opencv/opencv.mk | 2 ++
1 file changed, 2 insertions(+)
diff --git a/package/opencv/opencv.mk b/package/opencv/opencv.mk
index 2902a20..81c5544 100644
--- a/package/opencv/opencv.mk
+++ b/package/opencv/opencv.mk
@@ -250,6 +250,8 @@ else
OPENCV_CONF_OPTS += -DWITH_OPENGL=OFF
endif
+OPENCV_CONF_OPTS += -DWITH_OPENMP=$(if $(BR2_GCC_ENABLE_OPENMP),ON,OFF)
+
ifeq ($(BR2_PACKAGE_OPENCV_WITH_PNG),y)
OPENCV_CONF_OPTS += -DWITH_PNG=ON
OPENCV_DEPENDENCIES += libpng
--
2.4.2
^ permalink raw reply related [flat|nested] 31+ messages in thread* [Buildroot] [PATCH v5 10/13] package/opencv: add openmp support
2015-06-07 10:26 ` [Buildroot] [PATCH v5 10/13] package/opencv: add openmp support Samuel Martin
@ 2015-06-07 12:43 ` Yann E. MORIN
0 siblings, 0 replies; 31+ messages in thread
From: Yann E. MORIN @ 2015-06-07 12:43 UTC (permalink / raw)
To: buildroot
Samuel, All,
On 2015-06-07 12:26 +0200, Samuel Martin spake thusly:
> Note that this situation is not ideal because it only add openmp support
> to the Buildroot toolchain, not the external ones; but a couple of
> packages already are in this situation.
>
> Signed-off-by: Samuel Martin <s.martin49@gmail.com>
> Cc: "Yann E. MORIN" <yann.morin.1998@free.fr>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Regards,
Yann E. MORIN.
> ---
> changes v4->v5:
> - new patch
> ---
> package/opencv/opencv.mk | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/package/opencv/opencv.mk b/package/opencv/opencv.mk
> index 2902a20..81c5544 100644
> --- a/package/opencv/opencv.mk
> +++ b/package/opencv/opencv.mk
> @@ -250,6 +250,8 @@ else
> OPENCV_CONF_OPTS += -DWITH_OPENGL=OFF
> endif
>
> +OPENCV_CONF_OPTS += -DWITH_OPENMP=$(if $(BR2_GCC_ENABLE_OPENMP),ON,OFF)
> +
> ifeq ($(BR2_PACKAGE_OPENCV_WITH_PNG),y)
> OPENCV_CONF_OPTS += -DWITH_PNG=ON
> OPENCV_DEPENDENCIES += libpng
> --
> 2.4.2
>
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
^ permalink raw reply [flat|nested] 31+ messages in thread
* [Buildroot] [PATCH v5 11/13] package/opencv: add gtk3 support
2015-06-07 10:26 [Buildroot] [PATCH v5 00/13] OpenCV bump Samuel Martin
` (9 preceding siblings ...)
2015-06-07 10:26 ` [Buildroot] [PATCH v5 10/13] package/opencv: add openmp support Samuel Martin
@ 2015-06-07 10:26 ` Samuel Martin
2015-06-07 13:00 ` Yann E. MORIN
2015-06-07 10:26 ` [Buildroot] [PATCH v5 12/13] package/vlc: add opencv support Samuel Martin
2015-06-07 10:26 ` [Buildroot] [PATCH v5 13/13] package/gstreamer1/gst1-plugins-bad: disable opencv plugin with opencv-3 Samuel Martin
12 siblings, 1 reply; 31+ messages in thread
From: Samuel Martin @ 2015-06-07 10:26 UTC (permalink / raw)
To: buildroot
Fully rework the GTK support in OpenCV because it now supports gtk-2 and
gtk-3 (but only one at the time).
Note that, in the build-system, the gtk support is only available when
Qt support is disabled; so make sure the menuconfig reflects this.
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
---
changes v4->v5:
- new patch
---
package/opencv/Config.in | 38 +++++++++++++++++++++++++++++++-------
package/opencv/opencv.mk | 10 ++++++++--
2 files changed, 39 insertions(+), 9 deletions(-)
diff --git a/package/opencv/Config.in b/package/opencv/Config.in
index f4072ef..ff834b9 100644
--- a/package/opencv/Config.in
+++ b/package/opencv/Config.in
@@ -200,17 +200,41 @@ comment "gstreamer backend needs either Gstreamer-0.10 or Gstreamer-1"
depends on !BR2_PACKAGE_GSTREAMER && !BR2_PACKAGE_GSTREAMER1
depends on BR2_USE_MMU # gstreamer -> libglib2
+
+choice
+ prompt "gtk support"
+ # common dependencies to libgtk2 and libgtk3
+ depends on BR2_USE_WCHAR
+ depends on BR2_TOOLCHAIN_HAS_THREADS
+ depends on BR2_INSTALL_LIBSTDCPP
+ depends on BR2_USE_MMU
+ depends on BR2_ARCH_HAS_ATOMICS
+ # GTK check is disabled when Qt support is on in the OpenCV's cmake code
+ depends on !BR2_PACKAGE_OPENCV_WITH_QT
+ default BR2_PACKAGE_OPENCV_WITHOUT_GTK
+ help
+ GTK support is disabled if Qt support is enabled.
+
+config BR2_PACKAGE_OPENCV_WITHOUT_GTK
+ bool "none"
+
config BR2_PACKAGE_OPENCV_WITH_GTK
- bool "gtk support"
+ bool "libgtk2"
depends on BR2_PACKAGE_XORG7
- depends on BR2_USE_WCHAR # libgtk2 -> libglib2
- depends on BR2_TOOLCHAIN_HAS_THREADS # libgtk2 -> libglib2
- depends on BR2_INSTALL_LIBSTDCPP
- depends on BR2_USE_MMU # libgtk2 -> glib2
- depends on BR2_ARCH_HAS_ATOMICS # libgtk2 -> cairo
- depends on BR2_PACKAGE_OPENCV_LIB_HIGHGUI
select BR2_PACKAGE_LIBGTK2
+config BR2_PACKAGE_OPENCV_WITH_GTK3
+ bool "libgtk3"
+ select BR2_PACKAGE_LIBGTK3
+
+endchoice
+
+comment "gtk support needs wchar, threads, C++"
+ depends on !(BR2_USE_WCHAR || BR2_TOOLCHAIN_HAS_THREADS || \
+ BR2_INSTALL_LIBSTDCPP)
+ depends on BR2_USE_MMU
+ depends on BR2_ARCH_HAS_ATOMICS
+
config BR2_PACKAGE_OPENCV_WITH_JASPER
bool "jpeg2000 support"
select BR2_PACKAGE_JASPER
diff --git a/package/opencv/opencv.mk b/package/opencv/opencv.mk
index 81c5544..d3a0738 100644
--- a/package/opencv/opencv.mk
+++ b/package/opencv/opencv.mk
@@ -222,11 +222,17 @@ else
OPENCV_CONF_OPTS += -DWITH_GSTREAMER=OFF -DWITH_GSTREAMER_0_10=OFF
endif
+ifeq ($(BR2_PACKAGE_OPENCV_WITH_GTK)$(BR2_PACKAGE_OPENCV_WITH_GTK3),y)
+OPENCV_CONF_OPTS += -DWITH_GTK=ON
ifeq ($(BR2_PACKAGE_OPENCV_WITH_GTK),y)
-OPENCV_CONF_OPTS += -DWITH_GTK=ON -DWITH_GTK_2_X=ON
+OPENCV_CONF_OPTS += -DWITH_GTK_2_X=ON
OPENCV_DEPENDENCIES += libgtk2
else
-OPENCV_CONF_OPTS += -DWITH_GTK=OFF
+OPENCV_CONF_OPTS += -DWITH_GTK_2_X=OFF
+OPENCV_DEPENDENCIES += libgtk3
+endif
+else
+OPENCV_CONF_OPTS += -DWITH_GTK=OFF -DWITH_GTK_2_X=OFF
endif
ifeq ($(BR2_PACKAGE_OPENCV_WITH_JASPER),y)
--
2.4.2
^ permalink raw reply related [flat|nested] 31+ messages in thread* [Buildroot] [PATCH v5 11/13] package/opencv: add gtk3 support
2015-06-07 10:26 ` [Buildroot] [PATCH v5 11/13] package/opencv: add gtk3 support Samuel Martin
@ 2015-06-07 13:00 ` Yann E. MORIN
0 siblings, 0 replies; 31+ messages in thread
From: Yann E. MORIN @ 2015-06-07 13:00 UTC (permalink / raw)
To: buildroot
Samuel, All,
On 2015-06-07 12:26 +0200, Samuel Martin spake thusly:
> Fully rework the GTK support in OpenCV because it now supports gtk-2 and
> gtk-3 (but only one at the time).
> Note that, in the build-system, the gtk support is only available when
> Qt support is disabled; so make sure the menuconfig reflects this.
>
> Signed-off-by: Samuel Martin <s.martin49@gmail.com>
[--SNIP--]
> diff --git a/package/opencv/Config.in b/package/opencv/Config.in
> index f4072ef..ff834b9 100644
> --- a/package/opencv/Config.in
> +++ b/package/opencv/Config.in
> @@ -200,17 +200,41 @@ comment "gstreamer backend needs either Gstreamer-0.10 or Gstreamer-1"
> depends on !BR2_PACKAGE_GSTREAMER && !BR2_PACKAGE_GSTREAMER1
> depends on BR2_USE_MMU # gstreamer -> libglib2
>
> +
> +choice
> + prompt "gtk support"
> + # common dependencies to libgtk2 and libgtk3
> + depends on BR2_USE_WCHAR
> + depends on BR2_TOOLCHAIN_HAS_THREADS
> + depends on BR2_INSTALL_LIBSTDCPP
> + depends on BR2_USE_MMU
> + depends on BR2_ARCH_HAS_ATOMICS
> + # GTK check is disabled when Qt support is on in the OpenCV's cmake code
> + depends on !BR2_PACKAGE_OPENCV_WITH_QT
No need for a default here, because 'none' is the first entry, so it is
expressly the default.
Otherwise looks good:
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
But see a comment below...
> + default BR2_PACKAGE_OPENCV_WITHOUT_GTK
> + help
> + GTK support is disabled if Qt support is enabled.
> +
> +config BR2_PACKAGE_OPENCV_WITHOUT_GTK
> + bool "none"
> +
> config BR2_PACKAGE_OPENCV_WITH_GTK
> - bool "gtk support"
> + bool "libgtk2"
> depends on BR2_PACKAGE_XORG7
> - depends on BR2_USE_WCHAR # libgtk2 -> libglib2
> - depends on BR2_TOOLCHAIN_HAS_THREADS # libgtk2 -> libglib2
> - depends on BR2_INSTALL_LIBSTDCPP
> - depends on BR2_USE_MMU # libgtk2 -> glib2
> - depends on BR2_ARCH_HAS_ATOMICS # libgtk2 -> cairo
> - depends on BR2_PACKAGE_OPENCV_LIB_HIGHGUI
> select BR2_PACKAGE_LIBGTK2
>
> +config BR2_PACKAGE_OPENCV_WITH_GTK3
> + bool "libgtk3"
> + select BR2_PACKAGE_LIBGTK3
> +
> +endchoice
> +
> +comment "gtk support needs wchar, threads, C++"
> + depends on !(BR2_USE_WCHAR || BR2_TOOLCHAIN_HAS_THREADS || \
> + BR2_INSTALL_LIBSTDCPP)
> + depends on BR2_USE_MMU
> + depends on BR2_ARCH_HAS_ATOMICS
I like that you've made it a choice. But it is inconsistent with how we
present the Qt/Qt5 options.
What about making it a single choice (with proper dependencies, of
course), like so:
choice
prompt "GUI toolkit"
config BR2_PKG_OPENCV_GUI_NONE
bool "none"
config BR2_PKG_OPENCV_GUI_QT
bool "Qt4"
depends on BR2_PKG_QT
...
select ...
comment "Qt needs ..."
config BR2_PKG_OPENCV_GUI_QT5
bool "Qt5"
depends on BR2_PKG_QT5
...
select ...
comment "Qt5 needs ..."
config BR2_PKG_OPENCV_GUI_GTK
bool "gtk2"
depends on ...
select BR2_PKG_GTK
select ...
comment "gtk2 needs ..."
config BR2_PKG_OPENCV_GUI_GTK3
bool "gtk3"
depends on ...
select BR2_PKG_GTK3
select ...
comment "gtk3 needs ..."
endchoice
What's your opinion on that?
If you agree, then the series should look like:
package/opencv: add a choice for selecting the GUI toolkit
=> moves the existing Qt4 and gtk2 options in that choice
package/opencv: add qt5 support
=> adds Qt5 option to the GUI choice
package/opencv: add gtk3 to the GUI toolkit choice
=> adds gtk3 option to thw GUI choice
Of course, that's not a show-stopper, as my Reviewed-by tag implies.
Regards,
Yann E. MORIN.
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
^ permalink raw reply [flat|nested] 31+ messages in thread
* [Buildroot] [PATCH v5 12/13] package/vlc: add opencv support
2015-06-07 10:26 [Buildroot] [PATCH v5 00/13] OpenCV bump Samuel Martin
` (10 preceding siblings ...)
2015-06-07 10:26 ` [Buildroot] [PATCH v5 11/13] package/opencv: add gtk3 support Samuel Martin
@ 2015-06-07 10:26 ` Samuel Martin
2015-06-07 13:14 ` Yann E. MORIN
2015-06-07 10:26 ` [Buildroot] [PATCH v5 13/13] package/gstreamer1/gst1-plugins-bad: disable opencv plugin with opencv-3 Samuel Martin
12 siblings, 1 reply; 31+ messages in thread
From: Samuel Martin @ 2015-06-07 10:26 UTC (permalink / raw)
To: buildroot
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>
+---
+ 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
--
2.4.2
^ permalink raw reply related [flat|nested] 31+ messages in thread* [Buildroot] [PATCH v5 12/13] package/vlc: add opencv support
2015-06-07 10:26 ` [Buildroot] [PATCH v5 12/13] package/vlc: add opencv support Samuel Martin
@ 2015-06-07 13:14 ` Yann E. MORIN
0 siblings, 0 replies; 31+ messages in thread
From: Yann E. MORIN @ 2015-06-07 13:14 UTC (permalink / raw)
To: buildroot
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.
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
^ permalink raw reply [flat|nested] 31+ messages in thread
* [Buildroot] [PATCH v5 13/13] package/gstreamer1/gst1-plugins-bad: disable opencv plugin with opencv-3
2015-06-07 10:26 [Buildroot] [PATCH v5 00/13] OpenCV bump Samuel Martin
` (11 preceding siblings ...)
2015-06-07 10:26 ` [Buildroot] [PATCH v5 12/13] package/vlc: add opencv support Samuel Martin
@ 2015-06-07 10:26 ` Samuel Martin
2015-06-07 13:18 ` Yann E. MORIN
12 siblings, 1 reply; 31+ messages in thread
From: Samuel Martin @ 2015-06-07 10:26 UTC (permalink / raw)
To: buildroot
The opencv plugin uses stuff from the now removed opencv's legacy module.
Note that the configure script already correctly check the opencv version
and disable the opencv plugin with opencv-3.x.
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
---
changes v4->v5:
- new patch
---
package/gstreamer1/gst1-plugins-bad/Config.in | 1 +
1 file changed, 1 insertion(+)
diff --git a/package/gstreamer1/gst1-plugins-bad/Config.in b/package/gstreamer1/gst1-plugins-bad/Config.in
index 44fcdfb..51c6232 100644
--- a/package/gstreamer1/gst1-plugins-bad/Config.in
+++ b/package/gstreamer1/gst1-plugins-bad/Config.in
@@ -432,6 +432,7 @@ config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_OPENCV
bool "opencv"
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
+ depends on BROKEN # gst1-plugin-opencv does not (yet) support opencv >=3.x
select BR2_PACKAGE_OPENCV
# Remove the following opencv modules when gstreamer fixes the
# problem of including the old "cv.h" header
--
2.4.2
^ permalink raw reply related [flat|nested] 31+ messages in thread* [Buildroot] [PATCH v5 13/13] package/gstreamer1/gst1-plugins-bad: disable opencv plugin with opencv-3
2015-06-07 10:26 ` [Buildroot] [PATCH v5 13/13] package/gstreamer1/gst1-plugins-bad: disable opencv plugin with opencv-3 Samuel Martin
@ 2015-06-07 13:18 ` Yann E. MORIN
0 siblings, 0 replies; 31+ messages in thread
From: Yann E. MORIN @ 2015-06-07 13:18 UTC (permalink / raw)
To: buildroot
Samuel, All,
On 2015-06-07 12:26 +0200, Samuel Martin spake thusly:
> The opencv plugin uses stuff from the now removed opencv's legacy module.
> Note that the configure script already correctly check the opencv version
> and disable the opencv plugin with opencv-3.x.
So, this patch should right after you bump the OpenCV version, not late
in the series.
Note: it needs not be part of the bump-patch, because the build does not
break, so it is OK to keep it as a separate patch.
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Regards,
Yann E. MORIN.
> Signed-off-by: Samuel Martin <s.martin49@gmail.com>
>
> ---
> changes v4->v5:
> - new patch
> ---
> package/gstreamer1/gst1-plugins-bad/Config.in | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/package/gstreamer1/gst1-plugins-bad/Config.in b/package/gstreamer1/gst1-plugins-bad/Config.in
> index 44fcdfb..51c6232 100644
> --- a/package/gstreamer1/gst1-plugins-bad/Config.in
> +++ b/package/gstreamer1/gst1-plugins-bad/Config.in
> @@ -432,6 +432,7 @@ config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_OPENCV
> bool "opencv"
> depends on BR2_INSTALL_LIBSTDCPP
> depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
> + depends on BROKEN # gst1-plugin-opencv does not (yet) support opencv >=3.x
> select BR2_PACKAGE_OPENCV
> # Remove the following opencv modules when gstreamer fixes the
> # problem of including the old "cv.h" header
> --
> 2.4.2
>
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
^ permalink raw reply [flat|nested] 31+ messages in thread