[Buildroot] [PATCH 2/2] package/imagemagick: host SVG support needs host gcc >= 4.9
Giulio Benetti
giulio.benetti at benettiengineering.com
Tue Dec 28 09:44:21 UTC 2021
Hi Fabrice, Yann,
On 19/12/21 10:10, Yann E. MORIN wrote:
> Fabrice, All,
>
> On 2021-12-19 00:11 +0100, Fabrice Fontaine spake thusly:
>> host gcc >= 4.9 is needed since bump of harfbuzz to version 3.1.2 in
>> commit 6861933d22006fbe8c961a41506beac826881f33 to avoid the following
>> build failure:
>>
>> In file included from ../src/hb-serialize.hh:36:0,
>> from ../src/hb-machinery.hh:37,
>> from ../src/hb-common.cc:30:
>> ../src/hb-map.hh:67:18: error: 'is_trivially_copyable' is not a member of 'std'
>> static_assert (std::is_trivially_copyable<K>::value, "");
>> ^
>
> I replied to the wrong mail earlier, so FTR I'll paste it again below.
> Sorry for the noise...
>
> Where did you see that gcc 4.9 had it? I looked at the gcc-4_9_0-release
> tag in the gcc tree, and it states:
>
> $ git grep is_trivially_copyable
> [...]
> libstdc++-v3/include/std/type_traits: // is_trivially_copyable
> (still unimplemented)
>
> Whereas gcc 5 has a proper implementation:
>
> $ git grep -A1 'is_trivially_copyable' libstdc++-v3/include/std/type_traits
> libstdc++-v3/include/std/type_traits: // is_trivially_copyable
> libstdc++-v3/include/std/type_traits- template<typename _Tp>
> libstdc++-v3/include/std/type_traits: struct is_trivially_copyable
> libstdc++-v3/include/std/type_traits: : public integral_constant<bool, __is_trivially_copyable(_Tp)>
> libstdc++-v3/include/std/type_traits- { };
>
> I see that 6861933d2200 (package/harfbuzz: bump to version 3.1.2) stated
> that the requirement on the gcc version was bumped to 4.9 from 4.8, but
> I am not sure how that can be...
Indeed now it came out gcc 5 is needed.
> Giulio, where did you get the info that gcc 4.9 was required (and not a
> higher version)?
Honestly on trial and error with target toolchain, because with harfbuzz
3.1.2 case it was only target related. And now I know I need to check
libstdc++ git instead(thank you for pointing me).
So I've sent the patch for harfbuzz 3.2.0 with both host and target gcc
5 dependency:
https://patchwork.ozlabs.org/project/buildroot/patch/20211228002227.15747-1-giulio.benetti@benettiengineering.com/
That should fix the problem.
Best regards
--
Giulio Benetti
Benetti Engineering sas
> Regards,
> Yann E. MORIN.
>
>> Fixes:
>> - http://autobuild.buildroot.org/results/89e1194c1659d7e1af9db8ffe5feee770c448f76
>>
>> Signed-off-by: Fabrice Fontaine <fontaine.fabrice at gmail.com>
>> ---
>> package/imagemagick/Config.in.host | 4 ++++
>> 1 file changed, 4 insertions(+)
>>
>> diff --git a/package/imagemagick/Config.in.host b/package/imagemagick/Config.in.host
>> index 671b0995dc..fe0ad9a748 100644
>> --- a/package/imagemagick/Config.in.host
>> +++ b/package/imagemagick/Config.in.host
>> @@ -17,6 +17,7 @@ if BR2_PACKAGE_HOST_IMAGEMAGICK
>> config BR2_PACKAGE_HOST_IMAGEMAGICK_SVG
>> bool "SVG support"
>> depends on BR2_PACKAGE_HOST_RUSTC_ARCH_SUPPORTS # host-librsvg
>> + depends on BR2_HOST_GCC_AT_LEAST_4_9 # host-pango -> host-harfbuzz
>> help
>> Say 'y' here is you need ImageMagick tools (like convert)
>> to support SVG.
>> @@ -24,4 +25,7 @@ config BR2_PACKAGE_HOST_IMAGEMAGICK_SVG
>> This is not enabled by default, as it brings quite a few
>> extra dependencies, and thus extra build time.
>>
>> +comment "SVG support needs a toolchain w/ host gcc >= 4.9"
>> + depends on !BR2_HOST_GCC_AT_LEAST_4_9
>> +
>> endif
>> --
>> 2.33.0
>>
>> _______________________________________________
>> buildroot mailing list
>> buildroot at buildroot.org
>> https://lists.buildroot.org/mailman/listinfo/buildroot
>
More information about the buildroot
mailing list