Blob Blame History Raw
If you want to hack on the GTK+ project, you'll need to have
the following packages installed:

        - GNU autoconf 2.54
        - GNU automake 1.7
        - 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.

Up-to-date instructions about developing GNOME applications and libraries
can be found here:

        http://developer.gnome.org

Information about using git with GNOME can be found here:

        http://live.gnome.org/Git

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+.

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+

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:

        $ git clone ssh://<username>@git.gnome.org/git/gtk+

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'.