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 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.