> People have very different understandings of what options B and C were
> in the original vote.
Urgh! It's gotten all muddy again.
The original distinctions were very simple:
A) gl.h is essentially what it is today - it contains
definitions only for those extensions that the local
OpenGL supports. glext.h is #included either instead
of or after gl.h in applications that need it for ABI
reasons. There are no special #define's needed.
B) Exactly as (A) except that you can -DGL_OGLBASE (or something)
and glext.h will then (and only then) be automatically #included
into gl.h. It follows that by NOT defining that symbol and
#including glext.h yourself, you can pretend that (B) is really (A).
glext.h probably has to #include gl.h since it needs GLfloat, etc.
C) Same as (B) except that the meaning of the token is reversed so
that -DGL_OGLBASE_INCOMPATIBLE causes glext.h *NOT* to be included
into gl.h - as it would otherwise be.
So, in terms of your ABI-compliant code:
-------------------------
A) #include <GL/glext.h>
*OR*
#include <GL/gl.h>
#include <GL/glext.h>
-------------------------
B) #define GL_OGLBASE (or '-D' in your Makefile)
#include <GL/gl.h>
*OR*
#include <GL/glext.h>
*OR*
#include <GL/gl.h>
#include <GL/glext.h>
-------------------------
C) #include <GL/gl.h>
-------------------------
But for existing code that uses OpenGL extensions in the time-honored way:
-------------------------
A) #include <GL/gl.h>
-------------------------
B) #include <GL/gl.h>
-------------------------
C) #define GL_OGLBASE_INCOMPATIBLE (or '-D' in your Makefile)
#include <GL/gl.h>
-------------------------
Steve Baker (817)619-2657 (Vox/Vox-Mail)
L3Com/Link Simulation & Training (817)619-2466 (Fax)
Work: [EMAIL PROTECTED] http://www.hti.com
Home: [EMAIL PROTECTED] http://web2.airmail.net/sjbaker1