From b08b51132f0cb852c713f3d181709f537b2d12bd Mon Sep 17 00:00:00 2001 From: Charles Iliya Krempeaux Date: Fri, 14 Mar 2003 01:41:12 +0000 Subject: [PATCH] 2003-03-01 Charles Iliya Krempeaux * sources/README : Updated it to include mention of GStreamer and librsvg. Also mentioned being able to use "make get-source-code" to get the source code too. Then added alot of content. svn path=/trunk/gtk-sharp/; revision=12490 --- ChangeLog | 7 +++ sources/README | 131 ++++++++++++++++++++++++++++++++++++++++++------- 2 files changed, 120 insertions(+), 18 deletions(-) diff --git a/ChangeLog b/ChangeLog index 6262240f0..9839d71e3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -37,6 +37,13 @@ some libname override rules to use win32 dllnames. * sources/Gdk.metadata : rules for above. +2003-03-01 Charles Iliya Krempeaux + + * sources/README : Updated it to include mention of GStreamer + and librsvg. Also mentioned being able to use + "make get-source-code" to get the source code too. + Then added alot of content. And basically rewrote it. + 2003-02-28 Miguel de Icaza * glue/widget.c (gtksharp_gtk_widget_get_window): Fix. Return the diff --git a/sources/README b/sources/README index 9ec5d4993..a1601ae99 100644 --- a/sources/README +++ b/sources/README @@ -1,20 +1,115 @@ -Put source modules here to parse for the gtkapi.xml file. -Directories are now listed in gtk-sharp.sources, you need to update this when -adding an API. +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. -Currently supported: -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