From mboxrd@z Thu Jan 1 00:00:00 1970 From: Nicolas Serafini Date: Tue, 20 Jan 2015 18:12:44 +0100 Subject: [Buildroot] [PATCH 04/11 v5] package/opengl-registry: new package In-Reply-To: References: Message-ID: <20150120181244.7b007fc4@nserafini-N550JK> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: buildroot@busybox.net Yann, all, I have done some test using Nvidia tegra binary blob and I was not able to build package that has dependency (like QT5 with OpenglES) because some headers files are missing. EGL/eglplatform.h GLES/glplatform.h GLES2/gl2platform.h GLES3/gl3platform.h If I add them manually it's working. Thanks Nicolas On Mon, 19 Jan 2015 21:40:34 +0100 "Yann E. MORIN" wrote: > The OpenGL Registry provides all GL headers, save for gl.h itself. We > vampirise the one from mesa3d (at the version we currently package), > which is as good as any other. > > Those headers are needed when an OpenGL/EGL/GLES implementation does > not provide its own headers, like the NVidia binary blob (to come in > follow-up patches.) > > Note that, even though this is a generic package, and we could > everything in the BUILD_CMDS, we decided to split the tweaking of > glx.h in a post-build script, to really make it clear we are tweaking > a generated file. > > Signed-off-by: "Yann E. MORIN" > > -- > Tested by building XBMC against the NVidia proprietary blob. > > Note: their svn repository holds many other things, even non-public > stuff, so the svn revision we use is the one at which the api > directory was *changed*, which might be lagging behind the revision > the repository is currently at > > --- > Changes v4 -> v5: > - fix env when calling make > > Changes v3 -> v4: > - move to a sub-dir of opengl/ because we'll add some more Khronos > registry packages (OpenMAX...) > - bump revision > --- > package/opengl/khronos-registry/Config.in | 1 + > .../khronos-registry/opengl-registry/Config.in | 24 + > .../opengl/khronos-registry/opengl-registry/gl.h | 2115 > ++++++++++++++++++++ .../opengl-registry-000-run-from-current-dir.patch > | 17 + .../opengl-registry/opengl-registry.mk | 87 + > 5 files changed, 2244 insertions(+) > create mode 100644 > package/opengl/khronos-registry/opengl-registry/Config.in create mode > 100644 package/opengl/khronos-registry/opengl-registry/gl.h create > mode 100644 > package/opengl/khronos-registry/opengl-registry/opengl-registry-000-run-from-current-dir.patch > create mode 100644 > package/opengl/khronos-registry/opengl-registry/opengl-registry.mk > > diff --git a/package/opengl/khronos-registry/Config.in > b/package/opengl/khronos-registry/Config.in index 770c9be..ee550e9 > 100644 --- a/package/opengl/khronos-registry/Config.in > +++ b/package/opengl/khronos-registry/Config.in > @@ -1,2 +1,3 @@ > source > "package/opengl/khronos-registry/khrplatform-registry/Config.in" > source "package/opengl/khronos-registry/openkode-registry/Config.in" > +source "package/opengl/khronos-registry/opengl-registry/Config.in" > diff --git > a/package/opengl/khronos-registry/opengl-registry/Config.in > b/package/opengl/khronos-registry/opengl-registry/Config.in new file > mode 100644 index 0000000..2c3c60c --- /dev/null +++ > b/package/opengl/khronos-registry/opengl-registry/Config.in @@ -0,0 > +1,24 @@ +# Note: this package has no prompt, because it is to be > selected by +# packages that need it, and does not make sense on its > own. +# Further more, we want to avoid it being enabled alongside any > other +# package that provide their own OpenGL headers, like mesa3d or > +# rpi-userland... > + > +config BR2_PACKAGE_OPENGL_REGISTRY > + bool > + select BR2_PACKAGE_KHRPLATFORM_REGISTRY > + help > + The OpenGL Registry contains specifications, header files, > and > + related documentation for OpenGL and related APIs > including GLU, > + GLX, and WGL. In addition to the core API specifications, > many > + extensions to these APIs have been defined by vendors, > groups of > + vendors, and the ARB. The Registry also contains > specifications > + and header files for all registered extensions, written as > + modifications to the appropriate core API specifications. > + > + This package installs the openGL header files. You do not > need them > + if the OpenGL/EGL/GLES implementation provides its own > headers. > + Currently, the only known implementation requiring OpenGL > Resgistry > + is the NVidia proprietary driver. > + > + https://www.opengl.org/registry/ > diff --git a/package/opengl/khronos-registry/opengl-registry/gl.h > b/package/opengl/khronos-registry/opengl-registry/gl.h new file mode > 100644 index 0000000..5b28480 > --- /dev/null > +++ b/package/opengl/khronos-registry/opengl-registry/gl.h > @@ -0,0 +1,2115 @@ > +/* > + * Mesa 3-D graphics library > + * > + * Copyright (C) 1999-2006 Brian Paul All Rights Reserved. > + * Copyright (C) 2009 VMware, Inc. All Rights Reserved. > + * > + * Permission is hereby granted, free of charge, to any person > obtaining a > + * copy of this software and associated documentation files (the > "Software"), > + * to deal in the Software without restriction, including without > limitation > + * the rights to use, copy, modify, merge, publish, distribute, > sublicense, > + * and/or sell copies of the Software, and to permit persons to whom > the > + * Software is furnished to do so, subject to the following > conditions: > + * > + * The above copyright notice and this permission notice shall be > included > + * in all copies or substantial portions of the Software. > + * > + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, > EXPRESS > + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF > MERCHANTABILITY, > + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO > EVENT SHALL > + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES > OR > + * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR > OTHERWISE, > + * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE > USE OR > + * OTHER DEALINGS IN THE SOFTWARE. > + */ > + > + > +#ifndef __gl_h_ > +#define __gl_h_ > + > +#if defined(USE_MGL_NAMESPACE) > +#include "gl_mangle.h" > +#endif > + > + > +/********************************************************************** > + * Begin system-specific stuff. > + */ > + > +#if defined(_WIN32) && !defined(__WIN32__) && !defined(__CYGWIN__) > +#define __WIN32__ > +#endif > + > +#if defined(__WIN32__) && !defined(__CYGWIN__) > +# if (defined(_MSC_VER) || defined(__MINGW32__)) && > defined(BUILD_GL32) /* tag specify we're building mesa as a DLL */ > +# define GLAPI __declspec(dllexport) +# elif (defined(_MSC_VER) > || defined(__MINGW32__)) && defined(_DLL) /* tag specifying we're > building for DLL runtime support */ +# define GLAPI > __declspec(dllimport) +# else /* for use with static link lib build > of Win32 edition only */ +# define GLAPI extern +# endif /* > _STATIC_MESA support */ +# if defined(__MINGW32__) && > defined(GL_NO_STDCALL) || defined(UNDER_CE) /* The generated DLLs by > MingW with STDCALL are not compatible with the ones done by > Microsoft's compilers */ +# define GLAPIENTRY +# else +# > define GLAPIENTRY __stdcall +# endif > +#elif defined(__CYGWIN__) && defined(USE_OPENGL32) /* use native > windows opengl32 */ +# define GLAPI extern > +# define GLAPIENTRY __stdcall > +#elif (defined(__GNUC__) && __GNUC__ >= 4) || (defined(__SUNPRO_C) > && (__SUNPRO_C >= 0x590)) +# define GLAPI > __attribute__((visibility("default"))) +# define GLAPIENTRY > +#endif /* WIN32 && !CYGWIN */ > + > +/* > + * WINDOWS: Include windows.h here to define APIENTRY. > + * It is also useful when applications include this file by > + * including only glut.h, since glut.h depends on windows.h. > + * Applications needing to include windows.h with parms other > + * than "WIN32_LEAN_AND_MEAN" may include windows.h before > + * glut.h or gl.h. > + */ > +#if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__) > +#ifndef WIN32_LEAN_AND_MEAN > +#define WIN32_LEAN_AND_MEAN 1 > +#endif > +#include > +#endif > + > +#ifndef GLAPI > +#define GLAPI extern > +#endif > + > +#ifndef GLAPIENTRY > +#define GLAPIENTRY > +#endif > + > +#ifndef APIENTRY > +#define APIENTRY GLAPIENTRY > +#endif > + > +/* "P" suffix to be used for a pointer to a function */ > +#ifndef APIENTRYP > +#define APIENTRYP APIENTRY * > +#endif > + > +#ifndef GLAPIENTRYP > +#define GLAPIENTRYP GLAPIENTRY * > +#endif > + > +/* > + * End system-specific stuff. > + > **********************************************************************/ > + + > + > +#ifdef __cplusplus > +extern "C" { > +#endif > + > + > + > +#define GL_VERSION_1_1 1 > +#define GL_VERSION_1_2 1 > +#define GL_VERSION_1_3 1 > +#define GL_ARB_imaging 1 > + > + > +/* > + * Datatypes > + */ > +typedef unsigned int GLenum; > +typedef unsigned char GLboolean; > +typedef unsigned int GLbitfield; > +typedef void GLvoid; > +typedef signed char GLbyte; /* 1-byte signed */ > +typedef short GLshort; /* 2-byte signed */ > +typedef int GLint; /* 4-byte signed */ > +typedef unsigned char GLubyte; /* 1-byte unsigned */ > +typedef unsigned short GLushort; /* 2-byte unsigned */ > +typedef unsigned int GLuint; /* 4-byte > unsigned */ +typedef int GLsizei; /* 4-byte > signed */ +typedef float GLfloat; /* single > precision float */ +typedef float GLclampf; /* > single precision float in [0,1] */ +typedef double > GLdouble; /* double precision float */ +typedef > double GLclampd; /* double precision float in > [0,1] */ + + > + > +/* > + * Constants > + */ > + > +/* Boolean values */ > +#define GL_FALSE 0 > +#define GL_TRUE 1 > + > +/* Data types */ > +#define GL_BYTE 0x1400 > +#define GL_UNSIGNED_BYTE 0x1401 > +#define GL_SHORT 0x1402 > +#define GL_UNSIGNED_SHORT 0x1403 > +#define GL_INT 0x1404 > +#define GL_UNSIGNED_INT 0x1405 > +#define GL_FLOAT 0x1406 > +#define GL_2_BYTES 0x1407 > +#define GL_3_BYTES 0x1408 > +#define GL_4_BYTES 0x1409 > +#define GL_DOUBLE 0x140A > + > +/* Primitives */ > +#define GL_POINTS 0x0000 > +#define GL_LINES 0x0001 > +#define GL_LINE_LOOP 0x0002 > +#define GL_LINE_STRIP 0x0003 > +#define GL_TRIANGLES 0x0004 > +#define GL_TRIANGLE_STRIP 0x0005 > +#define GL_TRIANGLE_FAN 0x0006 > +#define GL_QUADS 0x0007 > +#define GL_QUAD_STRIP 0x0008 > +#define GL_POLYGON 0x0009 > + > +/* Vertex Arrays */ > +#define GL_VERTEX_ARRAY 0x8074 > +#define GL_NORMAL_ARRAY 0x8075 > +#define GL_COLOR_ARRAY 0x8076 > +#define GL_INDEX_ARRAY 0x8077 > +#define GL_TEXTURE_COORD_ARRAY 0x8078 > +#define GL_EDGE_FLAG_ARRAY 0x8079 > +#define GL_VERTEX_ARRAY_SIZE 0x807A > +#define GL_VERTEX_ARRAY_TYPE 0x807B > +#define GL_VERTEX_ARRAY_STRIDE 0x807C > +#define GL_NORMAL_ARRAY_TYPE 0x807E > +#define GL_NORMAL_ARRAY_STRIDE 0x807F > +#define GL_COLOR_ARRAY_SIZE 0x8081 > +#define GL_COLOR_ARRAY_TYPE 0x8082 > +#define GL_COLOR_ARRAY_STRIDE 0x8083 > +#define GL_INDEX_ARRAY_TYPE 0x8085 > +#define GL_INDEX_ARRAY_STRIDE 0x8086 > +#define GL_TEXTURE_COORD_ARRAY_SIZE 0x8088 > +#define GL_TEXTURE_COORD_ARRAY_TYPE 0x8089 > +#define GL_TEXTURE_COORD_ARRAY_STRIDE 0x808A > +#define GL_EDGE_FLAG_ARRAY_STRIDE 0x808C > +#define GL_VERTEX_ARRAY_POINTER 0x808E > +#define GL_NORMAL_ARRAY_POINTER 0x808F > +#define GL_COLOR_ARRAY_POINTER 0x8090 > +#define GL_INDEX_ARRAY_POINTER 0x8091 > +#define GL_TEXTURE_COORD_ARRAY_POINTER 0x8092 > +#define GL_EDGE_FLAG_ARRAY_POINTER 0x8093 > +#define GL_V2F 0x2A20 > +#define GL_V3F 0x2A21 > +#define GL_C4UB_V2F 0x2A22 > +#define GL_C4UB_V3F 0x2A23 > +#define GL_C3F_V3F 0x2A24 > +#define GL_N3F_V3F 0x2A25 > +#define GL_C4F_N3F_V3F 0x2A26 > +#define GL_T2F_V3F 0x2A27 > +#define GL_T4F_V4F 0x2A28 > +#define GL_T2F_C4UB_V3F 0x2A29 > +#define GL_T2F_C3F_V3F 0x2A2A > +#define GL_T2F_N3F_V3F 0x2A2B > +#define GL_T2F_C4F_N3F_V3F 0x2A2C > +#define GL_T4F_C4F_N3F_V4F 0x2A2D > + > +/* Matrix Mode */ > +#define GL_MATRIX_MODE 0x0BA0 > +#define GL_MODELVIEW 0x1700 > +#define GL_PROJECTION 0x1701 > +#define GL_TEXTURE 0x1702 > + > +/* Points */ > +#define GL_POINT_SMOOTH 0x0B10 > +#define GL_POINT_SIZE 0x0B11 > +#define GL_POINT_SIZE_GRANULARITY 0x0B13 > +#define GL_POINT_SIZE_RANGE 0x0B12 > + > +/* Lines */ > +#define GL_LINE_SMOOTH 0x0B20 > +#define GL_LINE_STIPPLE 0x0B24 > +#define GL_LINE_STIPPLE_PATTERN 0x0B25 > +#define GL_LINE_STIPPLE_REPEAT 0x0B26 > +#define GL_LINE_WIDTH 0x0B21 > +#define GL_LINE_WIDTH_GRANULARITY 0x0B23 > +#define GL_LINE_WIDTH_RANGE 0x0B22 > + > +/* Polygons */ > +#define GL_POINT 0x1B00 > +#define GL_LINE 0x1B01 > +#define GL_FILL 0x1B02 > +#define GL_CW 0x0900 > +#define GL_CCW 0x0901 > +#define GL_FRONT 0x0404 > +#define GL_BACK 0x0405 > +#define GL_POLYGON_MODE 0x0B40 > +#define GL_POLYGON_SMOOTH 0x0B41 > +#define GL_POLYGON_STIPPLE 0x0B42 > +#define GL_EDGE_FLAG 0x0B43 > +#define GL_CULL_FACE 0x0B44 > +#define GL_CULL_FACE_MODE 0x0B45 > +#define GL_FRONT_FACE 0x0B46 > +#define GL_POLYGON_OFFSET_FACTOR 0x8038 > +#define GL_POLYGON_OFFSET_UNITS 0x2A00 > +#define GL_POLYGON_OFFSET_POINT 0x2A01 > +#define GL_POLYGON_OFFSET_LINE 0x2A02 > +#define GL_POLYGON_OFFSET_FILL 0x8037 > + > +/* Display Lists */ > +#define GL_COMPILE 0x1300 > +#define GL_COMPILE_AND_EXECUTE 0x1301 > +#define GL_LIST_BASE 0x0B32 > +#define GL_LIST_INDEX 0x0B33 > +#define GL_LIST_MODE 0x0B30 > + > +/* Depth buffer */ > +#define GL_NEVER 0x0200 > +#define GL_LESS 0x0201 > +#define GL_EQUAL 0x0202 > +#define GL_LEQUAL 0x0203 > +#define GL_GREATER 0x0204 > +#define GL_NOTEQUAL 0x0205 > +#define GL_GEQUAL 0x0206 > +#define GL_ALWAYS 0x0207 > +#define GL_DEPTH_TEST 0x0B71 > +#define GL_DEPTH_BITS 0x0D56 > +#define GL_DEPTH_CLEAR_VALUE 0x0B73 > +#define GL_DEPTH_FUNC 0x0B74 > +#define GL_DEPTH_RANGE 0x0B70 > +#define GL_DEPTH_WRITEMASK 0x0B72 > +#define GL_DEPTH_COMPONENT 0x1902 > + > +/* Lighting */ > +#define GL_LIGHTING 0x0B50 > +#define GL_LIGHT0 0x4000 > +#define GL_LIGHT1 0x4001 > +#define GL_LIGHT2 0x4002 > +#define GL_LIGHT3 0x4003 > +#define GL_LIGHT4 0x4004 > +#define GL_LIGHT5 0x4005 > +#define GL_LIGHT6 0x4006 > +#define GL_LIGHT7 0x4007 > +#define GL_SPOT_EXPONENT 0x1205 > +#define GL_SPOT_CUTOFF 0x1206 > +#define GL_CONSTANT_ATTENUATION 0x1207 > +#define GL_LINEAR_ATTENUATION 0x1208 > +#define GL_QUADRATIC_ATTENUATION 0x1209 > +#define GL_AMBIENT 0x1200 > +#define GL_DIFFUSE 0x1201 > +#define GL_SPECULAR 0x1202 > +#define GL_SHININESS 0x1601 > +#define GL_EMISSION 0x1600 > +#define GL_POSITION 0x1203 > +#define GL_SPOT_DIRECTION 0x1204 > +#define GL_AMBIENT_AND_DIFFUSE 0x1602 > +#define GL_COLOR_INDEXES 0x1603 > +#define GL_LIGHT_MODEL_TWO_SIDE 0x0B52 > +#define GL_LIGHT_MODEL_LOCAL_VIEWER 0x0B51 > +#define GL_LIGHT_MODEL_AMBIENT 0x0B53 > +#define GL_FRONT_AND_BACK 0x0408 > +#define GL_SHADE_MODEL 0x0B54 > +#define GL_FLAT 0x1D00 > +#define GL_SMOOTH 0x1D01 > +#define GL_COLOR_MATERIAL 0x0B57 > +#define GL_COLOR_MATERIAL_FACE 0x0B55 > +#define GL_COLOR_MATERIAL_PARAMETER 0x0B56 > +#define GL_NORMALIZE 0x0BA1 > + > +/* User clipping planes */ > +#define GL_CLIP_PLANE0 0x3000 > +#define GL_CLIP_PLANE1 0x3001 > +#define GL_CLIP_PLANE2 0x3002 > +#define GL_CLIP_PLANE3 0x3003 > +#define GL_CLIP_PLANE4 0x3004 > +#define GL_CLIP_PLANE5 0x3005 > + > +/* Accumulation buffer */ > +#define GL_ACCUM_RED_BITS 0x0D58 > +#define GL_ACCUM_GREEN_BITS 0x0D59 > +#define GL_ACCUM_BLUE_BITS 0x0D5A > +#define GL_ACCUM_ALPHA_BITS 0x0D5B > +#define GL_ACCUM_CLEAR_VALUE 0x0B80 > +#define GL_ACCUM 0x0100 > +#define GL_ADD 0x0104 > +#define GL_LOAD 0x0101 > +#define GL_MULT 0x0103 > +#define GL_RETURN 0x0102 > + > +/* Alpha testing */ > +#define GL_ALPHA_TEST 0x0BC0 > +#define GL_ALPHA_TEST_REF 0x0BC2 > +#define GL_ALPHA_TEST_FUNC 0x0BC1 > + > +/* Blending */ > +#define GL_BLEND 0x0BE2 > +#define GL_BLEND_SRC 0x0BE1 > +#define GL_BLEND_DST 0x0BE0 > +#define GL_ZERO 0 > +#define GL_ONE 1 > +#define GL_SRC_COLOR 0x0300 > +#define GL_ONE_MINUS_SRC_COLOR 0x0301 > +#define GL_SRC_ALPHA 0x0302 > +#define GL_ONE_MINUS_SRC_ALPHA 0x0303 > +#define GL_DST_ALPHA 0x0304 > +#define GL_ONE_MINUS_DST_ALPHA 0x0305 > +#define GL_DST_COLOR 0x0306 > +#define GL_ONE_MINUS_DST_COLOR 0x0307 > +#define GL_SRC_ALPHA_SATURATE 0x0308 > + > +/* Render Mode */ > +#define GL_FEEDBACK 0x1C01 > +#define GL_RENDER 0x1C00 > +#define GL_SELECT 0x1C02 > + > +/* Feedback */ > +#define GL_2D 0x0600 > +#define GL_3D 0x0601 > +#define GL_3D_COLOR 0x0602 > +#define GL_3D_COLOR_TEXTURE 0x0603 > +#define GL_4D_COLOR_TEXTURE 0x0604 > +#define GL_POINT_TOKEN 0x0701 > +#define GL_LINE_TOKEN 0x0702 > +#define GL_LINE_RESET_TOKEN 0x0707 > +#define GL_POLYGON_TOKEN 0x0703 > +#define GL_BITMAP_TOKEN 0x0704 > +#define GL_DRAW_PIXEL_TOKEN 0x0705 > +#define GL_COPY_PIXEL_TOKEN 0x0706 > +#define GL_PASS_THROUGH_TOKEN 0x0700 > +#define GL_FEEDBACK_BUFFER_POINTER 0x0DF0 > +#define GL_FEEDBACK_BUFFER_SIZE 0x0DF1 > +#define GL_FEEDBACK_BUFFER_TYPE 0x0DF2 > + > +/* Selection */ > +#define GL_SELECTION_BUFFER_POINTER 0x0DF3 > +#define GL_SELECTION_BUFFER_SIZE 0x0DF4 > + > +/* Fog */ > +#define GL_FOG 0x0B60 > +#define GL_FOG_MODE 0x0B65 > +#define GL_FOG_DENSITY 0x0B62 > +#define GL_FOG_COLOR 0x0B66 > +#define GL_FOG_INDEX 0x0B61 > +#define GL_FOG_START 0x0B63 > +#define GL_FOG_END 0x0B64 > +#define GL_LINEAR 0x2601 > +#define GL_EXP 0x0800 > +#define GL_EXP2 0x0801 > + > +/* Logic Ops */ > +#define GL_LOGIC_OP 0x0BF1 > +#define GL_INDEX_LOGIC_OP 0x0BF1 > +#define GL_COLOR_LOGIC_OP 0x0BF2 > +#define GL_LOGIC_OP_MODE 0x0BF0 > +#define GL_CLEAR 0x1500 > +#define GL_SET 0x150F > +#define GL_COPY 0x1503 > +#define GL_COPY_INVERTED 0x150C > +#define GL_NOOP 0x1505 > +#define GL_INVERT 0x150A > +#define GL_AND 0x1501 > +#define GL_NAND 0x150E > +#define GL_OR 0x1507 > +#define GL_NOR 0x1508 > +#define GL_XOR 0x1506 > +#define GL_EQUIV 0x1509 > +#define GL_AND_REVERSE 0x1502 > +#define GL_AND_INVERTED 0x1504 > +#define GL_OR_REVERSE 0x150B > +#define GL_OR_INVERTED 0x150D > + > +/* Stencil */ > +#define GL_STENCIL_BITS 0x0D57 > +#define GL_STENCIL_TEST 0x0B90 > +#define GL_STENCIL_CLEAR_VALUE 0x0B91 > +#define GL_STENCIL_FUNC 0x0B92 > +#define GL_STENCIL_VALUE_MASK 0x0B93 > +#define GL_STENCIL_FAIL 0x0B94 > +#define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95 > +#define GL_STENCIL_PASS_DEPTH_PASS 0x0B96 > +#define GL_STENCIL_REF 0x0B97 > +#define GL_STENCIL_WRITEMASK 0x0B98 > +#define GL_STENCIL_INDEX 0x1901 > +#define GL_KEEP 0x1E00 > +#define GL_REPLACE 0x1E01 > +#define GL_INCR 0x1E02 > +#define GL_DECR 0x1E03 > + > +/* Buffers, Pixel Drawing/Reading */ > +#define GL_NONE 0 > +#define GL_LEFT 0x0406 > +#define GL_RIGHT 0x0407 > +/*GL_FRONT 0x0404 */ > +/*GL_BACK 0x0405 */ > +/*GL_FRONT_AND_BACK 0x0408 */ > +#define GL_FRONT_LEFT 0x0400 > +#define GL_FRONT_RIGHT 0x0401 > +#define GL_BACK_LEFT 0x0402 > +#define GL_BACK_RIGHT 0x0403 > +#define GL_AUX0 0x0409 > +#define GL_AUX1 0x040A > +#define GL_AUX2 0x040B > +#define GL_AUX3 0x040C > +#define GL_COLOR_INDEX 0x1900 > +#define GL_RED 0x1903 > +#define GL_GREEN 0x1904 > +#define GL_BLUE 0x1905 > +#define GL_ALPHA 0x1906 > +#define GL_LUMINANCE 0x1909 > +#define GL_LUMINANCE_ALPHA 0x190A > +#define GL_ALPHA_BITS 0x0D55 > +#define GL_RED_BITS 0x0D52 > +#define GL_GREEN_BITS 0x0D53 > +#define GL_BLUE_BITS 0x0D54 > +#define GL_INDEX_BITS 0x0D51 > +#define GL_SUBPIXEL_BITS 0x0D50 > +#define GL_AUX_BUFFERS 0x0C00 > +#define GL_READ_BUFFER 0x0C02 > +#define GL_DRAW_BUFFER 0x0C01 > +#define GL_DOUBLEBUFFER 0x0C32 > +#define GL_STEREO 0x0C33 > +#define GL_BITMAP 0x1A00 > +#define GL_COLOR 0x1800 > +#define GL_DEPTH 0x1801 > +#define GL_STENCIL 0x1802 > +#define GL_DITHER 0x0BD0 > +#define GL_RGB 0x1907 > +#define GL_RGBA 0x1908 > + > +/* Implementation limits */ > +#define GL_MAX_LIST_NESTING 0x0B31 > +#define GL_MAX_EVAL_ORDER 0x0D30 > +#define GL_MAX_LIGHTS 0x0D31 > +#define GL_MAX_CLIP_PLANES 0x0D32 > +#define GL_MAX_TEXTURE_SIZE 0x0D33 > +#define GL_MAX_PIXEL_MAP_TABLE 0x0D34 > +#define GL_MAX_ATTRIB_STACK_DEPTH 0x0D35 > +#define GL_MAX_MODELVIEW_STACK_DEPTH 0x0D36 > +#define GL_MAX_NAME_STACK_DEPTH 0x0D37 > +#define GL_MAX_PROJECTION_STACK_DEPTH 0x0D38 > +#define GL_MAX_TEXTURE_STACK_DEPTH 0x0D39 > +#define GL_MAX_VIEWPORT_DIMS 0x0D3A > +#define GL_MAX_CLIENT_ATTRIB_STACK_DEPTH 0x0D3B > + > +/* Gets */ > +#define GL_ATTRIB_STACK_DEPTH 0x0BB0 > +#define GL_CLIENT_ATTRIB_STACK_DEPTH 0x0BB1 > +#define GL_COLOR_CLEAR_VALUE 0x0C22 > +#define GL_COLOR_WRITEMASK 0x0C23 > +#define GL_CURRENT_INDEX 0x0B01 > +#define GL_CURRENT_COLOR 0x0B00 > +#define GL_CURRENT_NORMAL 0x0B02 > +#define GL_CURRENT_RASTER_COLOR 0x0B04 > +#define GL_CURRENT_RASTER_DISTANCE 0x0B09 > +#define GL_CURRENT_RASTER_INDEX 0x0B05 > +#define GL_CURRENT_RASTER_POSITION 0x0B07 > +#define GL_CURRENT_RASTER_TEXTURE_COORDS 0x0B06 > +#define GL_CURRENT_RASTER_POSITION_VALID 0x0B08 > +#define GL_CURRENT_TEXTURE_COORDS 0x0B03 > +#define GL_INDEX_CLEAR_VALUE 0x0C20 > +#define GL_INDEX_MODE 0x0C30 > +#define GL_INDEX_WRITEMASK 0x0C21 > +#define GL_MODELVIEW_MATRIX 0x0BA6 > +#define GL_MODELVIEW_STACK_DEPTH 0x0BA3 > +#define GL_NAME_STACK_DEPTH 0x0D70 > +#define GL_PROJECTION_MATRIX 0x0BA7 > +#define GL_PROJECTION_STACK_DEPTH 0x0BA4 > +#define GL_RENDER_MODE 0x0C40 > +#define GL_RGBA_MODE 0x0C31 > +#define GL_TEXTURE_MATRIX 0x0BA8 > +#define GL_TEXTURE_STACK_DEPTH 0x0BA5 > +#define GL_VIEWPORT 0x0BA2 > + > +/* Evaluators */ > +#define GL_AUTO_NORMAL 0x0D80 > +#define GL_MAP1_COLOR_4 0x0D90 > +#define GL_MAP1_INDEX 0x0D91 > +#define GL_MAP1_NORMAL 0x0D92 > +#define GL_MAP1_TEXTURE_COORD_1 0x0D93 > +#define GL_MAP1_TEXTURE_COORD_2 0x0D94 > +#define GL_MAP1_TEXTURE_COORD_3 0x0D95 > +#define GL_MAP1_TEXTURE_COORD_4 0x0D96 > +#define GL_MAP1_VERTEX_3 0x0D97 > +#define GL_MAP1_VERTEX_4 0x0D98 > +#define GL_MAP2_COLOR_4 0x0DB0 > +#define GL_MAP2_INDEX 0x0DB1 > +#define GL_MAP2_NORMAL 0x0DB2 > +#define GL_MAP2_TEXTURE_COORD_1 0x0DB3 > +#define GL_MAP2_TEXTURE_COORD_2 0x0DB4 > +#define GL_MAP2_TEXTURE_COORD_3 0x0DB5 > +#define GL_MAP2_TEXTURE_COORD_4 0x0DB6 > +#define GL_MAP2_VERTEX_3 0x0DB7 > +#define GL_MAP2_VERTEX_4 0x0DB8 > +#define GL_MAP1_GRID_DOMAIN 0x0DD0 > +#define GL_MAP1_GRID_SEGMENTS 0x0DD1 > +#define GL_MAP2_GRID_DOMAIN 0x0DD2 > +#define GL_MAP2_GRID_SEGMENTS 0x0DD3 > +#define GL_COEFF 0x0A00 > +#define GL_ORDER 0x0A01 > +#define GL_DOMAIN 0x0A02 > + > +/* Hints */ > +#define GL_PERSPECTIVE_CORRECTION_HINT 0x0C50 > +#define GL_POINT_SMOOTH_HINT 0x0C51 > +#define GL_LINE_SMOOTH_HINT 0x0C52 > +#define GL_POLYGON_SMOOTH_HINT 0x0C53 > +#define GL_FOG_HINT 0x0C54 > +#define GL_DONT_CARE 0x1100 > +#define GL_FASTEST 0x1101 > +#define GL_NICEST 0x1102 > + > +/* Scissor box */ > +#define GL_SCISSOR_BOX 0x0C10 > +#define GL_SCISSOR_TEST 0x0C11 > + > +/* Pixel Mode / Transfer */ > +#define GL_MAP_COLOR 0x0D10 > +#define GL_MAP_STENCIL 0x0D11 > +#define GL_INDEX_SHIFT 0x0D12 > +#define GL_INDEX_OFFSET 0x0D13 > +#define GL_RED_SCALE 0x0D14 > +#define GL_RED_BIAS 0x0D15 > +#define GL_GREEN_SCALE 0x0D18 > +#define GL_GREEN_BIAS 0x0D19 > +#define GL_BLUE_SCALE 0x0D1A > +#define GL_BLUE_BIAS 0x0D1B > +#define GL_ALPHA_SCALE 0x0D1C > +#define GL_ALPHA_BIAS 0x0D1D > +#define GL_DEPTH_SCALE 0x0D1E > +#define GL_DEPTH_BIAS 0x0D1F > +#define GL_PIXEL_MAP_S_TO_S_SIZE 0x0CB1 > +#define GL_PIXEL_MAP_I_TO_I_SIZE 0x0CB0 > +#define GL_PIXEL_MAP_I_TO_R_SIZE 0x0CB2 > +#define GL_PIXEL_MAP_I_TO_G_SIZE 0x0CB3 > +#define GL_PIXEL_MAP_I_TO_B_SIZE 0x0CB4 > +#define GL_PIXEL_MAP_I_TO_A_SIZE 0x0CB5 > +#define GL_PIXEL_MAP_R_TO_R_SIZE 0x0CB6 > +#define GL_PIXEL_MAP_G_TO_G_SIZE 0x0CB7 > +#define GL_PIXEL_MAP_B_TO_B_SIZE 0x0CB8 > +#define GL_PIXEL_MAP_A_TO_A_SIZE 0x0CB9 > +#define GL_PIXEL_MAP_S_TO_S 0x0C71 > +#define GL_PIXEL_MAP_I_TO_I 0x0C70 > +#define GL_PIXEL_MAP_I_TO_R 0x0C72 > +#define GL_PIXEL_MAP_I_TO_G 0x0C73 > +#define GL_PIXEL_MAP_I_TO_B 0x0C74 > +#define GL_PIXEL_MAP_I_TO_A 0x0C75 > +#define GL_PIXEL_MAP_R_TO_R 0x0C76 > +#define GL_PIXEL_MAP_G_TO_G 0x0C77 > +#define GL_PIXEL_MAP_B_TO_B 0x0C78 > +#define GL_PIXEL_MAP_A_TO_A 0x0C79 > +#define GL_PACK_ALIGNMENT 0x0D05 > +#define GL_PACK_LSB_FIRST 0x0D01 > +#define GL_PACK_ROW_LENGTH 0x0D02 > +#define GL_PACK_SKIP_PIXELS 0x0D04 > +#define GL_PACK_SKIP_ROWS 0x0D03 > +#define GL_PACK_SWAP_BYTES 0x0D00 > +#define GL_UNPACK_ALIGNMENT 0x0CF5 > +#define GL_UNPACK_LSB_FIRST 0x0CF1 > +#define GL_UNPACK_ROW_LENGTH 0x0CF2 > +#define GL_UNPACK_SKIP_PIXELS 0x0CF4 > +#define GL_UNPACK_SKIP_ROWS 0x0CF3 > +#define GL_UNPACK_SWAP_BYTES 0x0CF0 > +#define GL_ZOOM_X 0x0D16 > +#define GL_ZOOM_Y 0x0D17 > + > +/* Texture mapping */ > +#define GL_TEXTURE_ENV 0x2300 > +#define GL_TEXTURE_ENV_MODE 0x2200 > +#define GL_TEXTURE_1D 0x0DE0 > +#define GL_TEXTURE_2D 0x0DE1 > +#define GL_TEXTURE_WRAP_S 0x2802 > +#define GL_TEXTURE_WRAP_T 0x2803 > +#define GL_TEXTURE_MAG_FILTER 0x2800 > +#define GL_TEXTURE_MIN_FILTER 0x2801 > +#define GL_TEXTURE_ENV_COLOR 0x2201 > +#define GL_TEXTURE_GEN_S 0x0C60 > +#define GL_TEXTURE_GEN_T 0x0C61 > +#define GL_TEXTURE_GEN_R 0x0C62 > +#define GL_TEXTURE_GEN_Q 0x0C63 > +#define GL_TEXTURE_GEN_MODE 0x2500 > +#define GL_TEXTURE_BORDER_COLOR 0x1004 > +#define GL_TEXTURE_WIDTH 0x1000 > +#define GL_TEXTURE_HEIGHT 0x1001 > +#define GL_TEXTURE_BORDER 0x1005 > +#define GL_TEXTURE_COMPONENTS 0x1003 > +#define GL_TEXTURE_RED_SIZE 0x805C > +#define GL_TEXTURE_GREEN_SIZE 0x805D > +#define GL_TEXTURE_BLUE_SIZE 0x805E > +#define GL_TEXTURE_ALPHA_SIZE 0x805F > +#define GL_TEXTURE_LUMINANCE_SIZE 0x8060 > +#define GL_TEXTURE_INTENSITY_SIZE 0x8061 > +#define GL_NEAREST_MIPMAP_NEAREST 0x2700 > +#define GL_NEAREST_MIPMAP_LINEAR 0x2702 > +#define GL_LINEAR_MIPMAP_NEAREST 0x2701 > +#define GL_LINEAR_MIPMAP_LINEAR 0x2703 > +#define GL_OBJECT_LINEAR 0x2401 > +#define GL_OBJECT_PLANE 0x2501 > +#define GL_EYE_LINEAR 0x2400 > +#define GL_EYE_PLANE 0x2502 > +#define GL_SPHERE_MAP 0x2402 > +#define GL_DECAL 0x2101 > +#define GL_MODULATE 0x2100 > +#define GL_NEAREST 0x2600 > +#define GL_REPEAT 0x2901 > +#define GL_CLAMP 0x2900 > +#define GL_S 0x2000 > +#define GL_T 0x2001 > +#define GL_R 0x2002 > +#define GL_Q 0x2003 > + > +/* Utility */ > +#define GL_VENDOR 0x1F00 > +#define GL_RENDERER 0x1F01 > +#define GL_VERSION 0x1F02 > +#define GL_EXTENSIONS 0x1F03 > + > +/* Errors */ > +#define GL_NO_ERROR 0 > +#define GL_INVALID_ENUM 0x0500 > +#define GL_INVALID_VALUE 0x0501 > +#define GL_INVALID_OPERATION 0x0502 > +#define GL_STACK_OVERFLOW 0x0503 > +#define GL_STACK_UNDERFLOW 0x0504 > +#define GL_OUT_OF_MEMORY 0x0505 > + > +/* glPush/PopAttrib bits */ > +#define GL_CURRENT_BIT 0x00000001 > +#define GL_POINT_BIT 0x00000002 > +#define GL_LINE_BIT 0x00000004 > +#define GL_POLYGON_BIT 0x00000008 > +#define GL_POLYGON_STIPPLE_BIT 0x00000010 > +#define GL_PIXEL_MODE_BIT 0x00000020 > +#define GL_LIGHTING_BIT 0x00000040 > +#define GL_FOG_BIT 0x00000080 > +#define GL_DEPTH_BUFFER_BIT 0x00000100 > +#define GL_ACCUM_BUFFER_BIT 0x00000200 > +#define GL_STENCIL_BUFFER_BIT 0x00000400 > +#define GL_VIEWPORT_BIT 0x00000800 > +#define GL_TRANSFORM_BIT 0x00001000 > +#define GL_ENABLE_BIT 0x00002000 > +#define GL_COLOR_BUFFER_BIT 0x00004000 > +#define GL_HINT_BIT 0x00008000 > +#define GL_EVAL_BIT 0x00010000 > +#define GL_LIST_BIT 0x00020000 > +#define GL_TEXTURE_BIT 0x00040000 > +#define GL_SCISSOR_BIT 0x00080000 > +#define GL_ALL_ATTRIB_BITS 0xFFFFFFFF > + > + > +/* OpenGL 1.1 */ > +#define GL_PROXY_TEXTURE_1D 0x8063 > +#define GL_PROXY_TEXTURE_2D 0x8064 > +#define GL_TEXTURE_PRIORITY 0x8066 > +#define GL_TEXTURE_RESIDENT 0x8067 > +#define GL_TEXTURE_BINDING_1D 0x8068 > +#define GL_TEXTURE_BINDING_2D 0x8069 > +#define GL_TEXTURE_INTERNAL_FORMAT 0x1003 > +#define GL_ALPHA4 0x803B > +#define GL_ALPHA8 0x803C > +#define GL_ALPHA12 0x803D > +#define GL_ALPHA16 0x803E > +#define GL_LUMINANCE4 0x803F > +#define GL_LUMINANCE8 0x8040 > +#define GL_LUMINANCE12 0x8041 > +#define GL_LUMINANCE16 0x8042 > +#define GL_LUMINANCE4_ALPHA4 0x8043 > +#define GL_LUMINANCE6_ALPHA2 0x8044 > +#define GL_LUMINANCE8_ALPHA8 0x8045 > +#define GL_LUMINANCE12_ALPHA4 0x8046 > +#define GL_LUMINANCE12_ALPHA12 0x8047 > +#define GL_LUMINANCE16_ALPHA16 0x8048 > +#define GL_INTENSITY 0x8049 > +#define GL_INTENSITY4 0x804A > +#define GL_INTENSITY8 0x804B > +#define GL_INTENSITY12 0x804C > +#define GL_INTENSITY16 0x804D > +#define GL_R3_G3_B2 0x2A10 > +#define GL_RGB4 0x804F > +#define GL_RGB5 0x8050 > +#define GL_RGB8 0x8051 > +#define GL_RGB10 0x8052 > +#define GL_RGB12 0x8053 > +#define GL_RGB16 0x8054 > +#define GL_RGBA2 0x8055 > +#define GL_RGBA4 0x8056 > +#define GL_RGB5_A1 0x8057 > +#define GL_RGBA8 0x8058 > +#define GL_RGB10_A2 0x8059 > +#define GL_RGBA12 0x805A > +#define GL_RGBA16 0x805B > +#define GL_CLIENT_PIXEL_STORE_BIT 0x00000001 > +#define GL_CLIENT_VERTEX_ARRAY_BIT 0x00000002 > +#define GL_ALL_CLIENT_ATTRIB_BITS 0xFFFFFFFF > +#define GL_CLIENT_ALL_ATTRIB_BITS 0xFFFFFFFF > + > + > + > +/* > + * Miscellaneous > + */ > + > +GLAPI void GLAPIENTRY glClearIndex( GLfloat c ); > + > +GLAPI void GLAPIENTRY glClearColor( GLclampf red, GLclampf green, > GLclampf blue, GLclampf alpha ); + > +GLAPI void GLAPIENTRY glClear( GLbitfield mask ); > + > +GLAPI void GLAPIENTRY glIndexMask( GLuint mask ); > + > +GLAPI void GLAPIENTRY glColorMask( GLboolean red, GLboolean green, > GLboolean blue, GLboolean alpha ); + > +GLAPI void GLAPIENTRY glAlphaFunc( GLenum func, GLclampf ref ); > + > +GLAPI void GLAPIENTRY glBlendFunc( GLenum sfactor, GLenum dfactor ); > + > +GLAPI void GLAPIENTRY glLogicOp( GLenum opcode ); > + > +GLAPI void GLAPIENTRY glCullFace( GLenum mode ); > + > +GLAPI void GLAPIENTRY glFrontFace( GLenum mode ); > + > +GLAPI void GLAPIENTRY glPointSize( GLfloat size ); > + > +GLAPI void GLAPIENTRY glLineWidth( GLfloat width ); > + > +GLAPI void GLAPIENTRY glLineStipple( GLint factor, GLushort pattern > ); + > +GLAPI void GLAPIENTRY glPolygonMode( GLenum face, GLenum mode ); > + > +GLAPI void GLAPIENTRY glPolygonOffset( GLfloat factor, GLfloat units > ); + > +GLAPI void GLAPIENTRY glPolygonStipple( const GLubyte *mask ); > + > +GLAPI void GLAPIENTRY glGetPolygonStipple( GLubyte *mask ); > + > +GLAPI void GLAPIENTRY glEdgeFlag( GLboolean flag ); > + > +GLAPI void GLAPIENTRY glEdgeFlagv( const GLboolean *flag ); > + > +GLAPI void GLAPIENTRY glScissor( GLint x, GLint y, GLsizei width, > GLsizei height); + > +GLAPI void GLAPIENTRY glClipPlane( GLenum plane, const GLdouble > *equation ); + > +GLAPI void GLAPIENTRY glGetClipPlane( GLenum plane, GLdouble > *equation ); + > +GLAPI void GLAPIENTRY glDrawBuffer( GLenum mode ); > + > +GLAPI void GLAPIENTRY glReadBuffer( GLenum mode ); > + > +GLAPI void GLAPIENTRY glEnable( GLenum cap ); > + > +GLAPI void GLAPIENTRY glDisable( GLenum cap ); > + > +GLAPI GLboolean GLAPIENTRY glIsEnabled( GLenum cap ); > + > + > +GLAPI void GLAPIENTRY glEnableClientState( GLenum cap ); /* 1.1 */ > + > +GLAPI void GLAPIENTRY glDisableClientState( GLenum cap ); /* 1.1 */ > + > + > +GLAPI void GLAPIENTRY glGetBooleanv( GLenum pname, GLboolean *params > ); + > +GLAPI void GLAPIENTRY glGetDoublev( GLenum pname, GLdouble *params ); > + > +GLAPI void GLAPIENTRY glGetFloatv( GLenum pname, GLfloat *params ); > + > +GLAPI void GLAPIENTRY glGetIntegerv( GLenum pname, GLint *params ); > + > + > +GLAPI void GLAPIENTRY glPushAttrib( GLbitfield mask ); > + > +GLAPI void GLAPIENTRY glPopAttrib( void ); > + > + > +GLAPI void GLAPIENTRY glPushClientAttrib( GLbitfield mask ); /* 1.1 > */ + > +GLAPI void GLAPIENTRY glPopClientAttrib( void ); /* 1.1 */ > + > + > +GLAPI GLint GLAPIENTRY glRenderMode( GLenum mode ); > + > +GLAPI GLenum GLAPIENTRY glGetError( void ); > + > +GLAPI const GLubyte * GLAPIENTRY glGetString( GLenum name ); > + > +GLAPI void GLAPIENTRY glFinish( void ); > + > +GLAPI void GLAPIENTRY glFlush( void ); > + > +GLAPI void GLAPIENTRY glHint( GLenum target, GLenum mode ); > + > + > +/* > + * Depth Buffer > + */ > + > +GLAPI void GLAPIENTRY glClearDepth( GLclampd depth ); > + > +GLAPI void GLAPIENTRY glDepthFunc( GLenum func ); > + > +GLAPI void GLAPIENTRY glDepthMask( GLboolean flag ); > + > +GLAPI void GLAPIENTRY glDepthRange( GLclampd near_val, GLclampd > far_val ); + > + > +/* > + * Accumulation Buffer > + */ > + > +GLAPI void GLAPIENTRY glClearAccum( GLfloat red, GLfloat green, > GLfloat blue, GLfloat alpha ); + > +GLAPI void GLAPIENTRY glAccum( GLenum op, GLfloat value ); > + > + > +/* > + * Transformation > + */ > + > +GLAPI void GLAPIENTRY glMatrixMode( GLenum mode ); > + > +GLAPI void GLAPIENTRY glOrtho( GLdouble left, GLdouble right, > + GLdouble bottom, GLdouble top, > + GLdouble near_val, GLdouble far_val > ); + > +GLAPI void GLAPIENTRY glFrustum( GLdouble left, GLdouble right, > + GLdouble bottom, GLdouble top, > + GLdouble near_val, GLdouble > far_val ); + > +GLAPI void GLAPIENTRY glViewport( GLint x, GLint y, > + GLsizei width, GLsizei height ); > + > +GLAPI void GLAPIENTRY glPushMatrix( void ); > + > +GLAPI void GLAPIENTRY glPopMatrix( void ); > + > +GLAPI void GLAPIENTRY glLoadIdentity( void ); > + > +GLAPI void GLAPIENTRY glLoadMatrixd( const GLdouble *m ); > +GLAPI void GLAPIENTRY glLoadMatrixf( const GLfloat *m ); > + > +GLAPI void GLAPIENTRY glMultMatrixd( const GLdouble *m ); > +GLAPI void GLAPIENTRY glMultMatrixf( const GLfloat *m ); > + > +GLAPI void GLAPIENTRY glRotated( GLdouble angle, > + GLdouble x, GLdouble y, GLdouble > z ); +GLAPI void GLAPIENTRY glRotatef( GLfloat angle, > + GLfloat x, GLfloat y, GLfloat z ); > + > +GLAPI void GLAPIENTRY glScaled( GLdouble x, GLdouble y, GLdouble z ); > +GLAPI void GLAPIENTRY glScalef( GLfloat x, GLfloat y, GLfloat z ); > + > +GLAPI void GLAPIENTRY glTranslated( GLdouble x, GLdouble y, GLdouble > z ); +GLAPI void GLAPIENTRY glTranslatef( GLfloat x, GLfloat y, > GLfloat z ); + > + > +/* > + * Display Lists > + */ > + > +GLAPI GLboolean GLAPIENTRY glIsList( GLuint list ); > + > +GLAPI void GLAPIENTRY glDeleteLists( GLuint list, GLsizei range ); > + > +GLAPI GLuint GLAPIENTRY glGenLists( GLsizei range ); > + > +GLAPI void GLAPIENTRY glNewList( GLuint list, GLenum mode ); > + > +GLAPI void GLAPIENTRY glEndList( void ); > + > +GLAPI void GLAPIENTRY glCallList( GLuint list ); > + > +GLAPI void GLAPIENTRY glCallLists( GLsizei n, GLenum type, > + const GLvoid *lists ); > + > +GLAPI void GLAPIENTRY glListBase( GLuint base ); > + > + > +/* > + * Drawing Functions > + */ > + > +GLAPI void GLAPIENTRY glBegin( GLenum mode ); > + > +GLAPI void GLAPIENTRY glEnd( void ); > + > + > +GLAPI void GLAPIENTRY glVertex2d( GLdouble x, GLdouble y ); > +GLAPI void GLAPIENTRY glVertex2f( GLfloat x, GLfloat y ); > +GLAPI void GLAPIENTRY glVertex2i( GLint x, GLint y ); > +GLAPI void GLAPIENTRY glVertex2s( GLshort x, GLshort y ); > + > +GLAPI void GLAPIENTRY glVertex3d( GLdouble x, GLdouble y, GLdouble z > ); +GLAPI void GLAPIENTRY glVertex3f( GLfloat x, GLfloat y, GLfloat z > ); +GLAPI void GLAPIENTRY glVertex3i( GLint x, GLint y, GLint z ); > +GLAPI void GLAPIENTRY glVertex3s( GLshort x, GLshort y, GLshort z ); > + > +GLAPI void GLAPIENTRY glVertex4d( GLdouble x, GLdouble y, GLdouble > z, GLdouble w ); +GLAPI void GLAPIENTRY glVertex4f( GLfloat x, > GLfloat y, GLfloat z, GLfloat w ); +GLAPI void GLAPIENTRY > glVertex4i( GLint x, GLint y, GLint z, GLint w ); +GLAPI void > GLAPIENTRY glVertex4s( GLshort x, GLshort y, GLshort z, GLshort w ); + > +GLAPI void GLAPIENTRY glVertex2dv( const GLdouble *v ); > +GLAPI void GLAPIENTRY glVertex2fv( const GLfloat *v ); > +GLAPI void GLAPIENTRY glVertex2iv( const GLint *v ); > +GLAPI void GLAPIENTRY glVertex2sv( const GLshort *v ); > + > +GLAPI void GLAPIENTRY glVertex3dv( const GLdouble *v ); > +GLAPI void GLAPIENTRY glVertex3fv( const GLfloat *v ); > +GLAPI void GLAPIENTRY glVertex3iv( const GLint *v ); > +GLAPI void GLAPIENTRY glVertex3sv( const GLshort *v ); > + > +GLAPI void GLAPIENTRY glVertex4dv( const GLdouble *v ); > +GLAPI void GLAPIENTRY glVertex4fv( const GLfloat *v ); > +GLAPI void GLAPIENTRY glVertex4iv( const GLint *v ); > +GLAPI void GLAPIENTRY glVertex4sv( const GLshort *v ); > + > + > +GLAPI void GLAPIENTRY glNormal3b( GLbyte nx, GLbyte ny, GLbyte nz ); > +GLAPI void GLAPIENTRY glNormal3d( GLdouble nx, GLdouble ny, GLdouble > nz ); +GLAPI void GLAPIENTRY glNormal3f( GLfloat nx, GLfloat ny, > GLfloat nz ); +GLAPI void GLAPIENTRY glNormal3i( GLint nx, GLint ny, > GLint nz ); +GLAPI void GLAPIENTRY glNormal3s( GLshort nx, GLshort > ny, GLshort nz ); + > +GLAPI void GLAPIENTRY glNormal3bv( const GLbyte *v ); > +GLAPI void GLAPIENTRY glNormal3dv( const GLdouble *v ); > +GLAPI void GLAPIENTRY glNormal3fv( const GLfloat *v ); > +GLAPI void GLAPIENTRY glNormal3iv( const GLint *v ); > +GLAPI void GLAPIENTRY glNormal3sv( const GLshort *v ); > + > + > +GLAPI void GLAPIENTRY glIndexd( GLdouble c ); > +GLAPI void GLAPIENTRY glIndexf( GLfloat c ); > +GLAPI void GLAPIENTRY glIndexi( GLint c ); > +GLAPI void GLAPIENTRY glIndexs( GLshort c ); > +GLAPI void GLAPIENTRY glIndexub( GLubyte c ); /* 1.1 */ > + > +GLAPI void GLAPIENTRY glIndexdv( const GLdouble *c ); > +GLAPI void GLAPIENTRY glIndexfv( const GLfloat *c ); > +GLAPI void GLAPIENTRY glIndexiv( const GLint *c ); > +GLAPI void GLAPIENTRY glIndexsv( const GLshort *c ); > +GLAPI void GLAPIENTRY glIndexubv( const GLubyte *c ); /* 1.1 */ > + > +GLAPI void GLAPIENTRY glColor3b( GLbyte red, GLbyte green, GLbyte > blue ); +GLAPI void GLAPIENTRY glColor3d( GLdouble red, GLdouble > green, GLdouble blue ); +GLAPI void GLAPIENTRY glColor3f( GLfloat > red, GLfloat green, GLfloat blue ); +GLAPI void GLAPIENTRY > glColor3i( GLint red, GLint green, GLint blue ); +GLAPI void > GLAPIENTRY glColor3s( GLshort red, GLshort green, GLshort blue ); > +GLAPI void GLAPIENTRY glColor3ub( GLubyte red, GLubyte green, > GLubyte blue ); +GLAPI void GLAPIENTRY glColor3ui( GLuint red, GLuint > green, GLuint blue ); +GLAPI void GLAPIENTRY glColor3us( GLushort > red, GLushort green, GLushort blue ); + +GLAPI void GLAPIENTRY > glColor4b( GLbyte red, GLbyte green, > + GLbyte blue, GLbyte alpha ); > +GLAPI void GLAPIENTRY glColor4d( GLdouble red, GLdouble green, > + GLdouble blue, GLdouble alpha ); > +GLAPI void GLAPIENTRY glColor4f( GLfloat red, GLfloat green, > + GLfloat blue, GLfloat alpha ); > +GLAPI void GLAPIENTRY glColor4i( GLint red, GLint green, > + GLint blue, GLint alpha ); > +GLAPI void GLAPIENTRY glColor4s( GLshort red, GLshort green, > + GLshort blue, GLshort alpha ); > +GLAPI void GLAPIENTRY glColor4ub( GLubyte red, GLubyte green, > + GLubyte blue, GLubyte alpha ); > +GLAPI void GLAPIENTRY glColor4ui( GLuint red, GLuint green, > + GLuint blue, GLuint alpha ); > +GLAPI void GLAPIENTRY glColor4us( GLushort red, GLushort green, > + GLushort blue, GLushort alpha ); > + > + > +GLAPI void GLAPIENTRY glColor3bv( const GLbyte *v ); > +GLAPI void GLAPIENTRY glColor3dv( const GLdouble *v ); > +GLAPI void GLAPIENTRY glColor3fv( const GLfloat *v ); > +GLAPI void GLAPIENTRY glColor3iv( const GLint *v ); > +GLAPI void GLAPIENTRY glColor3sv( const GLshort *v ); > +GLAPI void GLAPIENTRY glColor3ubv( const GLubyte *v ); > +GLAPI void GLAPIENTRY glColor3uiv( const GLuint *v ); > +GLAPI void GLAPIENTRY glColor3usv( const GLushort *v ); > + > +GLAPI void GLAPIENTRY glColor4bv( const GLbyte *v ); > +GLAPI void GLAPIENTRY glColor4dv( const GLdouble *v ); > +GLAPI void GLAPIENTRY glColor4fv( const GLfloat *v ); > +GLAPI void GLAPIENTRY glColor4iv( const GLint *v ); > +GLAPI void GLAPIENTRY glColor4sv( const GLshort *v ); > +GLAPI void GLAPIENTRY glColor4ubv( const GLubyte *v ); > +GLAPI void GLAPIENTRY glColor4uiv( const GLuint *v ); > +GLAPI void GLAPIENTRY glColor4usv( const GLushort *v ); > + > + > +GLAPI void GLAPIENTRY glTexCoord1d( GLdouble s ); > +GLAPI void GLAPIENTRY glTexCoord1f( GLfloat s ); > +GLAPI void GLAPIENTRY glTexCoord1i( GLint s ); > +GLAPI void GLAPIENTRY glTexCoord1s( GLshort s ); > + > +GLAPI void GLAPIENTRY glTexCoord2d( GLdouble s, GLdouble t ); > +GLAPI void GLAPIENTRY glTexCoord2f( GLfloat s, GLfloat t ); > +GLAPI void GLAPIENTRY glTexCoord2i( GLint s, GLint t ); > +GLAPI void GLAPIENTRY glTexCoord2s( GLshort s, GLshort t ); > + > +GLAPI void GLAPIENTRY glTexCoord3d( GLdouble s, GLdouble t, GLdouble > r ); +GLAPI void GLAPIENTRY glTexCoord3f( GLfloat s, GLfloat t, > GLfloat r ); +GLAPI void GLAPIENTRY glTexCoord3i( GLint s, GLint t, > GLint r ); +GLAPI void GLAPIENTRY glTexCoord3s( GLshort s, GLshort t, > GLshort r ); + > +GLAPI void GLAPIENTRY glTexCoord4d( GLdouble s, GLdouble t, GLdouble > r, GLdouble q ); +GLAPI void GLAPIENTRY glTexCoord4f( GLfloat s, > GLfloat t, GLfloat r, GLfloat q ); +GLAPI void GLAPIENTRY > glTexCoord4i( GLint s, GLint t, GLint r, GLint q ); +GLAPI void > GLAPIENTRY glTexCoord4s( GLshort s, GLshort t, GLshort r, GLshort q > ); + +GLAPI void GLAPIENTRY glTexCoord1dv( const GLdouble *v ); > +GLAPI void GLAPIENTRY glTexCoord1fv( const GLfloat *v ); > +GLAPI void GLAPIENTRY glTexCoord1iv( const GLint *v ); > +GLAPI void GLAPIENTRY glTexCoord1sv( const GLshort *v ); > + > +GLAPI void GLAPIENTRY glTexCoord2dv( const GLdouble *v ); > +GLAPI void GLAPIENTRY glTexCoord2fv( const GLfloat *v ); > +GLAPI void GLAPIENTRY glTexCoord2iv( const GLint *v ); > +GLAPI void GLAPIENTRY glTexCoord2sv( const GLshort *v ); > + > +GLAPI void GLAPIENTRY glTexCoord3dv( const GLdouble *v ); > +GLAPI void GLAPIENTRY glTexCoord3fv( const GLfloat *v ); > +GLAPI void GLAPIENTRY glTexCoord3iv( const GLint *v ); > +GLAPI void GLAPIENTRY glTexCoord3sv( const GLshort *v ); > + > +GLAPI void GLAPIENTRY glTexCoord4dv( const GLdouble *v ); > +GLAPI void GLAPIENTRY glTexCoord4fv( const GLfloat *v ); > +GLAPI void GLAPIENTRY glTexCoord4iv( const GLint *v ); > +GLAPI void GLAPIENTRY glTexCoord4sv( const GLshort *v ); > + > + > +GLAPI void GLAPIENTRY glRasterPos2d( GLdouble x, GLdouble y ); > +GLAPI void GLAPIENTRY glRasterPos2f( GLfloat x, GLfloat y ); > +GLAPI void GLAPIENTRY glRasterPos2i( GLint x, GLint y ); > +GLAPI void GLAPIENTRY glRasterPos2s( GLshort x, GLshort y ); > + > +GLAPI void GLAPIENTRY glRasterPos3d( GLdouble x, GLdouble y, > GLdouble z ); +GLAPI void GLAPIENTRY glRasterPos3f( GLfloat x, > GLfloat y, GLfloat z ); +GLAPI void GLAPIENTRY glRasterPos3i( GLint > x, GLint y, GLint z ); +GLAPI void GLAPIENTRY glRasterPos3s( GLshort > x, GLshort y, GLshort z ); + > +GLAPI void GLAPIENTRY glRasterPos4d( GLdouble x, GLdouble y, > GLdouble z, GLdouble w ); +GLAPI void GLAPIENTRY > glRasterPos4f( GLfloat x, GLfloat y, GLfloat z, GLfloat w ); +GLAPI > void GLAPIENTRY glRasterPos4i( GLint x, GLint y, GLint z, GLint w ); > +GLAPI void GLAPIENTRY glRasterPos4s( GLshort x, GLshort y, GLshort > z, GLshort w ); + +GLAPI void GLAPIENTRY glRasterPos2dv( const > GLdouble *v ); +GLAPI void GLAPIENTRY glRasterPos2fv( const GLfloat > *v ); +GLAPI void GLAPIENTRY glRasterPos2iv( const GLint *v ); > +GLAPI void GLAPIENTRY glRasterPos2sv( const GLshort *v ); > + > +GLAPI void GLAPIENTRY glRasterPos3dv( const GLdouble *v ); > +GLAPI void GLAPIENTRY glRasterPos3fv( const GLfloat *v ); > +GLAPI void GLAPIENTRY glRasterPos3iv( const GLint *v ); > +GLAPI void GLAPIENTRY glRasterPos3sv( const GLshort *v ); > + > +GLAPI void GLAPIENTRY glRasterPos4dv( const GLdouble *v ); > +GLAPI void GLAPIENTRY glRasterPos4fv( const GLfloat *v ); > +GLAPI void GLAPIENTRY glRasterPos4iv( const GLint *v ); > +GLAPI void GLAPIENTRY glRasterPos4sv( const GLshort *v ); > + > + > +GLAPI void GLAPIENTRY glRectd( GLdouble x1, GLdouble y1, GLdouble > x2, GLdouble y2 ); +GLAPI void GLAPIENTRY glRectf( GLfloat x1, > GLfloat y1, GLfloat x2, GLfloat y2 ); +GLAPI void GLAPIENTRY > glRecti( GLint x1, GLint y1, GLint x2, GLint y2 ); +GLAPI void > GLAPIENTRY glRects( GLshort x1, GLshort y1, GLshort x2, GLshort y2 ); > + + > +GLAPI void GLAPIENTRY glRectdv( const GLdouble *v1, const GLdouble > *v2 ); +GLAPI void GLAPIENTRY glRectfv( const GLfloat *v1, const > GLfloat *v2 ); +GLAPI void GLAPIENTRY glRectiv( const GLint *v1, > const GLint *v2 ); +GLAPI void GLAPIENTRY glRectsv( const GLshort > *v1, const GLshort *v2 ); + > + > +/* > + * Vertex Arrays (1.1) > + */ > + > +GLAPI void GLAPIENTRY glVertexPointer( GLint size, GLenum type, > + GLsizei stride, const GLvoid > *ptr ); + > +GLAPI void GLAPIENTRY glNormalPointer( GLenum type, GLsizei stride, > + const GLvoid *ptr ); > + > +GLAPI void GLAPIENTRY glColorPointer( GLint size, GLenum type, > + GLsizei stride, const GLvoid > *ptr ); + > +GLAPI void GLAPIENTRY glIndexPointer( GLenum type, GLsizei stride, > + const GLvoid *ptr ); > + > +GLAPI void GLAPIENTRY glTexCoordPointer( GLint size, GLenum type, > + GLsizei stride, const > GLvoid *ptr ); + > +GLAPI void GLAPIENTRY glEdgeFlagPointer( GLsizei stride, const > GLvoid *ptr ); + > +GLAPI void GLAPIENTRY glGetPointerv( GLenum pname, GLvoid **params ); > + > +GLAPI void GLAPIENTRY glArrayElement( GLint i ); > + > +GLAPI void GLAPIENTRY glDrawArrays( GLenum mode, GLint first, > GLsizei count ); + > +GLAPI void GLAPIENTRY glDrawElements( GLenum mode, GLsizei count, > + GLenum type, const GLvoid > *indices ); + > +GLAPI void GLAPIENTRY glInterleavedArrays( GLenum format, GLsizei > stride, > + const GLvoid *pointer ); > + > +/* > + * Lighting > + */ > + > +GLAPI void GLAPIENTRY glShadeModel( GLenum mode ); > + > +GLAPI void GLAPIENTRY glLightf( GLenum light, GLenum pname, GLfloat > param ); +GLAPI void GLAPIENTRY glLighti( GLenum light, GLenum pname, > GLint param ); +GLAPI void GLAPIENTRY glLightfv( GLenum light, GLenum > pname, > + const GLfloat *params ); > +GLAPI void GLAPIENTRY glLightiv( GLenum light, GLenum pname, > + const GLint *params ); > + > +GLAPI void GLAPIENTRY glGetLightfv( GLenum light, GLenum pname, > + GLfloat *params ); > +GLAPI void GLAPIENTRY glGetLightiv( GLenum light, GLenum pname, > + GLint *params ); > + > +GLAPI void GLAPIENTRY glLightModelf( GLenum pname, GLfloat param ); > +GLAPI void GLAPIENTRY glLightModeli( GLenum pname, GLint param ); > +GLAPI void GLAPIENTRY glLightModelfv( GLenum pname, const GLfloat > *params ); +GLAPI void GLAPIENTRY glLightModeliv( GLenum pname, const > GLint *params ); + > +GLAPI void GLAPIENTRY glMaterialf( GLenum face, GLenum pname, > GLfloat param ); +GLAPI void GLAPIENTRY glMateriali( GLenum face, > GLenum pname, GLint param ); +GLAPI void GLAPIENTRY > glMaterialfv( GLenum face, GLenum pname, const GLfloat *params ); > +GLAPI void GLAPIENTRY glMaterialiv( GLenum face, GLenum pname, const > GLint *params ); + +GLAPI void GLAPIENTRY glGetMaterialfv( GLenum > face, GLenum pname, GLfloat *params ); +GLAPI void GLAPIENTRY > glGetMaterialiv( GLenum face, GLenum pname, GLint *params ); + > +GLAPI void GLAPIENTRY glColorMaterial( GLenum face, GLenum mode ); > + > + > +/* > + * Raster functions > + */ > + > +GLAPI void GLAPIENTRY glPixelZoom( GLfloat xfactor, GLfloat yfactor > ); + > +GLAPI void GLAPIENTRY glPixelStoref( GLenum pname, GLfloat param ); > +GLAPI void GLAPIENTRY glPixelStorei( GLenum pname, GLint param ); > + > +GLAPI void GLAPIENTRY glPixelTransferf( GLenum pname, GLfloat param > ); +GLAPI void GLAPIENTRY glPixelTransferi( GLenum pname, GLint param > ); + > +GLAPI void GLAPIENTRY glPixelMapfv( GLenum map, GLsizei mapsize, > + const GLfloat *values ); > +GLAPI void GLAPIENTRY glPixelMapuiv( GLenum map, GLsizei mapsize, > + const GLuint *values ); > +GLAPI void GLAPIENTRY glPixelMapusv( GLenum map, GLsizei mapsize, > + const GLushort *values ); > + > +GLAPI void GLAPIENTRY glGetPixelMapfv( GLenum map, GLfloat *values ); > +GLAPI void GLAPIENTRY glGetPixelMapuiv( GLenum map, GLuint *values ); > +GLAPI void GLAPIENTRY glGetPixelMapusv( GLenum map, GLushort *values > ); + > +GLAPI void GLAPIENTRY glBitmap( GLsizei width, GLsizei height, > + GLfloat xorig, GLfloat yorig, > + GLfloat xmove, GLfloat ymove, > + const GLubyte *bitmap ); > + > +GLAPI void GLAPIENTRY glReadPixels( GLint x, GLint y, > + GLsizei width, GLsizei height, > + GLenum format, GLenum type, > + GLvoid *pixels ); > + > +GLAPI void GLAPIENTRY glDrawPixels( GLsizei width, GLsizei height, > + GLenum format, GLenum type, > + const GLvoid *pixels ); > + > +GLAPI void GLAPIENTRY glCopyPixels( GLint x, GLint y, > + GLsizei width, GLsizei height, > + GLenum type ); > + > +/* > + * Stenciling > + */ > + > +GLAPI void GLAPIENTRY glStencilFunc( GLenum func, GLint ref, GLuint > mask ); + > +GLAPI void GLAPIENTRY glStencilMask( GLuint mask ); > + > +GLAPI void GLAPIENTRY glStencilOp( GLenum fail, GLenum zfail, GLenum > zpass ); + > +GLAPI void GLAPIENTRY glClearStencil( GLint s ); > + > + > + > +/* > + * Texture mapping > + */ > + > +GLAPI void GLAPIENTRY glTexGend( GLenum coord, GLenum pname, > GLdouble param ); +GLAPI void GLAPIENTRY glTexGenf( GLenum coord, > GLenum pname, GLfloat param ); +GLAPI void GLAPIENTRY > glTexGeni( GLenum coord, GLenum pname, GLint param ); + > +GLAPI void GLAPIENTRY glTexGendv( GLenum coord, GLenum pname, const > GLdouble *params ); +GLAPI void GLAPIENTRY glTexGenfv( GLenum coord, > GLenum pname, const GLfloat *params ); +GLAPI void GLAPIENTRY > glTexGeniv( GLenum coord, GLenum pname, const GLint *params ); + > +GLAPI void GLAPIENTRY glGetTexGendv( GLenum coord, GLenum pname, > GLdouble *params ); +GLAPI void GLAPIENTRY glGetTexGenfv( GLenum > coord, GLenum pname, GLfloat *params ); +GLAPI void GLAPIENTRY > glGetTexGeniv( GLenum coord, GLenum pname, GLint *params ); + > + > +GLAPI void GLAPIENTRY glTexEnvf( GLenum target, GLenum pname, > GLfloat param ); +GLAPI void GLAPIENTRY glTexEnvi( GLenum target, > GLenum pname, GLint param ); + > +GLAPI void GLAPIENTRY glTexEnvfv( GLenum target, GLenum pname, const > GLfloat *params ); +GLAPI void GLAPIENTRY glTexEnviv( GLenum target, > GLenum pname, const GLint *params ); + > +GLAPI void GLAPIENTRY glGetTexEnvfv( GLenum target, GLenum pname, > GLfloat *params ); +GLAPI void GLAPIENTRY glGetTexEnviv( GLenum > target, GLenum pname, GLint *params ); + > + > +GLAPI void GLAPIENTRY glTexParameterf( GLenum target, GLenum pname, > GLfloat param ); +GLAPI void GLAPIENTRY glTexParameteri( GLenum > target, GLenum pname, GLint param ); + > +GLAPI void GLAPIENTRY glTexParameterfv( GLenum target, GLenum pname, > + const GLfloat *params ); > +GLAPI void GLAPIENTRY glTexParameteriv( GLenum target, GLenum pname, > + const GLint *params ); > + > +GLAPI void GLAPIENTRY glGetTexParameterfv( GLenum target, > + GLenum pname, GLfloat > *params); +GLAPI void GLAPIENTRY glGetTexParameteriv( GLenum target, > + GLenum pname, GLint > *params ); + > +GLAPI void GLAPIENTRY glGetTexLevelParameterfv( GLenum target, GLint > level, > + GLenum pname, > GLfloat *params ); +GLAPI void GLAPIENTRY > glGetTexLevelParameteriv( GLenum target, GLint level, > + GLenum pname, GLint > *params ); + > + > +GLAPI void GLAPIENTRY glTexImage1D( GLenum target, GLint level, > + GLint internalFormat, > + GLsizei width, GLint border, > + GLenum format, GLenum type, > + const GLvoid *pixels ); > + > +GLAPI void GLAPIENTRY glTexImage2D( GLenum target, GLint level, > + GLint internalFormat, > + GLsizei width, GLsizei height, > + GLint border, GLenum format, > GLenum type, > + const GLvoid *pixels ); > + > +GLAPI void GLAPIENTRY glGetTexImage( GLenum target, GLint level, > + GLenum format, GLenum type, > + GLvoid *pixels ); > + > + > +/* 1.1 functions */ > + > +GLAPI void GLAPIENTRY glGenTextures( GLsizei n, GLuint *textures ); > + > +GLAPI void GLAPIENTRY glDeleteTextures( GLsizei n, const GLuint > *textures); + > +GLAPI void GLAPIENTRY glBindTexture( GLenum target, GLuint texture ); > + > +GLAPI void GLAPIENTRY glPrioritizeTextures( GLsizei n, > + const GLuint *textures, > + const GLclampf > *priorities ); + > +GLAPI GLboolean GLAPIENTRY glAreTexturesResident( GLsizei n, > + const GLuint > *textures, > + GLboolean > *residences ); + > +GLAPI GLboolean GLAPIENTRY glIsTexture( GLuint texture ); > + > + > +GLAPI void GLAPIENTRY glTexSubImage1D( GLenum target, GLint level, > + GLint xoffset, > + GLsizei width, GLenum format, > + GLenum type, const GLvoid > *pixels ); + > + > +GLAPI void GLAPIENTRY glTexSubImage2D( GLenum target, GLint level, > + GLint xoffset, GLint yoffset, > + GLsizei width, GLsizei height, > + GLenum format, GLenum type, > + const GLvoid *pixels ); > + > + > +GLAPI void GLAPIENTRY glCopyTexImage1D( GLenum target, GLint level, > + GLenum internalformat, > + GLint x, GLint y, > + GLsizei width, GLint border > ); + > + > +GLAPI void GLAPIENTRY glCopyTexImage2D( GLenum target, GLint level, > + GLenum internalformat, > + GLint x, GLint y, > + GLsizei width, GLsizei > height, > + GLint border ); > + > + > +GLAPI void GLAPIENTRY glCopyTexSubImage1D( GLenum target, GLint > level, > + GLint xoffset, GLint x, > GLint y, > + GLsizei width ); > + > + > +GLAPI void GLAPIENTRY glCopyTexSubImage2D( GLenum target, GLint > level, > + GLint xoffset, GLint > yoffset, > + GLint x, GLint y, > + GLsizei width, GLsizei > height ); + > + > +/* > + * Evaluators > + */ > + > +GLAPI void GLAPIENTRY glMap1d( GLenum target, GLdouble u1, GLdouble > u2, > + GLint stride, > + GLint order, const GLdouble *points ); > +GLAPI void GLAPIENTRY glMap1f( GLenum target, GLfloat u1, GLfloat u2, > + GLint stride, > + GLint order, const GLfloat *points ); > + > +GLAPI void GLAPIENTRY glMap2d( GLenum target, > + GLdouble u1, GLdouble u2, GLint ustride, GLint > uorder, > + GLdouble v1, GLdouble v2, GLint vstride, GLint > vorder, > + const GLdouble *points ); > +GLAPI void GLAPIENTRY glMap2f( GLenum target, > + GLfloat u1, GLfloat u2, GLint ustride, GLint > uorder, > + GLfloat v1, GLfloat v2, GLint vstride, GLint > vorder, > + const GLfloat *points ); > + > +GLAPI void GLAPIENTRY glGetMapdv( GLenum target, GLenum query, > GLdouble *v ); +GLAPI void GLAPIENTRY glGetMapfv( GLenum target, > GLenum query, GLfloat *v ); +GLAPI void GLAPIENTRY glGetMapiv( GLenum > target, GLenum query, GLint *v ); + > +GLAPI void GLAPIENTRY glEvalCoord1d( GLdouble u ); > +GLAPI void GLAPIENTRY glEvalCoord1f( GLfloat u ); > + > +GLAPI void GLAPIENTRY glEvalCoord1dv( const GLdouble *u ); > +GLAPI void GLAPIENTRY glEvalCoord1fv( const GLfloat *u ); > + > +GLAPI void GLAPIENTRY glEvalCoord2d( GLdouble u, GLdouble v ); > +GLAPI void GLAPIENTRY glEvalCoord2f( GLfloat u, GLfloat v ); > + > +GLAPI void GLAPIENTRY glEvalCoord2dv( const GLdouble *u ); > +GLAPI void GLAPIENTRY glEvalCoord2fv( const GLfloat *u ); > + > +GLAPI void GLAPIENTRY glMapGrid1d( GLint un, GLdouble u1, GLdouble > u2 ); +GLAPI void GLAPIENTRY glMapGrid1f( GLint un, GLfloat u1, > GLfloat u2 ); + > +GLAPI void GLAPIENTRY glMapGrid2d( GLint un, GLdouble u1, GLdouble > u2, > + GLint vn, GLdouble v1, GLdouble > v2 ); +GLAPI void GLAPIENTRY glMapGrid2f( GLint un, GLfloat u1, > GLfloat u2, > + GLint vn, GLfloat v1, GLfloat v2 > ); + > +GLAPI void GLAPIENTRY glEvalPoint1( GLint i ); > + > +GLAPI void GLAPIENTRY glEvalPoint2( GLint i, GLint j ); > + > +GLAPI void GLAPIENTRY glEvalMesh1( GLenum mode, GLint i1, GLint i2 ); > + > +GLAPI void GLAPIENTRY glEvalMesh2( GLenum mode, GLint i1, GLint i2, > GLint j1, GLint j2 ); + > + > +/* > + * Fog > + */ > + > +GLAPI void GLAPIENTRY glFogf( GLenum pname, GLfloat param ); > + > +GLAPI void GLAPIENTRY glFogi( GLenum pname, GLint param ); > + > +GLAPI void GLAPIENTRY glFogfv( GLenum pname, const GLfloat *params ); > + > +GLAPI void GLAPIENTRY glFogiv( GLenum pname, const GLint *params ); > + > + > +/* > + * Selection and Feedback > + */ > + > +GLAPI void GLAPIENTRY glFeedbackBuffer( GLsizei size, GLenum type, > GLfloat *buffer ); + > +GLAPI void GLAPIENTRY glPassThrough( GLfloat token ); > + > +GLAPI void GLAPIENTRY glSelectBuffer( GLsizei size, GLuint *buffer ); > + > +GLAPI void GLAPIENTRY glInitNames( void ); > + > +GLAPI void GLAPIENTRY glLoadName( GLuint name ); > + > +GLAPI void GLAPIENTRY glPushName( GLuint name ); > + > +GLAPI void GLAPIENTRY glPopName( void ); > + > + > + > +/* > + * OpenGL 1.2 > + */ > + > +#define GL_RESCALE_NORMAL 0x803A > +#define GL_CLAMP_TO_EDGE 0x812F > +#define GL_MAX_ELEMENTS_VERTICES 0x80E8 > +#define GL_MAX_ELEMENTS_INDICES 0x80E9 > +#define GL_BGR 0x80E0 > +#define GL_BGRA 0x80E1 > +#define GL_UNSIGNED_BYTE_3_3_2 0x8032 > +#define GL_UNSIGNED_BYTE_2_3_3_REV 0x8362 > +#define GL_UNSIGNED_SHORT_5_6_5 0x8363 > +#define GL_UNSIGNED_SHORT_5_6_5_REV 0x8364 > +#define GL_UNSIGNED_SHORT_4_4_4_4 0x8033 > +#define GL_UNSIGNED_SHORT_4_4_4_4_REV 0x8365 > +#define GL_UNSIGNED_SHORT_5_5_5_1 0x8034 > +#define GL_UNSIGNED_SHORT_1_5_5_5_REV 0x8366 > +#define GL_UNSIGNED_INT_8_8_8_8 0x8035 > +#define GL_UNSIGNED_INT_8_8_8_8_REV 0x8367 > +#define GL_UNSIGNED_INT_10_10_10_2 0x8036 > +#define GL_UNSIGNED_INT_2_10_10_10_REV 0x8368 > +#define GL_LIGHT_MODEL_COLOR_CONTROL 0x81F8 > +#define GL_SINGLE_COLOR 0x81F9 > +#define GL_SEPARATE_SPECULAR_COLOR 0x81FA > +#define GL_TEXTURE_MIN_LOD 0x813A > +#define GL_TEXTURE_MAX_LOD 0x813B > +#define GL_TEXTURE_BASE_LEVEL 0x813C > +#define GL_TEXTURE_MAX_LEVEL 0x813D > +#define GL_SMOOTH_POINT_SIZE_RANGE 0x0B12 > +#define GL_SMOOTH_POINT_SIZE_GRANULARITY 0x0B13 > +#define GL_SMOOTH_LINE_WIDTH_RANGE 0x0B22 > +#define GL_SMOOTH_LINE_WIDTH_GRANULARITY 0x0B23 > +#define GL_ALIASED_POINT_SIZE_RANGE 0x846D > +#define GL_ALIASED_LINE_WIDTH_RANGE 0x846E > +#define GL_PACK_SKIP_IMAGES 0x806B > +#define GL_PACK_IMAGE_HEIGHT 0x806C > +#define GL_UNPACK_SKIP_IMAGES 0x806D > +#define GL_UNPACK_IMAGE_HEIGHT 0x806E > +#define GL_TEXTURE_3D 0x806F > +#define GL_PROXY_TEXTURE_3D 0x8070 > +#define GL_TEXTURE_DEPTH 0x8071 > +#define GL_TEXTURE_WRAP_R 0x8072 > +#define GL_MAX_3D_TEXTURE_SIZE 0x8073 > +#define GL_TEXTURE_BINDING_3D 0x806A > + > +GLAPI void GLAPIENTRY glDrawRangeElements( GLenum mode, GLuint start, > + GLuint end, GLsizei count, GLenum type, const GLvoid > *indices ); + > +GLAPI void GLAPIENTRY glTexImage3D( GLenum target, GLint level, > + GLint internalFormat, > + GLsizei width, GLsizei height, > + GLsizei depth, GLint border, > + GLenum format, GLenum type, > + const GLvoid *pixels ); > + > +GLAPI void GLAPIENTRY glTexSubImage3D( GLenum target, GLint level, > + GLint xoffset, GLint > yoffset, > + GLint zoffset, GLsizei > width, > + GLsizei height, GLsizei > depth, > + GLenum format, > + GLenum type, const GLvoid > *pixels); + > +GLAPI void GLAPIENTRY glCopyTexSubImage3D( GLenum target, GLint > level, > + GLint xoffset, GLint > yoffset, > + GLint zoffset, GLint x, > + GLint y, GLsizei width, > + GLsizei height ); > + > +typedef void (APIENTRYP PFNGLDRAWRANGEELEMENTSPROC) (GLenum mode, > GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid > *indices); +typedef void (APIENTRYP PFNGLTEXIMAGE3DPROC) (GLenum > target, GLint level, GLint internalformat, GLsizei width, GLsizei > height, GLsizei depth, GLint border, GLenum format, GLenum type, > const GLvoid *pixels); +typedef void (APIENTRYP > PFNGLTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint xoffset, > GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei > depth, GLenum format, GLenum type, const GLvoid *pixels); +typedef > void (APIENTRYP PFNGLCOPYTEXSUBIMAGE3DPROC) (GLenum target, GLint > level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, > GLsizei width, GLsizei height); + + +/* > + * GL_ARB_imaging > + */ > + > +#define GL_CONSTANT_COLOR 0x8001 > +#define GL_ONE_MINUS_CONSTANT_COLOR 0x8002 > +#define GL_CONSTANT_ALPHA 0x8003 > +#define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004 > +#define GL_COLOR_TABLE 0x80D0 > +#define GL_POST_CONVOLUTION_COLOR_TABLE 0x80D1 > +#define GL_POST_COLOR_MATRIX_COLOR_TABLE 0x80D2 > +#define GL_PROXY_COLOR_TABLE 0x80D3 > +#define GL_PROXY_POST_CONVOLUTION_COLOR_TABLE 0x80D4 > +#define GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE 0x80D5 > +#define GL_COLOR_TABLE_SCALE 0x80D6 > +#define GL_COLOR_TABLE_BIAS 0x80D7 > +#define GL_COLOR_TABLE_FORMAT 0x80D8 > +#define GL_COLOR_TABLE_WIDTH 0x80D9 > +#define GL_COLOR_TABLE_RED_SIZE 0x80DA > +#define GL_COLOR_TABLE_GREEN_SIZE 0x80DB > +#define GL_COLOR_TABLE_BLUE_SIZE 0x80DC > +#define GL_COLOR_TABLE_ALPHA_SIZE 0x80DD > +#define GL_COLOR_TABLE_LUMINANCE_SIZE 0x80DE > +#define GL_COLOR_TABLE_INTENSITY_SIZE 0x80DF > +#define GL_CONVOLUTION_1D 0x8010 > +#define GL_CONVOLUTION_2D 0x8011 > +#define GL_SEPARABLE_2D 0x8012 > +#define GL_CONVOLUTION_BORDER_MODE 0x8013 > +#define GL_CONVOLUTION_FILTER_SCALE 0x8014 > +#define GL_CONVOLUTION_FILTER_BIAS 0x8015 > +#define GL_REDUCE 0x8016 > +#define GL_CONVOLUTION_FORMAT 0x8017 > +#define GL_CONVOLUTION_WIDTH 0x8018 > +#define GL_CONVOLUTION_HEIGHT 0x8019 > +#define GL_MAX_CONVOLUTION_WIDTH 0x801A > +#define GL_MAX_CONVOLUTION_HEIGHT 0x801B > +#define GL_POST_CONVOLUTION_RED_SCALE 0x801C > +#define GL_POST_CONVOLUTION_GREEN_SCALE 0x801D > +#define GL_POST_CONVOLUTION_BLUE_SCALE 0x801E > +#define GL_POST_CONVOLUTION_ALPHA_SCALE 0x801F > +#define GL_POST_CONVOLUTION_RED_BIAS 0x8020 > +#define GL_POST_CONVOLUTION_GREEN_BIAS 0x8021 > +#define GL_POST_CONVOLUTION_BLUE_BIAS 0x8022 > +#define GL_POST_CONVOLUTION_ALPHA_BIAS 0x8023 > +#define GL_CONSTANT_BORDER 0x8151 > +#define GL_REPLICATE_BORDER 0x8153 > +#define GL_CONVOLUTION_BORDER_COLOR 0x8154 > +#define GL_COLOR_MATRIX 0x80B1 > +#define GL_COLOR_MATRIX_STACK_DEPTH 0x80B2 > +#define GL_MAX_COLOR_MATRIX_STACK_DEPTH 0x80B3 > +#define GL_POST_COLOR_MATRIX_RED_SCALE 0x80B4 > +#define GL_POST_COLOR_MATRIX_GREEN_SCALE 0x80B5 > +#define GL_POST_COLOR_MATRIX_BLUE_SCALE 0x80B6 > +#define GL_POST_COLOR_MATRIX_ALPHA_SCALE 0x80B7 > +#define GL_POST_COLOR_MATRIX_RED_BIAS 0x80B8 > +#define GL_POST_COLOR_MATRIX_GREEN_BIAS 0x80B9 > +#define GL_POST_COLOR_MATRIX_BLUE_BIAS 0x80BA > +#define GL_POST_COLOR_MATRIX_ALPHA_BIAS 0x80BB > +#define GL_HISTOGRAM 0x8024 > +#define GL_PROXY_HISTOGRAM 0x8025 > +#define GL_HISTOGRAM_WIDTH 0x8026 > +#define GL_HISTOGRAM_FORMAT 0x8027 > +#define GL_HISTOGRAM_RED_SIZE 0x8028 > +#define GL_HISTOGRAM_GREEN_SIZE 0x8029 > +#define GL_HISTOGRAM_BLUE_SIZE 0x802A > +#define GL_HISTOGRAM_ALPHA_SIZE 0x802B > +#define GL_HISTOGRAM_LUMINANCE_SIZE 0x802C > +#define GL_HISTOGRAM_SINK 0x802D > +#define GL_MINMAX 0x802E > +#define GL_MINMAX_FORMAT 0x802F > +#define GL_MINMAX_SINK 0x8030 > +#define GL_TABLE_TOO_LARGE 0x8031 > +#define GL_BLEND_EQUATION 0x8009 > +#define GL_MIN 0x8007 > +#define GL_MAX 0x8008 > +#define GL_FUNC_ADD 0x8006 > +#define GL_FUNC_SUBTRACT 0x800A > +#define GL_FUNC_REVERSE_SUBTRACT 0x800B > +#define GL_BLEND_COLOR 0x8005 > + > + > +GLAPI void GLAPIENTRY glColorTable( GLenum target, GLenum > internalformat, > + GLsizei width, GLenum format, > + GLenum type, const GLvoid *table > ); + > +GLAPI void GLAPIENTRY glColorSubTable( GLenum target, > + GLsizei start, GLsizei count, > + GLenum format, GLenum type, > + const GLvoid *data ); > + > +GLAPI void GLAPIENTRY glColorTableParameteriv(GLenum target, GLenum > pname, > + const GLint *params); > + > +GLAPI void GLAPIENTRY glColorTableParameterfv(GLenum target, GLenum > pname, > + const GLfloat *params); > + > +GLAPI void GLAPIENTRY glCopyColorSubTable( GLenum target, GLsizei > start, > + GLint x, GLint y, GLsizei > width ); + > +GLAPI void GLAPIENTRY glCopyColorTable( GLenum target, GLenum > internalformat, > + GLint x, GLint y, GLsizei > width ); + > +GLAPI void GLAPIENTRY glGetColorTable( GLenum target, GLenum format, > + GLenum type, GLvoid *table ); > + > +GLAPI void GLAPIENTRY glGetColorTableParameterfv( GLenum target, > GLenum pname, > + GLfloat *params ); > + > +GLAPI void GLAPIENTRY glGetColorTableParameteriv( GLenum target, > GLenum pname, > + GLint *params ); > + > +GLAPI void GLAPIENTRY glBlendEquation( GLenum mode ); > + > +GLAPI void GLAPIENTRY glBlendColor( GLclampf red, GLclampf green, > + GLclampf blue, GLclampf alpha ); > + > +GLAPI void GLAPIENTRY glHistogram( GLenum target, GLsizei width, > + GLenum internalformat, GLboolean > sink ); + > +GLAPI void GLAPIENTRY glResetHistogram( GLenum target ); > + > +GLAPI void GLAPIENTRY glGetHistogram( GLenum target, GLboolean reset, > + GLenum format, GLenum type, > + GLvoid *values ); > + > +GLAPI void GLAPIENTRY glGetHistogramParameterfv( GLenum target, > GLenum pname, > + GLfloat *params ); > + > +GLAPI void GLAPIENTRY glGetHistogramParameteriv( GLenum target, > GLenum pname, > + GLint *params ); > + > +GLAPI void GLAPIENTRY glMinmax( GLenum target, GLenum internalformat, > + GLboolean sink ); > + > +GLAPI void GLAPIENTRY glResetMinmax( GLenum target ); > + > +GLAPI void GLAPIENTRY glGetMinmax( GLenum target, GLboolean reset, > + GLenum format, GLenum types, > + GLvoid *values ); > + > +GLAPI void GLAPIENTRY glGetMinmaxParameterfv( GLenum target, GLenum > pname, > + GLfloat *params ); > + > +GLAPI void GLAPIENTRY glGetMinmaxParameteriv( GLenum target, GLenum > pname, > + GLint *params ); > + > +GLAPI void GLAPIENTRY glConvolutionFilter1D( GLenum target, > + GLenum internalformat, GLsizei width, GLenum format, GLenum > type, > + const GLvoid *image ); > + > +GLAPI void GLAPIENTRY glConvolutionFilter2D( GLenum target, > + GLenum internalformat, GLsizei width, GLsizei height, GLenum > format, > + GLenum type, const GLvoid *image ); > + > +GLAPI void GLAPIENTRY glConvolutionParameterf( GLenum target, GLenum > pname, > + GLfloat params ); > + > +GLAPI void GLAPIENTRY glConvolutionParameterfv( GLenum target, > GLenum pname, > + const GLfloat *params ); > + > +GLAPI void GLAPIENTRY glConvolutionParameteri( GLenum target, GLenum > pname, > + GLint params ); > + > +GLAPI void GLAPIENTRY glConvolutionParameteriv( GLenum target, > GLenum pname, > + const GLint *params ); > + > +GLAPI void GLAPIENTRY glCopyConvolutionFilter1D( GLenum target, > + GLenum internalformat, GLint x, GLint y, GLsizei width ); > + > +GLAPI void GLAPIENTRY glCopyConvolutionFilter2D( GLenum target, > + GLenum internalformat, GLint x, GLint y, GLsizei width, > + GLsizei height); > + > +GLAPI void GLAPIENTRY glGetConvolutionFilter( GLenum target, GLenum > format, > + GLenum type, GLvoid *image ); > + > +GLAPI void GLAPIENTRY glGetConvolutionParameterfv( GLenum target, > GLenum pname, > + GLfloat *params ); > + > +GLAPI void GLAPIENTRY glGetConvolutionParameteriv( GLenum target, > GLenum pname, > + GLint *params ); > + > +GLAPI void GLAPIENTRY glSeparableFilter2D( GLenum target, > + GLenum internalformat, GLsizei width, GLsizei height, GLenum > format, > + GLenum type, const GLvoid *row, const GLvoid *column ); > + > +GLAPI void GLAPIENTRY glGetSeparableFilter( GLenum target, GLenum > format, > + GLenum type, GLvoid *row, GLvoid *column, GLvoid *span ); > + > + > + > + > +/* > + * OpenGL 1.3 > + */ > + > +/* multitexture */ > +#define GL_TEXTURE0 0x84C0 > +#define GL_TEXTURE1 0x84C1 > +#define GL_TEXTURE2 0x84C2 > +#define GL_TEXTURE3 0x84C3 > +#define GL_TEXTURE4 0x84C4 > +#define GL_TEXTURE5 0x84C5 > +#define GL_TEXTURE6 0x84C6 > +#define GL_TEXTURE7 0x84C7 > +#define GL_TEXTURE8 0x84C8 > +#define GL_TEXTURE9 0x84C9 > +#define GL_TEXTURE10 0x84CA > +#define GL_TEXTURE11 0x84CB > +#define GL_TEXTURE12 0x84CC > +#define GL_TEXTURE13 0x84CD > +#define GL_TEXTURE14 0x84CE > +#define GL_TEXTURE15 0x84CF > +#define GL_TEXTURE16 0x84D0 > +#define GL_TEXTURE17 0x84D1 > +#define GL_TEXTURE18 0x84D2 > +#define GL_TEXTURE19 0x84D3 > +#define GL_TEXTURE20 0x84D4 > +#define GL_TEXTURE21 0x84D5 > +#define GL_TEXTURE22 0x84D6 > +#define GL_TEXTURE23 0x84D7 > +#define GL_TEXTURE24 0x84D8 > +#define GL_TEXTURE25 0x84D9 > +#define GL_TEXTURE26 0x84DA > +#define GL_TEXTURE27 0x84DB > +#define GL_TEXTURE28 0x84DC > +#define GL_TEXTURE29 0x84DD > +#define GL_TEXTURE30 0x84DE > +#define GL_TEXTURE31 0x84DF > +#define GL_ACTIVE_TEXTURE 0x84E0 > +#define GL_CLIENT_ACTIVE_TEXTURE 0x84E1 > +#define GL_MAX_TEXTURE_UNITS 0x84E2 > +/* texture_cube_map */ > +#define GL_NORMAL_MAP 0x8511 > +#define GL_REFLECTION_MAP 0x8512 > +#define GL_TEXTURE_CUBE_MAP 0x8513 > +#define GL_TEXTURE_BINDING_CUBE_MAP 0x8514 > +#define GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515 > +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x8516 > +#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x8517 > +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x8518 > +#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519 > +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A > +#define GL_PROXY_TEXTURE_CUBE_MAP 0x851B > +#define GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C > +/* texture_compression */ > +#define GL_COMPRESSED_ALPHA 0x84E9 > +#define GL_COMPRESSED_LUMINANCE 0x84EA > +#define GL_COMPRESSED_LUMINANCE_ALPHA 0x84EB > +#define GL_COMPRESSED_INTENSITY 0x84EC > +#define GL_COMPRESSED_RGB 0x84ED > +#define GL_COMPRESSED_RGBA 0x84EE > +#define GL_TEXTURE_COMPRESSION_HINT 0x84EF > +#define GL_TEXTURE_COMPRESSED_IMAGE_SIZE 0x86A0 > +#define GL_TEXTURE_COMPRESSED 0x86A1 > +#define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2 > +#define GL_COMPRESSED_TEXTURE_FORMATS 0x86A3 > +/* multisample */ > +#define GL_MULTISAMPLE 0x809D > +#define GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E > +#define GL_SAMPLE_ALPHA_TO_ONE 0x809F > +#define GL_SAMPLE_COVERAGE 0x80A0 > +#define GL_SAMPLE_BUFFERS 0x80A8 > +#define GL_SAMPLES 0x80A9 > +#define GL_SAMPLE_COVERAGE_VALUE 0x80AA > +#define GL_SAMPLE_COVERAGE_INVERT 0x80AB > +#define GL_MULTISAMPLE_BIT 0x20000000 > +/* transpose_matrix */ > +#define GL_TRANSPOSE_MODELVIEW_MATRIX 0x84E3 > +#define GL_TRANSPOSE_PROJECTION_MATRIX 0x84E4 > +#define GL_TRANSPOSE_TEXTURE_MATRIX 0x84E5 > +#define GL_TRANSPOSE_COLOR_MATRIX 0x84E6 > +/* texture_env_combine */ > +#define GL_COMBINE 0x8570 > +#define GL_COMBINE_RGB 0x8571 > +#define GL_COMBINE_ALPHA 0x8572 > +#define GL_SOURCE0_RGB 0x8580 > +#define GL_SOURCE1_RGB 0x8581 > +#define GL_SOURCE2_RGB 0x8582 > +#define GL_SOURCE0_ALPHA 0x8588 > +#define GL_SOURCE1_ALPHA 0x8589 > +#define GL_SOURCE2_ALPHA 0x858A > +#define GL_OPERAND0_RGB 0x8590 > +#define GL_OPERAND1_RGB 0x8591 > +#define GL_OPERAND2_RGB 0x8592 > +#define GL_OPERAND0_ALPHA 0x8598 > +#define GL_OPERAND1_ALPHA 0x8599 > +#define GL_OPERAND2_ALPHA 0x859A > +#define GL_RGB_SCALE 0x8573 > +#define GL_ADD_SIGNED 0x8574 > +#define GL_INTERPOLATE 0x8575 > +#define GL_SUBTRACT 0x84E7 > +#define GL_CONSTANT 0x8576 > +#define GL_PRIMARY_COLOR 0x8577 > +#define GL_PREVIOUS 0x8578 > +/* texture_env_dot3 */ > +#define GL_DOT3_RGB 0x86AE > +#define GL_DOT3_RGBA 0x86AF > +/* texture_border_clamp */ > +#define GL_CLAMP_TO_BORDER 0x812D > + > +GLAPI void GLAPIENTRY glActiveTexture( GLenum texture ); > + > +GLAPI void GLAPIENTRY glClientActiveTexture( GLenum texture ); > + > +GLAPI void GLAPIENTRY glCompressedTexImage1D( GLenum target, GLint > level, GLenum internalformat, GLsizei width, GLint border, GLsizei > imageSize, const GLvoid *data ); + +GLAPI void GLAPIENTRY > glCompressedTexImage2D( GLenum target, GLint level, GLenum > internalformat, GLsizei width, GLsizei height, GLint border, GLsizei > imageSize, const GLvoid *data ); + +GLAPI void GLAPIENTRY > glCompressedTexImage3D( GLenum target, GLint level, GLenum > internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint > border, GLsizei imageSize, const GLvoid *data ); + +GLAPI void > GLAPIENTRY glCompressedTexSubImage1D( GLenum target, GLint level, > GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const > GLvoid *data ); + +GLAPI void GLAPIENTRY > glCompressedTexSubImage2D( GLenum target, GLint level, GLint xoffset, > GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei > imageSize, const GLvoid *data ); + +GLAPI void GLAPIENTRY > glCompressedTexSubImage3D( GLenum target, GLint level, GLint xoffset, > GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei > depth, GLenum format, GLsizei imageSize, const GLvoid *data ); + > +GLAPI void GLAPIENTRY glGetCompressedTexImage( GLenum target, GLint > lod, GLvoid *img ); + +GLAPI void GLAPIENTRY > glMultiTexCoord1d( GLenum target, GLdouble s ); + +GLAPI void > GLAPIENTRY glMultiTexCoord1dv( GLenum target, const GLdouble *v ); + > +GLAPI void GLAPIENTRY glMultiTexCoord1f( GLenum target, GLfloat s ); > + +GLAPI void GLAPIENTRY glMultiTexCoord1fv( GLenum target, const > GLfloat *v ); + +GLAPI void GLAPIENTRY glMultiTexCoord1i( GLenum > target, GLint s ); + +GLAPI void GLAPIENTRY > glMultiTexCoord1iv( GLenum target, const GLint *v ); + +GLAPI void > GLAPIENTRY glMultiTexCoord1s( GLenum target, GLshort s ); + > +GLAPI void GLAPIENTRY glMultiTexCoord1sv( GLenum target, const > GLshort *v ); + > +GLAPI void GLAPIENTRY glMultiTexCoord2d( GLenum target, GLdouble s, > GLdouble t ); + > +GLAPI void GLAPIENTRY glMultiTexCoord2dv( GLenum target, const > GLdouble *v ); + > +GLAPI void GLAPIENTRY glMultiTexCoord2f( GLenum target, GLfloat s, > GLfloat t ); + > +GLAPI void GLAPIENTRY glMultiTexCoord2fv( GLenum target, const > GLfloat *v ); + > +GLAPI void GLAPIENTRY glMultiTexCoord2i( GLenum target, GLint s, > GLint t ); + > +GLAPI void GLAPIENTRY glMultiTexCoord2iv( GLenum target, const GLint > *v ); + > +GLAPI void GLAPIENTRY glMultiTexCoord2s( GLenum target, GLshort s, > GLshort t ); + > +GLAPI void GLAPIENTRY glMultiTexCoord2sv( GLenum target, const > GLshort *v ); + > +GLAPI void GLAPIENTRY glMultiTexCoord3d( GLenum target, GLdouble s, > GLdouble t, GLdouble r ); + > +GLAPI void GLAPIENTRY glMultiTexCoord3dv( GLenum target, const > GLdouble *v ); + > +GLAPI void GLAPIENTRY glMultiTexCoord3f( GLenum target, GLfloat s, > GLfloat t, GLfloat r ); + > +GLAPI void GLAPIENTRY glMultiTexCoord3fv( GLenum target, const > GLfloat *v ); + > +GLAPI void GLAPIENTRY glMultiTexCoord3i( GLenum target, GLint s, > GLint t, GLint r ); + > +GLAPI void GLAPIENTRY glMultiTexCoord3iv( GLenum target, const GLint > *v ); + > +GLAPI void GLAPIENTRY glMultiTexCoord3s( GLenum target, GLshort s, > GLshort t, GLshort r ); + > +GLAPI void GLAPIENTRY glMultiTexCoord3sv( GLenum target, const > GLshort *v ); + > +GLAPI void GLAPIENTRY glMultiTexCoord4d( GLenum target, GLdouble s, > GLdouble t, GLdouble r, GLdouble q ); + > +GLAPI void GLAPIENTRY glMultiTexCoord4dv( GLenum target, const > GLdouble *v ); + > +GLAPI void GLAPIENTRY glMultiTexCoord4f( GLenum target, GLfloat s, > GLfloat t, GLfloat r, GLfloat q ); + > +GLAPI void GLAPIENTRY glMultiTexCoord4fv( GLenum target, const > GLfloat *v ); + > +GLAPI void GLAPIENTRY glMultiTexCoord4i( GLenum target, GLint s, > GLint t, GLint r, GLint q ); + > +GLAPI void GLAPIENTRY glMultiTexCoord4iv( GLenum target, const GLint > *v ); + > +GLAPI void GLAPIENTRY glMultiTexCoord4s( GLenum target, GLshort s, > GLshort t, GLshort r, GLshort q ); + > +GLAPI void GLAPIENTRY glMultiTexCoord4sv( GLenum target, const > GLshort *v ); + > + > +GLAPI void GLAPIENTRY glLoadTransposeMatrixd( const GLdouble m[16] ); > + > +GLAPI void GLAPIENTRY glLoadTransposeMatrixf( const GLfloat m[16] ); > + > +GLAPI void GLAPIENTRY glMultTransposeMatrixd( const GLdouble m[16] ); > + > +GLAPI void GLAPIENTRY glMultTransposeMatrixf( const GLfloat m[16] ); > + > +GLAPI void GLAPIENTRY glSampleCoverage( GLclampf value, GLboolean > invert ); + > + > +typedef void (APIENTRYP PFNGLACTIVETEXTUREPROC) (GLenum texture); > +typedef void (APIENTRYP PFNGLSAMPLECOVERAGEPROC) (GLclampf value, > GLboolean invert); +typedef void (APIENTRYP > PFNGLCOMPRESSEDTEXIMAGE3DPROC) (GLenum target, GLint level, GLenum > internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint > border, GLsizei imageSize, const GLvoid *data); +typedef void > (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE2DPROC) (GLenum target, GLint > level, GLenum internalformat, GLsizei width, GLsizei height, GLint > border, GLsizei imageSize, const GLvoid *data); +typedef void > (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE1DPROC) (GLenum target, GLint > level, GLenum internalformat, GLsizei width, GLint border, GLsizei > imageSize, const GLvoid *data); +typedef void (APIENTRYP > PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC) (GLenum target, GLint level, GLint > xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, > GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid *data); > +typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC) (GLenum > target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, > GLsizei height, GLenum format, GLsizei imageSize, const GLvoid > *data); +typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC) > (GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum > format, GLsizei imageSize, const GLvoid *data); +typedef void > (APIENTRYP PFNGLGETCOMPRESSEDTEXIMAGEPROC) (GLenum target, GLint > level, GLvoid *img); + + + +/* > + * GL_ARB_multitexture (ARB extension 1 and OpenGL 1.2.1) > + */ > +#ifndef GL_ARB_multitexture > +#define GL_ARB_multitexture 1 > + > +#define GL_TEXTURE0_ARB 0x84C0 > +#define GL_TEXTURE1_ARB 0x84C1 > +#define GL_TEXTURE2_ARB 0x84C2 > +#define GL_TEXTURE3_ARB 0x84C3 > +#define GL_TEXTURE4_ARB 0x84C4 > +#define GL_TEXTURE5_ARB 0x84C5 > +#define GL_TEXTURE6_ARB 0x84C6 > +#define GL_TEXTURE7_ARB 0x84C7 > +#define GL_TEXTURE8_ARB 0x84C8 > +#define GL_TEXTURE9_ARB 0x84C9 > +#define GL_TEXTURE10_ARB 0x84CA > +#define GL_TEXTURE11_ARB 0x84CB > +#define GL_TEXTURE12_ARB 0x84CC > +#define GL_TEXTURE13_ARB 0x84CD > +#define GL_TEXTURE14_ARB 0x84CE > +#define GL_TEXTURE15_ARB 0x84CF > +#define GL_TEXTURE16_ARB 0x84D0 > +#define GL_TEXTURE17_ARB 0x84D1 > +#define GL_TEXTURE18_ARB 0x84D2 > +#define GL_TEXTURE19_ARB 0x84D3 > +#define GL_TEXTURE20_ARB 0x84D4 > +#define GL_TEXTURE21_ARB 0x84D5 > +#define GL_TEXTURE22_ARB 0x84D6 > +#define GL_TEXTURE23_ARB 0x84D7 > +#define GL_TEXTURE24_ARB 0x84D8 > +#define GL_TEXTURE25_ARB 0x84D9 > +#define GL_TEXTURE26_ARB 0x84DA > +#define GL_TEXTURE27_ARB 0x84DB > +#define GL_TEXTURE28_ARB 0x84DC > +#define GL_TEXTURE29_ARB 0x84DD > +#define GL_TEXTURE30_ARB 0x84DE > +#define GL_TEXTURE31_ARB 0x84DF > +#define GL_ACTIVE_TEXTURE_ARB 0x84E0 > +#define GL_CLIENT_ACTIVE_TEXTURE_ARB 0x84E1 > +#define GL_MAX_TEXTURE_UNITS_ARB 0x84E2 > + > +GLAPI void GLAPIENTRY glActiveTextureARB(GLenum texture); > +GLAPI void GLAPIENTRY glClientActiveTextureARB(GLenum texture); > +GLAPI void GLAPIENTRY glMultiTexCoord1dARB(GLenum target, GLdouble > s); +GLAPI void GLAPIENTRY glMultiTexCoord1dvARB(GLenum target, const > GLdouble *v); +GLAPI void GLAPIENTRY glMultiTexCoord1fARB(GLenum > target, GLfloat s); +GLAPI void GLAPIENTRY > glMultiTexCoord1fvARB(GLenum target, const GLfloat *v); +GLAPI void > GLAPIENTRY glMultiTexCoord1iARB(GLenum target, GLint s); +GLAPI void > GLAPIENTRY glMultiTexCoord1ivARB(GLenum target, const GLint *v); > +GLAPI void GLAPIENTRY glMultiTexCoord1sARB(GLenum target, GLshort > s); +GLAPI void GLAPIENTRY glMultiTexCoord1svARB(GLenum target, const > GLshort *v); +GLAPI void GLAPIENTRY glMultiTexCoord2dARB(GLenum > target, GLdouble s, GLdouble t); +GLAPI void GLAPIENTRY > glMultiTexCoord2dvARB(GLenum target, const GLdouble *v); +GLAPI void > GLAPIENTRY glMultiTexCoord2fARB(GLenum target, GLfloat s, GLfloat t); > +GLAPI void GLAPIENTRY glMultiTexCoord2fvARB(GLenum target, const > GLfloat *v); +GLAPI void GLAPIENTRY glMultiTexCoord2iARB(GLenum > target, GLint s, GLint t); +GLAPI void GLAPIENTRY > glMultiTexCoord2ivARB(GLenum target, const GLint *v); +GLAPI void > GLAPIENTRY glMultiTexCoord2sARB(GLenum target, GLshort s, GLshort t); > +GLAPI void GLAPIENTRY glMultiTexCoord2svARB(GLenum target, const > GLshort *v); +GLAPI void GLAPIENTRY glMultiTexCoord3dARB(GLenum > target, GLdouble s, GLdouble t, GLdouble r); +GLAPI void GLAPIENTRY > glMultiTexCoord3dvARB(GLenum target, const GLdouble *v); +GLAPI void > GLAPIENTRY glMultiTexCoord3fARB(GLenum target, GLfloat s, GLfloat t, > GLfloat r); +GLAPI void GLAPIENTRY glMultiTexCoord3fvARB(GLenum > target, const GLfloat *v); +GLAPI void GLAPIENTRY > glMultiTexCoord3iARB(GLenum target, GLint s, GLint t, GLint r); > +GLAPI void GLAPIENTRY glMultiTexCoord3ivARB(GLenum target, const > GLint *v); +GLAPI void GLAPIENTRY glMultiTexCoord3sARB(GLenum target, > GLshort s, GLshort t, GLshort r); +GLAPI void GLAPIENTRY > glMultiTexCoord3svARB(GLenum target, const GLshort *v); +GLAPI void > GLAPIENTRY glMultiTexCoord4dARB(GLenum target, GLdouble s, GLdouble > t, GLdouble r, GLdouble q); +GLAPI void GLAPIENTRY > glMultiTexCoord4dvARB(GLenum target, const GLdouble *v); +GLAPI void > GLAPIENTRY glMultiTexCoord4fARB(GLenum target, GLfloat s, GLfloat t, > GLfloat r, GLfloat q); +GLAPI void GLAPIENTRY > glMultiTexCoord4fvARB(GLenum target, const GLfloat *v); +GLAPI void > GLAPIENTRY glMultiTexCoord4iARB(GLenum target, GLint s, GLint t, > GLint r, GLint q); +GLAPI void GLAPIENTRY > glMultiTexCoord4ivARB(GLenum target, const GLint *v); +GLAPI void > GLAPIENTRY glMultiTexCoord4sARB(GLenum target, GLshort s, GLshort t, > GLshort r, GLshort q); +GLAPI void GLAPIENTRY > glMultiTexCoord4svARB(GLenum target, const GLshort *v); + +typedef > void (APIENTRYP PFNGLACTIVETEXTUREARBPROC) (GLenum texture); +typedef > void (APIENTRYP PFNGLCLIENTACTIVETEXTUREARBPROC) (GLenum texture); > +typedef void (APIENTRYP PFNGLMULTITEXCOORD1DARBPROC) (GLenum target, > GLdouble s); +typedef void (APIENTRYP PFNGLMULTITEXCOORD1DVARBPROC) > (GLenum target, const GLdouble *v); +typedef void (APIENTRYP > PFNGLMULTITEXCOORD1FARBPROC) (GLenum target, GLfloat s); +typedef > void (APIENTRYP PFNGLMULTITEXCOORD1FVARBPROC) (GLenum target, const > GLfloat *v); +typedef void (APIENTRYP PFNGLMULTITEXCOORD1IARBPROC) > (GLenum target, GLint s); +typedef void (APIENTRYP > PFNGLMULTITEXCOORD1IVARBPROC) (GLenum target, const GLint *v); > +typedef void (APIENTRYP PFNGLMULTITEXCOORD1SARBPROC) (GLenum target, > GLshort s); +typedef void (APIENTRYP PFNGLMULTITEXCOORD1SVARBPROC) > (GLenum target, const GLshort *v); +typedef void (APIENTRYP > PFNGLMULTITEXCOORD2DARBPROC) (GLenum target, GLdouble s, GLdouble t); > +typedef void (APIENTRYP PFNGLMULTITEXCOORD2DVARBPROC) (GLenum > target, const GLdouble *v); +typedef void (APIENTRYP > PFNGLMULTITEXCOORD2FARBPROC) (GLenum target, GLfloat s, GLfloat t); > +typedef void (APIENTRYP PFNGLMULTITEXCOORD2FVARBPROC) (GLenum > target, const GLfloat *v); +typedef void (APIENTRYP > PFNGLMULTITEXCOORD2IARBPROC) (GLenum target, GLint s, GLint t); > +typedef void (APIENTRYP PFNGLMULTITEXCOORD2IVARBPROC) (GLenum > target, const GLint *v); +typedef void (APIENTRYP > PFNGLMULTITEXCOORD2SARBPROC) (GLenum target, GLshort s, GLshort t); > +typedef void (APIENTRYP PFNGLMULTITEXCOORD2SVARBPROC) (GLenum > target, const GLshort *v); +typedef void (APIENTRYP > PFNGLMULTITEXCOORD3DARBPROC) (GLenum target, GLdouble s, GLdouble t, > GLdouble r); +typedef void (APIENTRYP PFNGLMULTITEXCOORD3DVARBPROC) > (GLenum target, const GLdouble *v); +typedef void (APIENTRYP > PFNGLMULTITEXCOORD3FARBPROC) (GLenum target, GLfloat s, GLfloat t, > GLfloat r); +typedef void (APIENTRYP PFNGLMULTITEXCOORD3FVARBPROC) > (GLenum target, const GLfloat *v); +typedef void (APIENTRYP > PFNGLMULTITEXCOORD3IARBPROC) (GLenum target, GLint s, GLint t, GLint > r); +typedef void (APIENTRYP PFNGLMULTITEXCOORD3IVARBPROC) (GLenum > target, const GLint *v); +typedef void (APIENTRYP > PFNGLMULTITEXCOORD3SARBPROC) (GLenum target, GLshort s, GLshort t, > GLshort r); +typedef void (APIENTRYP PFNGLMULTITEXCOORD3SVARBPROC) > (GLenum target, const GLshort *v); +typedef void (APIENTRYP > PFNGLMULTITEXCOORD4DARBPROC) (GLenum target, GLdouble s, GLdouble t, > GLdouble r, GLdouble q); +typedef void (APIENTRYP > PFNGLMULTITEXCOORD4DVARBPROC) (GLenum target, const GLdouble *v); > +typedef void (APIENTRYP PFNGLMULTITEXCOORD4FARBPROC) (GLenum target, > GLfloat s, GLfloat t, GLfloat r, GLfloat q); +typedef void (APIENTRYP > PFNGLMULTITEXCOORD4FVARBPROC) (GLenum target, const GLfloat *v); > +typedef void (APIENTRYP PFNGLMULTITEXCOORD4IARBPROC) (GLenum target, > GLint s, GLint t, GLint r, GLint q); +typedef void (APIENTRYP > PFNGLMULTITEXCOORD4IVARBPROC) (GLenum target, const GLint *v); > +typedef void (APIENTRYP PFNGLMULTITEXCOORD4SARBPROC) (GLenum target, > GLshort s, GLshort t, GLshort r, GLshort q); +typedef void (APIENTRYP > PFNGLMULTITEXCOORD4SVARBPROC) (GLenum target, const GLshort *v); + > +#endif /* GL_ARB_multitexture */ + + + +/* > + * Define this token if you want "old-style" header file behaviour > (extensions > + * defined in gl.h). Otherwise, extensions will be included from > glext.h. > + */ > +#if defined(GL_GLEXT_LEGACY) > + > +/* All extensions that used to be here are now found in glext.h */ > + > +#else /* GL_GLEXT_LEGACY */ > + > +#include > + > +#endif /* GL_GLEXT_LEGACY */ > + > + > + > +/* > + * ???. GL_MESA_packed_depth_stencil > + * XXX obsolete > + */ > +#ifndef GL_MESA_packed_depth_stencil > +#define GL_MESA_packed_depth_stencil 1 > + > +#define GL_DEPTH_STENCIL_MESA 0x8750 > +#define GL_UNSIGNED_INT_24_8_MESA 0x8751 > +#define GL_UNSIGNED_INT_8_24_REV_MESA 0x8752 > +#define GL_UNSIGNED_SHORT_15_1_MESA 0x8753 > +#define GL_UNSIGNED_SHORT_1_15_REV_MESA 0x8754 > + > +#endif /* GL_MESA_packed_depth_stencil */ > + > + > +#ifndef GL_ATI_blend_equation_separate > +#define GL_ATI_blend_equation_separate 1 > + > +#define GL_ALPHA_BLEND_EQUATION_ATI 0x883D > + > +GLAPI void GLAPIENTRY glBlendEquationSeparateATI( GLenum modeRGB, > GLenum modeA ); +typedef void (APIENTRYP > PFNGLBLENDEQUATIONSEPARATEATIPROC) (GLenum modeRGB, GLenum modeA); + > +#endif /* GL_ATI_blend_equation_separate */ > + > + > +/* GL_OES_EGL_image */ > +#ifndef GL_OES_EGL_image > +typedef void* GLeglImageOES; > +#endif > + > +#ifndef GL_OES_EGL_image > +#define GL_OES_EGL_image 1 > +#ifdef GL_GLEXT_PROTOTYPES > +GLAPI void APIENTRY glEGLImageTargetTexture2DOES (GLenum target, > GLeglImageOES image); +GLAPI void APIENTRY > glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES > image); +#endif +typedef void (APIENTRYP > PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES > image); +typedef void (APIENTRYP > PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, > GLeglImageOES image); +#endif + + > +/** > + ** NOTE!!!!! If you add new functions to this file, or update > + ** glext.h be sure to regenerate the gl_mangle.h file. See comments > + ** in that file for details. > + **/ > + > + > +#ifdef __cplusplus > +} > +#endif > + > +#endif /* __gl_h_ */ > diff --git > a/package/opengl/khronos-registry/opengl-registry/opengl-registry-000-run-from-current-dir.patch > b/package/opengl/khronos-registry/opengl-registry/opengl-registry-000-run-from-current-dir.patch > new file mode 100644 index 0000000..4b042ab --- /dev/null > +++ > b/package/opengl/khronos-registry/opengl-registry/opengl-registry-000-run-from-current-dir.patch > @@ -0,0 +1,17 @@ +Makefile: allow running without the current dir in > PATH + > +Signed-off-by: "Yann E. MORIN" > + > +Index: a/Makefile > +=================================================================== > +--- a/Makefile (revision 27863) > ++++ a/Makefile (working copy) > +@@ -24,7 +24,7 @@ > + > + PYFILES = genheaders.py reg.py > + GENOPTS = > +-GENHEADERS = genheaders.py $(GENOPTS) > ++GENHEADERS = ./genheaders.py $(GENOPTS) > + > + # Generate all headers for GL / GLES / WGL / GLX / EGL > + # Different headers depend on different XML registry files > diff --git > a/package/opengl/khronos-registry/opengl-registry/opengl-registry.mk > b/package/opengl/khronos-registry/opengl-registry/opengl-registry.mk > new file mode 100644 index 0000000..0616789 --- /dev/null > +++ > b/package/opengl/khronos-registry/opengl-registry/opengl-registry.mk > @@ -0,0 +1,87 @@ > +################################################################################ > +# +# opengl-registry > +# > +################################################################################ > + > +# Using last revision at which the 'api' directory was *changed*, > which might +# not be the latest revision the repository is currently > at. +OPENGL_REGISTRY_VERSION = 29429 > +OPENGL_REGISTRY_SITE = > https://cvs.khronos.org/svn/repos/ogl/trunk/doc/registry/public/api > +OPENGL_REGISTRY_SITE_METHOD = svn +# The license is MIT, but with > 's/Software/Materials/' so it is not exactly MIT > +OPENGL_REGISTRY_LICENSE = MIT-like +# No license file, license > header in all generated headers + > +OPENGL_REGISTRY_DEPENDENCIES = host-python host-python-lxml \ > + khrplatform-registry > + > +# The registry only installs header files > +OPENGL_REGISTRY_INSTALL_STAGING = YES > +OPENGL_REGISTRY_INSTALL_TARGET = NO > + > +# opengl-registry depends on at least one of those virtual packages, > +# so we can be sure we'll have _DIRS set to non-empty. > +OPENGL_REGISTRY_DIRS = \ > + $(if $(BR2_PACKAGE_HAS_LIBGL),GL) \ > + $(if $(BR2_PACKAGE_HAS_LIBEGL),EGL) \ > + $(if $(BR2_PACKAGE_HAS_LIBGLES),GLES GLES2 GLES3) > + > +# Remove pre-generated files > +define OPENGL_REGISTRY_RM_H > + rm -f $(@D)/GL/*.h > +endef > +OPENGL_REGISTRY_POST_EXTRACT_HOOKS += OPENGL_REGISTRY_RM_H > + > +define OPENGL_REGISTRY_BUILD_CMDS > + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) > +endef > + > +# We need to tweak the generated glx.h to: > +# - include the X11 headers it needs > +# - include glxext.h like mesa3d's one does > +# - define the glxext prototypes > +define OPENGL_REGISTRY_FIX_GLX_H > + awk 'BEGIN { def_proto=1; } \ > + $$0=="#ifdef GLX_GLXEXT_PROTOTYPES" && def_proto==1 { \ > + print "#define GLX_GLXEXT_PROTOTYPES 1 /* Added by > Buildroot */"; \ > + def_proto=0; \ > + } \ > + $$0=="#endif /* GLX_VERSION_1_4 */" { \ > + print ""; \ > + print "/* Added by Buildroot */"; \ > + print "#ifndef GLX_GLXEXT_LEGACY"; \ > + print "#include "; \ > + print "#endif /* GLX_GLXEXT_LEGACY */"; \ > + print "/* End added by Buildroot */"; \ > + print ""; \ > + } \ > + { print; } \ > + $$0=="#define GLX_VERSION_1_0 1" { \ > + print ""; \ > + print "/* Added by Buildroot */"; \ > + print "#include "; \ > + print "#include "; \ > + print "#include "; \ > + print "/* End added by Buildroot */"; \ > + print ""; \ > + } \ > + ' $(@D)/GL/glx.h >$(@D)/GL/glx.h.tmp > + mv $(@D)/GL/glx.h.tmp $(@D)/GL/glx.h > +endef > +OPENGL_REGISTRY_POST_BUILD_HOOKS += OPENGL_REGISTRY_FIX_GLX_H > + > +# Always install gl.h since the others may depend on it, and > +# we are sure at least one OpenGL variants will be installed. > +define OPENGL_REGISTRY_INSTALL_STAGING_CMDS > + $(INSTALL) -D -m 0644 > package/opengl/khronos-registry/opengl-registry/gl.h \ > + $(STAGING_DIR)/usr/include/GL/gl.h > + for d in $(OPENGL_REGISTRY_DIRS); do \ > + for h in $(@D)/$${d}/*.h; do \ > + $(INSTALL) -D -m 0644 $${h} > $(STAGING_DIR)/usr/include/$${d}/$${h##*/} \ > + || exit 1; \ > + done \ > + done > +endef > + > +$(eval $(generic-package)) -- Nicolas Serafini R&D Embedded Software Engineer www.sensefly.com Route de Gen?ve 38 1033 Cheseaux-Lausanne Switzerland