commit:     a210fd9af7db9e2d9088fd39d3f030153596c17a
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Tue Jan 18 18:28:08 2022 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Tue Jan 18 18:28:08 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a210fd9a

sys-libs/efivar: backport fix for binutils-2.36

Closes: https://bugs.gentoo.org/831417
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 sys-libs/efivar/efivar-38.ebuild                   |  1 +
 .../efivar/files/efivar-38-binutils-2.36.patch     | 30 ++++++++++++++++++++++
 2 files changed, 31 insertions(+)

diff --git a/sys-libs/efivar/efivar-38.ebuild b/sys-libs/efivar/efivar-38.ebuild
index 24459558e6fc..0febea4fe5ce 100644
--- a/sys-libs/efivar/efivar-38.ebuild
+++ b/sys-libs/efivar/efivar-38.ebuild
@@ -32,6 +32,7 @@ src_prepare() {
                "${FILESDIR}"/efivar-38-ia64-relro.patch
                "${FILESDIR}"/efivar-38-march-native.patch
                "${FILESDIR}"/efivar-38-Makefile-dep.patch
+               "${FILESDIR}"/efivar-38-binutils-2.36.patch
        )
        default
 }

diff --git a/sys-libs/efivar/files/efivar-38-binutils-2.36.patch 
b/sys-libs/efivar/files/efivar-38-binutils-2.36.patch
new file mode 100644
index 000000000000..df0575de7f33
--- /dev/null
+++ b/sys-libs/efivar/files/efivar-38-binutils-2.36.patch
@@ -0,0 +1,30 @@
+From 197a0874ea4010061b98b4b55eff65b33b1cd741 Mon Sep 17 00:00:00 2001
+From: Robbie Harwood <[email protected]>
+Date: Mon, 17 Jan 2022 12:34:55 -0500
+Subject: [PATCH] Add -T workaround for GNU ld 2.36
+
+Signed-off-by: Robbie Harwood <[email protected]>
+Resolves: #195
+---
+ src/include/workarounds.mk | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/include/workarounds.mk b/src/include/workarounds.mk
+index 31188342..143e7902 100644
+--- a/src/include/workarounds.mk
++++ b/src/include/workarounds.mk
+@@ -4,12 +4,12 @@
+ 
+ LD_FLAVOR := $(shell $(LD) --version | grep -E '^(LLD|GNU ld)'|sed 's/ .*//g')
+ LD_VERSION := $(shell $(LD) --version | grep -E '^(LLD|GNU ld)'|sed 's/.* //')
+-# I haven't tested 2.36 here; 2.35 is definitely broken and 2.37 seems to work
++# 2.35 is definitely broken and 2.36 seems to work
+ LD_DASH_T := $(shell \
+       if [ "x${LD_FLAVOR}" = xLLD ] ; then \
+               echo '-T' ; \
+       elif [ "x${LD_FLAVOR}" = xGNU ] ; then \
+-              if echo "${LD_VERSION}" | grep -q -E 
'^2\.3[789]|^2\.[456789]|^[3456789]|^[[:digit:]][[:digit:]]' ; then \
++              if echo "${LD_VERSION}" | grep -q -E 
'^2\.3[6789]|^2\.[456789]|^[3456789]|^[[:digit:]][[:digit:]]' ; then \
+                       echo '-T' ; \
+               else \
+                       echo "" ; \

Reply via email to