Re: [PATCH] scripts: remove obsolete gcc-ld script

From: Jiri Slaby
Date: Mon Aug 29 2022 - 03:08:04 EST


On 25. 08. 22, 19:19, Nick Desaulniers wrote:
+ Jiri in case this needs to be carried downstream.

Thanks.

On Thu, Aug 25, 2022 at 2:15 AM Lukas Bulwahn <lukas.bulwahn@xxxxxxxxx> wrote:

Since commit 8564ed2b3888 ("Kbuild, lto: Add a gcc-ld script to let run gcc
as ld") in 2014, there was not specific work on this the gcc-ld script
other than treewide clean-ups.

There are no users within the kernel tree, and probably no out-of-tree
users either, and there is no dedicated maintainer in MAINTAINERS.

There are out-of-tree users.

Delete this obsolete gcc-ld script.

Signed-off-by: Lukas Bulwahn <lukas.bulwahn@xxxxxxxxx>

No callers in-tree; happy to bring it back though should there later
be. Thanks for the patch.

I agree to have this downstream-only for the time being. We have updates for it queued, so we'd only start tracking the full content now...

BTW the script is not nice at all. How do the clang people cope with the issue? (Running gcc-ld instead of ld with proper arguments when linking using (full) LTO. For example "-z now" -> "-Wl,-z,now".)

Reviewed-by: Nick Desaulniers <ndesaulniers@xxxxxxxxxx>

---
If there are no objections, I would like to get this patch included
through the kbuild tree.

Masahiro-san, please pick this patch.

scripts/gcc-ld | 30 ------------------------------
1 file changed, 30 deletions(-)
delete mode 100755 scripts/gcc-ld

diff --git a/scripts/gcc-ld b/scripts/gcc-ld
deleted file mode 100755
index 997b818c3962..000000000000
--- a/scripts/gcc-ld
+++ /dev/null
@@ -1,30 +0,0 @@
-#!/bin/sh
-# SPDX-License-Identifier: GPL-2.0
-# run gcc with ld options
-# used as a wrapper to execute link time optimizations
-# yes virginia, this is not pretty
-
-ARGS="-nostdlib"
-
-while [ "$1" != "" ] ; do
- case "$1" in
- -save-temps|-m32|-m64) N="$1" ;;
- -r) N="$1" ;;
- -[Wg]*) N="$1" ;;
- -[olv]|-[Ofd]*|-nostdlib) N="$1" ;;
- --end-group|--start-group)
- N="-Wl,$1" ;;
- -[RTFGhIezcbyYu]*|\
---script|--defsym|-init|-Map|--oformat|-rpath|\
--rpath-link|--sort-section|--section-start|-Tbss|-Tdata|-Ttext|\
---version-script|--dynamic-list|--version-exports-symbol|--wrap|-m)
- A="$1" ; shift ; N="-Wl,$A,$1" ;;
- -[m]*) N="$1" ;;
- -*) N="-Wl,$1" ;;
- *) N="$1" ;;
- esac
- ARGS="$ARGS $N"
- shift
-done
-
-exec $CC $ARGS


--
js
suse labs