1From fccbb85beb89b9ca35cac87fb553ef124a6c516b Mon Sep 17 00:00:00 2001 2From: Khem Raj <raj.khem@gmail.com> 3Date: Thu, 13 Aug 2020 17:26:14 -0700 4Subject: [PATCH] Avoid variable definition in header files 5 6This can cause multiple definitions to be emitted into objects and link 7fail as a result with gcc-10+ since it defaults to -fno-common, patch 8moves the definitions to source files 9 10Upstream-Status: Pending 11 12Signed-off-by: Khem Raj <raj.khem@gmail.com> 13--- 14 control.h | 2 +- 15 providerMgr.c | 1 + 16 providerMgr.h | 2 +- 17 sfcBroker.c | 2 +- 18 trace.c | 1 + 19 trace.h | 2 +- 20 6 files changed, 6 insertions(+), 4 deletions(-) 21 22diff --git a/control.h b/control.h 23index e41e4b9..5e15363 100644 24--- a/control.h 25+++ b/control.h 26@@ -28,7 +28,7 @@ int getControlUNum(char *id, unsigned int *val); 27 int getControlULong(char *id, unsigned long *val); 28 int getControlNum(char *id, long *val); 29 int getControlBool(char *id, int *val); 30-const char * sfcBrokerStart; 31+extern const char * sfcBrokerStart; 32 33 #endif 34 /* MODELINES */ 35diff --git a/providerMgr.c b/providerMgr.c 36index c38a7d3..ff6d38d 100644 37--- a/providerMgr.c 38+++ b/providerMgr.c 39@@ -53,6 +53,7 @@ 40 #define SFCB_ASM(x) 41 #endif 42 43+sigset_t mask, old_mask; 44 static pthread_mutex_t resultsocketMutex = PTHREAD_MUTEX_INITIALIZER; 45 46 extern CMPIBroker *Broker; 47diff --git a/providerMgr.h b/providerMgr.h 48index 3cc7745..fbbfecd 100644 49--- a/providerMgr.h 50+++ b/providerMgr.h 51@@ -398,7 +398,7 @@ BinResponseHdr **invokeProviders(BinRequestContext * binCtx, int *err, 52 BinResponseHdr *invokeProvider(BinRequestContext * ctx); 53 void freeResponseHeaders(BinResponseHdr ** resp, 54 BinRequestContext * ctx); 55-sigset_t mask, old_mask; 56+extern sigset_t mask, old_mask; 57 58 #endif 59 /* MODELINES */ 60diff --git a/sfcBroker.c b/sfcBroker.c 61index ca043c9..85581f5 100644 62--- a/sfcBroker.c 63+++ b/sfcBroker.c 64@@ -53,7 +53,7 @@ 65 #endif 66 67 int sfcBrokerPid = 0; 68- 69+const char *sfcBrokerStart; 70 extern int sfcbUseSyslog; 71 72 extern void setExFlag(unsigned long f); 73diff --git a/trace.c b/trace.c 74index 438af46..23597e1 100644 75--- a/trace.c 76+++ b/trace.c 77@@ -52,6 +52,7 @@ char *processName = NULL; 78 int providerProcess = 0; 79 int idleThreadId = 0; 80 int terminating = 0; 81+int colorTrace; 82 83 int _sfcb_debug = 0; 84 unsigned long _sfcb_trace_mask = 0; 85diff --git a/trace.h b/trace.h 86index 2c6d8be..ea39850 100644 87--- a/trace.h 88+++ b/trace.h 89@@ -130,7 +130,7 @@ typedef struct traceId { 90 #define CYAN 6 91 #define WHITE 7 92 void changeTextColor(int reset); 93-int colorTrace; 94+extern int colorTrace; 95 96 #define MAX_MSG_SIZE 1024 /* max length of trace message */ 97 98-- 992.28.0 100 101