glut: Do not rely on GLAPIENTRY symbol.

GLEW does some defining/undefining of GLAPIENTRY making it unreliable. GLEW
should also be fixed, but removing the dependency on this symbol.

This also restores the ability for GLUT to be used with -fvisibility=hidden.
The downside of this is that ld warns of:

  Warning: size of symbol `glutBitmapXXXXX' changed from 4 in glut_xxx.o to 16 in glut_xxxx.o

Due to the fonts being declared void * (*4 bytes), but defined as 16byte static
structure. I'll fix that in a later commit.

See also commits:
 - f321f16e83
 - d084982240
This commit is contained in:
José Fonseca
2009-01-23 12:27:10 +00:00
parent 4558f6a7e4
commit d150e6a2e6

View File

@@ -200,10 +200,17 @@ WGLAPI int GLAPIENTRY SetPixelFormat(HDC,int,const PIXELFORMATDESCRIPTOR *);
# pragma warning( pop )
#endif
#else /* _WIN32 not defined */
#elif defined(__GNUC__) && (__GNUC__ * 100 + __GNUC_MINOR__) >= 303
/* Define GLUTAPIENTRY and GLUTCALLBACK to nothing if we aren't on Win32. */
# define GLUTAPIENTRY GLAPIENTRY
# define GLUTAPIENTRY
# define GLUTAPIENTRYV
# define GLUTCALLBACK
# define GLUTAPI __attribute__((visibility("default")))
#else
/* Define GLUTAPIENTRY and GLUTCALLBACK to nothing */
# define GLUTAPIENTRY
# define GLUTAPIENTRYV
# define GLUTCALLBACK
# define GLUTAPI extern