Commit Graph

914 Commits

Author SHA1 Message Date
Matthias Bentrup
99c107dd2f Update core GL specs with functions that exist in extensions too. 2015-12-16 21:18:37 +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
951cdeba89 Mark core functions that have been deprecated/removed. 2015-12-16 21:16:05 +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
60f39ed9fd Pass context profile mask and context flags to init functions.
They will be needed to decide if GL functions are deprecated or removed.
2015-12-16 21:16:02 +10:00
Matthias Bentrup
bac20de049 Get GL extension strings via glGetStringi() if GL version is >= 3.0. 2015-12-16 21:11:58 +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
dd6e034cba Bump GLEW to version 2.0.0, with Core context support, but no MX, for now. 2015-12-06 12:50:41 +10:00
Nigel Stewart
9e66fc86a3 More cmake migrate for removal of MX 2015-12-06 12:49:28 +10:00
Nigel Stewart
be2688de70 For mingw32 cross-builds, link msvcrt library for malloc, free, etc 2015-12-06 12:49:27 +10:00
Nigel Stewart
8b0b5db90c Re-enable Travis build for Core Context mode 2015-12-06 12:49:26 +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
01b33567e5 Workaround for core-context4 MX build break, for now 2015-12-06 12:49:23 +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
c363cdb7c0 Fixup: stdlib.h and string.h needed for Linux gcc 4.8 build. 2015-12-06 12:49:18 +10:00
Nigel Stewart
928d629845 [CoreSupport] Resolve some Mac compilation warnings. 2015-12-06 12:49:17 +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
d89a349a31 [CoreSupport] Linux/GLX touch-ups for ANSI-C with gcc -pedantic compilation flag 2015-12-06 12:49:14 +10:00
Nigel Stewart
e647f55311 [CoreSupport] Linux/GLX touch-ups for extension string parsing and enable lookup. 2015-12-06 12:49:13 +10:00
Nigel Stewart
c996c06b27 [CoreSupport] For OpenGL 3.0 onwards use glGetStringi rather than glGetString(GL_EXTENSIONS) 2015-12-06 12:49:12 +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
99421ea9fe Migrate Travis GLEW build to container-based infrastructure 2015-12-06 12:08:58 +10:00
Nigel Stewart
5ce6248594 Update GLEW website with link to glew-20151117.tgz 2015-12-06 11:47:55 +10:00
Tamas Kenez
66c5229ec2 cmake: allow calling find_package(GLEW) multiple times 2015-11-17 21:27:49 +10:00
Nigel Stewart
c8c0c1e480 OSX install to /usr/local as required by 10.11 El Capitan 2015-11-17 21:23:51 +10:00
Mischa Spiegelmock
f9466c40f8 stick OSX install in /usr/local prefix; 10.11 does not allow writing to /usr/{include,lib} 2015-11-17 21:18:35 +10:00
Nigel Stewart
06891ebb35 OSMesaMakeCurrent for glewCreateContext in GLEW_OSMESA mode. 2015-10-12 20:31:51 +10:00
Gyusun Yeom
c5c60068f7 Add ".rc" files to each libraries and executables for Windows build 2015-10-10 11:40:47 +10:00
Nigel Stewart
fd49b2baff Touch-ups for GLEW_OSMESA build support 2015-10-10 11:33:40 +10:00
Julian Squires
11e24d4a9b Hack in crude OSMesa support
Mostly this is quick, "do nothing" ifdefs when built with
SYSTEM=linux-osmesa, to support the off-screen rendering mode of Mesa in
headless tests.  Support in glewinfo and visualinfo is enough to get
them compile, but insufficient for them to run successfully.
2015-10-10 11:26:03 +10:00
Nigel Stewart
4718d42dde Regal-mode support for cmake build 2015-10-10 11:22:12 +10:00
Nigel Stewart
bf2cd13450 Travis and Makefile refinements - less logging, cmake build coverage in Travis 2015-10-10 11:18:35 +10:00
Nigel Stewart
ba913841ae Migrating README.txt to README.md 2015-10-05 20:12:39 +10:00
Nigel Stewart
c9ec523858 Travis build config added 2015-10-05 17:02:56 +10:00
Nigel Stewart
cbd0dce3c5 GLEW 1.13.0 fixup for log.html 2015-08-10 22:25:34 +10:00
Nigel Stewart
f0067bb115 Bump version to 1.13.0, updated documentation. 2015-08-10 21:46:09 +10:00
Nigel Stewart
9e3e40d974 glxewInit and wglewInit fixup. 2015-08-07 17:10:09 +10:00
Nigel Stewart
470652935c glxewInit and wglewInit for non-MX mode. 2015-08-07 17:04:27 +10:00
Nigel Stewart
d4a0a8401c Refactoring glxewIsSupported and wglewIsSupported for backwards compatibility. 2015-08-07 16:53:47 +10:00
Nigel Stewart
08806061a4 Refactoring wglewInit, glxewInit for better consistency. 2015-08-07 16:41:04 +10:00
Nigel Stewart
54b537afda No longer using deprecated AGL framework on Mac for visualinfo 2015-08-07 12:23:36 +10:00
yy-yyaa
e1815b2729 OpenGL 4.5 omissions - GetnUniformdv, GetnCompressedTexImage, CONTEXT_FLAG_ROBUST_ACCESS_BIT 2015-08-06 12:13:50 +10:00
yy-yyaa
0cc7dd8cc5 OpenGL 4.2 adds TRANSFORM_FEEDBACK_ACTIVE, TRANSFORM_FEEDBACK_PAUSED 2015-08-06 12:04:16 +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
5ae027a8cd Merge pull request #53 from tamaskenez/master
build: cmake-testbuild to work on OS X and with CMake < 3.0
2015-08-05 10:26:52 +10:00