[PATCH V3] xfsprogs: do not redeclare globals provided by libraries

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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 <sandeen@xxxxxxxxxx> 
---

V2: unmangle whitespace, I'm a n00b.
V3: ditto, plus enforce -fno-common so older gcc users will play
    by the same rules as gcc 10

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/include/builddefs.in b/include/builddefs.in
index 4700b527..0a5cce32 100644
--- a/include/builddefs.in
+++ b/include/builddefs.in
@@ -13,7 +13,7 @@ OPTIMIZER = @opt_build@
 MALLOCLIB = @malloc_lib@
 LOADERFLAGS = @LDFLAGS@
 LTLDFLAGS = @LDFLAGS@
-CFLAGS = @CFLAGS@ -D_FILE_OFFSET_BITS=64
+CFLAGS = @CFLAGS@ -D_FILE_OFFSET_BITS=64 -fno-common
 BUILD_CFLAGS = @BUILD_CFLAGS@ -D_FILE_OFFSET_BITS=64
 
 LIBRT = @librt@
diff --git a/logprint/logprint.c b/logprint/logprint.c
index 7754a2a6..11100569 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;




[Index of Archives]     [XFS Filesystem Development (older mail)]     [Linux Filesystem Development]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux RAID]     [Linux SCSI]


  Powered by Linux