HACKING 2.03 KB
Newer Older
1 2 3
If you want to hack on the Gtk+ project, it will make you life easier
to have the following packages installed:

4 5
	- GNU autoconf 2.13
	- GNU automake 1.4
Owen Taylor's avatar
Owen Taylor committed
6
	        (Beta releases are at ftp://ftp.cygnus.com/pub/tromey)
Manish Singh's avatar
Manish Singh committed
7
	- GNU libtool 1.2d
8
	- indent (GNU indent 1.9.1 is known good)
Owen Taylor's avatar
Owen Taylor committed
9 10
	- GNU gettext 10.35
		Available in ftp://alpha.gnu.org/gnu
11

Owen Taylor's avatar
Owen Taylor committed
12
These should be available by ftp from ftp.gnu.org or any of the
13 14
fine GNU mirrors.  Beta software can be found at alpha.gnu.org.

15
In order to get CVS gtk+ installed on your system, you need to have
16 17
the most recent CVS version of glib, pango, and atk installed as well.
The installation process of these libraries is similar to that of gtk+, but
18 19 20 21 22
needs to be fulfilled prior to installation of gtk+.

To compile a CVS 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:
23

24 25 26 27 28
        cvsroot/gtk+# ./autogen.sh
   
Basically this does the following for you:

  	cvsroot/gtk+# aclocal; automake; autoconf
29

30 31
        The above commands create the "configure" script.  Now you
	can run the configure script in cvsroot/gtk+ to create all
32
	the Makefiles.
33 34 35 36 37 38 39 40 41

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.

If at all possible, please use CVS to get the latest development version of
42
gtk+ and glib.  You can do the following to get glib and gtk+ from cvs:
43

44
   $ export CVSROOT=':pserver:anonymous@cvs.gnome.org:/cvs/gnome'
45 46
   $ cvs login
     (there is no password, just hit return)
47
   $ cvs -z3 checkout glib
48 49
   $ cvs -z3 checkout pango
   $ cvs -z3 checkout atk
50 51 52 53 54 55 56
   $ cvs -z3 checkout gtk+

For information about submitting patches and commiting changes
to CVS, see the README and README.cvs-commits files. In particular, 
don't, under any circumstances, commit anything to CVS before
reading and understanding README.cvs-commmits.

57