kumquat-buildroot/package/harfbuzz/harfbuzz.mk
Giulio Benetti 3245874961 package/harfbuzz: work around arc gcc10 bug
With BR2_GCC_VERSION_ARC=y(arc gcc10) harfbuzz package exhibits a gcc bug
that makes build to fail. This bug is found only in official arc gcc10
provided by Synopsis, so we can't use the BR2_TOOLCHAIN_HAS_GCC_BUG_
approach since bug can't be even filed in gcc bugzilla.
To work around this, if BR2_GCC_VERSION_ARC=y we force using -O0.

Fixes:
http://autobuild.buildroot.net/results/e4d/e4da9ba40c8f4567601d404e20dd6a0b322210c2/

Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2021-09-11 17:25:57 +02:00

103 lines
2.4 KiB
Makefile

################################################################################
#
# harfbuzz
#
################################################################################
HARFBUZZ_VERSION = 2.9.1
HARFBUZZ_SITE = https://github.com/harfbuzz/harfbuzz/releases/download/$(HARFBUZZ_VERSION)
HARFBUZZ_SOURCE = harfbuzz-$(HARFBUZZ_VERSION).tar.xz
HARFBUZZ_LICENSE = MIT, ISC (ucdn library)
HARFBUZZ_LICENSE_FILES = COPYING
HARFBUZZ_CPE_ID_VENDOR = harfbuzz_project
HARFBUZZ_INSTALL_STAGING = YES
HARFBUZZ_CONF_OPTS = \
-Dgdi=disabled \
-Ddirectwrite=disabled \
-Dcoretext=disabled \
-Dtests=disabled \
-Ddocs=disabled \
-Dbenchmark=disabled \
-Dicu_builtin=false \
-Dexperimental_api=false \
-Dfuzzer_ldflags=""
# freetype & glib2 support required by host-pango
HOST_HARFBUZZ_DEPENDENCIES = \
host-freetype \
host-libglib2
HOST_HARFBUZZ_CONF_OPTS = \
-Dglib=enabled \
-Dgobject=disabled \
-Dcairo=disabled \
-Dicu=disabled \
-Dgraphite=disabled \
-Dfreetype=enabled \
-Dgdi=disabled \
-Ddirectwrite=disabled \
-Dcoretext=disabled \
-Dtests=disabled \
-Dintrospection=disabled \
-Ddocs=disabled \
-Dbenchmark=disabled \
-Dicu_builtin=false \
-Dexperimental_api=false \
-Dfuzzer_ldflags=""
ifeq ($(BR2_PACKAGE_CAIRO),y)
HARFBUZZ_DEPENDENCIES += cairo
HARFBUZZ_CONF_OPTS += -Dcairo=enabled
else
HARFBUZZ_CONF_OPTS += -Dcairo=disabled
endif
ifeq ($(BR2_PACKAGE_FREETYPE),y)
HARFBUZZ_DEPENDENCIES += freetype
HARFBUZZ_CONF_OPTS += -Dfreetype=enabled
else
HARFBUZZ_CONF_OPTS += -Dfreetype=disabled
endif
ifeq ($(BR2_PACKAGE_GOBJECT_INTROSPECTION),y)
HARFBUZZ_DEPENDENCIES += gobject-introspection
HARFBUZZ_CONF_OPTS += \
-Dgobject=enabled \
-Dintrospection=enabled
else
HARFBUZZ_CONF_OPTS += \
-Dgobject=disabled \
-Dintrospection=disabled
endif
ifeq ($(BR2_PACKAGE_GRAPHITE2),y)
HARFBUZZ_DEPENDENCIES += graphite2
HARFBUZZ_CONF_OPTS += -Dgraphite=enabled
else
HARFBUZZ_CONF_OPTS += -Dgraphite=disabled
endif
ifeq ($(BR2_PACKAGE_LIBGLIB2),y)
HARFBUZZ_DEPENDENCIES += libglib2
HARFBUZZ_CONF_OPTS += -Dglib=enabled
else
HARFBUZZ_CONF_OPTS += -Dglib=disabled
endif
ifeq ($(BR2_PACKAGE_ICU),y)
HARFBUZZ_DEPENDENCIES += icu
HARFBUZZ_CONF_OPTS += -Dicu=enabled
else
HARFBUZZ_CONF_OPTS += -Dicu=disabled
endif
ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),)
HARFBUZZ_CXXFLAGS += $(TARGET_CXXFLAGS) -DHB_NO_MT
endif
ifeq ($(BR2_GCC_VERSION_ARC),y)
HARFBUZZ_CXXFLAGS += -O0
endif
$(eval $(meson-package))
$(eval $(host-meson-package))