diff --git a/0001-xfsprogs-do-not-redeclare-globals-provided-by-librar.patch b/0001-xfsprogs-do-not-redeclare-globals-provided-by-librar.patch new file mode 100644 index 0000000..4d490a1 --- /dev/null +++ b/0001-xfsprogs-do-not-redeclare-globals-provided-by-librar.patch @@ -0,0 +1,79 @@ +From 123b851389ef9a012a469ef982ac7b819db59342 Mon Sep 17 00:00:00 2001 +From: Eric Sandeen +Date: Thu, 30 Jan 2020 13:34:17 -0500 +Subject: [PATCH] xfsprogs: do not redeclare globals provided by libraries + +In each of these cases, db, logprint, and mdrestore are redeclaring +as a global variable something which was already provided by a +library they link with. + +gcc now defaults to -fno-common and trips over these global variables +which are declared in utilities as well as in libxfs and libxlog, and +it causes the build to fail. + +Signed-off-by: Eric Sandeen +Reviewed-by: Darrick J. Wong +Reviewed-by: Christoph Hellwig +Signed-off-by: Eric Sandeen +--- + db/init.c | 1 - + logprint/logprint.c | 4 ++-- + mdrestore/xfs_mdrestore.c | 1 - + 3 files changed, 2 insertions(+), 4 deletions(-) + +diff --git a/db/init.c b/db/init.c +index 455220a8..0ac37368 100644 +--- a/db/init.c ++++ b/db/init.c +@@ -27,7 +27,6 @@ static int force; + static struct xfs_mount xmount; + struct xfs_mount *mp; + static struct xlog xlog; +-libxfs_init_t x; + xfs_agnumber_t cur_agno = NULLAGNUMBER; + + static void +diff --git a/logprint/logprint.c b/logprint/logprint.c +index 7754a2a6..511a32ac 100644 +--- a/logprint/logprint.c ++++ b/logprint/logprint.c +@@ -24,7 +24,6 @@ int print_buffer; + int print_overwrite; + int print_no_data; + int print_no_print; +-int print_exit = 1; /* -e is now default. specify -c to override */ + static int print_operation = OP_PRINT; + + static void +@@ -132,6 +131,7 @@ main(int argc, char **argv) + bindtextdomain(PACKAGE, LOCALEDIR); + textdomain(PACKAGE); + memset(&mount, 0, sizeof(mount)); ++ print_exit = 1; /* -e is now default. specify -c to override */ + + progname = basename(argv[0]); + while ((c = getopt(argc, argv, "bC:cdefl:iqnors:tDVv")) != EOF) { +@@ -152,7 +152,7 @@ main(int argc, char **argv) + case 'e': + /* -e is now default + */ +- print_exit++; ++ print_exit = 1; + break; + case 'C': + print_operation = OP_COPY; +diff --git a/mdrestore/xfs_mdrestore.c b/mdrestore/xfs_mdrestore.c +index 3375e080..1cd399db 100644 +--- a/mdrestore/xfs_mdrestore.c ++++ b/mdrestore/xfs_mdrestore.c +@@ -7,7 +7,6 @@ + #include "libxfs.h" + #include "xfs_metadump.h" + +-char *progname; + static int show_progress = 0; + static int show_info = 0; + static int progress_since_warning = 0; +-- +2.20.1 + diff --git a/xfsprogs.spec b/xfsprogs.spec index 8a20bbc..b8f31a4 100644 --- a/xfsprogs.spec +++ b/xfsprogs.spec @@ -1,7 +1,7 @@ Summary: Utilities for managing the XFS filesystem Name: xfsprogs Version: 5.4.0 -Release: 2%{?dist} +Release: 3%{?dist} License: GPL+ and LGPLv2+ URL: https://xfs.wiki.kernel.org Source0: http://kernel.org/pub/linux/utils/fs/xfs/xfsprogs/%{name}-%{version}.tar.xz @@ -17,6 +17,8 @@ Obsoletes: xfsprogs-qa-devel <= %{version} Conflicts: xfsdump < 3.0.1 Suggests: xfsprogs-xfs_scrub +Patch0: 0001-xfsprogs-do-not-redeclare-globals-provided-by-librar.patch + %description A set of commands to use the XFS filesystem, including mkfs.xfs. @@ -53,6 +55,7 @@ interface could change at any time! %prep %setup -q +%patch0 -p1 %build export tagname=CC @@ -119,6 +122,9 @@ rm -rf $RPM_BUILD_ROOT/%{_datadir}/doc/xfsprogs/ %{_libdir}/*.so %changelog +* Fri Jan 31 2020 Eric Sandeen 5.4.0-3 +- Fix global redefinitions for gcc10 build + * Fri Jan 31 2020 Fedora Release Engineering - 5.4.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild