GtkSharp/sources/README

116 lines
3.6 KiB
Plaintext
Raw Normal View History

The contents of this directory are (basically) the first step
in creating .NET bindings, to libraries based on GObject.
QUICK INSTRUCTIONS
------------------
Edit the .metadata file(s), then do a:
make get-source-code
make
You only have to do a "make get-source-code" once! After
you have run "make get-source-code" once, do the following...
Edit the .metadata file(s), then do a:
make
Note, these instructions only generate XML files in the "api"
directory. To turn those XML files (in the "api" directory)
into C# code; and then turn that C# code into a .DLL, you'll
need to perform extra steps, which are NOT described in this
document.
(If you are going to create a new .NET binding, then you will need
to do more than just this.)
WHO USES THE SOURCES DIRECTORY
------------------------------
This directory is essentially the "starting point" in the creation
of a .NET binding. Most people can safely ignore it. (If all
you want to do is build Gtk#, then you can ignore what's in this
directory.)
This directory is not part of the normal "build process" for Gtk#.
But is instead used by people wishing to update an existing .NET
binding; or to create a new .NET binding (for a GObject based library).
The result of running "make" on this directory (once everything
is set up) are the XML files that you find in the "api" directory.
(Those XML files, that you find in the "api" directory, are then used
to generate the C# code. And then that C# code is used to create
the various .DLL files.)
WHAT'S REQUIRED
---------------
Before you can do anything here, you need to get the source
code to the various libraries (which you are generating .NET
bindings for). And then do a little configuring. The current
list of libraries that Gtk# supports is:
glib-2.0.3
pango-1.0.3
atk-1.0.2
gtk+-2.0.5
* you need gdkpixbuf*.[ch] from gdk/ symlinked into gdk-pixbuf/
libgnome-2.0.1
libgnomecanvas-2.0.1
libgnomeui-2.0.1
gtkhtml: cvs branch gnome-2-port files gtkhtml.[ch], gtkhtml-types.h,
gtkhtml-enums.h, gtkhtml-stream.[ch]
libglade-2.0.0
libart_lgpl-2.3.10
libgda-0.10.0
libgnomedb-0.10.0
gstreamer-0.4.2
librsvg-2.0.1
(If you create a new binding, that is part of Gtk#, be sure to add it
to this list. Also, you'll need to add an entry in "gtk-sharp.sources".
And you should add it to the "makefile" so that it is part of the
"get-source-code" rule.)
(There are two ways to get this source code. As you will see in the
next section.)
SETTING THINGS UP
-----------------
To set things up, you need to get the source code to the libraries listed
above. There are two (alternate) methods of doing this.
Method 1)
Download it. Unpack the source code (if necessary). Then do the extra
cofiguration stuff listed above.
Method 2)
Run:
make get-source-code
(Method 2 is probably the easiest way to do it for most people. It automatically
goes and downloads everything you need. And configures everything for you.)
EDITING .METADATA FILES
-----------------------
Part of updating a .NET binding involves editing a .metadata file.
(Assuming you already have the required source code, to the
libraries...) once you update a binding, you then run:
make
...to create the new updated XML file(s) that will be placed in the "api"
directory.