libbfd is enabled and it invokes libtool relink step to get rid of
rpaths during install step. libtool 2.4 patches rightly prepend
lt_sysroot to target libdir which relink step would use, such a patch
is also upstreamed into libtool [1]
However, when we do not specify --with-libtool-sysroot, lt_sysoot prefix
turns out to be empty and relink step adds -L/usr/lib to linker command
line. it cause all sort of problems e.g. when the build host has zlib
installed then libbfd tries to link with /usr/lib/libz.so instead of the
one in target sysroot, fortunately OE linker reports host path contamination
and fails the build. Second problem seen when building target binutils on
musl, it links with libc.so correctly but libtool relink step resolves
libc.so in /usr/lib due to this path and expands it into libc.so.6 and
ld-linux-x86-64.so.2 ( glibc host's libc.so is a linker stub ) in
DT_NEEDED ELF section which does not work with
musl linker and build QA detects this anamoly as well.
ERROR: binutils-2.44-r0 do_package_qa: QA Issue: /usr/lib/libbfd-2.44.so contained in package libbfd requires libc.so.6(GLIBC_2.34)(64bit), but no providers found in RDEPENDS:libbfd? [file-rdeps]
This inconsistency may cause produced binaries mistakenly linked against
libraries from the host distro.
Add libtool sysroot to point libtool to correct sysroot location during
build.
[1] https://git.savannah.gnu.org/cgit/libtool.git/commit/?id=3221f9f0fb98d5740ab5d0e8db6a731302520644
(From OE-Core rev: 89e984bd7edb9a2013b65d0215fd6af9aadd59e8)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Drop the CVE-2024-53589 patch, its included in 2.44
* Package newly rename gp-* to gprofng-* binaries and remove old gp-*
symlinks
* Gold linker is now deprecated and will be removed in future release
its already deleted in tarball releases
* Support for the Nios II target has been removed.
* Assembler:
- Support for new architecture extensions for AArch64, Risc-V and
x86.
* Linker:
The default maximum page size was changed from 16KiB to 64KiB for
LoongArch.
This now supports mixed LTO and non-LTO object files in
relocatable output.
The ELF forms of the linker support a --image-base=<ADDR> option
for compatibility with LLD.
The --build-id= option now accepts an argument of "xx" which
enables the use of the xxhash library. This produces a 128-bit
hash and is 2-4x faster than md5 or sha1.
The ELF linker option --package-metadata supports percent-encoded
and %[string] encoded JSON payloads.
* Disassembler:
The RISC-V disassembler now supports -M,max option like QEMU to
dump instruction without checking architecture support as usual.
* GprofNG:
Support added for hardware event counters for Neoverse-N1,
Ampere-1, and Appliedmicro processors.
Detailed release notes [1]
[1] https://lists.gnu.org/archive/html/info-gnu/2025-02/msg00001.html
(From OE-Core rev: df3c43e69542939a4bec3893f1e927edf2ad7179)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>