Re: [OE-core] [master][PATCH 3/4] bitbake.conf: add DEBUG_PREFIX_MAP to TARGET_LDFLAGS
From: Richard Purdie <hidden>
Date: 2021-08-05 16:59:52
On Thu, 2021-08-05 at 17:00 +0100, Richard Purdie via lists.openembedded.org wrote:
On Tue, 2021-07-27 at 09:36 -0400, Tony Battersby wrote:quoted
-f*-prefix-map flags are required when linking with LTO enabled to make the output binary reproducible. See discussion here: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101473 [YOCTO #14481] Signed-off-by: Tony Battersby <redacted> --- /usr/sbin/lspci from pciutils is a good program to test that shows how adding -f*-prefix-map to LDFLAGS makes a program binary reproducible with LTO enabled. meta/conf/bitbake.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf index 160abf40ee..c0d2e3f82f 100644 --- a/meta/conf/bitbake.conf +++ b/meta/conf/bitbake.conf@@ -595,7 +595,7 @@ TARGET_LINK_HASH_STYLE ?= "${@['-Wl,--hash-style=gnu',''][d.getVar('LINKER_HASH_ASNEEDED ?= "-Wl,--as-needed" export LDFLAGS = "${TARGET_LDFLAGS}" -TARGET_LDFLAGS = "-Wl,-O1 ${TARGET_LINK_HASH_STYLE} ${ASNEEDED}" +TARGET_LDFLAGS = "-Wl,-O1 ${TARGET_LINK_HASH_STYLE} ${ASNEEDED} ${DEBUG_PREFIX_MAP}" # mips does not support GNU hash style therefore we override LINKER_HASH_STYLE_mipsarch_libc-musl = "sysv"This failed in testing in ruby: https://autobuilder.yoctoproject.org/typhoon/#/builders/115/builds/514 The error is a bit obtuse but in summary, the file: /tmp/work/core2-64-poky-linux/ruby/3.0.2-r0/sysroot-destdir/usr/lib/pkgconfig/ruby-3.0.pc
The fix for this looked relatively straight forward so I've queued a patch in master-next for this. Cheers, Richard