[Buildroot] [PATCH] package/harfbuzz: fix host build failure due to C++11

Giulio Benetti giulio.benetti at benettiengineering.com
Sat Dec 25 21:46:38 UTC 2021


Package harfbuzz fails to build for host with error:
```
../src/hb-map.hh:67:18: error: 'is_trivially_copyable' is not a member of 'std'
   static_assert (std::is_trivially_copyable<K>::value, "");
```

Only starting from gcc version 5.0 we have 'is_trivially_copyable' member
of std. So let's depend on BR2_HOST_GCC_AT_LEAST_5 for harfbuzz. Let's
also depend on it in pango package which is the only one which needs
host-harfbuzz.

Fixes:
http://autobuild.buildroot.net/results/89e1194c1659d7e1af9db8ffe5feee770c448f76

Signed-off-by: Giulio Benetti <giulio.benetti at benettiengineering.com>
---
 package/harfbuzz/Config.in | 6 ++++--
 package/pango/Config.in    | 4 +++-
 2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/package/harfbuzz/Config.in b/package/harfbuzz/Config.in
index 2e4219ee22..81acebce46 100644
--- a/package/harfbuzz/Config.in
+++ b/package/harfbuzz/Config.in
@@ -3,6 +3,7 @@ config BR2_PACKAGE_HARFBUZZ
 	depends on BR2_INSTALL_LIBSTDCPP
 	depends on BR2_TOOLCHAIN_HAS_SYNC_4
 	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
+	depends on BR2_HOST_GCC_AT_LEAST_5 # C++11
 	help
 	  HarfBuzz is an OpenType text shaping engine
 
@@ -11,7 +12,8 @@ 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.9"
+comment "harfbuzz needs a toolchain w/ C++, gcc >= 4.9, host gcc >= 5.0"
 	depends on BR2_TOOLCHAIN_HAS_SYNC_4
 	depends on !BR2_INSTALL_LIBSTDCPP || \
-		!BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
+		!BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || \
+		!BR2_HOST_GCC_AT_LEAST_5
diff --git a/package/pango/Config.in b/package/pango/Config.in
index e2b2e7fe2b..dfda086cff 100644
--- a/package/pango/Config.in
+++ b/package/pango/Config.in
@@ -6,6 +6,7 @@ config BR2_PACKAGE_PANGO
 	depends on BR2_INSTALL_LIBSTDCPP # freetype support
 	depends on BR2_TOOLCHAIN_HAS_SYNC_4 # harfbuzz
 	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # harfbuzz
+	depends on BR2_HOST_GCC_AT_LEAST_5 # host-harfbuzz
 	select BR2_PACKAGE_LIBGLIB2
 	select BR2_PACKAGE_LIBFRIBIDI
 	select BR2_PACKAGE_EXPAT
@@ -24,9 +25,10 @@ config BR2_PACKAGE_PANGO
 
 	  https://pango.gnome.org/
 
-comment "pango needs a toolchain w/ wchar, threads, C++, gcc >= 4.9"
+comment "pango needs a toolchain w/ wchar, threads, C++, gcc >= 4.9, host gcc >= 5.0"
 	depends on BR2_USE_MMU
 	depends on BR2_TOOLCHAIN_HAS_SYNC_4
 	depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \
 		!BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || \
+		!BR2_HOST_GCC_AT_LEAST_5 || \
 		!BR2_INSTALL_LIBSTDCPP
-- 
2.25.1




More information about the buildroot mailing list