From 776b1aab1255bee956ba3ad00f0df041a0e53773 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Wed, 17 Jan 2024 08:36:09 +0000 Subject: libtool: Update prefixmap and clang patches to match upstream submission The patches were submitted upstream and adjusted after discussion. Update to match the changes requested. (From OE-Core rev: d7644baaf99b5593b356c395b232088436ae2e30) Signed-off-by: Richard Purdie --- ...-ltmain.in-Parse-additional-clang-options.patch | 31 +++++++++++++--------- ...andle-prefix-map-compiler-options-correct.patch | 31 ++++++++++++++-------- 2 files changed, 38 insertions(+), 24 deletions(-) (limited to 'meta/recipes-devtools/libtool/libtool') diff --git a/meta/recipes-devtools/libtool/libtool/0001-ltmain.in-Parse-additional-clang-options.patch b/meta/recipes-devtools/libtool/libtool/0001-ltmain.in-Parse-additional-clang-options.patch index 0285c143d2..0dcf963dcc 100644 --- a/meta/recipes-devtools/libtool/libtool/0001-ltmain.in-Parse-additional-clang-options.patch +++ b/meta/recipes-devtools/libtool/libtool/0001-ltmain.in-Parse-additional-clang-options.patch @@ -1,21 +1,26 @@ -From: Khem Raj -Subject: [PATCH] ltmain.in: Parse additional clang options +ltmain.in: Parse additional clang options -clang uses -rtlib and --unwindlib to select proper compiler runtime in -some cases. There fore pass these options to linker when found in +clang uses -rtlib and --unwindlib to select proper compiler +runtime in some cases. Therefore pass these options to linker when found in ldflags -Upstream-Status: Pending -Signed-off-by: Khem Raj +* build-aux/ltmain.in: Handle clang linker options -Index: libtool-2.4.7/build-aux/ltmain.in -=================================================================== ---- libtool-2.4.7.orig/build-aux/ltmain.in -+++ libtool-2.4.7/build-aux/ltmain.in -@@ -5420,10 +5420,12 @@ func_mode_link () +Signed-off-by: Richard Purdie +Upstream-Status: Submitted [https://lists.gnu.org/archive/html/libtool-patches/2024-01/msg00110.html] + +--- + build-aux/ltmain.in | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in +index 037f009..ba5c816 100644 +--- a/build-aux/ltmain.in ++++ b/build-aux/ltmain.in +@@ -5414,10 +5414,12 @@ func_mode_link () # -fsanitize=* Clang/GCC memory and address sanitizer # -fuse-ld=* Linker select flags for GCC - # -f*-prefix-map* needed for lto linking + # -f{file|debug|macro|profile}-prefix-map* needed for lto linking + # -rtlib=* select c runtime lib with clang + # --unwindlib=* select unwinder library with clang # -Wa,* Pass flags directly to the assembler @@ -23,6 +28,6 @@ Index: libtool-2.4.7/build-aux/ltmain.in -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \ - -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \ + -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*|-rtlib=*|--unwindlib=*| \ - -specs=*|-fsanitize=*|-fuse-ld=*|-f*-prefix-map*|-Wa,*) + -specs=*|-fsanitize=*|-fuse-ld=*|-ffile-prefix-map=*|-fdebug-prefix-map=*|-fmacro-prefix-map=*|-fprofile-prefix-map=*|-Wa,*) func_quote_arg pretty "$arg" arg=$func_quote_arg_result diff --git a/meta/recipes-devtools/libtool/libtool/0011-ltmain.in-Handle-prefix-map-compiler-options-correct.patch b/meta/recipes-devtools/libtool/libtool/0011-ltmain.in-Handle-prefix-map-compiler-options-correct.patch index 4945533bad..c0627795b4 100644 --- a/meta/recipes-devtools/libtool/libtool/0011-ltmain.in-Handle-prefix-map-compiler-options-correct.patch +++ b/meta/recipes-devtools/libtool/libtool/0011-ltmain.in-Handle-prefix-map-compiler-options-correct.patch @@ -1,28 +1,37 @@ -From: Richard Purdie -Subject: [PATCH 11/12] ltmain.in: Handle prefix-map compiler options correctly +ltmain.in: Handle prefix-map compiler options correctly + +If lto is enabled, we need the prefix-map variables to be passed to the linker +to correctly link the objects using correctly mapped paths. -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. +* build-aux/ltmain.in: Handle prefix-map compiler options + Signed-off-by: Richard Purdie -Upstream-Status: Submitted [https://lists.gnu.org/archive/html/libtool-patches/2021-10/msg00019.html] +https://lists.gnu.org/archive/html/libtool-patches/2021-10/msg00019.html +https://lists.gnu.org/archive/html/libtool-patches/2024-01/msg00066.html +Upstream-Status: Submitted [https://lists.gnu.org/archive/html/libtool-patches/2024-01/msg00109.html] + +--- + build-aux/ltmain.in | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) -Index: libtool-2.4.7/build-aux/ltmain.in -=================================================================== ---- libtool-2.4.7.orig/build-aux/ltmain.in -+++ libtool-2.4.7/build-aux/ltmain.in -@@ -5419,11 +5419,12 @@ func_mode_link () +diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in +index 0a50f5b..037f009 100644 +--- a/build-aux/ltmain.in ++++ b/build-aux/ltmain.in +@@ -5413,11 +5413,12 @@ func_mode_link () # -stdlib=* select c++ std lib with clang # -fsanitize=* Clang/GCC memory and address sanitizer # -fuse-ld=* Linker select flags for GCC -+ # -f*-prefix-map* needed for lto linking ++ # -f{file|debug|macro|profile}-prefix-map* needed for lto linking # -Wa,* Pass flags directly to the assembler -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \ -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \ - -specs=*|-fsanitize=*|-fuse-ld=*|-Wa,*) -+ -specs=*|-fsanitize=*|-fuse-ld=*|-f*-prefix-map*|-Wa,*) ++ -specs=*|-fsanitize=*|-fuse-ld=*|-ffile-prefix-map=*|-fdebug-prefix-map=*|-fmacro-prefix-map=*|-fprofile-prefix-map=*|-Wa,*) func_quote_arg pretty "$arg" arg=$func_quote_arg_result func_append compile_command " $arg" -- cgit v1.2.3-54-g00ecf