Fix symlinking of linker in gcc-cross-initial
cover Fix symlinking of linker in gcc-cross-initial
the issue here is that we want to use ld.bfd in gcc-cross-initial but we miss out when we install symlinks. This hurts when default linker is gold and eglibc is re-built
The following changes since commit 4321c553d5ae816e566234e981a0815bba046d39:
SIGGEN_EXCLUDERECIPES_ABISAFE: add initscripts (2014-08-11 17:44:09 +0100)
are available in the git repository at:
git://git.openembedded.org/openembedded-core-contrib kraj/gcc-cross-initial-gold
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=kraj/gcc-cross-initial-gold
Khem Raj (1):
gcc-cross-initial: Use good old bfd linker by default
meta/recipes-devtools/gcc/gcc-cross-initial.inc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
Signature · 1 line
1.7.10.4
PATCH 1/1 gcc-cross-initial: Use good old bfd linker by default
We already indicate our intentions to use ld.bfd by specifying it in configure using --with-ld which works ok unless here where we manually create symlinks to binutils-cross components, when we use ld-is-gold feature default ld points to gold and this symlinking has to be aware of the fact that we configured binutils and gcc-cross to use gold as default ld but gcc-cross-initial uses BFD ld
This would be visible when using gold and rebuilding eglibc
--- meta/recipes-devtools/gcc/gcc-cross-initial.inc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
meta/recipes-devtools/gcc/gcc-cross-initial.inc +3 -1
@@ -57,7 +57,9 @@ do_install () { # found. These need to be relative paths so they work in different locations. dest=${D}${libexecdir}/gcc/${TARGET_SYS}/${BINV}/ install -d $dest - for t in ar as ld nm objcopy objdump ranlib strip g77 gcc cpp gfortran; do + useld=${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', '.bfd', '', d)} + ln -sf ${BINRELPATH}/${TARGET_PREFIX}ld${useld} ${dest}ld + for t in ar as nm objcopy objdump ranlib strip g77 gcc cpp gfortran; do ln -sf ${BINRELPATH}/${TARGET_PREFIX}$t $dest$t done # fixed limits.h infact includes the so called real limits.h
Signature · 1 line
1.7.10.4