diff --git a/0001-Avoid-multiple-definiton-with-gcc-fno-common.patch b/0001-Avoid-multiple-definiton-with-gcc-fno-common.patch new file mode 100644 index 0000000..72af14f --- /dev/null +++ b/0001-Avoid-multiple-definiton-with-gcc-fno-common.patch @@ -0,0 +1,47 @@ +From daed7eedba73907730241c5262a5c16c7abedb6f Mon Sep 17 00:00:00 2001 +From: Mike Gilbert +Date: Tue, 21 Jan 2020 11:49:35 -0500 +Subject: [PATCH] Avoid multiple-definiton with gcc -fno-common + +GCC 10 enables -fno-common by default. + +Fixes: https://bugs.gentoo.org/705896 + +Signed-off-by: Steve Dickson +[Upstream status: daed7ee Avoid multiple-definiton with gcc -fno-common] +--- + src/rpc_com.h | 3 +-- + src/svc.c | 3 +++ + 2 files changed, 4 insertions(+), 2 deletions(-) + +diff --git a/src/rpc_com.h b/src/rpc_com.h +index 10bec79..76badef 100644 +--- a/src/rpc_com.h ++++ b/src/rpc_com.h +@@ -61,8 +61,7 @@ void __xprt_unregister_unlocked(SVCXPRT *); + void __xprt_set_raddr(SVCXPRT *, const struct sockaddr_storage *); + + +-SVCXPRT **__svc_xports; +-int __svc_maxrec; ++extern int __svc_maxrec; + + #ifdef __cplusplus + } +diff --git a/src/svc.c b/src/svc.c +index b59467b..6db164b 100644 +--- a/src/svc.c ++++ b/src/svc.c +@@ -57,6 +57,9 @@ + + #define max(a, b) (a > b ? a : b) + ++static SVCXPRT **__svc_xports; ++int __svc_maxrec; ++ + /* + * The services list + * Each entry represents a set of procedures (an rpc program). +-- +2.24.1 + diff --git a/libtirpc.changes b/libtirpc.changes index b5b2155..952547c 100644 --- a/libtirpc.changes +++ b/libtirpc.changes @@ -1,3 +1,11 @@ +------------------------------------------------------------------- +Wed Feb 5 14:08:52 UTC 2020 - Petr Vorel + +- Backport upstream fix daed7ee ("Avoid multiple-definiton with gcc -fno-common") + to fix build error with gcc flag -fno-common (bsc#1160875). + Tested on gcc-9 and gcc-10. + 0001-Avoid-multiple-definiton-with-gcc-fno-common.patch + ------------------------------------------------------------------- Fri Jan 3 15:45:16 UTC 2020 - Petr Vorel diff --git a/libtirpc.spec b/libtirpc.spec index 3fe1469..aa6c470 100644 --- a/libtirpc.spec +++ b/libtirpc.spec @@ -35,6 +35,7 @@ URL: https://sourceforge.net/projects/libtirpc/ Source: %{name}-%{version}.tar.bz2 Source1: baselibs.conf Patch0: 0001-Add-authdes_seccreate-stub.patch +Patch1: 0001-Avoid-multiple-definiton-with-gcc-fno-common.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build %define debug_package_requires libtirpc3 = %{version}-%{release} @@ -80,6 +81,7 @@ TCP over IPv4. %prep %setup -q -n %name-%version %patch0 -p1 +%patch1 -p1 %build sed -i -e 's|@includedir@/tirpc|@includedir@|g' libtirpc.pc.in