Commit graph

196 commits

Author SHA1 Message Date
Bertrand Lorentz b2fb84d14b Clean up .gitignore files 2013-10-13 18:38:33 +02:00
Bertrand Lorentz 2d83fb3073 Move the fixup tool from the parser to the generator folder
The parser will be going away at some point in the future, but we
will still need the fixup step. And the fixup step is really more
of a preliminary step for the generator anyway.
2013-10-13 17:04:56 +02:00
Stephan Sundermann aaa41cd095 fixup: added copy-node metadata tag 2013-10-09 18:04:47 +02:00
Age Bosma 757dafa156 Add support for class const fields 2011-09-26 13:52:12 +02:00
Olivier Dufour f0579eb53d parser: Add property support for ginterface 2011-08-01 21:18:02 +02:00
Bertrand Lorentz 63db97e9ad parser: Handle the G_DEFINE_TYPE_EXTENDED macro
G_DEFINE_TYPE_EXTENDED is the general macro for type implementations, on
which G_DEFINE_TYPE_WITH_CODE is based. Handle it just like
G_DEFINE_TYPE_WITH_CODE.

Reparse the API with that change, which marks a few classes as
implementing GtkStyleProvider.
2011-07-31 12:32:43 +02:00
Bertrand Lorentz ad74c64345 parser: Fix handling of initialization functions for interfaces
With the new G_DEFINE_INTERFACE macro, the interface initialization
function is named *_default_init, so we need to handle that like
*_base_init and *_class_init.

Reparse gtk/gtk-api.raw and gio/gio-api.raw. This creates some new
signals that were previously incorrectly reported as virtual methods,
and also adds some properties.
2011-07-08 20:12:07 +02:00
Mike Kestner 567e3c81e0 struct padding member regex fix
* gtk/gtk-api.raw: reparse
* parser/gapi2xml.pl: match padding_n for padding members too to catch
   GtkSwitch padding vm slots.
2011-04-20 17:32:55 -05:00
Mike Kestner 1752fca097 Hush versioned scripts generally 2011-04-06 10:53:53 -05:00
Mike Kestner 35b60b19eb Ignore volatile on func param parse.
* gio/gio-api.raw: reparse
* parser/gapi2xml.pl: ignore volatile keyword on function parameters.
2011-02-11 14:04:11 -06:00
Mike Kestner 589681516f Strip volatile keywords in field parse.
* gio/gio-api.raw: reparse
* parser/gapi2xml.pl: strip volatile keyword from field declarations
before parsing them.
2011-02-11 10:07:24 -06:00
Mike Kestner 34c0ecbcf7 The rest of the first pass.
*.*: Stubbing and tweaking and cajoling and disabling to get
the first successful build of 3.0 bindings.
2011-02-08 22:15:37 -06:00
Mike Kestner 32737dc946 Parse G_DEFINE_BOXED_TYPE
* parser/gapi_pp.pl: pass G_DEFINE_BOXED_TYPE macros thru
* parser/gapi_pp.pl: add G_DEFINE_BOXED_TYPE handling
2011-01-31 08:51:10 -06:00
Mike Kestner a1f9eef0b8 Fix for some whitespace parsing in Funcs.
* parser/gapi2xml.pl: regex updates to support a bit more whitespace.
2011-01-30 17:06:58 -06:00
Mike Kestner 6a4e3bafac struct function pointer field regex fix.
* parser/gapi2xml.pl: match when there is whitespace after the
function name within the parens of a struct field declaration.
2011-01-22 10:37:36 -06:00
Mike Kestner 2ffb49b6c3 Pass typedef struct _Foo Foo; through gapi_pp.
* parser/gapi_pp.pl: in source files, still pass simple struct typedefs
through to support parsing gio 2.27.90.  No idea why they are hiding
signal vm declarations in gdbusauthobserver.
2011-01-09 11:27:15 -06:00
Mike Kestner 3e0df87118 Ignore G_GNUC_INTERNAL macros.
2010-11-21  Mike Kestner  <mkestner@novell.com>

	* parser/gapi_pp.pl: ignore G_GNUC_INTERNAL macro usage
	while parsing C code.
