GLAPI doesn't have an 'extern' in some circumstances. This way,
variable declarations become definitions (fdo #100916).

Signed-off-by: Stefan Dirsch <sndir...@suse.de>
---
 GLwDrawA.h  | 10 ++++++++--
 GLwDrawAP.h |  4 ++--
 2 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/GLwDrawA.h b/GLwDrawA.h
index b9711c2..316a70d 100644
--- a/GLwDrawA.h
+++ b/GLwDrawA.h
@@ -131,12 +131,18 @@
 #define GLwNaccumAlphaSize     "accumAlphaSize"
 #define GLwCAccumAlphaSize     "AccumAlphaSize"
 
+#if (defined(__GNUC__) && __GNUC__ >= 4) || (defined(__SUNPRO_C) && 
(__SUNPRO_C >= 0x590))
+#  define GLAPIVAR extern __attribute__((visibility("default")))
+#else
+#  define GLAPIVAR extern
+#endif
+
 #ifdef __GLX_MOTIF
 
 typedef struct _GLwMDrawingAreaClassRec        *GLwMDrawingAreaWidgetClass;
 typedef struct _GLwMDrawingAreaRec     *GLwMDrawingAreaWidget;
 
-GLAPI WidgetClass glwMDrawingAreaWidgetClass;
+GLAPIVAR WidgetClass glwMDrawingAreaWidgetClass;
 
 
 #else 
@@ -144,7 +150,7 @@ GLAPI WidgetClass glwMDrawingAreaWidgetClass;
 typedef struct _GLwDrawingAreaClassRec *GLwDrawingAreaWidgetClass;
 typedef struct _GLwDrawingAreaRec      *GLwDrawingAreaWidget;
 
-GLAPI WidgetClass glwDrawingAreaWidgetClass;
+GLAPIVAR WidgetClass glwDrawingAreaWidgetClass;
 
 
 #endif
diff --git a/GLwDrawAP.h b/GLwDrawAP.h
index 4ff21b4..6d29849 100644
--- a/GLwDrawAP.h
+++ b/GLwDrawAP.h
@@ -59,7 +59,7 @@ typedef struct _GLwMDrawingAreaClassRec {
   } GLwMDrawingAreaClassRec;
 
 
-GLAPI GLwMDrawingAreaClassRec glwMDrawingAreaClassRec;
+GLAPIVAR GLwMDrawingAreaClassRec glwMDrawingAreaClassRec;
 
 
 /* XT */
@@ -70,7 +70,7 @@ typedef struct _GLwDrawingAreaClassRec {
   GLwDrawingAreaClassPart     glwDrawingArea_class;
   } GLwDrawingAreaClassRec;
 
-GLAPI GLwDrawingAreaClassRec glwDrawingAreaClassRec;
+GLAPIVAR GLwDrawingAreaClassRec glwDrawingAreaClassRec;
 
 
 #endif 
-- 
2.16.4

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to