BUILD: 51d: fix build issue with recent compilers
With gcc-11.2 and binutils-2.37 I'm getting link errors due to multiply
defined symbols when enabling USE_51DEGREES_V4. This is caused by two
variables being present in hash.h instead of hash.c, hence they're
defined twice.
This patch just moves them to hash.c and turns their declaration to
extern.
No backport is needed since this was introduced in 2.8-dev.
diff --git a/addons/51degrees/dummy/v4hash/hash/hash.c b/addons/51degrees/dummy/v4hash/hash/hash.c
index 96e5605..e9a739e 100644
--- a/addons/51degrees/dummy/v4hash/hash/hash.c
+++ b/addons/51degrees/dummy/v4hash/hash/hash.c
@@ -36,6 +36,9 @@
static fiftyoneDegreesHeaders dummyHeaders = { };
static fiftyoneDegreesDataSetBase dummyDataSet = { &dummyHeaders };
+fiftyoneDegreesConfigHash fiftyoneDegreesHashInMemoryConfig;
+fiftyoneDegreesPropertiesRequired fiftyoneDegreesPropertiesDefault;
+
fiftyoneDegreesDataSetBase* fiftyoneDegreesDataSetGet(
fiftyoneDegreesResourceManager *manager) {
return &dummyDataSet;
diff --git a/addons/51degrees/dummy/v4hash/hash/hash.h b/addons/51degrees/dummy/v4hash/hash/hash.h
index d899f6a..5d04d17 100644
--- a/addons/51degrees/dummy/v4hash/hash/hash.h
+++ b/addons/51degrees/dummy/v4hash/hash/hash.h
@@ -189,7 +189,7 @@
bool usePredictiveGraph;
} fiftyoneDegreesConfigHash;
-fiftyoneDegreesConfigHash fiftyoneDegreesHashInMemoryConfig;
+extern fiftyoneDegreesConfigHash fiftyoneDegreesHashInMemoryConfig;
typedef struct fiftyone_degrees_property_available_t {
@@ -206,7 +206,7 @@
fiftyoneDegreesPropertiesAvailable *existing;
} fiftyoneDegreesPropertiesRequired;
-fiftyoneDegreesPropertiesRequired fiftyoneDegreesPropertiesDefault;
+extern fiftyoneDegreesPropertiesRequired fiftyoneDegreesPropertiesDefault;
typedef struct fiftyone_degrees_memory_reader_t {
byte *startByte;