Commit Graph

157 Commits

Author SHA1 Message Date
Matthias Bentrup
9367af5ed4 Fix forward compatible compatibility profiles.
The compatibility functions have not only been un-removed, but also
un-deprecated, so they should be present in the forward-compatible
compatibility profile.
2015-12-16 21:18:38 +10:00
Matthias Bentrup
0c1a32c5e4 Add deleters to functions that exist both in core and extensions.
Parts of later GL versions are often published as extension too, so
these functions may be queried twice.
2015-12-16 21:16:06 +10:00
Matthias Bentrup
ca4cfd556f Add optional deleter expression to GL function definitions.
The expression follows the function definition separated by a ~ character,
and is a simple boolean expression built with operators && and || from the
elementary expressions "core" "forward" or a GL version number like "3.2".

Parentheses are not supported, && binds stronger than || and may be ommited,
i.e. "3.2 core" is equivalent to "3.2 && core".
2015-12-16 21:16:04 +10:00
Matthias Bentrup
e935fcad83 Load core function pointers before checking the extension string.
For GL versions since 3.0 the glGetString() function is deprecated or removed,
and the right way to query extensions is glGetStringi(), but that has to be
loaded first.

Also instead of searching the whole extension string n times lookup the
known extensions in a static hash table. The hash table is built with
the gperf utility.
2015-12-16 21:10:52 +10:00
Nigel Stewart
a4aa9b2717 Remove MX support due to the complexity of supporting both MX and Core contexts 2015-12-06 12:49:24 +10:00
Nigel Stewart
6cea54733a [CoreSupport] Use 4th line of extension specification to reused extensions
Such as OpenGL 3.0 reusing ARB_vertex_array_object
Implement reused lists for OpenGL 3.0, 3.1 and 3.2 so far
2015-12-06 12:49:21 +10:00
Nigel Stewart
0fcb9a3061 Skip #ifdef block for extensions detected purely from extension string. 2015-12-06 12:49:19 +10:00
Nigel Stewart
41a40b01e9 [CoreSupport] Tab indentation for perl scripts 2015-12-06 12:49:16 +10:00
Nigel Stewart
d33d3b5b0f [CoreSupport] Linux/GLX touch-ups for GL 3.0 + extension detection, GLX. 2015-12-06 12:49:15 +10:00
Nigel Stewart
731b1e6602 [CoreSupport] Represent the extension string(s) as an array of GLboolean - _glewGetExtensionString and _glewGetExtensionEnable
glewinfo output is identical.
TODO core context glGetStringi support.
TODO MX support.
2015-12-06 12:49:11 +10:00
Nigel Stewart
1da7dd6e0a [CoreSupport] Add code generation for sorted array of extension strings, which can index into array of pointers of extension enable flags. 2015-12-06 12:49:10 +10:00
Nigel Stewart
ea763af989 [CoreSupport] Add make_initd.pl code generator for declaring all the _glewInit functions
This allows the initializers to call each other according to the interdependencies.
2015-12-06 12:49:09 +10:00
Nigel Stewart
754e051049 Specification filtering refinement - omit contacts, include contacts and notice 2015-08-06 10:43:12 +10:00
Nigel Stewart
d80fd5514f Specification filtering refinement - no overview or issues sections 2015-08-06 10:33:23 +10:00
Nigel Stewart
fda28dbfb0 [CoreSupport] Tab indentation for perl scripts 2015-06-13 19:44:35 +10:00
Nigel Stewart
0e88d39f4a Leave extraneous #ifdef blocks 2015-06-13 10:18:41 +10:00
Nigel Stewart
9580ab4226 [CoreSupport] Whitespace fixup for make_def_var.pl 2015-06-13 09:59:38 +10:00
Nigel Stewart
06db711223 Merge pull request #19 from omniavinco/master
Sort the enums in a stable manner
2014-10-24 21:05:45 +10:00
Nigel Stewart
d32f4278e2 Tidy-up for .gitattributes and update_ext.sh 2014-10-24 21:03:11 +10:00
Frank Park
a790eb8129 Fixed a bug with shell script and added .gitattributes
Update_ext.sh does not utilize the blacklist correctly with cygwin due
to the argument -name in find is not quoted. Argument *.txt has been
changed to "*.txt" to fix the issue.

