What happens if you include them anyway before the glfw header include? (Don't forget to save the file to have CC re-parsing.)
It works for me if I include the header files exactly like this:
#include "GL/gl.h"
#include "GL/glu.h"
#include "GL/glfw.h"
That works of course, but the thing is, that's not how it used to work. Here's a snippet of code from the glfw header
// -------------------- END SYSTEM/COMPILER SPECIFIC ---------------------
// Include standard OpenGL headers: GLFW uses GL_FALSE/GL_TRUE, and it is
// convenient for the user to only have to include <GL/glfw.h>. This also
// solves the problem with Windows <GL/gl.h> and <GL/glu.h> needing some
// special defines which normally requires the user to include <windows.h>
// (which is not a nice solution for portable programs).
#if defined(__APPLE_CC__)
#include <OpenGL/gl.h>
#include <OpenGL/glu.h>
#else
#include <GL/gl.h>
#include <GL/glu.h>
#endif
Shouldn't the CC look into the header and see the included files and parse them appropriately? I am saying it worked before, but recently I noticed it does not. I put it up as a big but could hardly explain it as I can here.
Just as a reference to those interested (and not willing to dig through our svn changelog or code):
#if defined(__APPLE_CC__)
#include <OpenGL/gl.h>
#include <OpenGL/glu.h>
#else
#include <GL/gl.h>
#include <GL/glu.h>
#endif
The C++ parser in these cases always follows the code inside #if/ifdef/ifndef and skips the #else part. A special case to be considered later is "#if 0" which will force the parser to follow the #else branch instead.