Commit graph

17 commits

Author SHA1 Message Date
thefiddler c6e8991872 [Bind] Allow multiple overrides files
Multiple overrides files allow us to split overrides by extension,
simplifying maintenance.
2014-09-02 13:04:13 +02:00
thefiddler bd339523ab [Bind] Do not generate DllImports
These break dynamic loading of OpenGL ES and bloat OpenTK.dll with
duplicated strings. The new extension loading mechanism is now fast
enough to make DllImports unnecessary.
2014-04-26 14:22:37 +02:00
thefiddler 774ebd1df7 [Bind] Do not generate slots for OpenGL <= v1.1
We can use DllImports for OpenGL functions <= v1.1 on all platforms,
including Windows. This allows us to reduce the number of required
GetProcAddress calls by 474, reducing startup time and memory
consumption.

This setting can be turned off through Settings.Legacy.UseDllImports
and UseWindowsCompatibleGL.
2014-04-25 12:14:28 +02:00
thefiddler bd9f760f4b [Bind] Merge GL2 and GL4 documentation into one 2014-03-30 10:29:50 +02:00
thefiddler 67b0ead68b [Bind] Process documentation from subdirectories
Instead of using xslt, we now process the documentation in code. This
allows us to fix mismatches from e.g. invalid parameter names that
sometimes creep in the specs.
2014-03-28 20:08:38 +01:00
Stefanos A. c83d6ad530 DefaultOutputPath now matches OpenTK source tree
By default, generated bindings are placed in the source tree of
OpenTK. This can be overriden via a commandline switch.
2013-11-03 12:13:35 +01:00
Stefanos A e8f46c87f6 Do not override user defined output files
The generator will now change the default output files to match its
bindings (e.g. GL vs ES), but the user is now able to override this
option.
2013-11-03 01:27:10 +01:00
Stefanos A. e1f064b634 Updated IBind implementations to avoid singletons
IBind implementations must now store explicit references to Settings,
GLTypes and CSTypes instances. This allows us to use multiple
configurations in the same process.
2013-11-01 09:25:31 +01:00
Stefanos A. a3bd227e20 Cleaned up Generator class tree
This significantly reduces the amount of duplicated code between
Generator implementations.
2013-10-31 00:18:07 +01:00
thefiddler 8dcb8601a2 Normalized line endings
Hopefully this is the first and last time we have to do this.
2013-10-11 01:58:54 +02:00
the_fiddler 5f4487e87b Added support for different per-language typemaps. 2011-12-02 13:12:53 +00:00
the_fiddler 0eef1c3629 Saner handling of various settings.
Improved C++ spec writer (still needs a lot of work).
2010-12-03 12:06:36 +00:00
the_fiddler c412f93700 Respect the user's output path/file settings. 2010-12-03 11:48:38 +00:00
the_fiddler 2dd61c6afd Moved overrides file to Settings class. 2010-12-03 09:02:55 +00:00
the_fiddler c3bfa7dc9a Moved output filenames to Settings class. 2010-12-02 21:58:49 +00:00
the_fiddler 0ce332b318 Refactored spec reading / writing functionality into its own classes.
Removed legacy spec reader.
2010-12-02 21:36:05 +00:00
the_fiddler 4e8c643c39 Added GL4Generator that utilizes xml files instead of spec files.
Made GL4Generator the default.
Added FuncProcessor that will contain all function transforms.
2010-10-12 17:39:14 +00:00