From: Yann E. MORIN <yann.morin.1998@free.fr>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH v5 11/13] package/opencv: add gtk3 support
Date: Sun, 7 Jun 2015 15:00:54 +0200 [thread overview]
Message-ID: <20150607130054.GL3545@free.fr> (raw)
In-Reply-To: <1433672799-21387-12-git-send-email-s.martin49@gmail.com>
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. |
'------------------------------^-------^------------------^--------------------'
next prev parent reply other threads:[~2015-06-07 13:00 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
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 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
2015-06-07 11:35 ` Yann E. MORIN
2015-06-07 11:49 ` Samuel Martin
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
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
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
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
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
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
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
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
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 [this message]
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
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
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=20150607130054.GL3545@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