summary |
shortlog | log |
commit |
commitdiff |
tree
first ⋅ prev ⋅ next
Rob Taylor [Fri, 8 Feb 2008 18:09:05 +0000 (18:09 +0000)]
Added:
2008-02-08 Rob Taylor <rob.taylor@codethink.co.uk>
* Makefile.am:
* configure.ac:
* gcov.mak: Added:
* girepository/Makefile.am:
* m4/Makefile.am: Added:
* m4/as-compiler-flag.m4: Added:
* m4/gcov.m4: Added:
* tools/Makefile.am:
Add ability to generate a coverage report.
Adds configure option --enable-gcov and make rule 'check-coverage'.
svn path=/trunk/; revision=105
Rob Taylor [Fri, 8 Feb 2008 15:31:03 +0000 (15:31 +0000)]
Added: Added: Renamed to tools/Makefile.am: Renamed to tools/compiler.c:
2008-02-08 Rob Taylor <rob.taylor@codethink.co.uk>
* Makefile.am:
* configure.ac:
* gidl/Makefile.am: Added:
* girepository/Makefile.am: Added:
* src/Makefile.am: Renamed to tools/Makefile.am:
* src/compiler.c: Renamed to tools/compiler.c:
* src/g-idl-offsets.pl: Renamed to tools/g-idl-offsets.pl:
* src/generate.c: Renamed to tools/generate.c:
* src/gidlmodule.c: Renamed to tools/gidlmodule.c:
* src/gidlmodule.h: Renamed to tools/gidlmodule.h:
* src/gidlnode.c: Renamed to tools/gidlnode.c:
* src/gidlnode.h: Renamed to tools/gidlnode.h:
* src/gidlparser.c: Renamed to tools/gidlparser.c:
* src/gidlparser.h: Renamed to tools/gidlparser.h:
* src/gidlwriter.c: Renamed to tools/gidlwriter.c:
* src/gidlwriter.h: Renamed to tools/gidlwriter.h:
* src/ginfo.c: Renamed to girepository/ginfo.c:
* src/ginvoke.c: Renamed to girepository/ginvoke.c:
* src/girepository.c: Renamed to girepository/girepository.c:
* src/girepository.h: Renamed to girepository/girepository.h:
* src/gmetadata.c: Renamed to girepository/gmetadata.c:
* src/gmetadata.h: Renamed to girepository/gmetadata.h:
* src/scanner.c: Renamed to tools/scanner.c:
* src/scanner.h: Renamed to tools/scanner.h:
* src/scannerlexer.l: Renamed to tools/scannerlexer.l:
* src/scannerparser.y: Renamed to tools/scannerparser.y:
* tests/invoke/Makefile.am:
Split src/ into girepository/ and tools/
* Makefile.am:
* configure.ac:
* girepository/Makefile.am:
* tests/Makefile.am:
* tests/invoke/Makefile.am:
* tests/parser/Makefile.am:
* tests/roundtrips.sh:
* tools/Makefile.am:
Make distcheck work.
svn path=/trunk/; revision=104
Rob Taylor [Mon, 4 Feb 2008 17:09:02 +0000 (17:09 +0000)]
Add tests for invokation with a GList argument. Also tests caller-owns
2008-02-04 Rob Taylor <rob.taylor@codethink.co.uk>
* tests/invoke/invoke.c: (main):
* tests/invoke/testfns.c: (test6), (test7):
* tests/invoke/testfns.xml:
Add tests for invokation with a GList argument.
Also tests caller-owns return values.
svn path=/trunk/; revision=103
Rob Taylor [Mon, 4 Feb 2008 17:09:01 +0000 (17:09 +0000)]
Add some documentation for GICallableInfo
2008-02-04 Rob Taylor <robtaylor@floopily.org>
* src/ginfo.c:
Add some documentation for GICallableInfo
svn path=/trunk/; revision=102
Mark Doffman [Fri, 1 Feb 2008 16:47:15 +0000 (16:47 +0000)]
Correct syntax errors in the DTD file.
2008-02-01 Mark Doffman <mark.doffman@codethink.co.uk>
* gidl.dtd:
Correct syntax errors in the DTD file.
* relaxng/api.xml:
* relaxng/c-types.xml:
* relaxng/g-types.xml:
* relaxng/util.xml:
Add a RelaxNG specification for the GObject Introspection XML data.
The Specification has validated all of the test files.
svn path=/trunk/; revision=101
Rob Taylor [Fri, 25 Jan 2008 14:34:25 +0000 (14:34 +0000)]
Add roundtrip tests for structs.
2008-01-25 Rob Taylor <robtaylor@floopily.org>
* tests/roundtrips.sh:
* tests/struct.test:
Add roundtrip tests for structs.
svn path=/trunk/; revision=100
Johan Dahlin [Fri, 11 Jan 2008 23:59:49 +0000 (23:59 +0000)]
Refactor out g_idle_node_add_member. (create_node_from_gtype,
2008-01-11 Johan Dahlin <johan@gnome.org>
* src/scanner.c (g_igenerator_process_function_symbol):
Refactor out g_idle_node_add_member.
(create_node_from_gtype, create_node_from_ctype):
Use case instead of if...else
(get_type_from_type_id):
Rename to create_node_from_gtype
(get_type_from_ctype):
Rename to create_node_from_ctype
Rename ginode -> node, gitype -> type, gifunc -> func.
* src/gidlnode.c (g_idl_node_add_member, g_idl_node_cmp):
Two new functions, refactor out of scanner.c
svn path=/trunk/; revision=99
Johan Dahlin [Fri, 11 Jan 2008 23:01:41 +0000 (23:01 +0000)]
Do not save the content of the deprecated variable, only if it's set or
2008-01-11 Johan Dahlin <johan@gnome.org>
* src/scanner.c: (g_igenerator_process_function_symbol):
* src/scannerlexer.l:
Do not save the content of the deprecated variable, only
if it's set or not.
svn path=/trunk/; revision=98
Johan Dahlin [Fri, 11 Jan 2008 23:00:48 +0000 (23:00 +0000)]
Add a couple of comment parser tests.
2008-01-11 Johan Dahlin <johan@gnome.org>
* tests/parser/foo-object.h: Add a couple of comment parser tests.
svn path=/trunk/; revision=97
Robert James Taylor [Fri, 11 Jan 2008 21:59:13 +0000 (21:59 +0000)]
Fix libffi configure check - libffi still doesn' have package config, so stealing the checks from pygobject.
svn path=/trunk/; revision=96
Juerg Billeter [Fri, 11 Jan 2008 21:38:42 +0000 (21:38 +0000)]
Fix GTK-Doc parsing.
2008-01-11 Juerg Billeter <j@bitron.ch>
* src/scannerlexer.l:
Fix GTK-Doc parsing.
svn path=/trunk/; revision=95
Juerg Billeter [Fri, 11 Jan 2008 21:10:44 +0000 (21:10 +0000)]
Return unresolved name if we find unknown symbol.
2008-01-11 Juerg Billeter <j@bitron.ch>
* src/scanner.c: (lookup_symbol):
Return unresolved name if we find unknown symbol.
svn path=/trunk/; revision=94
Juerg Billeter [Fri, 11 Jan 2008 17:52:29 +0000 (17:52 +0000)]
Initialize GObject to fix scanning interface properties.
2008-01-11 Juerg Billeter <j@bitron.ch>
* src/scanner.c: (g_igenerator_generate):
Initialize GObject to fix scanning interface properties.
* tests/parser/Foo-expected.gidl:
* tests/parser/foo-object.h:
* tests/parser/foo.c: (foo_interface_get_type):
Test interfaces with GObject prerequisite.
* tests/parser/Makefile.am:
Set G_DEBUG=fatal_warnings to abort test on warnings and criticals.
svn path=/trunk/; revision=93
Johan Dahlin [Fri, 28 Dec 2007 01:03:35 +0000 (01:03 +0000)]
Parse gtk-doc comments.
2007-12-27 Johan Dahlin <johan@gnome.org>
* src/scannerlexer.l:
Parse gtk-doc comments.
* src/gidlwriter.c: (function_generate):
Reorganize, avoid duplication and add support for
writing deprecated functions.
* src/scannerparser.y:
* src/scanner.h:
Add new structure CDirective and functions to create/free them.
* src/scanner.c: (g_igenerator_process_function_symbol),
(g_igenerator_process_unregistered_struct_typedef),
(g_igenerator_process_struct_typedef),
(g_igenerator_process_union_typedef),
(g_igenerator_process_enum_typedef),
(g_igenerator_process_function_typedef), (g_igenerator_add_symbol),
(g_igenerator_start_preprocessor):
Parse @deprecated directive for functions.
Remove some more C99isms.
Send in -C to cpp to avoid stripping comments.
* tests/parser/foo-object.h:
* tests/parser/Foo-expected.gidl:
Add deprecated directive
svn path=/trunk/; revision=92
Johan Dahlin [Thu, 27 Dec 2007 22:43:41 +0000 (22:43 +0000)]
Add emacs mode line and escape ' and " so it looks more like C.
2007-12-27 Johan Dahlin <johan@gnome.org>
* src/scannerlexer.l (intsuffix): Add emacs mode line and
escape ' and " so it looks more like C.
svn path=/trunk/; revision=91
Johan Dahlin [Thu, 27 Dec 2007 21:01:09 +0000 (21:01 +0000)]
Unlink temporary file used.
2007-12-27 Johan Dahlin <johan@gnome.org>
* src/scanner.c:
Unlink temporary file used.
svn path=/trunk/; revision=90
Johan Dahlin [Thu, 27 Dec 2007 20:39:55 +0000 (20:39 +0000)]
Plug a couple of simple memory leaks.
2007-12-27 Johan Dahlin <johan@gnome.org>
* src/scanner.c: (g_igenerator_new), (g_igenerator_free),
(g_igenerator_start_preprocessor), (main):
* src/scanner.h:
* src/scannerparser.y:
Plug a couple of simple memory leaks.
svn path=/trunk/; revision=89
Johan Dahlin [Thu, 27 Dec 2007 20:13:34 +0000 (20:13 +0000)]
Improve error reporting, return when the preprocessor fails. Add a verbose
2007-12-27 Johan Dahlin <johan@gnome.org>
* src/scanner.c: (g_igenerator_parse_macros),
(g_igenerator_start_preprocessor), (g_igenerator_set_verbose),
(main):
* src/scanner.h:
* src/scannerparser.y:
* tests/parser/Makefile.am:
Improve error reporting, return when the preprocessor fails.
Add a verbose parameter, to aid debugging.
Revert to using a temporary file to communicate between the
preprocessor and the parser, because we need to wait for
the exit code from the pre-processor before starting to parse.
svn path=/trunk/; revision=88
Johan Dahlin [Sun, 16 Dec 2007 19:12:46 +0000 (19:12 +0000)]
remove an unused variable and avoid const to disable compilation warnings
svn path=/trunk/; revision=87
Johan Dahlin [Sun, 16 Dec 2007 17:04:42 +0000 (17:04 +0000)]
Rename clexer.l to scannerlexer.l and cparser.y to scannerparser.y
2007-12-16 Johan Dahlin <jdahlin@async.com.br>
* src/Makefile.am: Rename clexer.l to scannerlexer.l and
cparser.y to scannerparser.y
svn path=/trunk/; revision=86
Johan Dahlin [Mon, 10 Dec 2007 23:54:23 +0000 (23:54 +0000)]
Get rid of the global the_generator variable.
2007-12-11 Johan Dahlin <johan@gnome.org>
* src/clexer.l:
* src/cparser.y:
* src/scanner.c: (g_igenerator_new):
* src/scanner.h:
Get rid of the global the_generator variable.
svn path=/trunk/; revision=85
Johan Dahlin [Mon, 10 Dec 2007 09:10:12 +0000 (09:10 +0000)]
Don't steal my stdout and just send in relative path now when g-idl-scanner does the right thing
svn path=/trunk/; revision=84
Johan Dahlin [Mon, 10 Dec 2007 09:01:15 +0000 (09:01 +0000)]
Add an output option, add checks for required parameters
2007-12-10 Johan Dahlin <johan@gnome.org>
* src/scanner.c (main): Add an output option,
add checks for required parameters
svn path=/trunk/; revision=83
Johan Dahlin [Mon, 10 Dec 2007 01:02:59 +0000 (01:02 +0000)]
set BUILD_SOURCES and CLEANFILES properly
2007-12-10 Johan Dahlin <johan@gnome.org>
* src/Makefile.am:
set BUILD_SOURCES and CLEANFILES properly
svn path=/trunk/; revision=82
Johan Dahlin [Mon, 10 Dec 2007 00:54:52 +0000 (00:54 +0000)]
Refactor scannerwriter to only be tied to a GIdlModule and move it
2007-12-10 Johan Dahlin <johan@gnome.org>
* src/Makefile.am:
* src/gidlwriter.c: (g_writer_write_inline), (g_writer_write),
(g_writer_write_indent), (g_writer_write_unindent),
(field_generate), (value_generate), (constant_generate),
(property_generate), (function_generate), (vfunc_generate),
(signal_generate), (interface_generate), (struct_generate),
(union_generate), (boxed_generate), (enum_generate),
(node_generate), (g_writer_write_module), (g_idl_writer_save_file):
* src/gidlwriter.h:
* src/scanner.c: (g_igenerator_generate):
* src/scanner.h:
* src/scannerwriter.c:
Refactor scannerwriter to only be tied to a GIdlModule and move
it (again!) to gidlwriter.c. Change the writer function to take
a filename.
svn path=/trunk/; revision=81
Johan Dahlin [Mon, 10 Dec 2007 00:45:29 +0000 (00:45 +0000)]
Move the scanner gidl writing to a separate source file.
2007-12-10 Johan Dahlin <johan@gnome.org>
* src/Makefile.am:
* src/scanner.c: (g_igenerator_generate):
* src/scanner.h:
* src/scannerwriter.c: (g_igenerator_write_inline),
(g_igenerator_write), (g_igenerator_write_indent),
(g_igenerator_write_unindent), (field_generate), (value_generate),
(constant_generate), (property_generate), (function_generate),
(vfunc_generate), (signal_generate), (interface_generate),
(struct_generate), (union_generate), (boxed_generate),
(enum_generate), (node_generate), (module_generate),
(g_scanner_write_file):
Move the scanner gidl writing to a separate source file.
svn path=/trunk/; revision=80
Johan Dahlin [Mon, 10 Dec 2007 00:35:59 +0000 (00:35 +0000)]
Move over all CType construction functions.
2007-12-10 Johan Dahlin <johan@gnome.org>
* src/cparser.y:
* src/scanner.c:
* src/scanner.h:
Move over all CType construction functions.
* tests/parser/Makefile.am:
Be verbose when printing parsing tests results.
svn path=/trunk/; revision=79
Johan Dahlin [Mon, 10 Dec 2007 00:30:30 +0000 (00:30 +0000)]
Oops, typo
svn path=/trunk/; revision=78
Johan Dahlin [Mon, 10 Dec 2007 00:26:04 +0000 (00:26 +0000)]
Refactor preprocessor handling to here. Start cpp insteado of cc -E,
2007-12-10 Johan Dahlin <johan@gnome.org>
* src/scanner.c (g_igenerator_start_preprocessor): Refactor
preprocessor handling to here. Start cpp insteado of cc -E,
always include -U__GNUC__, since it's specific to the preprocessor
we use.
* tests/parser/Makefile.am (check-local): Silent diff and skip
-U__GNUC__ which is always defined now
svn path=/trunk/; revision=77
Johan Dahlin [Sun, 9 Dec 2007 17:51:39 +0000 (17:51 +0000)]
(g_igenerator_new, main): Simplify constructor and they way
parameters are passed into it.
svn path=/trunk/; revision=76
Johan Dahlin [Sun, 9 Dec 2007 17:04:08 +0000 (17:04 +0000)]
Use GOption for command line options.
2007-12-09 Johan Dahlin <johan@gnome.org>
* src/scanner.c:
Use GOption for command line options.
svn path=/trunk/; revision=75
Johan Dahlin [Sun, 9 Dec 2007 16:07:48 +0000 (16:07 +0000)]
Rename gen-introspect.[ch] to scanner.[ch]
2007-12-09 Johan Dahlin <johan@gnome.org>
* src/cparser.y:
* src/Makefile.am:
* src/clexer.l:
* src/cparser.y:
* src/gen-introspect.c:
* src/gen-introspect.h:
* src/scanner.c:
Rename gen-introspect.[ch] to scanner.[ch]
svn path=/trunk/; revision=74
Johan Dahlin [Sun, 9 Dec 2007 16:02:49 +0000 (16:02 +0000)]
Update
2007-12-09 Johan Dahlin <johan@gnome.org>
* TODO: Update
* src/Makefile.am: Rename gen-introspect to g-idl-scanner,
don't make the repository library and the other utilites link against
gthread-2.0
svn path=/trunk/; revision=73
Johan Dahlin [Sun, 9 Dec 2007 15:45:55 +0000 (15:45 +0000)]
Refactor g_igenerator_process_types into smaller pieces.
2007-12-09 Johan Dahlin <johan@gnome.org>
* src/gen-introspect.c: (g_igenerator_create_object),
(g_igenerator_create_interface), (g_igenerator_create_boxed),
(g_igenerator_create_enum), (g_igenerator_create_flags),
(g_igenerator_process_module_symbol),
(g_igenerator_process_module), (g_igenerator_generate), (main):
* src/gen-introspect.h:
Refactor g_igenerator_process_types into smaller pieces.
* tests/parser/Makefile.am:
Depend on the gen-introspect binary
svn path=/trunk/; revision=72
Johan Dahlin [Sun, 9 Dec 2007 12:00:44 +0000 (12:00 +0000)]
Break into smaller pieces, one for each generated node type.
2007-12-09 Johan Dahlin <johan@gnome.org>
* src/gen-introspect.c (g_igenerator_process_types):
Break into smaller pieces, one for each generated node type.
svn path=/trunk/; revision=71
Johan Dahlin [Sat, 8 Dec 2007 18:30:15 +0000 (18:30 +0000)]
Add a subobject test and make sure to register defined classes in the
2007-12-08 Johan Dahlin <johan@gnome.org>
* src/gen-introspect.c: (g_igenerator_process_types),
(g_igenerator_add_module):
* tests/parser/Foo-expected.gidl:
* tests/parser/foo-object.h:
* tests/parser/foo.c: (foo_subobject_class_init),
(foo_subobject_init):
Add a subobject test and make sure to register defined classes
in the lookup symbol hash table.
svn path=/trunk/; revision=70
Johan Dahlin [Sat, 8 Dec 2007 18:04:15 +0000 (18:04 +0000)]
Change the gen-introspect to generate namespaced module names, such as
2007-12-08 Johan Dahlin <johan@gnome.org>
* gidl/GLib.gidl:
* src/Makefile.am:
* src/gen-introspect.c: (g_igenerator_new), (lookup_symbol),
(g_igenerator_process_types), (g_igenerator_add_module),
(g_igenerator_add_include_idl), (main):
* src/gen-introspect.h:
* tests/parser/Makefile.am:
* tests/parser/Foo-expected.gidl:
Change the gen-introspect to generate namespaced module names,
such as GLib.Object instead of GObject.
Add a GLib.gidl which introduces GLib.Object and GLib.InitiallyUnowned,
add a --include-idl parameter to gen-introspect,
and update the parser test.
svn path=/trunk/; revision=69
Johan Dahlin [Sat, 8 Dec 2007 16:41:46 +0000 (16:41 +0000)]
Move main to the end of the file and attempt to make it valid ansi c.
2007-12-08 Johan Dahlin <johan@gnome.org>
* src/gen-introspect.c:
Move main to the end of the file and attempt to make it valid
ansi c.
svn path=/trunk/; revision=68
Johan Dahlin [Sat, 8 Dec 2007 16:39:50 +0000 (16:39 +0000)]
Add a simple gen-introspect parser test 2007-12-08 Johan Dahlin
2007-12-08 Johan Dahlin <johan@gnome.org>
* tests/parser/:
* configure.ac:
Add a simple gen-introspect parser test
2007-12-08 Johan Dahlin <johan@gnome.org>
* tests/parser/:
* configure.ac:
Add a simple gen-introspect parser test
svn path=/trunk/; revision=67
Gustavo J. A. M. Carneiro [Thu, 6 Dec 2007 00:16:15 +0000 (00:16 +0000)]
reviewed by: Johan Dahlin <johan@gnome.org>
2007-12-06 Gustavo J. A. M. Carneiro <gjc@gnome.org>
reviewed by: Johan Dahlin <johan@gnome.org>
* configure.ac:
* gobject-introspection.pc.in:
* src/Makefile.am:
* src/compiler.c: (format_output), (write_out_metadata), (main):
* src/gen-introspect.c: (main):
* src/gen-introspect.h:
* src/generate.c: (write_callable_info), (write_repository),
(load_metadata), (main):
* src/gidlmodule.c: (g_idl_module_new),
(g_idl_module_build_metadata):
* src/gidlmodule.h:
* src/gidlparser.c: (start_element_handler):
* src/ginfo.c: (g_info_new), (g_info_from_entry),
(g_base_info_get_name), (g_base_info_get_namespace),
(g_base_info_is_deprecated), (g_base_info_get_annotation),
(g_base_info_get_metadata), (g_function_info_get_symbol),
(g_function_info_get_flags), (g_function_info_get_property),
(g_function_info_get_vfunc), (signature_offset), (g_type_info_new),
(g_callable_info_may_return_null),
(g_callable_info_get_caller_owns), (g_callable_info_get_n_args),
(g_callable_info_get_arg), (g_arg_info_get_direction),
(g_arg_info_is_return_value), (g_arg_info_is_dipper),
(g_arg_info_is_optional), (g_arg_info_may_be_null),
(g_arg_info_get_ownership_transfer), (g_type_info_is_pointer),
(g_type_info_get_tag), (g_type_info_get_param_type),
(g_type_info_get_interface), (g_type_info_get_array_length),
(g_type_info_is_zero_terminated),
(g_type_info_get_n_error_domains), (g_type_info_get_error_domain),
(g_error_domain_info_get_quark), (g_error_domain_info_get_codes),
(g_value_info_get_value), (g_field_info_get_flags),
(g_field_info_get_size), (g_field_info_get_offset),
(g_registered_type_info_get_type_name),
(g_registered_type_info_get_type_init),
(g_struct_info_get_n_fields), (g_struct_info_get_field),
(g_struct_info_get_n_methods), (g_struct_info_get_method),
(find_method), (g_struct_info_find_method),
(g_enum_info_get_n_values), (g_enum_info_get_value),
(g_object_info_get_parent), (g_object_info_get_type_name),
(g_object_info_get_type_init), (g_object_info_get_n_interfaces),
(g_object_info_get_interface), (g_object_info_get_n_fields),
(g_object_info_get_field), (g_object_info_get_n_properties),
(g_object_info_get_property), (g_object_info_get_n_methods),
(g_object_info_get_method), (g_object_info_find_method),
(g_object_info_get_n_signals), (g_object_info_get_signal),
(g_object_info_get_n_vfuncs), (g_object_info_get_vfunc),
(g_object_info_get_n_constants), (g_object_info_get_constant),
(g_interface_info_get_n_prerequisites),
(g_interface_info_get_prerequisite),
(g_interface_info_get_n_properties),
(g_interface_info_get_property), (g_interface_info_get_n_methods),
(g_interface_info_get_method), (g_interface_info_find_method),
(g_interface_info_get_n_signals), (g_interface_info_get_signal),
(g_interface_info_get_n_vfuncs), (g_interface_info_get_vfunc),
(g_interface_info_get_n_constants),
(g_interface_info_get_constant), (g_property_info_get_flags),
(g_signal_info_get_flags), (g_signal_info_get_class_closure),
(g_signal_info_true_stops_emit), (g_vfunc_info_get_flags),
(g_vfunc_info_get_offset), (g_vfunc_info_get_signal),
(g_constant_info_get_value), (g_union_info_get_n_fields),
(g_union_info_get_field), (g_union_info_get_n_methods),
(g_union_info_get_method), (g_union_info_is_discriminated),
(g_union_info_get_discriminator_offset),
(g_union_info_get_discriminator):
* src/ginvoke.c: (g_function_info_invoke):
* src/girepository.c: (g_irepository_register),
(g_irepository_unregister), (g_irepository_get_default),
(count_interfaces), (g_irepository_get_n_infos), (find_interface),
(g_irepository_get_info), (g_irepository_find_by_name),
(g_irepository_get_shared_library),
(g_irepository_build_search_path), (g_irepository_register_file),
(g_irepository_error_quark):
* src/girepository.h:
* src/gmetadata.c: (g_metadata_get_dir_entry),
(g_metadata_check_sanity), (validate_header),
(validate_array_type_blob), (validate_iface_type_blob),
(validate_param_type_blob), (validate_error_type_blob),
(validate_type_blob), (validate_arg_blob),
(validate_signature_blob), (validate_function_blob),
(validate_callback_blob), (validate_constant_blob),
(validate_value_blob), (validate_field_blob),
(validate_property_blob), (validate_signal_blob),
(validate_vfunc_blob), (validate_struct_blob),
(validate_enum_blob), (validate_object_blob),
(validate_interface_blob), (validate_errordomain_blob),
(validate_union_blob), (validate_blob), (validate_directory),
(validate_annotations), (g_metadata_validate), (_g_metadata_init),
(g_metadata_new_from_memory), (g_metadata_new_from_const_memory),
(g_metadata_new_from_mapped_file), (g_metadata_free),
(g_metadata_set_module), (g_metadata_get_namespace):
* src/gmetadata.h:
* tests/Makefile.am:
* tests/invoke/Makefile.am:
* tests/invoke/invoke-namespace-find.sh:
* tests/invoke/invoke.c: (main):
Add a namespace/shared library mapping. fixes #313268.
svn path=/trunk/; revision=66
Johan Dahlin [Mon, 3 Dec 2007 22:30:09 +0000 (22:30 +0000)]
Disable char/gchar and guchar for now.
2007-12-03 Johan Dahlin <johan@gnome.org>
* src/gidlparser.c (parse_type_internal): Disable char/gchar and
guchar for now.
svn path=/trunk/; revision=64
Juerg Billeter [Fri, 30 Nov 2007 22:46:43 +0000 (22:46 +0000)]
Import gen-introspect to generate introspection information by parsing C
2007-11-30 Juerg Billeter <j@bitron.ch>
* configure.ac:
* src/Makefile.am:
* src/clexer.l:
* src/cparser.y:
* src/gen-introspect.c: (g_idl_node_cmp), (g_igenerator_new),
(g_igenerator_write_inline), (g_igenerator_write),
(g_igenerator_write_indent), (g_igenerator_write_unindent),
(field_generate), (value_generate), (constant_generate),
(property_generate), (function_generate), (vfunc_generate),
(signal_generate), (interface_generate), (struct_generate),
(union_generate), (boxed_generate), (enum_generate),
(node_generate), (module_generate), (get_type_from_type_id),
(str_replace), (g_igenerator_process_properties),
(g_igenerator_process_signals), (g_igenerator_process_types),
(get_type_from_ctype), (g_igenerator_process_function_symbol),
(g_igenerator_process_unregistered_struct_typedef),
(g_igenerator_process_struct_typedef),
(g_igenerator_process_union_typedef),
(g_igenerator_process_enum_typedef),
(g_igenerator_process_function_typedef),
(g_igenerator_process_constant), (g_igenerator_process_symbols),
(g_igenerator_add_symbol), (g_igenerator_is_typedef),
(g_igenerator_generate), (main), (csymbol_new),
(csymbol_get_const_boolean), (ctype_new), (ctype_copy),
(cbasic_type_new), (ctypedef_new), (cstruct_new), (cunion_new),
(cenum_new), (cpointer_new), (carray_new), (cfunction_new),
(eat_hspace), (eat_line), (read_identifier),
(g_igenerator_parse_macros):
* src/gen-introspect.h:
Import gen-introspect to generate introspection information by
parsing C headers.
svn path=/trunk/; revision=63
Juerg Billeter [Fri, 30 Nov 2007 22:12:54 +0000 (22:12 +0000)]
support creating callback nodes
2007-11-30 Juerg Billeter <j@bitron.ch>
* src/gidlnode.c: (g_idl_node_new): support creating callback nodes
svn path=/trunk/; revision=62
Juerg Billeter [Fri, 30 Nov 2007 22:11:49 +0000 (22:11 +0000)]
Don't leave requires state too early.
2007-11-30 Juerg Billeter <j@bitron.ch>
* src/gidlparser.c: (end_element_handler): Don't leave requires
state too early.
svn path=/trunk/; revision=61
Johan Dahlin [Thu, 29 Nov 2007 19:03:58 +0000 (19:03 +0000)]
Add char, gchar and guchar to the builtin types.
2007-11-29 Johan Dahlin <johan@gnome.org>
* src/gidlparser.c (parse_type_internal): Add char,
gchar and guchar to the builtin types.
svn path=/trunk/; revision=60
Johan Dahlin [Mon, 26 Nov 2007 17:55:23 +0000 (17:55 +0000)]
Add g_object_info_get_type_name, g_object_info_get_type_init and
2007-11-26 Johan Dahlin <johan@gnome.org>
* src/ginfo.c: (g_object_info_get_type_name),
(g_object_info_get_type_init):
* src/girepository.c: (g_irepository_is_registered):
* src/girepository.h:
Add g_object_info_get_type_name, g_object_info_get_type_init and
g_irepository_is_registered.
svn path=/trunk/; revision=59
Jürg Billeter [Mon, 26 Nov 2007 17:53:06 +0000 (17:53 +0000)]
Don't leave namespace and implements states too early. Fixes #351264
2006-08-14 Jürg Billeter <j@bitron.ch>
* src/gidlparser.c: (end_element_handler): Don't leave
namespace and implements states too early.
Fixes #351264
svn path=/trunk/; revision=58
Johan Dahlin [Mon, 26 Nov 2007 17:50:42 +0000 (17:50 +0000)]
pass blob_type to validate_function_blob instead of hard-coding
2007-11-26 Johan Dahlin <johan@gnome.org>
* src/gmetadata.c (validate_struct_blob):
pass blob_type to validate_function_blob instead of
hard-coding BLOB_TYPE_STRUCT.
Patch by Torsten Schoenfeld, fixes #314190
svn path=/trunk/; revision=57
Johan Dahlin [Mon, 26 Nov 2007 17:49:00 +0000 (17:49 +0000)]
Add a MAINTAINERS file
svn path=/trunk/; revision=55
Torsten Schönfeld [Tue, 3 Oct 2006 14:38:07 +0000 (14:38 +0000)]
Hush compiler warnings about return values, signedness mismatches, unused
* src/compiler.c, src/generate.c, src/gidlnode.c,
src/gidlparser.c, src/ginfo.c, src/girepository.c,
tests/invoke/invoke.c, test/invoke/testfns.c: Hush compiler
warnings about return values, signedness mismatches, unused
variables, and unhandles enum values in switch statements.
* tests/invoke/Makefile.am: Don't install the invoke test program.
Add -I ../../src to the cflags used for the test functions files.
Torsten Schönfeld [Wed, 31 Aug 2005 19:15:30 +0000 (19:15 +0000)]
Export g_invoke_error_quark.
* src/girepository.h: Export g_invoke_error_quark.
Torsten Schönfeld [Wed, 31 Aug 2005 19:13:27 +0000 (19:13 +0000)]
Remove the fallback implementation of g_function_info_invoke since we now
* src/ginvoke.c: Remove the fallback implementation of
g_function_info_invoke since we now formally depend on libffi.
Matthias Clasen [Mon, 25 Jul 2005 19:31:20 +0000 (19:31 +0000)]
Remove generated files from cvs
Matthias Clasen [Mon, 25 Jul 2005 18:48:39 +0000 (18:48 +0000)]
Don't complain if blob->pointer is not set, since that happens for enum
2005-07-25 Matthias Clasen <mclasen@redhat.com>
* src/gmetadata.c (validate_iface_type_blob): Don't
complain if blob->pointer is not set, since that
happens for enum and flag types. (#308935, Gustavo
Carneiro)
Matthias Clasen [Mon, 25 Jul 2005 18:20:56 +0000 (18:20 +0000)]
Also add this file
Matthias Clasen [Mon, 25 Jul 2005 18:17:29 +0000 (18:17 +0000)]
Commit an autoconf-conversion patch by Gustavo Carneiro (#308708)
2005-07-25 Matthias Clasen <mclasen@redhat.com>
* Commit an autoconf-conversion patch by
Gustavo Carneiro (#308708)
Matthias Clasen [Tue, 24 May 2005 20:46:28 +0000 (20:46 +0000)]
Forgotten log entry
Matthias Clasen [Tue, 24 May 2005 20:45:26 +0000 (20:45 +0000)]
Fix a segfault
Matthias Clasen [Tue, 24 May 2005 16:46:53 +0000 (16:46 +0000)]
Add some comments
Matthias Clasen [Tue, 24 May 2005 15:37:08 +0000 (15:37 +0000)]
Updates
Matthias Clasen [Tue, 24 May 2005 15:36:42 +0000 (15:36 +0000)]
Use it here to validate the generated metadata.
2005-05-24 Matthias Clasen <mclasen@redhat.com>
* src/compiler.c (main): Use it here to validate
the generated metadata.
* src/gmetadata.[hc]: Add code to validate a
metadata blob.
Matthias Clasen [Tue, 24 May 2005 14:07:33 +0000 (14:07 +0000)]
Updates
Maciej Katafiasz [Tue, 24 May 2005 11:59:16 +0000 (11:59 +0000)]
Added first draft of proposal for typed annotations support
Matthias Clasen [Sun, 22 May 2005 04:22:51 +0000 (04:22 +0000)]
Add struct offsets to field and vfunc elements.
2005-05-22 Matthias Clasen <mclasen@redhat.com>
* tests/*: Add struct offsets to field and vfunc
elements.
* src/generate.c (write_vfunc_info): Write offset
information for vfuncs.
* src/gidlnode.c (g_idl_node_build_metadata): Write
the struct offsets into the metadata.
* src/gidlparser.c: Parse the offset attributes of
field and vfunc elements.
* src/gidlnode.h: Add offset members to field and
vfunc nodes.
Matthias Clasen [Sun, 22 May 2005 03:32:44 +0000 (03:32 +0000)]
Forgotten files
Matthias Clasen [Sat, 21 May 2005 05:26:02 +0000 (05:26 +0000)]
Updates.
2005-05-21 Matthias Clasen <mclasen@redhat.com>
* TODO: Updates.
* gidl.dtd: Updates.
* src/g-idl-offsets.pl: A perl script which reads a .gidl
file, creates, compiles and runs a C file, and folds the
resulting struct offsets back into the .gidl file.
Matthias Clasen [Sat, 21 May 2005 05:22:03 +0000 (05:22 +0000)]
A perl script which reads a .gidl file, creates, compiles and runs a C
2005-05-21 Matthias Clasen <mclasen@redhat.com>
* src/g-idl-offsets.pl: A perl script which reads a .gidl
file, creates, compiles and runs a C file, and folds the
resulting struct offsets back into the .gidl file.
Matthias Clasen [Sat, 21 May 2005 03:03:01 +0000 (03:03 +0000)]
Make fields in objects work.
2005-05-20 Matthias Clasen <mclasen@redhat.com>
* src/gidlparser.c (start_field): Make fields in objects
work.
Matthias Clasen [Sat, 21 May 2005 00:37:26 +0000 (00:37 +0000)]
Fix includes
Matthias Clasen [Sat, 21 May 2005 00:08:27 +0000 (00:08 +0000)]
Basic type cleanup
Matthias Clasen [Fri, 20 May 2005 05:05:21 +0000 (05:05 +0000)]
Report the correct size for enum blobs. (g_idl_node_get_full_size): Report
2005-05-20 Matthias Clasen <mclasen@redhat.com>
* src/gidlnode.c (g_idl_node_get_size): Report the correct
size for enum blobs.
(g_idl_node_get_full_size): Report the correct size for
function blobs.
* src/gidlmodule.c (g_idl_module_build_metadata): Add some
error checking for blob sizes.
Matthias Clasen [Fri, 20 May 2005 03:15:01 +0000 (03:15 +0000)]
Updates
Johan Dahlin [Thu, 19 May 2005 19:42:23 +0000 (19:42 +0000)]
new_with_mime+type -> new_with_mime_type
Matthias Clasen [Thu, 19 May 2005 19:15:31 +0000 (19:15 +0000)]
Remove debug spew
Matthias Clasen [Thu, 19 May 2005 19:05:05 +0000 (19:05 +0000)]
Add gdk-pixbuf.gidl as an example, and fix the code to handle it.
Matthias Clasen [Thu, 19 May 2005 17:37:56 +0000 (17:37 +0000)]
Updates
Matthias Clasen [Tue, 17 May 2005 21:05:02 +0000 (21:05 +0000)]
Updates
Matthias Clasen [Tue, 17 May 2005 19:11:43 +0000 (19:11 +0000)]
Cleanups
Matthias Clasen [Sun, 15 May 2005 05:11:53 +0000 (05:11 +0000)]
Change the directory to be addressed by 1-based indexes, and use an index
2005-05-15 Matthias Clasen <mclasen@redhat.com>
* src/*.c: Change the directory to be addressed by
1-based indexes, and use an index of zero to mean
'no object'.
Matthias Clasen [Sun, 15 May 2005 04:30:43 +0000 (04:30 +0000)]
Add union.test.
2005-05-15 Matthias Clasen <mclasen@redhat.com>
* tests/roundtrips.sh (SIMPLE_TESTS): Add union.test.
* tests/union.test: Add a union test.
* src/generate.c: Handle unions.
* src/girepository.h:
* src/ginfo.c: Add GIUnionInfo and functions to access it.
* src/gidlnode.c: Handle GIdlNodeUnion nodes.
* src/gidlparser.c (start_union): Parse <union> elements.
* src/gidlnode.h: Add a GIdlNodeUnion.
* gidl.dtd: Add a <union> element.
* src/gmetadata.c (g_metadata_check_sanity): Check
union_blob_size.
* src/gmetadata.h: Add union_blob_size to Header,
add a UnionBlob.
* metadata-format.txt: Add a UnionBlob.
Matthias Clasen [Fri, 13 May 2005 17:33:11 +0000 (17:33 +0000)]
Updates
Matthias Clasen [Fri, 13 May 2005 17:31:10 +0000 (17:31 +0000)]
Update testcases.
2005-05-13 Matthias Clasen <mclasen@redhat.com>
* tests/*: Update testcases.
* src/generate.c (write_callable_info): Don't forget to
write transfer and null-ok attributes for return types
and parameters.
* src/girepository.h:
* src/ginfo.c (g_callable_info_may_return_null):
New function to find out if a function may return NULL.
Matthias Clasen [Fri, 13 May 2005 15:58:43 +0000 (15:58 +0000)]
Make the generated C code compile.
2005-05-13 Matthias Clasen <mclasen@redhat.com>
* src/compiler.c (format_output): Make the generated
C code compile.
* README: Point to a recent libffi snapshot.
* tests/invoke/*: Some invoke tests.
* src/Makefile: Add ginvoke.c and the necessary
libffi information.
* src/girepository.h (g_function_info_invoke): Add
a GError argument.
* src/ginvoke.c (g_function_info_invoke): Initial
implementation of invoke functionality based on libffi.
Matthias Clasen [Fri, 13 May 2005 14:35:04 +0000 (14:35 +0000)]
Free the name parts.
2005-05-13 Matthias Clasen <mclasen@redhat.com>
* src/gidlnode.c (find_entry_node): Free the name parts.
Matthias Clasen [Fri, 13 May 2005 04:42:12 +0000 (04:42 +0000)]
Pass the strings and types hash tables in the right order when recursing.
2005-05-13 Matthias Clasen <mclasen@redhat.com>
* src/gidlnode.c (g_idl_node_build_metadata): Pass the
strings and types hash tables in the right order when
recursing.
Johan Dahlin [Fri, 13 May 2005 02:54:03 +0000 (02:54 +0000)]
Generate consistent end tags.
* src/generate.c: Generate consistent end tags.
* tests/*: Update
Matthias Clasen [Fri, 13 May 2005 02:44:04 +0000 (02:44 +0000)]
Updates
2005-05-12 Matthias Clasen <mclasen@redhat.com>
* TODO: Updates
Matthias Clasen [Fri, 13 May 2005 02:42:21 +0000 (02:42 +0000)]
Actually add methods to objects. (Steven Walter)
2005-05-12 Matthias Clasen <mclasen@redhat.com>
* src/gidlparser.c (start_function): Actually add
methods to objects. (Steven Walter)
* src/girepository.h:
* src/ginfo.c: Rename Transfer and Direction to
GITransfer and GIDirection. (Torsten Schoenfeld)
Matthias Clasen [Fri, 13 May 2005 02:36:01 +0000 (02:36 +0000)]
Rename Transfer and Direction to GITransfer and GIDirection. (Torsten
2005-05-12 Matthias Clasen <mclasen@redhat.com>
* src/girepository.h:
* src/ginfo.c: Rename Transfer and Direction to
GITransfer and GIDirection. (Torsten Schoenfeld)
Matthias Clasen [Thu, 12 May 2005 22:51:16 +0000 (22:51 +0000)]
Fix test cases
Matthias Clasen [Thu, 12 May 2005 22:49:59 +0000 (22:49 +0000)]
Some fixes
Matthias Clasen [Wed, 11 May 2005 19:31:37 +0000 (19:31 +0000)]
Add a --verbose cmdline option and only log messages if it is specified.
2005-05-11 Matthias Clasen <mclasen@redhat.com>
* src/compiler.c (main): Add a --verbose cmdline option
and only log messages if it is specified.
* src/gidlnode.h:
* src/gidlnode.c (init_stats, dump_stats): Collect some
statistics on string and type sharing.
* src/gidlmodule.c (g_idl_module_build_metadata): Use
g_message() instead of fprintf().
* src/gidlnode.c (g_idl_node_free): Make this more robust.
(g_idl_node_get_size): Implement for structs.
(g_idl_node_get_full_size): Handle parent being NULL.
(serialize_type): Handle lookup failures more gracefully.
Matthias Clasen [Tue, 10 May 2005 17:43:21 +0000 (17:43 +0000)]
Correct the size calculation for 2-parameter types and for objects.
2005-05-10 Matthias Clasen <mclasen@redhat.com>
* src/gidlnode.c (g_idl_node_get_full_size): Correct the
size calculation for 2-parameter types and for objects.
* src/compiler.c: Add a cmdline option for debug output
and install a log handler to implement it.
* src/gidlnode.c: Add some debug spew.
Matthias Clasen [Tue, 10 May 2005 05:14:32 +0000 (05:14 +0000)]
Updates
Matthias Clasen [Tue, 10 May 2005 05:08:40 +0000 (05:08 +0000)]
Don't forget to count the module name when calculating the required size
2005-05-10 Matthias Clasen <mclasen@redhat.com>
* src/gidlmodule.c (g_idl_module_build_metadata): Don't
forget to count the module name when calculating the
required size for the metadata.
* src/gidlnode.c:
* src/gidlparser.c: Fix compiler warnings.
Matthias Clasen [Tue, 10 May 2005 03:52:16 +0000 (03:52 +0000)]
Free the option context.
2005-05-09 Matthias Clasen <mclasen@redhat.com>
* src/compiler.c (main): Free the option context.
Matthias Clasen [Mon, 9 May 2005 19:32:10 +0000 (19:32 +0000)]
Clean up handling of names. All elements have a "name", only the elements
2005-05-09 Matthias Clasen <mclasen@redhat.com>
* gidl.dtd: Clean up handling of names. All elements
have a "name", only the elements corresponding to
actual callable functions (function, method, constructor),
have an additional "symbol" attribute holding the
dlsym()-able function name.
* src/generate.c: Adapt to generate xml matching the
new dtd.
* src/gidlparser.c:
* src/gidlnode.c: Adapt to parse the new dtd.
* tests/*.test: Adjust to the new dtd.
* metadata-format.txt:
* src/gmetadata.h: Remove the short_name field
from the ValueBlob.
* src/gmetadata.c: Shrink size of ValueBlob to 12.
* src/girepository.h:
* src/ginfo.c (g_value_info_get_short_name): Removed
Matthias Clasen [Mon, 9 May 2005 16:08:26 +0000 (16:08 +0000)]
Allow constructors in boxed
Matthias Clasen [Mon, 9 May 2005 14:24:46 +0000 (14:24 +0000)]
Import the GObject introspection prototype
Matthias Clasen [Mon, 9 May 2005 14:24:46 +0000 (14:24 +0000)]
Initial revision