From 44a3b66cc3486489c8a5c30f54a168f0db0929f6 Mon Sep 17 00:00:00 2001 From: Ruben Kerkhof Date: Fri, 5 Aug 2016 22:03:27 +0200 Subject: [PATCH] python plugin: fix building on OSX Fixes #1852 duplicate symbol _ValuesType in: .libs/python_la-python.o .libs/python_la-pyconfig.o duplicate symbol _NotificationType in: .libs/python_la-python.o .libs/python_la-pyconfig.o duplicate symbol _ConfigType in: .libs/python_la-python.o .libs/python_la-pyconfig.o duplicate symbol _UnsignedType in: .libs/python_la-python.o .libs/python_la-pyconfig.o duplicate symbol _SignedType in: .libs/python_la-python.o .libs/python_la-pyconfig.o duplicate symbol _PluginDataType in: .libs/python_la-python.o .libs/python_la-pyconfig.o duplicate symbol _ValuesType in: .libs/python_la-python.o .libs/python_la-pyvalues.o duplicate symbol _NotificationType in: .libs/python_la-python.o .libs/python_la-pyvalues.o duplicate symbol _ConfigType in: .libs/python_la-python.o .libs/python_la-pyvalues.o duplicate symbol _UnsignedType in: .libs/python_la-python.o .libs/python_la-pyvalues.o duplicate symbol _SignedType in: .libs/python_la-python.o .libs/python_la-pyvalues.o duplicate symbol _PluginDataType in: .libs/python_la-python.o .libs/python_la-pyvalues.o ld: 12 duplicate symbols for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) make[3]: *** [python.la] Error 1 make[2]: *** [all-recursive] Error 1 make[1]: *** [all] Error 2 make: *** [all-recursive] Error 1 --- src/cpython.h | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/cpython.h b/src/cpython.h index 880fa4ce..4f2e8326 100644 --- a/src/cpython.h +++ b/src/cpython.h @@ -170,7 +170,7 @@ typedef struct { PyObject *values; /* Sequence */ PyObject *children; /* Sequence */ } Config; -PyTypeObject ConfigType; +extern PyTypeObject ConfigType; typedef struct { PyObject_HEAD /* No semicolon! */ @@ -181,7 +181,7 @@ typedef struct { char type[DATA_MAX_NAME_LEN]; char type_instance[DATA_MAX_NAME_LEN]; } PluginData; -PyTypeObject PluginDataType; +extern PyTypeObject PluginDataType; #define PluginData_New() PyObject_CallFunctionObjArgs((PyObject *) &PluginDataType, (void *) 0) typedef struct { @@ -190,7 +190,7 @@ typedef struct { PyObject *meta; /* dict */ double interval; } Values; -PyTypeObject ValuesType; +extern PyTypeObject ValuesType; #define Values_New() PyObject_CallFunctionObjArgs((PyObject *) &ValuesType, (void *) 0) typedef struct { @@ -198,12 +198,12 @@ typedef struct { int severity; char message[NOTIF_MAX_MSG_LEN]; } Notification; -PyTypeObject NotificationType; +extern PyTypeObject NotificationType; #define Notification_New() PyObject_CallFunctionObjArgs((PyObject *) &NotificationType, (void *) 0) typedef PyLongObject Signed; -PyTypeObject SignedType; +extern PyTypeObject SignedType; typedef PyLongObject Unsigned; -PyTypeObject UnsignedType; +extern PyTypeObject UnsignedType; -- 2.11.0