efivar-38
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
From 145c6593fa9206cc27229a9a40c49e4bed046739 Mon Sep 17 00:00:00 2001
|
||||
From: Sergei Trofimovich <slyfox@gentoo.org>
|
||||
Date: Mon, 19 Oct 2020 19:05:01 +0100
|
||||
Subject: [PATCH] gcc.specs: drop --fatal-warnings from linker options (ia64
|
||||
compatibility)
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
```
|
||||
$ LANG=C make HOSTCC=x86_64-pc-linux-gnu-gcc CC=ia64-unknown-linux-gnu-gcc HOST_ARCH=ia64
|
||||
ia64-unknown-linux-gnu-gcc ... \
|
||||
-o libefivar.so ...
|
||||
/usr/libexec/gcc/ia64-unknown-linux-gnu/ld: warning: -z relro ignored
|
||||
collect2: error: ld returned 1 exit status
|
||||
make[1]: *** [/home/slyfox/dev/git/efivar/src/include/rules.mk:32: libefivar.so] Error 1
|
||||
```
|
||||
|
||||
ia64 (and a few others) binutils target does not support '-z relro' and always
|
||||
issues a warning. --fatal-warnings spec option turns the build into always failing one.
|
||||
|
||||
The change drops `--fatal-warnings` option from gcc.spec entirely.
|
||||
|
||||
Rejected upstream in https://github.com/rhboot/efivar/pull/164.
|
||||
|
||||
[sam: add extra hunk to fix 38 build.]
|
||||
|
||||
Reported-by: Émeric Maschino
|
||||
Bug: https://bugs.gentoo.org/749963
|
||||
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
|
||||
---
|
||||
src/include/gcc.specs | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/include/gcc.specs b/src/include/gcc.specs
|
||||
index ef28e2b..4deead5 100644
|
||||
--- a/src/include/gcc.specs
|
||||
+++ b/src/include/gcc.specs
|
||||
@@ -5,4 +5,4 @@
|
||||
+ %{!shared:%{!static:%{!r:-pie}}} %{static:-Wl,-no-fatal-warnings -Wl,-static -static -Wl,-z,relro,-z,now} -grecord-gcc-switches
|
||||
|
||||
*link:
|
||||
-+ %{!static:--fatal-warnings} --no-undefined-version --no-allow-shlib-undefined --add-needed -z now --build-id %{!static:%{!shared:-pie}} %{shared:-z relro} %{static:%<pie}
|
||||
++ --no-undefined-version --no-allow-shlib-undefined --add-needed -z now --build-id %{!static:%{!shared:-pie}} %{shared:-z relro} %{static:%<pie}
|
||||
--
|
||||
2.34.1
|
||||
|
||||
diff --git a/src/include/defaults.mk b/src/include/defaults.mk
|
||||
index 9024a3a..f5515fa 100644
|
||||
--- a/src/include/defaults.mk
|
||||
+++ b/src/include/defaults.mk
|
||||
@@ -58,7 +58,7 @@ override LDFLAGS = $(CFLAGS) -L. $(_LDFLAGS) $(_CCLDFLAGS) \
|
||||
-Wl,-z,now \
|
||||
-Wl,-z,muldefs \
|
||||
-Wl,-z,relro \
|
||||
- -Wl,--fatal-warnings \
|
||||
+ -Wl,--no-fatal-warnings \
|
||||
$(call family,LDFLAGS) $(call family,CCLDFLAGS) \
|
||||
$(call pkg-config-ccldflags)
|
||||
override CCLDFLAGS = $(LDFLAGS)
|
||||
Reference in New Issue
Block a user