summaryrefslogtreecommitdiff
path: root/HACKING
blob: 53ccc8f72c78826d43e1862843f0937d3eb061be (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
If you want to hack on the GTK+ project, you'll need to have
the following packages installed:

	- GNU autoconf 2.52
	- GNU automake 1.4
	- GNU libtool 1.4
	- 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.

In order to get CVS gtk+ installed on your system, you need to have
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
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:

        cvsroot/gtk+# ./autogen.sh
   
Basically this does the following for you:

  	cvsroot/gtk+# aclocal; automake; autoconf

        The above commands create the "configure" script.  Now you
	can run the configure script in cvsroot/gtk+ to create all
	the Makefiles.

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
gtk+ and glib.  You can do the following to get glib and gtk+ from cvs:

   $ export CVSROOT=':pserver:anonymous@cvs.gnome.org:/cvs/gnome'
   $ cvs login
     (there is no password, just hit return)
   $ cvs -z3 checkout glib
   $ cvs -z3 checkout pango
   $ cvs -z3 checkout atk
   $ cvs -z3 checkout gtk+

For information about submitting patches and committing 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.