Message ID | 20170209223055.31121-2-ps.report@gmx.net |
---|---|
State | Superseded |
Headers | show |
Hello, On Thu, 9 Feb 2017 23:30:55 +0100, Peter Seiderer <ps.report@gmx.net> wrote: > Signed-off-by: Peter Seiderer <ps.report@gmx.net> > --- > Missing BR2_TOOLCHAIN_HAS_SYNC_4 dependecy propagation from harfbuzz. Qt5 does not (yet) have the dependency on BR2_TOOLCHAIN_HAS_SYNC_4 (but seems to compile fine with the bundled version of harfbuzz), is this because (the existing) dependency on BR2_TOOLCHAIN_HAS_THREADS_NPTL is 'stronger' than BR2_TOOLCHAIN_HAS_SYNC_4 (or is this complete unrelated)? Regards, Peter > --- > package/qt5/qt5base/Config.in | 1 + > package/qt5/qt5base/qt5base.mk | 2 ++ > 2 files changed, 3 insertions(+) > > diff --git a/package/qt5/qt5base/Config.in b/package/qt5/qt5base/Config.in > index 337dcf245..9cfbd10ab 100644 > --- a/package/qt5/qt5base/Config.in > +++ b/package/qt5/qt5base/Config.in > @@ -129,6 +129,7 @@ config BR2_PACKAGE_QT5BASE_XML > config BR2_PACKAGE_QT5BASE_GUI > bool "gui module" > select BR2_PACKAGE_FREETYPE > + select BR2_PACKAGE_HARFBUZZ > # At least one graphic backend must be enabled, so enable > # linuxfb if nothing is enabled. > select BR2_PACKAGE_QT5BASE_LINUXFB if \ > diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk > index 07803e776..5c17c649d 100644 > --- a/package/qt5/qt5base/qt5base.mk > +++ b/package/qt5/qt5base/qt5base.mk > @@ -102,6 +102,8 @@ endif > QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_GUI),-gui,-no-gui) > QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_GUI),-system-freetype,-no-freetype) > QT5BASE_DEPENDENCIES += $(if $(BR2_PACKAGE_QT5BASE_GUI),freetype) > +QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_GUI),-system-harfbuzz,-no-harfbuzz) > +QT5BASE_DEPENDENCIES += $(if $(BR2_PACKAGE_QT5BASE_GUI),harfbuzz) > 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)
Hello, On Fri, 10 Feb 2017 17:12:23 +0100, Peter Seiderer wrote: > Qt5 does not (yet) have the dependency on BR2_TOOLCHAIN_HAS_SYNC_4 (but seems > to compile fine with the bundled version of harfbuzz), is this > because (the existing) dependency on BR2_TOOLCHAIN_HAS_THREADS_NPTL is > 'stronger' than BR2_TOOLCHAIN_HAS_SYNC_4 (or is this complete unrelated)? These are completely unrelated. For example, SPARC has NPTL, but not BR2_TOOLCHAIN_HAS_SYNC_4. Thomas
Hello Thomas, On Sat, 11 Feb 2017 19:20:55 +0100, Thomas Petazzoni <thomas.petazzoni@free-electrons.com> wrote: > Hello, > > On Fri, 10 Feb 2017 17:12:23 +0100, Peter Seiderer wrote: > > > Qt5 does not (yet) have the dependency on BR2_TOOLCHAIN_HAS_SYNC_4 (but seems > > to compile fine with the bundled version of harfbuzz), is this > > because (the existing) dependency on BR2_TOOLCHAIN_HAS_THREADS_NPTL is > > 'stronger' than BR2_TOOLCHAIN_HAS_SYNC_4 (or is this complete unrelated)? > > These are completely unrelated. For example, SPARC has NPTL, but not > BR2_TOOLCHAIN_HAS_SYNC_4. Thanks for the answer... Found the trick of the Qt built-in harfbuzz, they use the QAtomicPointer implementation instead of the default harfbuzz provided for hb_atomic_int_impl_add, hb_atomic_ptr_impl_get and hb_atomic_ptr_impl_cmpexch (see qtbase-opensource-src-5.8.0/src/3rdparty/harfbuzz-ng/config.h). What should we do for the !BR2_TOOLCHAIN_HAS_SYNC_4 case: - fall back to qt built-in harfbuzz - disable harfbuzz support Regards, Peter > > Thomas
diff --git a/package/qt5/qt5base/Config.in b/package/qt5/qt5base/Config.in index 337dcf245..9cfbd10ab 100644 --- a/package/qt5/qt5base/Config.in +++ b/package/qt5/qt5base/Config.in @@ -129,6 +129,7 @@ config BR2_PACKAGE_QT5BASE_XML config BR2_PACKAGE_QT5BASE_GUI bool "gui module" select BR2_PACKAGE_FREETYPE + select BR2_PACKAGE_HARFBUZZ # At least one graphic backend must be enabled, so enable # linuxfb if nothing is enabled. select BR2_PACKAGE_QT5BASE_LINUXFB if \ diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk index 07803e776..5c17c649d 100644 --- a/package/qt5/qt5base/qt5base.mk +++ b/package/qt5/qt5base/qt5base.mk @@ -102,6 +102,8 @@ endif QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_GUI),-gui,-no-gui) QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_GUI),-system-freetype,-no-freetype) QT5BASE_DEPENDENCIES += $(if $(BR2_PACKAGE_QT5BASE_GUI),freetype) +QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_GUI),-system-harfbuzz,-no-harfbuzz) +QT5BASE_DEPENDENCIES += $(if $(BR2_PACKAGE_QT5BASE_GUI),harfbuzz) 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)
Signed-off-by: Peter Seiderer <ps.report@gmx.net> --- Missing BR2_TOOLCHAIN_HAS_SYNC_4 dependecy propagation from harfbuzz. --- package/qt5/qt5base/Config.in | 1 + package/qt5/qt5base/qt5base.mk | 2 ++ 2 files changed, 3 insertions(+)