]> git.ipfire.org Git - thirdparty/libtool.git/commitdiff
ltmain.in: Handle prefix-map compiler options correctly
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Wed, 17 Jan 2024 12:39:20 +0000 (12:39 +0000)
committerMike Frysinger <vapier@gentoo.org>
Wed, 17 Jan 2024 19:49:08 +0000 (14:49 -0500)
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.

Add these to the list of options libtool passes through.

* build-aux/ltmain.in: Handle prefix-map compiler options.

build-aux/ltmain.in

index 9f473959c1d6d367c179e034a4aa488638991b40..a6a9d69612125ab5cf8554f21a2723d7e97ed0f8 100644 (file)
@@ -5413,12 +5413,14 @@ func_mode_link ()
       # -shared-libsan       Link with shared sanitizer runtimes (Clang)
       # -static-libsan       Link with static sanitizer runtimes (Clang)
       # -fuse-ld=*           Linker select flags for GCC
+      # -f{file|debug|macro|profile}-prefix-map=* needed for lto linking
       # -Wa,*                Pass flags directly to the assembler
       # -Werror, -Werror=*   Report (specified) warnings as errors
       -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=*|-fno-sanitize*|-shared-libsan|-static-libsan| \
+      -ffile-prefix-map=*|-fdebug-prefix-map=*|-fmacro-prefix-map=*|-fprofile-prefix-map=*| \
       -fdiagnostics-color*|-frecord-gcc-switches| \
       -fuse-ld=*|-Wa,*|-Werror|-Werror=*)
         func_quote_arg pretty "$arg"