Windows uses a different calling convention than linux for their public API 
(__stdcall vs __cdelc).

Signed-off-by: Emil Velikov <emil.l.veli...@gmail.com>
---
 examples/gl_basic.c | 20 ++++++++++++++------
 1 file changed, 14 insertions(+), 6 deletions(-)

diff --git a/examples/gl_basic.c b/examples/gl_basic.c
index 6a399bd..0f4b5a3 100644
--- a/examples/gl_basic.c
+++ b/examples/gl_basic.c
@@ -193,12 +193,20 @@ enum {
 #define WINDOW_WIDTH  320
 #define WINDOW_HEIGHT 240
 
-static void (*glClearColor)(GLclampf red, GLclampf green, GLclampf blue, 
GLclampf alpha);
-static void (*glClear)(GLbitfield mask);
-static void (*glGetIntegerv)(GLenum pname, GLint *params);
-static void (*glReadPixels)(GLint x, GLint y, GLsizei width, GLsizei height,
-                            GLenum format, GLenum type, GLvoid* data);
-static void (*glViewport)(GLint x, GLint y, GLsizei width, GLsizei height);
+#ifndef _WIN32
+#define APIENTRY
+#else
+#ifndef APIENTRY
+#define APIENTRY __stdcall
+#endif
+#endif
+
+static void (APIENTRY *glClearColor)(GLclampf red, GLclampf green, GLclampf 
blue, GLclampf alpha);
+static void (APIENTRY *glClear)(GLbitfield mask);
+static void (APIENTRY *glGetIntegerv)(GLenum pname, GLint *params);
+static void (APIENTRY *glReadPixels)(GLint x, GLint y, GLsizei width, GLsizei 
height,
+                                     GLenum format, GLenum type, GLvoid* data);
+static void (APIENTRY *glViewport)(GLint x, GLint y, GLsizei width, GLsizei 
height);
 
 /// @brief Command line options.
 struct options {
-- 
2.0.0

_______________________________________________
waffle mailing list
waffle@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/waffle

Reply via email to