2010-11-21 21:27:45 -06:00
Mike Kestner fe2d4c311a Flatten the bootstrap and remove glade-sharp
2010-11-21  Mike Kestner  <mkestner@novell.com>

	* removed the glade dir from the build since libglade is
	no longer supported in gnome3.  removed the gapi2-compat stuff
	since it doesn't make much sense now.  Removed the bootstrap
	mechanism since we are unlikely to be releasing multiple API
	versions from the same tree going forward.  The build is now a
	straight autogen.sh like most autotools projects.
2010-11-21 21:18:06 -06:00
Mike Kestner a948792be0 2009-11-30 Mike Kestner <mkestner@novell.com>
* */Makefile.am: standardize on - options over / options for 
	consistency.  Also assists with build on msys. [Fixes #550667]

svn path=/trunk/gtk-sharp/; revision=147125
2009-11-30 20:40:34 +00:00
Christian Hoff 3000674ebd 2009-07-24 Christian Hoff <christian_hoff@gmx.net>
* parser/Makefile.am: Another build fix. Sigh...

svn path=/trunk/gtk-sharp/; revision=138630
2009-07-24 13:47:59 +00:00
Christian Hoff c969175187 2009-07-24 Christian Hoff <christian_hoff@gmx.net>
* generator/gapi3-codegen.in, parser/gapi3-fixup.in, parser/gapi3-parser.in:
	"svn add" a few missing files to resurrect the build.

svn path=/trunk/gtk-sharp/; revision=138603
2009-07-24 05:19:17 +00:00
Christian Hoff a4331a40ed 2009-07-23 Christian Hoff <christian_hoff@gmx.net>
* configure.in.in, Makefile.include: Bump up GAPI version to 3.0.
	* bootstrap-2.14: Renamed to bootstrap-for-the-insane, added message
	of doom.	[Fixes #521449]

svn path=/trunk/gtk-sharp/; revision=138572
2009-07-23 17:18:03 +00:00
Mike Kestner 9d5b3e97be 2009-04-25 Mike Kestner <mkestner@novell.com>
* parser/gapi-fixup.cs: add remove-attr and change-node-type
	fixup rules.  [Fixes #494194]

svn path=/trunk/gtk-sharp/; revision=132676
2009-04-26 03:08:54 +00:00
Christian Hoff 291ee61b2d 2009-04-13 Christian Hoff <christian_hoff@gmx.net>
Add support for virtual methods(vm) to the generator.

	* parser/gapi2xml.pl: Generate a class_struct element with
	all members of the class structure. Dump the first (instance)
	parameter for signal and vm elements. Bump up parser version.
	* generator/GObjectVM.cs: Added. Support for GObject virtual methods.
	* generator/DefaultSignalHandler.cs: Signal specific part of vm
	generation.
	* generator/InterfaceVM.cs: New class for interface vms.
	* generator/ObjectBase.cs: Parse the class struct.

svn path=/trunk/gtk-sharp/; revision=131604
2009-04-13 17:44:48 +00:00
Christian Hoff 01ed1a5e3e 2009-03-19 Christian Hoff <christian_hoff@gmx.net>
* parser/gapi2xml.pl: Introduce a "parser_version" attribute.
	* generator/GenBase.cs: Implement a property to access the
	attribute's value.

svn path=/trunk/gtk-sharp/; revision=129807
2009-03-19 18:13:01 +00:00
Mike Kestner 146deaa38c 2009-01-04 Mike Kestner <mkestner@novell.com>
* *: update to 2.14.  parser support for GSEALed fields. svn build
	now uses bootstrap-2.14.  integrate gio-sharp module.  

svn path=/trunk/gtk-sharp/; revision=122402
2009-01-04 22:29:56 +00:00
Mike Kestner 74105a1c80 2008-11-05 Mike Kestner <mkestner@novell.com>
* atk/atk-api-2.12.raw: regen
	* gtk/gtk-api-2.12.raw: regen
	* generator/Signal.cs: reinstate old custom marshaler generation and
	generate custom marshaling when 'manual' attr is set.
	* parser/gapi2xml.pl: set manual attr on sigs that have G_TYPE_POINTER
	parameters since the generic closure can't cope with them.

svn path=/trunk/gtk-sharp/; revision=118068
2008-11-06 02:23:21 +00:00
Mike Kestner 621b39b531 2008-05-15 Mike Kestner <mkestner@novell.com>
* kill the makefile.win32 build system.  it has been unmaintained
	for quite some time, replaced by the auto* build in cygwin.

svn path=/trunk/gtk-sharp/; revision=103308
2008-05-15 17:36:46 +00:00
Mike Kestner d1dbdf0316 2008-05-08 Mike Kestner <mkestner@novell.com>
* atk/atk-api-2.12.raw: reparsed.
	* gdk/gdk-api-2.12.raw: reparsed.
	* gtk/gtk-api-2.12.raw: reparsed.
	* parser/gapi2xml.pl: fixes for signal and vm order needed for 
	proper interface struct layout. [Fixes #386802]

svn path=/trunk/gtk-sharp/; revision=102848
2008-05-08 23:23:49 +00:00
Mike Kestner a3f799ceb0 2008-04-30 Mike Kestner <mkestner@novell.com>
* parser/gapi2xml.pl: put class struct field in the signal elems.
	* atk/atk-api-2.12.raw:
	* gdk/gdk-api-2.12.raw:
	* gtk/gtk-api-2.12.raw:

svn path=/trunk/gtk-sharp/; revision=102238
2008-04-30 19:42:11 +00:00
Mike Kestner 6c5f622c43 2007-12-17 Mike Kestner <mkestner@novell.com>
* parser/gapi_pp.pl: parse 'typedef struct\n{' properly.

svn path=/trunk/gtk-sharp/; revision=91495
2007-12-17 21:14:30 +00:00
Mike Kestner 778f049caa 2007-12-11 Mike Kestner <mkestner@novell.com>
* parser/gapi2xml.pl: fix tightloop in single-line prop declarations.

svn path=/trunk/gtk-sharp/; revision=91136
2007-12-12 02:53:11 +00:00
Mike Kestner 029e85265a 2007-11-29 Mike Kestner <mkestner@novell.com>
* parser/gapi_pp.pl: collapse embedded multiline function fields 
	to a single line.  [Fixes #344853]

svn path=/trunk/gtk-sharp/; revision=90461
2007-11-30 01:58:10 +00:00
Mike Kestner eeabe5a15e 2007-07-26 Mike Kestner <mkestner@novell.com>
* parser/gapi2xml.pl : beef up error message for signal vm parse.
	[Fixes #82149]

svn path=/trunk/gtk-sharp/; revision=82826
2007-07-26 21:01:33 +00:00
Mike Kestner cdf0658754 2007-07-20 Mike Kestner <mkestner@novell.com>
* gtk/gtk-api-2.10.raw : refresh.
	* parser/gapi_pp.pl : combine lines that end in '\' before sending
	them through the pattern matching.  [Fixes #79214]

svn path=/trunk/gtk-sharp/; revision=82359
2007-07-20 15:32:38 +00:00
Wade Berrier 3e3e0f1469 * generator/gapi2-codegen.in:
* parser/gapi2-fixup.in:
* parser/gapi2-parser.in:
Don't use 'which' anymore, as it doesn't work in all caes (ie:
when symlinks are
in the way)


svn path=/trunk/gtk-sharp/; revision=76653
2007-05-03 22:36:34 +00:00
Mike Kestner eab29b501e handle private virtual methods
svn path=/trunk/gtk-sharp/; revision=73648
2007-03-02 18:25:22 +00:00
Mike Kestner 8214e5ccd4 2007-01-09 Bart Deleye <bart.deleye@gmail.com>
* parser/gapi_pp.pl : regex fix for tinymail parse.

svn path=/trunk/gtk-sharp/; revision=70734
2007-01-09 19:47:28 +00:00
Mike Kestner a3efa762f5 2006-08-10 Mike Kestner <mkestner@novell.com>
* parser/gapi2xml.pl : class parsing regex needs to handle protected
	comments too.

svn path=/trunk/gtk-sharp/; revision=63593
2006-08-10 15:06:05 +00:00
Mike Kestner a5d696a8b0 2006-08-01 Mike Kestner <mkestner@novell.com>
* gtk/gtk-api-2.10.raw : reparsed
	* parser/gapi_pp.pl : put a newline after G_DEFINE_TYPE macros
	on the output and do a next if we shouldn't fall out of the 
	branch.

svn path=/trunk/gtk-sharp/; revision=63232
2006-08-01 22:20:54 +00:00
Mike Kestner 6abcf29dfa 2006-07-27 Mike Kestner <mkestner@novell.com>
* bootstrap*: kill the 2.4/2.6/2.8 straps, they are on a 
	branch now. update 2.10 strap for new apis.
	* sources/Makefile.am : parse 2.16 sources for gnome libs.
	* sources/gtk-sharp-2.10-sources.xml : ditto.
	* parser/gapi-parser.cs : explicitly use an indented XML writer.
	* gnomevfs/gnome-vfs-api-2.16.raw: regen
	* gnomevfs/Gnomevfs.metadata: some build fixes
	* gnome/gnome-api-2.16.raw: regen
	* gnome/Gnome.metadata: some build fixes
	* sample/PrintSample.cs: remove new Gtk/Gnome ambiguities.

svn path=/trunk/gtk-sharp/; revision=63078
2006-07-28 15:39:10 +00:00
Mike Kestner bcf941851d 2006-07-15 Mike Kestner <mkestner@novell.com>
* parser/gapi2xml.pl : regex fix needed for vfs 2.15.3 parse.

svn path=/trunk/gtk-sharp/; revision=62632
2006-07-15 05:22:11 +00:00
Mike Kestner 98b4307aba 2005-12-10 Mike Kestner <mkestner@novell.com>
* gtk/gtk-api-2.8.raw : regenerated.
	* gtk/IconView.custom : manually implement a new interface method.
	* parser/gapi_pp.pl : more general G_DEFINE_TYPE_WITH_CODE parsing
	implementation.
	[Fixes #76266]

svn path=/trunk/gtk-sharp/; revision=54192
2005-12-10 13:17:47 +00:00
Wade Berrier a36a3d4c0e * .pc and wrapper scripts: Use relative paths so gtk-sharp is
relocatable


svn path=/trunk/gtk-sharp/; revision=52437
2005-11-01 05:12:12 +00:00
Mike Kestner 6e9ebf451c 2005-09-15 Mike Kestner <mkestner@novell.com>
* parser/gapi-fixup.cs : warn on unmatched rules.  reworked from a Dan
	Winship patch.  [Fixes #76088]

svn path=/trunk/gtk-sharp/; revision=50091
2005-09-15 16:54:00 +00:00
Mike Kestner 376b8f42ac 2005-08-30 Mike Kestner <mkestner@novell.com>
* parser/gapi_pp.pl : ignore ifndef *_H_ lines like in 1.0.x.
	[Fixes #75938]

svn path=/trunk/gtk-sharp/; revision=49151
2005-08-30 20:12:43 +00:00
Joe Shaw 4ecc1e8f03 2005-08-23 Joe Shaw <joeshaw@novell.com>
* parser/gapi2xml.pl: Handle "type const *" return types
	as well.  I think this is all of them!

svn path=/trunk/gtk-sharp/; revision=48753
2005-08-23 18:24:56 +00:00
Joe Shaw 68550ba02a 2005-08-23 Joe Shaw <joeshaw@novell.com>
* parser/gapi2xml.pl: Fix a cut-and-paste error in handling
	"type const *" fields.

svn path=/trunk/gtk-sharp/; revision=48751
2005-08-23 18:03:43 +00:00
Mike Kestner a4a90e0797 2005-08-23 Mike Kestner <mkestner@novell.com>
* parser/gapi2xml.pl : handle foo const * fields.
	* gnome/gnome-api-2.10.raw : regen.

svn path=/trunk/gtk-sharp/; revision=48745
2005-08-23 17:02:47 +00:00
Joe Shaw 6018f119d3 2005-08-22 Joe Shaw <joeshaw@novell.com>
* parser/gapi2xml.pl: Fix a minor bug handling "type const *"
	parameters.

svn path=/trunk/gtk-sharp/; revision=48704
2005-08-22 23:11:08 +00:00