Update various bits of documentation in READMEs and HACKING

This commit is contained in:
Bertrand Lorentz 2012-10-14 15:22:47 +02:00
parent 7b292538bb
commit 03490d7db6
3 changed files with 38 additions and 102 deletions

15
HACKING
View file

@ -1,11 +1,10 @@
Before beginning work on something, please post your intentions to the
Before beginning work on something, please post your intentions to the
mailing list (gtk-sharp-list@ximian.com). Duplication of effort just gets
folks cranky in general.
folks cranky in general.
Prior to checking anything into CVS, please send a patch to the mailing list
for approval. Any patches should be submitted in diff -u format. Also, it is
assumed that the submitter has verified that the patch does not break the
build, and hopefully that it doesn't break runtime.
Code contributions can be made in the form of pull requests on GitHub,
through https://github.com/mono/gtk-sharp or by attaching patches to bug
reports. Please make sure the patch is produced using 'git format-patch'.
Getting Started:
@ -21,5 +20,5 @@ Getting Started:
o sources/README
If you still have more questions or need assitance, you can get help on
the Gtk# mailing list and the #mono IRC channel. (Information about
each of these is contained in the README file.)
the Gtk# mailing list and the #gtk# or #mono IRC channels. (Information
about each of these is contained in the README file.)

24
README
View file

@ -1,14 +1,13 @@
The Gtk# website can be found at: http://gtk-sharp.sourceforge.net/
The Gtk# website can be found at: http://www.mono-project.com/GtkSharp
Gtk# is a .NET language binding for the GTK+ toolkit and assorted GNOME
libraries. Gtk# is free software, licensed under the GNU LGPL. The target
is the 2.6 platform.
libraries. Gtk# is free software, licensed under the GNU LGPL.
Building & Installing Gtk#:
---------------------------
Install the gtk-2/gtk-3 development headers first. On Debian, this can be done using:
apt-get install libgtk2.0-dev libgtk-3-dev
Install the gtk-3 development headers first. On Debian, this can be done using:
apt-get install libgtk-3-dev
The build is the traditional:
@ -30,7 +29,7 @@ Building & Installing Gtk#:
which was used for Mono. This might have been "/usr", "/usr/local", or
something similar.)
If you are compiling from SVN, you will need libtool and the auto* tools
If you are compiling from GIT, you will need libtool and the auto* tools
and will need to replace the configure above with autogen.sh.
@ -55,12 +54,8 @@ Discussion & Support:
http://lists.ximian.com/archives/public/gtk-sharp-list/
Further, a Wiki is available for Gtk#, and can be found at:
http://www.nullenvoid.com/gtksharp/wiki/
Also, people can get help with and discuss Gtk# on IRC via the
#mono channel on the irc.gnome.org IRC server.
#gtk# or #mono channels on the irc.gnome.org IRC server.
People looking for general help with C# should visit the
#c# channel on irc.freenode.net IRC server.
@ -72,10 +67,7 @@ Developers:
For developers wishing to "get started" with Gtk#, they are encouraged
to read the Mono Hand Book:
http://www.go-mono.com/tutorial
In the Mono Hand Book, Chapter 21 is on Gtk#. (In the Mono Hand Book,
the Gtk# .NET bindings are refered to as GNOME.NET.)
http://www.mono-project.com/Monkeyguide
Hackers:
@ -85,4 +77,4 @@ Hackers:
read the file named: HACKING.
Also, anyone wishing to hack Gtk# is encouraged to join the Gtk#
mailing list. And to visit the #mono IRC channel (on irc.gnome.org).
mailing list. And to visit the #gtk# IRC channel (on irc.gnome.org).

View file

@ -1,50 +1,26 @@
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 api
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 api
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
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#.
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 api" 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.)
is set up) are the various '*-api.raw' XML files that you find in the
corresponding directories. Those XML files will then be used to generate
the C# code. And then that C# code is used to create the various .DLL
files.
Please refer to http://www.mono-project.com/GAPI for a more complete and
up-to-date guide to this process.
WHAT'S REQUIRED
@ -52,63 +28,32 @@ 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:
bindings for). And then do a little configuring. The current
list of libraries that Gtk# supports is in the sources.xml and Makefile.am
files.
pango-1.4.0
atk-1.6.0
gtk+-2.4.1
libgnome-2.6.0
libgnomecanvas-2.6.0
libgnomeui-2.6.0
libgnomeprint-2.6.0
libgnomeprintui-2.6.0
gtkhtml-3.0.10 files: gtkhtml.[ch], gtkhtml-types.h,
gtkhtml-enums.h, gtkhtml-stream.[ch]
libglade-2.3.6
libart_lgpl-2.3.16
librsvg-2.6.4
gnome-vfs-2.6.0
gnome-panel-2.6.0
If you create a new binding that is part of Gtk#, be sure to add it to this
list.
(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.)
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.
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.
Download and unpack the source code manually.
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 sets everything
up for you.)
(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 api
...to create the new updated XML file(s) that will be placed in the "api"
directory.
For more information, please refer to http://www.mono-project.com/GAPI