"Jason Green" jave27@gmail.com writes:
These are functions and definitions that will need to be used before implementing GLSL routines.
This doesn't build here:
gcc -c -I. -I. -I../../include -I../../include -I/usr/X11R6/include -D__WINESRC__ -D_REENTRANT -fPIC -Wall -pipe -fno-strict-aliasing -gstabs+ -Wdeclaration-after-statement -Wpointer-arith -g -O2 -o baseshader.o baseshader.c In file included from wined3d_private.h:45, from baseshader.c:28: ../../include/wine/wined3d_gl.h:566: error: redefinition of typedef 'PFNGLCREATESHADEROBJECTARBPROC' /usr/X11R6/include/GL/glext.h:4066: error: previous declaration of 'PFNGLCREATESHADEROBJECTARBPROC' was here ../../include/wine/wined3d_gl.h:567: error: redefinition of typedef 'PFNGLSHADERSOURCEARBPROC' /usr/X11R6/include/GL/glext.h:4067: error: previous declaration of 'PFNGLSHADERSOURCEARBPROC' was here ../../include/wine/wined3d_gl.h:568: error: redefinition of typedef 'PFNGLCOMPILESHADERARBPROC' /usr/X11R6/include/GL/glext.h:4068: error: previous declaration of 'PFNGLCOMPILESHADERARBPROC' was here ../../include/wine/wined3d_gl.h:569: error: redefinition of typedef 'PFNGLCREATEPROGRAMOBJECTARBPROC' /usr/X11R6/include/GL/glext.h:4069: error: previous declaration of 'PFNGLCREATEPROGRAMOBJECTARBPROC' was here ../../include/wine/wined3d_gl.h:570: error: redefinition of typedef 'PFNGLATTACHOBJECTARBPROC' /usr/X11R6/include/GL/glext.h:4070: error: previous declaration of 'PFNGLATTACHOBJECTARBPROC' was here ../../include/wine/wined3d_gl.h:571: error: redefinition of typedef 'PFNGLLINKPROGRAMARBPROC' /usr/X11R6/include/GL/glext.h:4071: error: previous declaration of 'PFNGLLINKPROGRAMARBPROC' was here ../../include/wine/wined3d_gl.h:572: error: redefinition of typedef 'PFNGLDETACHOBJECTARBPROC' /usr/X11R6/include/GL/glext.h:4065: error: previous declaration of 'PFNGLDETACHOBJECTARBPROC' was here ../../include/wine/wined3d_gl.h:573: error: redefinition of typedef 'PFNGLDELETEOBJECTARBPROC' /usr/X11R6/include/GL/glext.h:4063: error: previous declaration of 'PFNGLDELETEOBJECTARBPROC' was here make[2]: *** [baseshader.o] Error 1
+typedef GLhandleARB (APIENTRY * PFNGLCREATESHADEROBJECTARBPROC)
(GLenum shaderType);
+typedef void (APIENTRY * PFNGLSHADERSOURCEARBPROC) (GLhandleARB
shaderObj, GLsizei count, const GLcharARB* *string, const GLint *length);
+typedef void (APIENTRY * PFNGLCOMPILESHADERARBPROC) (GLhandleARB shaderObj);
etc...
Those should be called PGLFN*, provided we want to stick with the naming used in the rest of the file. At the very least, it should be something else than what's used in glext.h :-) I do think that only swapping the GL and FN parts of the names isn't the best way to create a different name.