X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=HACKING;h=8b6c207b81e7ea24af5c85797d65cdf9c486196e;hb=484a45c4b63b67fb524c033a1191e27f54782b86;hp=21fd2c59844c2131ca032f4ac170f1eb398fd9fc;hpb=1bafe5a8e7e247cb1550070b3a725acd3b1f556d;p=~andy%2Fgtk diff --git a/HACKING b/HACKING index 21fd2c598..8b6c207b8 100644 --- a/HACKING +++ b/HACKING @@ -1,49 +1,64 @@ -If you want to hack on the Gtk+ project, it will make you life easier -to have the following packages installed: +If you want to hack on the GTK+ project, you'll need to have +the following packages installed: - - GNU autoconf 2.12 - - GNU automake 1.3 - (Beta releases are at ftp://ftp.cygnus.com/pub/tromey) - - GNU libtool 1.2 + - GNU autoconf 2.62 + - GNU automake 1.11 + - GNU libtool 2.2 + - indent (GNU indent 1.9.1 is known good) + - GNU gettext 10.40 These should be available by ftp from ftp.gnu.org or any of the fine GNU mirrors. Beta software can be found at alpha.gnu.org. -If you are accessing gtk+ via CVS, then you will need to take several -steps to get it to compile. You can do all these steps at once -by running: +Up-to-date instructions about developing GNOME applications and libraries +can be found here: - cvsroot/gtk+# ./autogen.sh - -Basically this does the following for you: + http://library.gnome.org/devel/ - cvsroot/gtk+# aclocal; automake; autoconf - cvsroot/gtk+/glib# aclocal; automake; autoconf +Information about using git with GNOME can be found here: - The above commands create the "configure" script. Now you - can run the configure script in cvsroot/gtk+ to create all - the Makefiles. You only need to call "configure" in cvsroot/gtk+ - as the one in glib will be invoked automatically. + http://live.gnome.org/Git -Before running autogen.sh or configure, make sure you have libtool -in your path. +In order to get GIT GTK+ installed on your system, you need to have +the most recent GIT versions of GLib, Pango, and ATK installed as well. +The installation process of these libraries is similar to that of GTK+, +but needs to be fulfilled prior to installation of GTK+. -Note that autogen.sh runs configure for you. If you wish to pass -options like --prefix=/usr to configure you can give those options -to autogen.sh and they will be passed on to configure. +If at all possible, please use GIT to get the latest development version of +gtk+ and glib. You can do the following to get glib and gtk+ from GIT: + + $ git clone git://git.gnome.org/glib + $ git clone git://git.gnome.org/pango + $ git clone git://git.gnome.org/atk + $ git clone git://git.gnome.org/gtk+ -If at all possible, please use CVS to get the latest development version of -gtk+. You can do the following to get gtk+ from cvs: +Note: if you plan to push changes to back to the master repository and +have a gnome account, you want to use the following instead: - $ export CVSROOT=':pserver:anonymous@cvs.gimp.org:/debian/home/gnomecvs' - $ cvs login - (there is no password, just hit return) - $ cvs -z9 checkout gtk+ + $ git clone ssh://@git.gnome.org/git/gtk+ -Please submit patches to the gtk-list@redhat.com mailing list (you must -subscribe before you post, e-mail gtk-list-request@redhat.com with a -subject of "subscribe"). All kinds of contributions are accepted. -Patches that you wish to go into the distribution should also be uploaded -to ftp://ftp.gimp.org/incoming. Follow the rules there for naming your -patches. +To compile the GIT version of GTK+ on your system, you will need to take +several steps to setup the tree for compilation. You can do all these +steps at once by running: + + gtk+$ ./autogen.sh + +Basically this does the following for you: + + gtk+$ aclocal; automake; autoconf + +The above commands create the `configure' script. Now you +run the `configure' script in `gtk+/' to create all Makefiles. +More information about that in `INSTALL'. + +Before running `autogen.sh' or `configure', make sure you have libtool +in your path. + +Note that autogen.sh runs configure for you. If you wish to pass +options like `--prefix=/usr' to `configure' you can give those options +to `autogen.sh' and they will be passed on to `configure'. +For information about submitting patches and pushing changes +to GIT, see the `README' and `README.commits' files. In particular, +don't, under any circumstances, push anything to GIT before +reading and understanding `README.commmits'.