summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Gilbert <floppym@gentoo.org>2020-01-26 12:18:58 -0500
committerMike Gilbert <floppym@gentoo.org>2020-01-26 12:18:58 -0500
commit7c0cb0a875021f18b06ab03e85e5163f773830eb (patch)
treef96805f35d37dd2349b509070114d4ddb00c1c0a /sys-apps/systemd
parentmedia-libs/qtav: fix installed files (diff)
downloadgentoo-7c0cb0a875021f18b06ab03e85e5163f773830eb.tar.gz
gentoo-7c0cb0a875021f18b06ab03e85e5163f773830eb.tar.bz2
gentoo-7c0cb0a875021f18b06ab03e85e5163f773830eb.zip
sys-apps/systemd: fix build with gcc 10
Package-Manager: Portage-2.3.85_p2, Repoman-2.3.20_p36 Signed-off-by: Mike Gilbert <floppym@gentoo.org>
Diffstat (limited to 'sys-apps/systemd')
-rw-r--r--sys-apps/systemd/files/244-efi-gcc-10.patch40
-rw-r--r--sys-apps/systemd/systemd-244.ebuild1
2 files changed, 41 insertions, 0 deletions
diff --git a/sys-apps/systemd/files/244-efi-gcc-10.patch b/sys-apps/systemd/files/244-efi-gcc-10.patch
new file mode 100644
index 000000000000..ce37ac300be5
--- /dev/null
+++ b/sys-apps/systemd/files/244-efi-gcc-10.patch
@@ -0,0 +1,40 @@
+From 2c3ab079560664926189d5135b08eccc9797ab9e Mon Sep 17 00:00:00 2001
+From: Susant Sahani <ssahani@vmware.com>
+Date: Sat, 25 Jan 2020 11:30:08 +0100
+Subject: [PATCH] efi: fix build.
+
+```
+ninja -C build
+ninja: Entering directory `build'
+[29/101] Generating systemd_boot.so with a custom command.
+FAILED: src/boot/efi/systemd_boot.so
+/usr/bin/ld -o src/boot/efi/systemd_boot.so -T /usr/lib64/gnuefi/elf_x64_efi.lds -shared -Bsymbolic -nostdlib -znocombreloc -L /usr/lib64 /usr/lib64/gnuefi/crt0-efi-x64.o src/boot/efi/disk.c.o src/boot/efi/graphics.c.o src/boot/efi/measure.c.o src/boot/efi/pe.c.o src/boot/efi/util.c.o src/boot/efi/boot.c.o src/boot/efi/console.c.o src/boot/efi/crc32.c.o src/boot/efi/random-seed.c.o src/boot/efi/sha256.c.o src/boot/efi/shim.c.o -lefi -lgnuefi /usr/lib/gcc/x86_64-redhat-linux/10/libgcc.a
+/usr/bin/ld: src/boot/efi/graphics.c.o:/home/sus/tt/systemd/build/../src/boot/efi/util.h:58: multiple definition of `loader_guid'; src/boot/efi/disk.c.o:/home/sus/tt/systemd/build/../src/boot/efi/util.h:58: first defined here
+/usr/bin/ld: src/boot/efi/pe.c.o:/home/sus/tt/systemd/build/../src/boot/efi/util.h:58: multiple definition of `loader_guid'; src/boot/efi/disk.c.o:/home/sus/tt/systemd/build/../src/boot/efi/util.h:58: first defined here
+/usr/bin/ld: src/boot/efi/util.c.o:/home/sus/tt/systemd/build/../src/boot/efi/util.h:58: multiple definition of `loader_guid'; src/boot/efi/disk.c.o:/home/sus/tt/systemd/build/../src/boot/efi/util.h:58: first defined here
+/usr/bin/ld: src/boot/efi/boot.c.o:/home/sus/tt/systemd/build/../src/boot/efi/util.h:58: multiple definition of `loader_guid'; src/boot/efi/disk.c.o:/home/sus/tt/systemd/build/../src/boot/efi/util.h:58: first defined here
+/usr/bin/ld: src/boot/efi/console.c.o:/home/sus/tt/systemd/build/../src/boot/efi/util.h:58: multiple definition of `loader_guid'; src/boot/efi/disk.c.o:/home/sus/tt/systemd/build/../src/boot/efi/util.h:58: first defined here
+/usr/bin/ld: src/boot/efi/random-seed.c.o:/home/sus/tt/systemd/build/../src/boot/efi/util.h:58: multiple definition of `loader_guid'; src/boot/efi/disk.c.o:/home/sus/tt/systemd/build/../src/boot/efi/util.h:58: first defined here
+/usr/bin/ld: src/boot/efi/shim.c.o:/home/sus/tt/systemd/build/../src/boot/efi/util.h:58: multiple definition of `loader_guid'; src/boot/efi/disk.c.o:/home/sus/tt/systemd/build/../src/boot/efi/util.h:58: first defined here
+[31/101] Generating stub.c.o with a custom command.
+ninja: build stopped: subcommand failed.
+make: *** [Makefile:2: all] Error 1
+
+```
+---
+ src/boot/efi/util.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/boot/efi/util.h b/src/boot/efi/util.h
+index 8518dfde77e..b13f22476c6 100644
+--- a/src/boot/efi/util.h
++++ b/src/boot/efi/util.h
+@@ -55,7 +55,7 @@ static inline void FileHandleClosep(EFI_FILE_HANDLE *handle) {
+ uefi_call_wrapper((*handle)->Close, 1, *handle);
+ }
+
+-const EFI_GUID loader_guid;
++extern const EFI_GUID loader_guid;
+
+ #define UINTN_MAX (~(UINTN)0)
+ #define INTN_MAX ((INTN)(UINTN_MAX>>1))
diff --git a/sys-apps/systemd/systemd-244.ebuild b/sys-apps/systemd/systemd-244.ebuild
index daed59e210c0..948689867c8a 100644
--- a/sys-apps/systemd/systemd-244.ebuild
+++ b/sys-apps/systemd/systemd-244.ebuild
@@ -185,6 +185,7 @@ src_prepare() {
# Add local patches here
PATCHES+=(
+ "${FILESDIR}"/244-efi-gcc-10.patch
)
if ! use vanilla; then