[Buildroot] [PATCH 1/1] gcc: Support configure option --with-linker-hash-style
romain.naour at gmail.com
Thu Nov 8 23:49:33 UTC 2018
I'm looking at this oldest patch in the patchwork...
So, at the moment we use both hash (sysv and gnu) by default for toolchains with
binutils >= 2.30, except for mips architecure which still use sysv hash.
# Enable gnu hash only on GNU targets, but not mips
mips*-*-*) enable_default_hash_style=sysv ;;
*-*-gnu* | *-*-linux* | *-*-nacl*) enable_default_hash_style=both ;;
*) enable_default_hash_style=sysv ;;
gnu hash style was introduced by  (binutils 2.18)
The gnu hash style is enabled by default since binutils 2.30  along with sysv
If --hash-style option is supported by the compiler, glibc use both hash (sysv
and gnu) . But this doesn't mean that all binaries will be build with gnu
style hash if binutils < 2.30.
So, I'm not sure we want to enable only gnu style for all binaries on the target
(especially the libc). Binaries that contains only gnu hash style are
incompatible with binaries that contains only sysv hash style.
The default for the choice should be BR2_GCC_HASH_STYLE_BOTH instead of
BR2_GCC_HASH_STYLE_GNU if we want to make this option configurable.
Le 17/12/2017 à 15:30, Stefan Fröberg a écrit :
> Hi Thomas
> Well, I was just worried that if setting the linking hash style to stone
> (aka "gnu") then could
> it maybe break builds in some other archs than x86, x86_64 and ARM ?
> So I played carefull and made it configurable by choice.
> Im not sure but I think that option has been hiding in GCC since 4.x and
> buildroot lowest is 4.9.
> So if it's okay I can cook another patch where it just set's it in stone
> without choice ?
> Thomas Petazzoni kirjoitti 16.12.2017 klo 17:23:
>> On Sat, 16 Dec 2017 01:25:30 +0200, Stefan Fröberg wrote:
>>> This will set the default hash style that GCC will
>>> always use during linking.
>>> Signed-off-by: Stefan Fröberg <stefan.froberg at petroprogram.com>
>> Could you explain the motivation for configuring the default hash
>> style? If "gnu" gives the best application startup time, why would we
>> use a different one?
>> Generally, the commit log lacks a bit of background, i.e the "why" we
>> would want such a change.
> buildroot mailing list
> buildroot at busybox.net
More information about the buildroot