Ignore some temp files
[cl-glfw.git] / GENERATOR
blob4802504dafbbf808cad56459f79373ac88302659
2 How the generators work:
4 generators/make-opengl-bindings.rb
5   The top-level user-interface script for generating the OpenGL bindings,
6 downloads/updates the gl.tm, gl.spec, enum.spec and enumext.spec from www.opengl.org website.
7 Could probably have written this in shell script, but whatever, need ruby anyway for the next
8 script it invokes:
10 generators/sexpize-gl-spec.rb
11   This parses the downloaded spec files and spits them out in s-expression form in one 
12 big file src/gl.spec.lisp, nothing fancy.
14 generators/make-bindings-from-spec.lisp
15   This is the last thing invoked from make-opengl-bindings.rb and does the bulk of the work.
16 It takes the src/gl.spec.lisp, sorts out the functions according to categories and extensions
17 and produces the final lisp and extension asd files:
18   lib/opengl-type-map.lisp: for the mappings of type-names in the spec to actual types we use,
19   lib/opengl-package.lisp: inserting the export list,
20   lib/opengl.lisp: the main 1.0 function definitions,
21   lib/opengl-version_1_1.lisp,
22   lib/opengl-version_1_2.lisp: for each of the versions found
23   lib/opengl-<extension-name>.lisp: for each extension found.
25 lib/scaffolding.lisp
26   This contains the macros: defglfun and defglextfun for resolving type maps and providing
27 automatic type conversions.