Commit graph

74 commits

Author SHA1 Message Date
Dean Ellis
c7e86d467b Fixed MINIMAL and NO_SYSDRAWING compilation 2015-08-12 11:53:20 +01:00
Fraser Waters
c487bafcd2 [Bind] Remove all C header code from Convert
Cleaning up old C header code from convert, we'll just deal with Khronos
XML files now. If there's a need for parsing C headers we should do that
as a separate tool that either parses and generates the OpenTK XML specs
directly generates Khronos XML specs that can then be parsed by Convert.
2015-06-08 15:38:08 +01:00
Fraser Waters
7427f44bbe Ask for web auth if required
Ask for authentication to download private Khronos files.
2015-03-01 14:44:28 +00:00
Fraser Waters
d7c21bd3f5 Remove spec support from converter
Khronos stopped supporting .spec files in 2013. They're now over a year
old without support. As such it's not worth us continuing to support
them either.
2015-03-01 14:25:30 +00:00
thefiddler
978e2ccebb [Convert] Update to v4.5 by default 2014-09-10 23:29:30 +02:00
thefiddler
4bde589225 Fixed compilation warnings on Mono 3.4.0 2014-07-21 17:55:12 +02:00
Fraser Waters
366eb921a7 Fix compile warnings in Converter. 2014-02-25 10:31:17 +00:00
Stefanos A
dfd683ef49 Merge master into no-reflect 2013-12-15 16:36:37 +01:00
Stefanos A.
a4f59f7384 Split binaries for library and supporting tools
Tools now go to the Binaries/Tools/[Debug|Release] directory. OpenTK
remains at BInaries/OpenTK/[Debug|Release].

