From dfbc5f3644b0ae85b522c9fe8c5a612cfd48868a Mon Sep 17 00:00:00 2001 From: Siddharth Date: Wed, 2 Oct 2013 07:49:45 -0700 Subject: [PATCH 1/3] atomic_flag needs to have public methods. --- base/mutex.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/base/mutex.h b/base/mutex.h index 9c0b92e9f2..9191ace08e 100644 --- a/base/mutex.h +++ b/base/mutex.h @@ -43,10 +43,11 @@ struct atomic_flag_init { static const atomic_flag_init NATIVE_ATOMIC_FLAG_INIT; class atomic_flag { +public: atomic_flag() { } - atomic_flag(atomic_flag_init &v) : value(0) { + atomic_flag(const atomic_flag_init &v) : value(0) { } void clear() { From 85648db42f0ab91b990f5f881ec84986ab57b1b0 Mon Sep 17 00:00:00 2001 From: Sacha Date: Sat, 5 Oct 2013 00:12:43 +1000 Subject: [PATCH 2/3] Build fixes for Symbian. --- base/mutex.h | 2 +- gfx_es2/gl_state.cpp | 8 ++++---- gfx_es2/gl_state.h | 8 ++++++++ 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/base/mutex.h b/base/mutex.h index 9191ace08e..9b92e831e2 100644 --- a/base/mutex.h +++ b/base/mutex.h @@ -70,7 +70,7 @@ public: #elif defined(BLACKBERRY) return atomic_set_value(&value, 1) != 0; #elif defined(__SYMBIAN32__) - return !g_atomic_int_compare_and_exchange(&value, 0, 1); + return !g_atomic_int_compare_and_exchange((volatile int*)&value, 0, 1); #else return __sync_lock_test_and_set(&value, 1) != 0; #endif diff --git a/gfx_es2/gl_state.cpp b/gfx_es2/gl_state.cpp index d4070894d5..a6e986376a 100644 --- a/gfx_es2/gl_state.cpp +++ b/gfx_es2/gl_state.cpp @@ -128,16 +128,16 @@ void CheckGLExtensions() { gl_extensions.EXT_shader_framebuffer_fetch = (strstr(extString, "GL_EXT_shader_framebuffer_fetch") != 0) || (strstr(extString, "GL_NV_shader_framebuffer_fetch") != 0); gl_extensions.NV_draw_texture = strstr(extString, "GL_NV_draw_texture") != 0; gl_extensions.NV_copy_image = strstr(extString, "GL_NV_copy_image") != 0; +#if defined(IOS) || defined(__SYMBIAN32__) || defined(MEEGO_EDITION_HARMATTAN) || defined(MAEMO) + gl_extensions.OES_vertex_array_object = false; + gl_extensions.EXT_discard_framebuffer = false; +#else if (gl_extensions.NV_draw_texture) { glDrawTextureNV = (PFNGLDRAWTEXTURENVPROC)eglGetProcAddress("glDrawTextureNV"); } if (gl_extensions.NV_copy_image) { glCopyImageSubDataNV = (PFNGLCOPYIMAGESUBDATANVPROC)eglGetProcAddress("glCopyImageSubDataNV"); } -#if defined(IOS) || defined(__SYMBIAN32__) || defined(MEEGO_EDITION_HARMATTAN) || defined(MAEMO) - gl_extensions.OES_vertex_array_object = false; - gl_extensions.EXT_discard_framebuffer = false; -#else gl_extensions.OES_vertex_array_object = strstr(extString, "GL_OES_vertex_array_object") != 0; if (gl_extensions.OES_vertex_array_object) { glGenVertexArraysOES = (PFNGLGENVERTEXARRAYSOESPROC)eglGetProcAddress ( "glGenVertexArraysOES" ); diff --git a/gfx_es2/gl_state.h b/gfx_es2/gl_state.h index f9cd1224fd..b0314f7d5f 100644 --- a/gfx_es2/gl_state.h +++ b/gfx_es2/gl_state.h @@ -7,6 +7,14 @@ #ifdef USING_GLES2 +#ifndef GL_MIN_EXT +#define GL_MIN_EXT 0x8007 +#endif + +#ifndef GL_MAX_EXT +#define GL_MAX_EXT 0x8008 +#endif + #if defined(ANDROID) || defined(BLACKBERRY) // Additional extensions not included in GLES2/gl2ext.h from the NDK From 5d1c9739e1c0d5251e04297d6c512ef0ec60b0c3 Mon Sep 17 00:00:00 2001 From: "Unknown W. Brackets" Date: Sat, 5 Oct 2013 10:01:46 -0700 Subject: [PATCH 3/3] Buildfix for iOS. --- gfx_es2/gl_state.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gfx_es2/gl_state.h b/gfx_es2/gl_state.h index b0314f7d5f..74050d9cba 100644 --- a/gfx_es2/gl_state.h +++ b/gfx_es2/gl_state.h @@ -43,7 +43,7 @@ extern PFNGLMAPBUFFERPROC glMapBuffer; #endif - +#if !defined(IOS) typedef void (EGLAPIENTRYP PFNGLDRAWTEXTURENVPROC) (GLuint texture, GLuint sampler, GLfloat x0, GLfloat y0, GLfloat x1, GLfloat y1, GLfloat z, GLfloat s0, GLfloat t0, GLfloat s1, GLfloat t1); extern PFNGLDRAWTEXTURENVPROC glDrawTextureNV; typedef void (EGLAPIENTRYP PFNGLCOPYIMAGESUBDATANVPROC) (GLuint srcName, GLenum @@ -51,6 +51,7 @@ typedef void (EGLAPIENTRYP PFNGLCOPYIMAGESUBDATANVPROC) (GLuint srcName, GLenum GLenum dstTarget, GLint dstLevel, GLint dstX, GLint dstY, GLint dstZ, GLsizei width, GLsizei height, GLsizei depth); extern PFNGLCOPYIMAGESUBDATANVPROC glCopyImageSubDataNV; +#endif #if !defined(IOS) && !defined(__SYMBIAN32__) && !defined(MEEGO_EDITION_HARMATTAN) && !defined(MAEMO) extern PFNGLDISCARDFRAMEBUFFEREXTPROC glDiscardFramebufferEXT;