From: Yann E. MORIN <yann.morin.1998@free.fr>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH v2 21/24] opencv: define modules inter-dependencies
Date: Sun, 4 May 2014 12:04:15 +0200 [thread overview]
Message-ID: <20140504100415.GH3211@free.fr> (raw)
In-Reply-To: <1398208556-4195-22-git-send-email-s.martin49@gmail.com>
Samuel, All,
On 2014-04-23 01:15 +0200, Samuel Martin spake thusly:
> OpenCV allows to enable/disable the selection of modules (a.k.a.
> opencv libraries). These modules depend one from the others; these
... one on the others
> 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 module
> dependencies.
>
> This patch replicates the modules' dependency relations in the
> Config.in, so that the selection of the user will actually be built.
I'll trust you on this dependency chain. ;-)
> Signed-off-by: Samuel Martin <s.martin49@gmail.com>
With the small nit in the commit log above fixed:
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Regards,
Yann E. MORIN.
> ---
> changes v1 -> v2:
> - rebase
> ---
> package/opencv/Config.in | 75 ++++++++++++++++++++++++++++++++++++++----------
> 1 file changed, 60 insertions(+), 15 deletions(-)
>
> diff --git a/package/opencv/Config.in b/package/opencv/Config.in
> index e52f22a..31732a6 100644
> --- a/package/opencv/Config.in
> +++ b/package/opencv/Config.in
> @@ -8,6 +8,8 @@ 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 is automatically enabled.
> +
> http://opencv.org/
>
> if BR2_PACKAGE_OPENCV
> @@ -16,109 +18,152 @@ comment "OpenCV modules"
>
> config BR2_PACKAGE_OPENCV_LIB_CALIB3D
> bool "calib3d"
> - default y
> + select BR2_PACKAGE_OPENCV_LIB_IMGPROC
> + select BR2_PACKAGE_OPENCV_LIB_FEATURES2D
> help
> Include opencv_calib3d module into the OpenCV build.
>
> config BR2_PACKAGE_OPENCV_LIB_CONTRIB
> bool "contrib"
> - 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_ML
> + select BR2_PACKAGE_OPENCV_LIB_OBJDETECT
> + select BR2_PACKAGE_OPENCV_LIB_VIDEO
> 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"
> - default y
> + select BR2_PACKAGE_OPENCV_LIB_FLANN
> + select BR2_PACKAGE_OPENCV_LIB_IMGPROC
> 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.
>
> config BR2_PACKAGE_OPENCV_LIB_GPU
> bool "gpu"
> + select BR2_PACKAGE_OPENCV_LIB_CALIB3D
> + select BR2_PACKAGE_OPENCV_LIB_IMGPROC
> + select BR2_PACKAGE_OPENCV_LIB_LEGACY
> + select BR2_PACKAGE_OPENCV_LIB_OBJDETECT
> + select BR2_PACKAGE_OPENCV_LIB_PHOTO
> + select BR2_PACKAGE_OPENCV_LIB_VIDEO
> help
> Include opencv_gpu module into the OpenCV build.
>
> config BR2_PACKAGE_OPENCV_LIB_HIGHGUI
> bool "highgui"
> - default y
> + select BR2_PACKAGE_OPENCV_LIB_IMGPROC
> help
> Include opencv_highgui module into the OpenCV build.
>
> config BR2_PACKAGE_OPENCV_LIB_IMGPROC
> bool "imgproc"
> - default y
> + # opencv_core dependency is already enabled
> help
> Include opencv_imgproc module into the OpenCV build.
>
> config BR2_PACKAGE_OPENCV_LIB_LEGACY
> bool "legacy"
> - default y
> + select BR2_PACKAGE_OPENCV_LIB_CALIB3D
> + select BR2_PACKAGE_OPENCV_LIB_ML
> + select BR2_PACKAGE_OPENCV_LIB_VIDEO
> help
> Include opencv_legacy 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_NONFREE
> bool "nonfree"
> + select BR2_PACKAGE_OPENCV_LIB_CALIB3D
> + select BR2_PACKAGE_OPENCV_LIB_FEATURES2D
> + select BR2_PACKAGE_OPENCV_LIB_IMGPROC
> help
> Include opencv_nonfree 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
> 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.
>
> config BR2_PACKAGE_OPENCV_LIB_PYTHON
> bool "python"
> depends on BR2_PACKAGE_PYTHON
> + # opencv_core dependency is already enabled
> + select BR2_PACKAGE_OPENCV_LIB_CALIB3D
> + select BR2_PACKAGE_OPENCV_LIB_CONTRIB
> + select BR2_PACKAGE_OPENCV_LIB_FEATURES2D
> + select BR2_PACKAGE_OPENCV_LIB_FLANN
> + select BR2_PACKAGE_OPENCV_LIB_HIGHGUI
> + select BR2_PACKAGE_OPENCV_LIB_IMGPROC
> + select BR2_PACKAGE_OPENCV_LIB_LEGACY
> + select BR2_PACKAGE_OPENCV_LIB_ML
> + select BR2_PACKAGE_OPENCV_LIB_OBJDETECT
> + select BR2_PACKAGE_OPENCV_LIB_PHOTO
> + select BR2_PACKAGE_OPENCV_LIB_VIDEO
> help
> Include opencv_python module into the OpenCV build.
> No python example is installed.
>
> 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)"
> - default y
> + # opencv_core dependency is already enabled
> + select BR2_PACKAGE_OPENCV_LIB_FEATURES2D
> help
> Include opencv_ts 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_HIGHGUI
> + 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.
>
> --
> 1.9.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. |
'------------------------------^-------^------------------^--------------------'
next prev parent reply other threads:[~2014-05-04 10:04 UTC|newest]
Thread overview: 57+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-22 23:15 [Buildroot] [PATCH v2 00/24] Scientific libraries Samuel Martin
2014-04-22 23:15 ` [Buildroot] [PATCH v2 01/24] qt: add an option to install the test module Samuel Martin
2014-05-03 16:58 ` Yann E. MORIN
2014-05-03 21:10 ` Peter Korsgaard
2014-04-22 23:15 ` [Buildroot] [PATCH v2 02/24] opencv: fix qt selection when highgui is enable Samuel Martin
2014-05-03 17:01 ` Yann E. MORIN
2014-05-03 21:11 ` Peter Korsgaard
2014-04-22 23:15 ` [Buildroot] [PATCH v2 03/24] armadillo: new package Samuel Martin
2014-05-03 17:08 ` Yann E. MORIN
2014-05-03 19:50 ` Samuel Martin
2014-05-04 21:18 ` Peter Korsgaard
2014-04-22 23:15 ` [Buildroot] [PATCH v2 04/24] clapack: " Samuel Martin
2014-05-03 17:23 ` Yann E. MORIN
2014-05-04 7:10 ` Peter Korsgaard
2014-04-22 23:15 ` [Buildroot] [PATCH v2 05/24] python-numpy: " Samuel Martin
2014-05-03 17:40 ` Yann E. MORIN
2014-07-16 20:30 ` Thomas Petazzoni
2014-04-22 23:15 ` [Buildroot] [PATCH v2 06/24] python-numpy: add optional blas/lapack support Samuel Martin
2014-05-03 20:05 ` Yann E. MORIN
2014-07-16 20:50 ` Thomas Petazzoni
2014-04-22 23:15 ` [Buildroot] [PATCH v2 07/24] opencv: bump to version 2.4.8 Samuel Martin
2014-05-03 21:28 ` Yann E. MORIN
2014-04-22 23:15 ` [Buildroot] [PATCH v2 08/24] opencv: add license details Samuel Martin
2014-05-03 21:31 ` Yann E. MORIN
2014-04-22 23:15 ` [Buildroot] [PATCH v2 09/24] opencv: sort and reorder CMake configuration flags Samuel Martin
2014-05-03 21:40 ` Yann E. MORIN
2014-04-22 23:15 ` [Buildroot] [PATCH v2 10/24] opencv: sort and reorder HW support options Samuel Martin
2014-05-03 22:15 ` Yann E. MORIN
2014-04-22 23:15 ` [Buildroot] [PATCH v2 11/24] opencv: sort and reorder SW " Samuel Martin
2014-05-03 22:19 ` Yann E. MORIN
2014-04-22 23:15 ` [Buildroot] [PATCH v2 12/24] opencv: add superres module knob Samuel Martin
2014-05-03 22:23 ` Yann E. MORIN
2014-04-22 23:15 ` [Buildroot] [PATCH v2 13/24] opencv: disable apps module Samuel Martin
2014-05-03 22:28 ` Yann E. MORIN
2014-04-22 23:15 ` [Buildroot] [PATCH v2 14/24] opencv: disable opencl support/module Samuel Martin
2014-05-03 22:34 ` Yann E. MORIN
2014-04-22 23:15 ` [Buildroot] [PATCH v2 15/24] opencv: disable OpenMP support Samuel Martin
2014-05-04 9:24 ` Yann E. MORIN
2014-04-22 23:15 ` [Buildroot] [PATCH v2 16/24] opencv: enable SSE4.1 SSE4.2 support when available Samuel Martin
2014-05-04 9:24 ` Yann E. MORIN
2014-04-22 23:15 ` [Buildroot] [PATCH v2 17/24] opencv: rework V4L/libv4l support Samuel Martin
2014-05-04 9:32 ` Yann E. MORIN
2014-04-22 23:15 ` [Buildroot] [PATCH v2 18/24] opencv: add jasper support Samuel Martin
2014-05-04 9:40 ` Yann E. MORIN
2014-04-22 23:15 ` [Buildroot] [PATCH v2 19/24] opencv: add Qt5 support Samuel Martin
2014-05-04 9:51 ` Yann E. MORIN
2014-04-22 23:15 ` [Buildroot] [PATCH v2 20/24] opencv: add python/numpy support Samuel Martin
2014-05-04 10:00 ` Yann E. MORIN
2014-04-22 23:15 ` [Buildroot] [PATCH v2 21/24] opencv: define modules inter-dependencies Samuel Martin
2014-05-04 10:04 ` Yann E. MORIN [this message]
2014-04-22 23:15 ` [Buildroot] [PATCH v2 22/24] opencv: add hidden symbol BR2_PACKAGE_OPENCV_USE_DEPRECATED_HEADERS Samuel Martin
2014-05-04 10:06 ` Yann E. MORIN
2014-04-22 23:15 ` [Buildroot] [PATCH v2 23/24] vlc: add opencv support Samuel Martin
2014-05-04 10:08 ` Yann E. MORIN
2014-04-22 23:15 ` [Buildroot] [PATCH v2 24/24] gst1-plugins-bad: rework opencv plugin dependencies Samuel Martin
2014-05-04 10:10 ` Yann E. MORIN
2014-07-16 21:03 ` [Buildroot] [PATCH v2 00/24] Scientific libraries Thomas Petazzoni
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=20140504100415.GH3211@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox