diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2021-08-05 11:18:20 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2021-08-12 06:26:15 +0100 |
commit | 2f743b473938e798bff7122d1be177ce8e460d8b (patch) | |
tree | dbd33b220afa5eb353985c15a964d3bcd2892bfd /meta/recipes-devtools/libtool | |
parent | 9262d89763d2a5173d3d585ed7313e4392343c32 (diff) | |
download | poky-2f743b473938e798bff7122d1be177ce8e460d8b.tar.gz |
libtool: Fix lto option passing for reproducible builds
If lto is enabled, we need the prefix-map variables to be passed to the linker.
Add these to the list of options libtool passes through.
(From OE-Core rev: 2c26d2c00b47df856fb2d9c35486b135094d46ac)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/libtool')
-rw-r--r-- | meta/recipes-devtools/libtool/libtool-2.4.6.inc | 1 | ||||
-rw-r--r-- | meta/recipes-devtools/libtool/libtool/lto-prefix.patch | 22 |
2 files changed, 23 insertions, 0 deletions
diff --git a/meta/recipes-devtools/libtool/libtool-2.4.6.inc b/meta/recipes-devtools/libtool/libtool-2.4.6.inc index c1cbceb51f..6748d7468e 100644 --- a/meta/recipes-devtools/libtool/libtool-2.4.6.inc +++ b/meta/recipes-devtools/libtool/libtool-2.4.6.inc | |||
@@ -23,6 +23,7 @@ SRC_URI = "${GNU_MIRROR}/libtool/libtool-${PV}.tar.gz \ | |||
23 | file://0001-libtool-Check-for-static-libs-for-internal-compiler-.patch \ | 23 | file://0001-libtool-Check-for-static-libs-for-internal-compiler-.patch \ |
24 | file://0001-Makefile.am-make-sure-autoheader-run-before-autoconf.patch \ | 24 | file://0001-Makefile.am-make-sure-autoheader-run-before-autoconf.patch \ |
25 | file://0001-Makefile.am-make-sure-autoheader-run-before-automake.patch \ | 25 | file://0001-Makefile.am-make-sure-autoheader-run-before-automake.patch \ |
26 | file://lto-prefix.patch \ | ||
26 | " | 27 | " |
27 | 28 | ||
28 | SRC_URI[md5sum] = "addf44b646ddb4e3919805aa88fa7c5e" | 29 | SRC_URI[md5sum] = "addf44b646ddb4e3919805aa88fa7c5e" |
diff --git a/meta/recipes-devtools/libtool/libtool/lto-prefix.patch b/meta/recipes-devtools/libtool/libtool/lto-prefix.patch new file mode 100644 index 0000000000..2bd010b8e4 --- /dev/null +++ b/meta/recipes-devtools/libtool/libtool/lto-prefix.patch | |||
@@ -0,0 +1,22 @@ | |||
1 | If lto is enabled, we need the prefix-map variables to be passed to the linker. | ||
2 | Add these to the list of options libtool passes through. | ||
3 | |||
4 | Upstream-Status: Pending | ||
5 | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> | ||
6 | |||
7 | Index: libtool-2.4.6/build-aux/ltmain.in | ||
8 | =================================================================== | ||
9 | --- libtool-2.4.6.orig/build-aux/ltmain.in | ||
10 | +++ libtool-2.4.6/build-aux/ltmain.in | ||
11 | @@ -5424,9 +5424,10 @@ func_mode_link () | ||
12 | # --sysroot=* for sysroot support | ||
13 | # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization | ||
14 | # -stdlib=* select c++ std lib with clang | ||
15 | + # -f*-prefix-map* needed for lto linking | ||
16 | -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ | ||
17 | -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \ | ||
18 | - -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*) | ||
19 | + -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*|-f*-prefix-map*) | ||
20 | func_quote_for_eval "$arg" | ||
21 | arg=$func_quote_for_eval_result | ||
22 | func_append compile_command " $arg" | ||