git: eb0fbcfdfa6e - main - sysutils/wmflame: fix the port's build against -fno-common

From: Alexey Dokuchaev <danfe_at_FreeBSD.org>
Date: Mon, 07 Nov 2022 04:20:18 UTC
The branch main has been updated by danfe:

URL: https://cgit.FreeBSD.org/ports/commit/?id=eb0fbcfdfa6ec1203d95bc81ddeb1151698e79e8

commit eb0fbcfdfa6ec1203d95bc81ddeb1151698e79e8
Author:     Robert Clausecker <fuz@fuz.su>
AuthorDate: 2022-11-07 04:18:52 +0000
Commit:     Alexey Dokuchaev <danfe@FreeBSD.org>
CommitDate: 2022-11-07 04:18:52 +0000

    sysutils/wmflame: fix the port's build against -fno-common
    
    Ensure that there is only one variable definition per each object, as
    the C (and C++) standards mandated for years and compilers started to
    enforce as of recently (Clang 11, GCC 10).
    
    While we are at it, at missing `xext' component to the USE_XORG list.
    
    PR:     267600
---
 sysutils/wmflame/Makefile                          |  5 +----
 sysutils/wmflame/files/patch-wmgeneral_wmgeneral.c | 12 ++++++++++++
 sysutils/wmflame/files/patch-wmgeneral_wmgeneral.h | 15 +++++++++++++++
 3 files changed, 28 insertions(+), 4 deletions(-)

diff --git a/sysutils/wmflame/Makefile b/sysutils/wmflame/Makefile
index 5c0e2c8b39b0..da6b44c53692 100644
--- a/sysutils/wmflame/Makefile
+++ b/sysutils/wmflame/Makefile
@@ -11,11 +11,8 @@ WWW=		http://web.novalis.org/
 
 LICENSE=	GPLv2
 
-BROKEN_FreeBSD_13=	ld: error: duplicate symbol: Root
-BROKEN_FreeBSD_14=	ld: error: duplicate symbol: Root
-
 USES=		gmake xorg
-USE_XORG=	x11 xpm
+USE_XORG=	x11 xext xpm
 
 PLIST_FILES=	bin/wmflame
 
diff --git a/sysutils/wmflame/files/patch-wmgeneral_wmgeneral.c b/sysutils/wmflame/files/patch-wmgeneral_wmgeneral.c
new file mode 100644
index 000000000000..e3fafba3a215
--- /dev/null
+++ b/sysutils/wmflame/files/patch-wmgeneral_wmgeneral.c
@@ -0,0 +1,12 @@
+--- ../wmgeneral/wmgeneral.c.orig	1999-07-12 03:30:14 UTC
++++ ../wmgeneral/wmgeneral.c
+@@ -57,6 +57,9 @@
+  /* X11 Variables */
+ /*****************/
+ 
++Display		*display;
++Window		Root, iconwin, win;
++XpmIcon		wmgen;
+ int			screen;
+ int			x_fd;
+ int			d_depth;
diff --git a/sysutils/wmflame/files/patch-wmgeneral_wmgeneral.h b/sysutils/wmflame/files/patch-wmgeneral_wmgeneral.h
new file mode 100644
index 000000000000..87c392721b23
--- /dev/null
+++ b/sysutils/wmflame/files/patch-wmgeneral_wmgeneral.h
@@ -0,0 +1,15 @@
+--- ../wmgeneral/wmgeneral.h.orig	1999-06-17 06:48:13 UTC
++++ ../wmgeneral/wmgeneral.h
+@@ -36,9 +36,9 @@ typedef struct {
+  /* Global variable */
+ /*******************/
+ 
+-Display		*display;
+-Window          Root, iconwin, win;
+-XpmIcon		wmgen;
++extern Display		*display;
++extern Window		Root, iconwin, win;
++extern XpmIcon		wmgen;
+ 
+   /***********************/
+  /* Function Prototypes */