commit:     65060aed1078b800684e8d39f2dcfac6acd7cf99
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Nov 21 04:13:01 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Aug 16 17:21:20 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=65060aed

toolchain-funcs.eclass: mark tc-ld-disable-gold as deprecated

I don't think this function makes sense in a world with lld and mold.

If there's a bug causing someone to reach for tc-ld-disable-gold,
it falls into one of the following:

1. there's bfdisms (like wine where there's no hope)
   => tc-ld-force-bfd is the correct solution

2. it's a generic problem like underlinking
   => patch the package please, but in extremis or as a temporary workaround,
      tc-ld-force-bfd could be used (but discouraged in this situation)

3. it's a gold bug (i.e. the package is definitely only broken with gold)
   => report the issue upstream or force bfd if the package is truly
      doing something a bit unusual ("the wine case"), but really, given
      gold seems to be rotting away, it doesn't appear likely any bugs
      would get fixed & users shouldn't be enabling it.

I also think tc-ld-disable-gold has been used hastily in the past
for cases like 2, so let's discourage that in deprecating this as well.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 eclass/toolchain-funcs.eclass | 1 +
 1 file changed, 1 insertion(+)

diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass
index 61170de616d7..2d65c3fdc146 100644
--- a/eclass/toolchain-funcs.eclass
+++ b/eclass/toolchain-funcs.eclass
@@ -584,6 +584,7 @@ tc-ld-is-mold() {
 
 # @FUNCTION: tc-ld-disable-gold
 # @USAGE: [toolchain prefix]
+# @DEPRECATED: tc-ld-force-bfd
 # @DESCRIPTION:
 # If the gold linker is currently selected, configure the compilation
 # settings so that we use the older bfd linker instead.

Reply via email to