qt5base: make harfbuzz support selectable

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>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
This commit is contained in:
Peter Seiderer 2017-02-18 12:32:02 +01:00 committed by Arnout Vandecappelle (Essensium/Mind)
parent d0b055239e
commit e7e71c0124
2 changed files with 24 additions and 0 deletions

View File

@ -229,6 +229,14 @@ config BR2_PACKAGE_QT5BASE_FONTCONFIG
This option enables Fontconfig and Freetype support using This option enables Fontconfig and Freetype support using
the system fontconfig and freetype2 libraries. the system fontconfig and freetype2 libraries.
config BR2_PACKAGE_QT5BASE_HARFBUZZ
bool "harfbuzz support"
select BR2_PACKAGE_HARFBUZZ if BR2_TOOLCHAIN_HAS_SYNC_4
help
This option enables HarfBuzz support (either system harfbuzz
if the toolchain supports __sync for 4 bytes, or the qt
provided one which avoids this dependency by using QAtomic).
config BR2_PACKAGE_QT5BASE_GIF config BR2_PACKAGE_QT5BASE_GIF
bool "GIF support" bool "GIF support"
help help

View File

@ -105,6 +105,22 @@ QT5BASE_DEPENDENCIES += freetype
else else
QT5BASE_CONFIGURE_OPTS += -no-gui -no-freetype QT5BASE_CONFIGURE_OPTS += -no-gui -no-freetype
endif endif
ifeq ($(BR2_PACKAGE_QT5BASE_HARFBUZZ),y)
ifeq ($(BR2_TOOLCHAIN_HAS_SYNC_4),y)
# system harfbuzz in case __sync for 4 bytes is supported
QT5BASE_CONFIGURE_OPTS += -system-harfbuzz
QT5BASE_DEPENDENCIES += harfbuzz
else
# 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
QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_WIDGETS),-widgets,-no-widgets) QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_WIDGETS),-widgets,-no-widgets)
# We have to use --enable-linuxfb, otherwise Qt thinks that -linuxfb # We have to use --enable-linuxfb, otherwise Qt thinks that -linuxfb
# is to add a link against the "inuxfb" library. # is to add a link against the "inuxfb" library.