All of lore.kernel.org
 help / color / mirror / Atom feed
From: Yann E. MORIN <yann.morin.1998@free.fr>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH v6 04/16] package/opencv: define modules inter-dependencies
Date: Fri, 26 Jun 2015 17:20:55 +0200	[thread overview]
Message-ID: <20150626152055.GC17113@free.fr> (raw)
In-Reply-To: <1435262397-888-5-git-send-email-s.martin49@gmail.com>

Samuel, All,

On 2015-06-25 21:59 +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>

Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>

Regards,
Yann E. MORIN.

> ---
> changes v5->v6:
> - rebase
> 
> 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 | 39 ++++++++++++++++++++++++++++++++++++++-
>  1 file changed, 38 insertions(+), 1 deletion(-)
> 
> diff --git a/package/opencv/Config.in b/package/opencv/Config.in
> index 95e1e13..87f4bf5 100644
> --- a/package/opencv/Config.in
> +++ b/package/opencv/Config.in
> @@ -21,6 +21,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.
>  
> @@ -29,12 +31,16 @@ 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.
>  
> @@ -44,36 +50,46 @@ 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.
>  
> @@ -82,44 +98,65 @@ 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)"
> -	select BR2_PACKAGE_OPENCV_LIB_HIGHGUI
>  	default y
> +	# opencv_core dependency is already enabled
> +	select BR2_PACKAGE_OPENCV_LIB_HIGHGUI
> +	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.4
> 
> _______________________________________________
> 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.  |
'------------------------------^-------^------------------^--------------------'

  reply	other threads:[~2015-06-26 15:20 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-25 19:59 [Buildroot] [PATCH v6 00/16] OpenCV bump Samuel Martin
2015-06-25 19:59 ` [Buildroot] [PATCH v6 01/16] package/opencv: alphabetically sorted each _CONF_OPTS group Samuel Martin
2015-06-25 22:00   ` Yann E. MORIN
2015-06-26 18:35   ` Thomas Petazzoni
2015-06-25 19:59 ` [Buildroot] [PATCH v6 02/16] package/opencv: bump to version 3.0 Samuel Martin
2015-06-26 14:51   ` Yann E. MORIN
2015-06-26 15:22     ` Yann E. MORIN
2015-06-26 18:39   ` Thomas Petazzoni
2015-06-25 19:59 ` [Buildroot] [PATCH v6 03/16] package/gstreamer1/gst1-plugins-bad: disable opencv plugin with opencv-3 Samuel Martin
2015-06-25 19:59 ` [Buildroot] [PATCH v6 04/16] package/opencv: define modules inter-dependencies Samuel Martin
2015-06-26 15:20   ` Yann E. MORIN [this message]
2015-06-25 19:59 ` [Buildroot] [PATCH v6 05/16] package/opencv: reword modules' prompt and help text Samuel Martin
2015-06-26 15:27   ` Yann E. MORIN
2015-06-25 19:59 ` [Buildroot] [PATCH v6 06/16] package/opencv: reduce modules on by default Samuel Martin
2015-06-26 15:30   ` Yann E. MORIN
2015-06-26 15:34   ` Yann E. MORIN
2015-06-26 15:35     ` Yann E. MORIN
2015-06-25 19:59 ` [Buildroot] [PATCH v6 07/16] package/opencv: disable all modules " Samuel Martin
2015-06-26 15:36   ` Yann E. MORIN
2015-07-06 22:19     ` Arnout Vandecappelle
2015-06-25 19:59 ` [Buildroot] [PATCH v6 08/16] package/opencv: add python support Samuel Martin
2015-06-26 17:51   ` Yann E. MORIN
2015-06-26 17:59   ` Yann E. MORIN
2015-06-25 19:59 ` [Buildroot] [PATCH v6 09/16] package/opencv: add a choice for selecting gstreamer support Samuel Martin
2015-06-26 18:11   ` Yann E. MORIN
2015-06-25 19:59 ` [Buildroot] [PATCH v6 10/16] package/opencv: add gstreamer-1.x support Samuel Martin
2015-06-26 18:12   ` Yann E. MORIN
2015-06-26 20:01   ` Yann E. MORIN
2015-06-25 19:59 ` [Buildroot] [PATCH v6 11/16] package/opencv: add openmp support Samuel Martin
2015-06-25 19:59 ` [Buildroot] [PATCH v6 12/16] package/opencv: add a choice for selecting the gui toolkit Samuel Martin
2015-06-26 21:31   ` Yann E. MORIN
2015-06-26 22:47   ` Yann E. MORIN
2015-06-25 19:59 ` [Buildroot] [PATCH v6 13/16] package/opencv: add qt5 support Samuel Martin
2015-06-26 22:40   ` Yann E. MORIN
2015-06-25 19:59 ` [Buildroot] [PATCH v6 14/16] package/opencv: add gtk3 support Samuel Martin
2015-06-26 23:00   ` Yann E. MORIN
2015-07-04 17:51     ` Samuel Martin
2015-06-25 19:59 ` [Buildroot] [PATCH v6 15/16] package/opencv: add opengl support Samuel Martin
2015-06-27  7:55   ` Yann E. MORIN
2015-06-25 19:59 ` [Buildroot] [PATCH v6 16/16] package/vlc: add opencv support Samuel Martin
2015-06-25 20:04 ` [Buildroot] [PATCH v6 00/16] OpenCV bump Samuel Martin
2015-06-26 18:47 ` Thomas Petazzoni
2015-07-04 13:34   ` Thomas Petazzoni
2015-07-04 19:00     ` Samuel Martin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20150626152055.GC17113@free.fr \
    --to=yann.morin.1998@free.fr \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.