From: Peter Seiderer <ps.report@gmx.net>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH v2 2/2] qt5base: make harfbuzz support selectable
Date: Sat, 18 Feb 2017 12:28:33 +0100 [thread overview]
Message-ID: <20170218122833.7cfd06d5@gmx.net> (raw)
In-Reply-To: <ec4e538c-bd56-a509-7550-fe8d20c401e2@mind.be>
Hello Arnout,
On Thu, 16 Feb 2017 23:14:56 +0100, Arnout Vandecappelle <arnout@mind.be> wrote:
>
>
> On 13-02-17 23:34, Peter Seiderer wrote:
> > If selected use:
> >
> > - system/buildroot harfbuzz in case __sync for 4 bytes is supported
> > - qt harfbuzz otherwise (using QAtomic instead)
> >
> > Signed-off-by: Peter Seiderer <ps.report@gmx.net>
> > ---
> > Changes v1 -> v2:
> > - make harfbuzz support selectable, preferre the system provided
> > one, but fall back to qt provided one
> > ---
> > package/qt5/qt5base/Config.in | 9 +++++++++
> > package/qt5/qt5base/qt5base.mk | 14 ++++++++++++++
> > 2 files changed, 23 insertions(+)
> >
> > diff --git a/package/qt5/qt5base/Config.in b/package/qt5/qt5base/Config.in
> > index 337dcf245..27f225026 100644
> > --- a/package/qt5/qt5base/Config.in
> > +++ b/package/qt5/qt5base/Config.in
> > @@ -239,6 +239,15 @@ config BR2_PACKAGE_QT5BASE_FONTCONFIG
> > This option enables Fontconfig and Freetype support using
> > the system fontconfig and freetype2 libraries.
> >
> > +config BR2_PACKAGE_QT5BASE_HARFBUZZ
> > + bool "harfbuzz support"
> > + select BR2_PACKAGE_HARFBUZZ if BR2_TOOLCHAIN_HAS_SYNC_4
>
> I think we should automatically use system harfbuzz if it is selected, and only
> offer this option if system harfbuzz is not available. So here 'depends on
> !SYNC_4'...
I know that is the buildroot style for many options, but my reasoning was that
it is a little complicated logic 'you can enable buildroot harfbuzz but in
case you have toolchain xy this one is not used and there is this special
qt5base config option for you (which is only visible depending on toolchain xy)'.
I think the solution 'do you want HarfBuzz support for qt5base' (and hide the
decision which one is used) is more undertandable...
>
> > + help
> > + This option enables HarfBuzz support (either system
> > + harfbuzz if the toolchain supports __sync for 4 bytes
> > + or qt provided one which avoids this dependenc by using
> > + QAtomic).
> > +
> > config BR2_PACKAGE_QT5BASE_GIF
> > bool "GIF support"
> > help
> > diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk
> > index 3825f5bcc..187388e19 100644
> > --- a/package/qt5/qt5base/qt5base.mk
> > +++ b/package/qt5/qt5base/qt5base.mk
> > @@ -105,6 +105,20 @@ ifeq ($(BR2_PACKAGE_QT5_VERSION_5_6),y)
> > QT5BASE_CONFIGURE_OPTS += -I$(STAGING_DIR)/usr/include/freetype2
> > endif
> > QT5BASE_DEPENDENCIES += $(if $(BR2_PACKAGE_QT5BASE_GUI),freetype)
> > +ifeq ($(BR2_PACKAGE_QT5BASE_GUI)$(BR2_PACKAGE_QT5BASE_HARFBUZZ),yy)
> > +ifeq ($(BR2_TOOLCHAIN_HAS_SYNC_4),y)
> > +# system harfbuzz in case __sync for 4 bytes is supported
>
> ... and here 'ifeq ($(BR2_PACKAGE_HARFBUZZ),y) ...
>
> > +QT5BASE_CONFIGURE_OPTS += -system-harfbuzz
> > +QT5BASE_DEPENDENCIES += harfbuzz
> > +else
>
> ... and here 'else ifeq ($(BR2_PACKAGE_QT5BASE_HARFBUZZ),y) ...
>
> > +# qt harfbuzz otherwise (using QAtomic instead)
> > +QT5BASE_CONFIGURE_OPTS += -qt-harfbuzz
> > +QT5BASE_LICENSE := $(QT5BASE_LICENSE), MIT (harfbuzz)
> > +QT5BASE_LICENSE_FILES += src/3rdparty/harfbuzz-ng/COPYING
> > +endif
> > +else
> > +QT5BASE_CONFIGURE_OPTS += -no-harfbuzz
> > +endif
>
> Leave an empty line below and above this conditional block.
Empty lines added...
>
> Also, it would be more logical IMHO to put it close to openssl.
HarfBuzz support makes only sense with GUI selected (no standalone plugin),
it is a configure option of the freeetype support and belongs logically
to the font (and so fontconfig) support....
Regards,
Peter
>
> Regards,
> Arnout
>
> > QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_WIDGETS),-widgets,-no-widgets)
> > QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_LINUXFB),--enable-linuxfb,-no-linuxfb)
> > QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_DIRECTFB),-directfb,-no-directfb)
> >
>
next prev parent reply other threads:[~2017-02-18 11:28 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-02-13 22:34 [Buildroot] [PATCH v2 1/2] qt5base: use system/buildroot provided freetype Peter Seiderer
2017-02-13 22:34 ` [Buildroot] [PATCH v2 2/2] qt5base: make harfbuzz support selectable Peter Seiderer
2017-02-16 22:14 ` Arnout Vandecappelle
2017-02-18 11:28 ` Peter Seiderer [this message]
2017-02-16 22:18 ` [Buildroot] [PATCH v2 1/2] qt5base: use system/buildroot provided freetype Arnout Vandecappelle
2017-02-18 11:18 ` Peter Seiderer
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=20170218122833.7cfd06d5@gmx.net \
--to=ps.report@gmx.net \
--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