diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2017-05-01 11:37:04 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2017-05-01 11:37:04 +0300 |
commit | c899c7c9e128dae2beba307a376118e9eb5aaf58 (patch) | |
tree | 9d9832a878c9458f3cd0d8af2afa2a3e04f2c892 | |
parent | c4491d76ed35c1cdc02f2a74539bd14d7fde43dd (diff) |
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/
-rw-r--r-- | intern/ghost/intern/GHOST_WindowX11.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
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; |