[Buildroot] [PATCH] package/harfbuzz: bump to version 3.1.0
Giulio Benetti
giulio.benetti at benettiengineering.com
Sat Nov 6 18:13:22 UTC 2021
Bump to version 3.1.0 by:
- adding upstream patch[1] to prevent build failure on 32-bit arm
- requiring BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 instead of _4_8 in this
package taking care of reverse dependencies, since now harfbuzz requires
gcc 4.9 to be built successfully.
[1]: https://github.com/harfbuzz/harfbuzz/commit/07dc34bdaf977a3be97ab5a68455ed7a67f80a06
Signed-off-by: Giulio Benetti <giulio.benetti at benettiengineering.com>
---
...-around-GCC-cast-align-error-warning.patch | 35 +++++++++++++++++++
package/harfbuzz/Config.in | 6 ++--
package/harfbuzz/harfbuzz.hash | 2 +-
package/harfbuzz/harfbuzz.mk | 2 +-
package/libass/Config.in | 6 ++--
package/mupdf/Config.in | 6 ++--
package/pango/Config.in | 2 +-
package/qt5/qt5base/Config.in | 2 +-
package/supertuxkart/Config.in | 2 +-
9 files changed, 49 insertions(+), 14 deletions(-)
create mode 100644 package/harfbuzz/0002-mutex-Try-work-around-GCC-cast-align-error-warning.patch
diff --git a/package/harfbuzz/0002-mutex-Try-work-around-GCC-cast-align-error-warning.patch b/package/harfbuzz/0002-mutex-Try-work-around-GCC-cast-align-error-warning.patch
new file mode 100644
index 0000000000..965205c9d1
--- /dev/null
+++ b/package/harfbuzz/0002-mutex-Try-work-around-GCC-cast-align-error-warning.patch
@@ -0,0 +1,35 @@
+From 07dc34bdaf977a3be97ab5a68455ed7a67f80a06 Mon Sep 17 00:00:00 2001
+From: Behdad Esfahbod <behdad at behdad.org>
+Date: Fri, 5 Nov 2021 14:45:20 -0700
+Subject: [PATCH] [mutex] Try work around GCC cast-align error/warning
+
+Shouldn't be needed because of the alignas(). Oh well...
+
+Might fix https://github.com/harfbuzz/harfbuzz/issues/3283
+
+Signed-off-by: Giulio Benetti <giulio.benetti at benettiengineering.com>
+---
+ src/hb-mutex.hh | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/src/hb-mutex.hh b/src/hb-mutex.hh
+index 4e135027f..6914b2245 100644
+--- a/src/hb-mutex.hh
++++ b/src/hb-mutex.hh
+@@ -97,10 +97,13 @@ struct hb_mutex_t
+ /* Create space for, but do not initialize m. */
+ alignas(hb_mutex_impl_t) char m[sizeof (hb_mutex_impl_t)];
+
++#pragma GCC diagnostic push
++#pragma GCC diagnostic ignored "-Wcast-align"
+ void init () { hb_mutex_impl_init ((hb_mutex_impl_t *) m); }
+ void lock () { hb_mutex_impl_lock ((hb_mutex_impl_t *) m); }
+ void unlock () { hb_mutex_impl_unlock ((hb_mutex_impl_t *) m); }
+ void fini () { hb_mutex_impl_finish ((hb_mutex_impl_t *) m); }
++#pragma GCC diagnostic pop
+ };
+
+ struct hb_lock_t
+--
+2.25.1
+
diff --git a/package/harfbuzz/Config.in b/package/harfbuzz/Config.in
index 8bc88f4284..2e4219ee22 100644
--- a/package/harfbuzz/Config.in
+++ b/package/harfbuzz/Config.in
@@ -2,7 +2,7 @@ config BR2_PACKAGE_HARFBUZZ
bool "harfbuzz"
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_TOOLCHAIN_HAS_SYNC_4
- depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
+ depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
help
HarfBuzz is an OpenType text shaping engine
@@ -11,7 +11,7 @@ config BR2_PACKAGE_HARFBUZZ
Harfbuzz can make optional use of cairo, freetype,
glib2 and icu packages if they are selected.
-comment "harfbuzz needs a toolchain w/ C++, gcc >= 4.8"
+comment "harfbuzz needs a toolchain w/ C++, gcc >= 4.9"
depends on BR2_TOOLCHAIN_HAS_SYNC_4
depends on !BR2_INSTALL_LIBSTDCPP || \
- !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
+ !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
diff --git a/package/harfbuzz/harfbuzz.hash b/package/harfbuzz/harfbuzz.hash
index 97fc5a2c5f..cf81f6634a 100644
--- a/package/harfbuzz/harfbuzz.hash
+++ b/package/harfbuzz/harfbuzz.hash
@@ -1,3 +1,3 @@
# Locally computed
-sha256 036b0ee118451539783ec7864148bb4106be42a2eb964df4e83e6703ec46f3d9 harfbuzz-3.0.0.tar.xz
+sha256 2359390944a74a933d2b1bd214754a5b3f817916a09c6d4ca3d263473cf19b8e harfbuzz-3.1.0.tar.xz
sha256 4345e1735f8bc6d812fed5180cabb5a5e88a4109d332652f2a45c13cfa5ee692 COPYING
diff --git a/package/harfbuzz/harfbuzz.mk b/package/harfbuzz/harfbuzz.mk
index 4534d166ef..f3ec3887d6 100644
--- a/package/harfbuzz/harfbuzz.mk
+++ b/package/harfbuzz/harfbuzz.mk
@@ -4,7 +4,7 @@
#
################################################################################
-HARFBUZZ_VERSION = 3.0.0
+HARFBUZZ_VERSION = 3.1.0
HARFBUZZ_SITE = https://github.com/harfbuzz/harfbuzz/releases/download/$(HARFBUZZ_VERSION)
HARFBUZZ_SOURCE = harfbuzz-$(HARFBUZZ_VERSION).tar.xz
HARFBUZZ_LICENSE = MIT, ISC (ucdn library)
diff --git a/package/libass/Config.in b/package/libass/Config.in
index 803f6b4438..d7725d5e1b 100644
--- a/package/libass/Config.in
+++ b/package/libass/Config.in
@@ -2,7 +2,7 @@ config BR2_PACKAGE_LIBASS
bool "libass"
depends on BR2_INSTALL_LIBSTDCPP # harfbuzz
depends on BR2_TOOLCHAIN_HAS_SYNC_4 # harfbuzz
- depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # harfbuzz
+ depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # harfbuzz
select BR2_PACKAGE_FREETYPE
select BR2_PACKAGE_HARFBUZZ
select BR2_PACKAGE_LIBFRIBIDI
@@ -12,7 +12,7 @@ config BR2_PACKAGE_LIBASS
https://github.com/libass/libass
-comment "libass needs a toolchain w/ C++, gcc >= 4.8"
+comment "libass needs a toolchain w/ C++, gcc >= 4.9"
depends on BR2_TOOLCHAIN_HAS_SYNC_4
depends on !BR2_INSTALL_LIBSTDCPP || \
- !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
+ !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
diff --git a/package/mupdf/Config.in b/package/mupdf/Config.in
index ff176f4b99..cf97711160 100644
--- a/package/mupdf/Config.in
+++ b/package/mupdf/Config.in
@@ -2,7 +2,7 @@ config BR2_PACKAGE_MUPDF
bool "mupdf"
depends on BR2_INSTALL_LIBSTDCPP # harfbuzz
depends on BR2_TOOLCHAIN_HAS_SYNC_4 # harfbuzz
- depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # harfbuzz
+ depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # harfbuzz
depends on BR2_PACKAGE_XORG7
select BR2_PACKAGE_FREETYPE
select BR2_PACKAGE_GUMBO_PARSER
@@ -18,7 +18,7 @@ config BR2_PACKAGE_MUPDF
https://www.mupdf.com/index.html
-comment "mupdf needs a toolchain w/ C++, gcc >= 4.8"
+comment "mupdf needs a toolchain w/ C++, gcc >= 4.9"
depends on BR2_TOOLCHAIN_HAS_SYNC_4
depends on !BR2_INSTALL_LIBSTDCPP || \
- !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
+ !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
diff --git a/package/pango/Config.in b/package/pango/Config.in
index cf5170c8f3..ff529ab0dc 100644
--- a/package/pango/Config.in
+++ b/package/pango/Config.in
@@ -5,7 +5,7 @@ config BR2_PACKAGE_PANGO
depends on BR2_USE_MMU # glib2
depends on BR2_INSTALL_LIBSTDCPP # freetype support
depends on BR2_TOOLCHAIN_HAS_SYNC_4 # harfbuzz
- depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # harfbuzz
+ depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # harfbuzz
select BR2_PACKAGE_LIBGLIB2
select BR2_PACKAGE_LIBFRIBIDI
select BR2_PACKAGE_EXPAT
diff --git a/package/qt5/qt5base/Config.in b/package/qt5/qt5base/Config.in
index e93b2dec38..a328190a98 100644
--- a/package/qt5/qt5base/Config.in
+++ b/package/qt5/qt5base/Config.in
@@ -237,7 +237,7 @@ config BR2_PACKAGE_QT5BASE_HARFBUZZ
bool "harfbuzz support"
select BR2_PACKAGE_HARFBUZZ if \
BR2_TOOLCHAIN_HAS_SYNC_4 && \
- BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
+ BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
help
This option enables HarfBuzz support (either system harfbuzz
if the toolchain supports __sync for 4 bytes, or the qt
diff --git a/package/supertuxkart/Config.in b/package/supertuxkart/Config.in
index 8af006d632..a18b9c1a0a 100644
--- a/package/supertuxkart/Config.in
+++ b/package/supertuxkart/Config.in
@@ -4,7 +4,7 @@ config BR2_PACKAGE_SUPERTUXKART
depends on BR2_i386 || BR2_x86_64
depends on BR2_USE_MMU # fork()
depends on BR2_INSTALL_LIBSTDCPP # openal
- depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # openal
+ depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # harfbuzz, openal
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # openal
depends on BR2_PACKAGE_OPENAL_ARCH_SUPPORTS # openal
depends on BR2_PACKAGE_HAS_LIBGL
--
2.25.1
More information about the buildroot
mailing list