diff --git a/SOURCES/0001-libGLw-Use-newly-introduced-GLAPIVAR-for-variables.patch b/SOURCES/0001-libGLw-Use-newly-introduced-GLAPIVAR-for-variables.patch new file mode 100644 index 0000000..9082da2 --- /dev/null +++ b/SOURCES/0001-libGLw-Use-newly-introduced-GLAPIVAR-for-variables.patch @@ -0,0 +1,73 @@ +From b060a0782f09ebe4f60c8fd4564c11ba043c331f Mon Sep 17 00:00:00 2001 +From: Stefan Dirsch +Date: Tue, 17 Jul 2018 12:40:00 -0600 +Subject: [PATCH] libGLw: Use newly introduced GLAPIVAR for variables + +GLAPI doesn't have an 'extern' in some circumstances. This way, +variable declarations become definitions (fdo #100916). + +Signed-off-by: Stefan Dirsch +Reviewed-by: Brian Paul +--- + 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.21.0 + diff --git a/SPECS/mesa-libGLw.spec b/SPECS/mesa-libGLw.spec index 992ca80..1f4cc96 100644 --- a/SPECS/mesa-libGLw.spec +++ b/SPECS/mesa-libGLw.spec @@ -1,12 +1,14 @@ Summary: Xt / Motif OpenGL widgets Name: mesa-libGLw Version: 8.0.0 -Release: 4%{?dist} +Release: 4.1%{?dist} License: MIT Group: System Environment/Libraries URL: http://www.mesa3d.org Source0: ftp://ftp.freedesktop.org/pub/mesa/glw/glw-%{version}.tar.bz2 +Patch0: 0001-libGLw-Use-newly-introduced-GLAPIVAR-for-variables.patch + BuildRequires: libXt-devel BuildRequires: libGL-devel %if 0%{?rhel} @@ -37,6 +39,7 @@ Mesa libGLw development package. %prep %setup -q -n glw-%{version} +%patch0 -p1 %build %configure --disable-static --enable-motif @@ -71,6 +74,9 @@ rm -rf $RPM_BUILD_ROOT %{_includedir}/GL/GLwMDrawAP.h %changelog +* Thu May 30 2019 Adam Jackson - 8.0.0-4.1 +- Fix external API symbol visibility + * Fri Jan 24 2014 Daniel Mach - 8.0.0-4 - Mass rebuild 2014-01-24