diff options
author | Sam James <sam@gentoo.org> | 2024-03-15 05:59:31 +0000 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2024-03-15 06:01:12 +0000 |
commit | d44f2d6855d8f61ef5084c0b50ef589331637af8 (patch) | |
tree | 45967a562443a6bf5e0fc324ab010d2614a5bc77 | |
parent | patches: backport a bunch of patches to libtool 2.4.2 (diff) | |
download | elt-patches-d44f2d6855d8f61ef5084c0b50ef589331637af8.tar.gz elt-patches-d44f2d6855d8f61ef5084c0b50ef589331637af8.tar.bz2 elt-patches-d44f2d6855d8f61ef5084c0b50ef589331637af8.zip |
patches: werror: add 1.3134-2.2.7a-gnu (hack)20240315
The ancient fork of libtool in binutils/gdb/gcc doesn't know about most
of these flags (the fork mostly exists because of divergence in what --with-sysroot
means but there's some other unknown/undocumented differences too).
I'm kind of cheating here because this isn't split up per-type, which I should
probably go and do, but it feels silly to spend time on it given it's solely
for 3 packages...
Anyway, for this, we now get proper colour and -Werror and such with LTO.
Signed-off-by: Sam James <sam@gentoo.org>
-rw-r--r-- | patches/werror/1.3134-2.2.7a-gnu | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/patches/werror/1.3134-2.2.7a-gnu b/patches/werror/1.3134-2.2.7a-gnu new file mode 100644 index 0000000..6037873 --- /dev/null +++ b/patches/werror/1.3134-2.2.7a-gnu @@ -0,0 +1,57 @@ +Rollup of the flag fixes for the version of libtool in gcc/binutils/gdb. +--- a/ltmain.sh ++++ b/ltmain.sh +@@ -4968,19 +4968,41 @@ func_mode_link () + arg="$func_quote_for_eval_result" + ;; + +- # -64, -mips[0-9] enable 64-bit mode on the SGI compiler +- # -r[0-9][0-9]* specifies the processor on the SGI compiler +- # -xarch=*, -xtarget=* enable 64-bit mode on the Sun compiler +- # +DA*, +DD* enable 64-bit mode on the HP compiler +- # -q* pass through compiler args for the IBM compiler +- # -m*, -t[45]*, -txscale* pass through architecture-specific +- # compiler args for GCC +- # -F/path gives path to uninstalled frameworks, gcc on darwin +- # -p, -pg, --coverage, -fprofile-* pass through profiling flag for GCC +- # @file GCC response files +- # -tp=* Portland pgcc target processor selection ++ # Flags to be passed through unchanged, with rationale: ++ # -64, -mips[0-9] enable 64-bit mode for the SGI compiler ++ # -r[0-9][0-9]* specify processor for the SGI compiler ++ # -xarch=*, -xtarget=* enable 64-bit mode for the Sun compiler ++ # +DA*, +DD* enable 64-bit mode for the HP compiler ++ # -q* compiler args for the IBM compiler ++ # -m*, -t[45]*, -txscale* architecture-specific flags for GCC ++ # -F/path path to uninstalled frameworks, gcc on darwin ++ # -p, -pg, --coverage, -fprofile-* profiling flags for GCC ++ # -fstack-protector* stack protector flags for GCC ++ # @file GCC response files ++ # -tp=* Portland pgcc target processor selection ++ # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization ++ # -specs=* GCC specs files ++ # -stdlib=* select c++ std lib with clang ++ # -fdiagnostics-color* simply affects output ++ # -frecord-gcc-switches used to verify flags were respected ++ # -fsanitize=* Clang/GCC memory and address sanitizer ++ # -fno-sanitize* Clang/GCC memory and address sanitizer ++ # -shared-libsan Link with shared sanitizer runtimes (Clang) ++ # -static-libsan Link with static sanitizer runtimes (Clang) ++ # -fuse-ld=* Linker select flags for GCC ++ # -rtlib=* select c runtime lib with clang ++ # --unwindlib=* select unwinder library with clang ++ # -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=*) ++ -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*| \ ++ -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*| \ ++ -stdlib=*|-rtlib=*|--unwindlib=*| \ ++ -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_for_eval "$arg" + arg="$func_quote_for_eval_result" + func_append compile_command " $arg" |