2008-02-21 Mark Doffman <mark.doffman@codethink.co.uk>
* girepository/ginfo.c
* girepository/girepository.h
* tools/generate.c
Add a function to check if an enum is registered or not.
Previously anything testing this relied on the g-type
string offset having a value of 0.
* girepository/gmetadata.c
* girepository/gmetadata.h
* tools/generate.c
Remove unneccesary or erroneous checks. There were two
metadata validation checks which made sure that the blob
sizes were the same as some magic numbers compiled into the code.
This is wrong as it breaks any forwards compatibility that may
be possible.
Checks were also present that made sure that unregistered type
blobs had a value of 0 in the g-type offset field. This is
unneccessary. If a type blob is unregistered then any value
in its g-type field is simply invalid.
WARNING: This commit does not compile. It is a partial change.
svn path=/trunk/; revision=132
2008-02-21 Mark Doffman <mark.doffman@codethink.co.uk>
* girepository/ginfo.c
* girepository/gmetadata.c
* girepository/gmetadata.h
Change the metadata format to have a standard header
for all the type blobs. Merge the SimpleTypeBlob
and InterfaceTypeBlob into a union. A union of these
two blobs existed previously but was not explicit
in the metadata format.
WARNING: This commit does not compile. It is a partial change.
svn path=/trunk/; revision=131
2008-02-21 Mark Doffman <mark.doffman@codethink.co.uk>
* tools/gidlcompilercontext.c
* tools/gidlcompilercontext.h
* tools/gidlcompilerentrynode.c
* tools/gidlcompilerentrynode.h
* tools/gidlcompilertypenode.c
* tools/gidlcompilertypenode.h
Add code to compile a tree of GIdlNodes to
a 'C' struct representing the metadata.
This is to aid cross-compiling. Previously
the g-idl-compiler created a binary blob with
data written in the byte order and alignment
of the tool rather than the intended target.
Cleaned up and improved by Johan and Robert :-)
WARNING: This commit does not compile. It is a partial change.
svn path=/trunk/; revision=130
2008-02-21 Mark Doffman <mark.doffman@codethink.co.uk>
* girepository/ginvoke.c
* girepository/girepository.h
* girepository/gmetadata.c
* girepository/gmetadata.h
* tools/generate.c
* tools/gidlparser.c
Modify TYPE_TAG_INTERFACE to TYPE_TAG_SYMBOL
to avoid confusion with the interface blob.
* tools/generate.c
* tools/gidlparser.c
Remove magic numbers and replace with type-tag
enumeration symbols.
* girepository/gmetadata.c
Add validate declaration.
WARNING: This commit does not compile. It is a partial change.
svn path=/trunk/; revision=129
2008-03-05 Havoc Pennington <hp@redhat.com>
* configure.ac: Take advantage of a libffi.pc if one exists, as it
does on Fedora 8. Make libffi a hard requirement, since it was in
practice anyway (was not really conditional in the code or
makefile, only in configure).
svn path=/trunk/; revision=121
2008-02-13 Rob Taylor <rob.taylor@codethink.co.uk>
* gcov.mak:
* girepository/Makefile.am:
* tools/Makefile.am:
Rename GCOV_SOURCES to GCOVSOURCES to top automake complaining.
svn path=/trunk/; revision=113