On Tue, Jun 28, 2011 at 3:35 AM, Bart Botta 00003b@gmail.com wrote:
The "spec" that cl-opengl parses is a more-or-less machine readable file available at http://www.opengl.org/registry/, not the actual specification. I'm not aware of anything similar for ES, so if the functions are not included in the main .spec files some other strategy would be required.
Right, I was assuming that ES would also have a .spec file. That doesn't seem to be the case.
I'd probably just parse the .h files to get a rough translation then edit it by hand from there, if the versions don't overlap as much as desktop GL.
The set of egl* functions seems small enough to take this route. I'd probably even skip the .h parsing step.
The remaining questions are: do we want a cl-opengl-es-1.1 system that only loads the relevant bits? (As opposed to defining the egl* bits then loading all of the remaining cl-opengl.) If so, what would be the best way to do it?
One solution would be to list the ES's gl* functions somewhere in our spec directory and have the spec parser output those definitions to a separate directory/system, let's call it cl-opengl-base. Both cl-opengl and and cl-opengl-es-1.1 would then depend on cl-opengl-base.
Simon, does this look like a sane approach?