From c899c7c9e128dae2beba307a376118e9eb5aaf58 Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Mon, 1 May 2017 10:37:04 +0200 Subject: Check we've got GLEW version 2 when building with core profile There was a bug in older GLEW version which kept glGenVertexArrays as NULL when 3.2 core context is requested [1]. Didn't find a way to check GLEW version from CMake, it seems the version is not really exposed to the header. [1] https://sourceforge.net/p/glew/bugs/124/ --- intern/ghost/intern/GHOST_WindowX11.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/intern/ghost/intern/GHOST_WindowX11.cpp b/intern/ghost/intern/GHOST_WindowX11.cpp index 7dc3f917fde..11f3a6ea406 100644 --- a/intern/ghost/intern/GHOST_WindowX11.cpp +++ b/intern/ghost/intern/GHOST_WindowX11.cpp @@ -1329,6 +1329,16 @@ GHOST_Context *GHOST_WindowX11::newDrawingContext(GHOST_TDrawingContextType type // try 3.3 core profile // no fallbacks +#if defined(WITH_GL_PROFILE_CORE) + { + const char *version_major = (char*)glewGetString(GLEW_VERSION_MAJOR); + if (version_major != NULL && version_major[0] == '1') { + fprintf(stderr, "Error: GLEW version 2.0 and above is required.\n"); + abort(); + } + } +#endif + const int profile_mask = #if defined(WITH_GL_PROFILE_CORE) GLX_CONTEXT_CORE_PROFILE_BIT_ARB; -- cgit v1.2.3