Mono.Cecil and IKVM now reside under the Dependencies/managed/
directory.
2013-12-05 18:43:47 +01:00
Stefanos A
ac65eb7b09 Added MonoDevelop artifacts 2013-11-27 00:05:26 +01:00
Stefanos A.
7d74c37d2a Added usage example for new xml specs 2013-11-07 17:18:12 +01:00
Stefanos A
08823f5d5b Maintain api version information on converted signatures
Signatures were split into 4 APIs before (gl, glcore, gles1, gles2).
However, gles2 contains bindings for both version 2.0 and 3.0. The
version information is now maintained, which allows us to cut down on
the number of generated enumerations.
2013-11-03 20:30:43 +01:00
Stefanos A
346547331a Improved detection of deprecated tokens 2013-11-03 17:58:28 +01:00
Stefanos A
0d90bae615 Change debug commandline
The default commandline parameters will now automatically download and
convert the upstream gl.xml from the public Khronos repository.
2013-11-03 12:37:56 +01:00
Stefanos A
0deeeeb84c Enum groups are now added to all APIs
Enum groups are also referenced by OpenGL ES commands. They are now
added to all APIs by default.
2013-11-03 12:19:49 +01:00
Stefanos A
e7cb7cdf34 Convert "String *" to "String"
As a sideeffect of the group element definition, the parser will
convert a ptype of "const GLubyte *" with a group of "String" to
"String *", which is not the correct result. GLXmlParser will now
detect and fix this condition that affects the GetString function of
families.
2013-11-03 01:22:44 +01:00
Stefanos A.
61a6a2bec0 Mark signatures.xml version
GLXmlParser now explicitly marks its output with version="2", while
the older .spec parsers produce version="1" signatures. The binding
generator uses the newer API to support multiple apinames in the same
file.
2013-11-02 23:40:09 +01:00
Stefanos A.
cc8f9aae4f Refactor apiname extraction
A dedicated function is now used for getting the apiname of an enum or command element. This reduces code duplication.
2013-11-02 23:37:34 +01:00
Stefanos A.
bfbc37fb92 Remove deprecated elements from glcore
Deprecated elements are marked as such in the compatibility profile and
are completely absent from the core profile. This is in-line with the
new glcore headers from Khronos.
2013-10-31 00:20:59 +01:00
Stefanos A.
51cb1f02db Improve sorting; remove enum-function distinction
Both enums and functions are now stored under a single <add> element.
Their ordering is now maintained by sorting over all possible
attributes.
2013-10-29 19:35:35 +01:00
Stefanos A.
faa3330375 Explicitly merge functions
Some functions are part of multiple features or extensions. For
documentation purposes, we need to correctly merge their attributes.
2013-10-29 09:32:09 +01:00
Stefanos A.
8f1c3a2d08 Allow comparison of function elements
This allows us to store both enums and functions in the same tree.
2013-10-28 14:15:58 +01:00
Stefanos A.
3eaffc5570 Stable sort and correct extension names
Use a stable sort for generated elements, in order to make the generated
file work better with version control. Extension names are now extracted
directly from function names - solves issues with functions that are
defined in multiple extensions.
2013-10-28 14:15:17 +01:00
Stefanos A.
e0664993bb Multi-API support for XML spec parser
The XML spec parser now generates signatures for multiple APIs (gl,
glcore, gles1, gles2). Additionally, it supports per-token deprecation
attributes.
2013-10-27 23:47:52 +01:00
Stefanos A.
5cc845713d Improved extension detection in .spec parser.
Instead of using a hardcoded list of extensions, the parser will now
use a regex to detect extension names. This gives better results on
new specs without manual editing.
2013-10-27 01:24:04 +02:00
Stefanos A.
d992f9474f Fixed the parsing of extensions. 2013-10-26 00:07:00 +02:00
Stefanos A.
b15066bd03 Strip struct and const identifiers from the output. This matches the
old .spec files.
Group attributes in parameters no longer overwrite the pointer order
or const-ness of the parameter.
2013-10-25 08:55:12 +02:00
Stefanos A.
d4c1cb1bb3 Improved grouping of enumerations. Fixed missing extension
enumerations.
2013-10-24 20:56:28 +02:00
Stefanos A.
780d5e60c2 Return type should be defined in the "type" attribute of the returns
element.
2013-10-24 18:42:52 +02:00
Stefanos A.
2378bef21e Tokens in "All" enum should have a name of "token" not "enum". 2013-10-24 18:41:09 +02:00
Stefanos A.
0cb722c908 Implemented translation of function attributes (api, category,
deprecated, extension, version).
2013-10-24 18:32:09 +02:00
Stefanos A.
88438102a2 Initial implementation of new XML spec parser. 2013-10-24 17:19:52 +02:00
Stefanos A
967a6514de Merge branch 'master' into gl4 2013-10-22 17:03:39 +02:00
Stefanos A.
df8626740a Fixed exception while parsing the 4.3 specs.
This was caused by changes in the .spec file definitions between 4.1
and 4.3.
2013-10-22 11:58:23 +02:00
Stefanos A.
992ae7947a Added usage example. 2013-10-22 11:40:41 +02:00
thefiddler
581919cb1c Initial work on new gl xml spec support. 2013-10-21 18:28:01 +02: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
Robert Rouhani
3a9dfc62ad Fixed extra endregion directive that prevented compilation.
Fixed some warnings about csproj files.
2013-01-16 22:11:18 -08:00
Andy Korth
4230c6b4f0 Added Robmaister's Matrix3 implementations 2013-01-03 10:41:56 -06:00
the_fiddler
072c815cdc Updated Generator.Convert documentation to match what the tool actually does. 2011-07-26 11:54:09 +00:00
the_fiddler
8e089cc1c3 Merged gl4 branch into trunk 2010-12-04 21:51:40 +00:00
the_fiddler
ce85a5f481 * Source/OpenTK/OpenTK.csproj:
* Source/Bind/Generator.Bind.csproj:
* Source/Examples/OpenTK.Examples.csproj:
* Source/GLControl/OpenTK.GLControl.csproj:
* Source/Converter/Generator.Convert.csproj:
* Source/Build.UpdateVersion/Build.UpdateVersion.csproj: Normalized
"Documentation" configuration with "Release" configuration.
2010-11-02 17:39:43 +00:00
the_fiddler
9d562fb683 All projects now read common AssemblyInfo items from GlobalAssemblyInfo.cs. The various AssemblyInfo.cs files now only contain project-specific information. Assembly versions are now controlled by Build.UpdateVersion. 2010-10-04 21:37:33 +00:00
the_fiddler
1f143285c2 Added keyfile and strong-named all projects. 2010-10-04 14:39:42 +00:00
the_fiddler
10f333c24f Added Generator.Bind and Generator.Convert projects.
Fixed msbuild compilation by removing the 3.5 bootstrap ItemGroups. (VS2010 added those on its own - hey, we are targeting v2.0 and we are not using ClickOnce!)
2010-10-03 12:30:39 +00:00
the_fiddler
1f4b5be7d0 Synced trunk with 1.0 branch. 2010-10-02 18:52:34 +00:00
the_fiddler
af2d77cdc5 Updated version numbers in preparation for release. 2009-11-01 23:07:38 +00:00
the_fiddler
041c491f19 Fixed an issue where "const unsigned [type] [pointer]" parameters where not parsed correctly. Solves issue [#1300]: "[OpenCL] Possible bug at CL.CreateProgramWithBinary". 2009-11-01 19:15:44 +00:00
the_fiddler
792c4e3645 Merged es20 branch back into trunk. 2009-10-28 23:09:25 +00:00
the_fiddler
201dfab1f3 * ESCLParser.cs: Fixed long bitfield detection. 2009-10-09 06:01:02 +00:00