Also, it is currently possible for windows users to pull the repo in
CRLF format which destroys the scripts and source files. .gitattributes
were added to prevent this issue.
2014-10-19 01:59:48 -04:00
omniavinco
933e322dd5 Sort the enums in a stable manner 2014-10-16 23:46:52 +09:00
Nigel Stewart
d99211a9d3 Filtering for GL_NV_framebuffer_mixed_samples extension added. 2014-10-06 21:53:58 +10:00
Nigel Stewart
d04fd20cec Touch-up: Sort the enums (tokens) in a stable manner for consistency in include files. 2014-09-27 11:34:59 +10:00
Nigel Stewart
26be54cb1a Fixups for GL_KHR_robustness support. 2014-09-18 20:51:56 +10:00
Nigel Stewart
9b5567b4eb Add initial OpenGL 4.5 support and relevant extensions, version bump to 1.11.0 2014-08-12 00:06:56 +10:00
Nigel Stewart
9c5bc25386 Fixups for specifiation URLs. 2014-08-07 22:33:18 +10:00
Nigel Stewart
3739be33b0 Sort the enums (tokens) in a stable manner for consistency in include files. 2014-07-26 09:26:17 +10:00
Nigel Stewart
a062a5f0d2 Add filter_spec Python script for filtering OpenGL specification files. 2014-07-26 09:25:52 +10:00
Nigel Stewart
4fc4327945 Eliminate the internal use of CONST_CAST, to avoid gcc warnings with -Wcast-qual flag.
https://github.com/nigels-com/glew/issues/5
2014-07-14 17:53:21 +10:00
Nigel Stewart
6c34d03260 Fixup: GL_AMD_gpu_shader_int64 reuses NV_gpu_shader5 interface. 2014-07-12 15:13:47 +10:00
Nigel Stewart
1aff81c823 For GLEW Bug #227 - Use GLAPIENTRY for GLDEBUGPROC* and leave GLAPIENTRY for application code to use. 2014-02-19 18:04:47 -06:00
Nigel Stewart
5224e88ca9 For GLEW Bug #242 - glVertexArrayVertexAttribDivisorEXT missing 2014-02-06 11:55:52 -06:00
Nigel Stewart
b96cf5f05e It appears that upstream are preferring void over GLvoid. 2014-01-08 17:22:37 -06:00
Nigel Stewart
86cb03dd3d For GLEW Bug #233 - GL_KHR_debug: GLDEBUGPROC incorrectly defined 2013-12-09 16:48:12 -06:00
Nigel Stewart
87ce8715b2 Add support for OpenGL 4.4 2013-07-21 21:00:30 -05:00
Nigel Stewart
7b433cd402 auto/bin/update_registry.sh isn't used anymore. 2013-07-21 01:40:05 -05:00
Nigel Stewart
b56f8e70e8 Revert "Use git instead of clone to download OpenGL registry."
This reverts commit 974679c6d8.
2013-07-20 22:08:50 -05:00
Nigel Stewart
18ae6909fe Fixup URLs for ANGLE and REGAL extensions. 2013-07-16 11:00:52 -05:00
Nigel Stewart
91d0292a03 Add support for parsing ANGLE and REGAL specs from glew branch of git repo. 2013-07-16 10:54:11 -05:00
Nigel Stewart
974679c6d8 Use git instead of clone to download OpenGL registry.
Core-profile extension query patch by Carsten Neumann
https://sourceforge.net/p/glew/bugs/174/
2013-07-14 13:02:16 -05:00
Nigel Stewart
477c99177a Filter out DSA fp64 functions - not widely available. 2013-04-02 12:27:52 -05:00
Nigel Stewart
db6dbecb7a For #212 BaseVertex family: invalid type of "indices" parameter
Convert void* to GLvoid * in function parameters.
TODO - const and void**
2013-03-18 22:22:53 -05:00
Nigel Stewart
de35ee0215 Fixup for filter_gl_ext.sh 2012-10-24 21:49:57 -05:00
Nigel Stewart
e2036b5afd Add experimental OpenGL ES extension support, disabled by default.
Move registry into registry/gl, move extensions into extensions/gl.
This allows room for registry/gles and extensions/gles.
Extension filtering moved from update_ext.sh to filter_gl_ext.sh, different logic for OpenGL ES.
2012-10-24 21:49:42 -05:00
Nigel Stewart
81b477d877 Remove various duplicate enums. 2012-10-24 21:49:09 -05:00
Nigel Stewart
027efdea2a Resolve bug #200 glGetPointerv of GL_KHR_debug hides OpenGL 1.1. 2012-09-17 18:32:31 -05:00
Nigel Stewart
31f9a387e2 Fixup for GLfixed as part of ES2_compatibility. 2012-08-19 12:07:58 -05:00
Nigel Stewart
62d2c87d5a Fixup for deleting extensions that disappeared from opengl.org 2012-08-14 18:43:08 -05:00
Nigel Stewart
38a3d85754 Ignore enums that end in ? - these values are not specified or known. 2012-08-07 22:06:41 -05:00
Nigel Stewart
4c1a2460f3 Add OpenGL 4.3 support, and new extensions. 2012-08-06 09:17:50 -05:00