[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