title: Specify OpenGL version using SDL2
body: <p>I am using Macbook air with  OS X 10.9.2  my graphics card is (Intel HD Graphics 4000 1024 MB)
  Apple states that  a Macbook air with the specifications as mine supports up to Opengl 4.1 you can read it here -> <a href="http://support.apple.com/kb/HT5942" rel="noreferrer">http://support.apple.com/kb/HT5942</a> .
  however when i use SDL2 and force the  system to use opengl 3.2 and when i query the OpenGL version via  <strong>glGetString()</strong>  i get the following line:</p>
  
  <pre><code>2.1 INTEL-8.24.11
  </code></pre>
  
  <p>my Code:</p>
  
  <pre><code>#include &lt;iostream&gt;
  #include &lt;SDL2/SDL.h&gt;
  #include &lt;opengL/gl3.h&gt;
  
  using namespace std;
  
  
  void sdldie(const char *msg)
  {
  printf("%s: %s\n", msg, SDL_GetError());
  SDL_Quit();
  exit(1);
  }
  
  
  
  void checkSDLError(int line = -1)
  {
  #ifndef NDEBUG
  const char *error = SDL_GetError();
  if (*error != '\0')
  {
      printf("SDL Error: %s\n", error);
      if (line != -1)
          printf(" + line: %i\n", line);
      SDL_ClearError();
  }
  #endif
  }
  
  
  int main(int argc, const char * argv[])
  {
  
  
  SDL_Window *mainwindow; /* Our window handle */
  SDL_GLContext maincontext;
  
  if (SDL_Init(SDL_INIT_VIDEO) &lt; 0) /* Initialize SDL's Video subsystem */
      sdldie("Unable to initialize SDL");
  
  SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION, 3);
  SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION, 2);
  
  SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1);
  SDL_GL_SetAttribute(SDL_GL_DEPTH_SIZE, 16);
  
  mainwindow = SDL_CreateWindow("Hello", SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED,
                                512, 512, SDL_WINDOW_OPENGL | SDL_WINDOW_SHOWN);
  if (!mainwindow) /* Die if creation failed */
      sdldie("Unable to create window");
  
  checkSDLError(__LINE__);
  
  /* Create our opengl context and attach it to our window */
  maincontext = SDL_GL_CreateContext(mainwindow);
  checkSDLError(__LINE__);
  
  cout &lt;&lt; glGetString(GL_VERSION);
  
  /* This makes our buffer swap syncronized with the monitor's vertical refresh */
  SDL_GL_SetSwapInterval(1);
  
  /* Clear our buffer with a red background */
  glClearColor ( 1.0, 0.0, 0.0, 1.0 );
  glClear ( GL_COLOR_BUFFER_BIT );
  /* Swap our back buffer to the front */
  SDL_GL_SwapWindow(mainwindow);
  /* Wait 2 seconds */
  SDL_Delay(2000);
  
  /* Same as above, but green */
  glClearColor ( 0.0, 1.0, 0.0, 1.0 );
  glClear ( GL_COLOR_BUFFER_BIT );
  SDL_GL_SwapWindow(mainwindow);
  SDL_Delay(2000);
  
  /* Same as above, but blue */
  glClearColor ( 0.0, 0.0, 1.0, 1.0 );
  glClear ( GL_COLOR_BUFFER_BIT );
  SDL_GL_SwapWindow(mainwindow);
  SDL_Delay(2000);
  
  /* Delete our opengl context, destroy our window, and shutdown SDL */
  SDL_GL_DeleteContext(maincontext);
  SDL_DestroyWindow(mainwindow);
  SDL_Quit();
  
  
  
  return 0;
  }
  </code></pre>