Source code in this tree was originally generated from a magical gobject
generation tool called gengobject.py. It takes D-Bus XML introspection data and
outputs source, header and other files like signal marshallers. To read the XML
from generate/xml-modified/ directory, and output new source in the
generate/src/ directory, where changes can be reveiwed and applied to the src/
directory by hand, run generate/do_src.sh.

The XML is generated from the Python classes which are the current canonical
definition of the Telepathy interfaces, according to the definitions in
xml.def. Some manual modifications are necessary, to mark asynchronous methods,
and to remove the Introspect methods which are implemented automatically by the
bindings, so the pristine XML is kept in generate/xml-pristine/ and changed
applied by hand to generate/xml-modified/. To generate this pristine XML, run
generate/do_xml.sh.

In both cases, applying the changes to the generated XML or src can be as easy
as:
 darcs diff -u generate/src | patch -d src
Patch does a much better job of applying generated changes to the modified code
than darcs did when pulling patches from seperate trees (xml -> generate ->
live).
