Commit 1287e31e authored by Jeremy Bicha's avatar Jeremy Bicha

New upstream version 3.14.5

parents a45f80ef f935432a

Too many changes to show.

To preserve performance only 1000 of 1000+ files are displayed.

Please do not mail any of the authors listed here
asking questions about this version of GTK+.
Original Authors
Peter Mattis <>
Spencer Kimball <>
Josh MacDonald <>
The GTK+ Team (in alphabetical order)
Shawn T. Amundson <>
Jerome Bolliet <>
Damon Chaplin <>
Tony Gale <>
Jeff Garzik <>
Lars Hamann <>
Raja R Harinath <>
Carsten Haitzler <>
Tim Janik <>
Stefan Jeske <>
Elliot Lee <>
Raph Levien <>
Ian Main <>
Federico Mena <>
Paolo Molaro <>
Jay Painter <>
Manish Singh <>
Owen Taylor <>
There are many others who have contributed patches; we thank them,
GTK+ is much better because of them.
Over time, GTK+ has incorporated some pieces of software which
started as independent projects. We list the original authors here:
MS-Windows theme engine
Raymond Penners
Dom Lachowicz
Pixbuf theme engine
Owen Taylor
IME input method
Takuro Ashie
Mac OS X backend
Anders Carlsson
DirectFB backend
Denis Oliver Kropp
Sven Neumann
Mike Emmel
This diff is collapsed.
If you want to hack on the GTK+ project, you'll need to have
the following packages installed:
- 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 or any of the
fine GNU mirrors. Beta software can be found at
Up-to-date instructions about developing GNOME applications and libraries
can be found here:
Information about using git with GNOME can be found here:
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 clone git://
$ git clone git://
$ git clone git://
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>
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+$ ./
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 `' or `configure', make sure you have libtool
in your path.
Note that runs configure for you. If you wish to pass
options like `--prefix=/usr' to `configure' you can give those options
to `' 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'.
GTK+ requires the following packages:
- The GLib, Pango, GdkPixbuf, ATK and cairo libraries, available at
the same location as GTK+. GTK+ 3.14.5 requires at least
GLib 2.41.2, Pango 1.36.7,
GdkPixbuf 2.30.0, ATK 2.12.0
and cairo 1.12.0.
- Each GDK backend has its own backend-specific requirements. For
the X11 backend, X11 R6 and XInput version 2 (as well as a number
of other extensions) are required.
- gobject-introspection 1.39.0 or newer.
Simple install procedure
% tar xf gtk+-3.14.5.tar.xz # unpack the sources
% cd gtk+-3.14.5 # change to the toplevel directory
% ./configure # run the `configure' script
% make # build GTK+
[ Become root if necessary ]
% make install # install GTK+
The Details
Complete information about installing GTK+ and related libraries
can be found in the file:
Or online at:
## for GTK+
include $(top_srcdir)/Makefile.decl
SRC_SUBDIRS = util gdk gtk libgail-util modules demos tests testsuite examples
SUBDIRS = po po-properties $(SRC_SUBDIRS) docs m4macros build
NEWS.pre-1-0 \
README.commits \
README.win32 \
config.h.win32 \
makefile.msc \ \ \
po/README.translators \
$(srcdir)/m4/gtk-doc.m4 \
$(srcdir)/INSTALL \
$(srcdir)/README \
$(srcdir)/omf.make \
$(srcdir)/xmldocs.make \
$(srcdir)/gtk-doc.make \
## Copy .pc files to target-specific names
gtk+-x11-3.0.pc gtk+-win32-3.0.pc gtk+-quartz-3.0.pc gtk+-broadway-3.0.pc gtk+-wayland-3.0.pc: gtk+-3.0.pc
rm -f $@ && \
cp gtk+-3.0.pc $@
gdk-x11-3.0.pc gdk-win32-3.0.pc gdk-quartz-3.0.pc gdk-broadway-3.0.pc gdk-wayland-3.0.pc: gdk-3.0.pc
rm -f $@ && \
cp gdk-3.0.pc $@
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = gdk-3.0.pc gtk+-3.0.pc gail-3.0.pc
pkgconfig_DATA += ${GDK_BACKENDS:%=gtk+-%-3.0.pc}
pkgconfig_DATA += ${GDK_BACKENDS:%=gdk-%-3.0.pc}
pkgconfig_DATA += gtk+-unix-print-3.0.pc
gtk+-unix-print-3.0.pc \
gtk+-3.0.pc \
gtk+-x11-3.0.pc \
gtk+-win32-3.0.pc \
gtk+-quartz-3.0.pc \
gtk+-broadway-3.0.pc \
gtk+-wayland-3.0.pc \
gdk-3.0.pc \
gdk-x11-3.0.pc \
gdk-win32-3.0.pc \
gdk-quartz-3.0.pc \
gdk-broadway-3.0.pc \
gdk-wayland-3.0.pc \
gail-3.0.pc \
if test "$(srcdir)" = "."; then :; else \
rm -f ChangeLog; \
$(AM_V_GEN) if test -d "$(srcdir)/.git"; then \
(GIT_DIR=$(top_srcdir)/.git ./missing --run git log GTK_2_16_0^^.. --stat) | fmt --split-only > $@.tmp \
&& mv -f $@.tmp $@ \
|| ($(RM) $@.tmp; \
echo Failed to generate ChangeLog, your ChangeLog may be outdated >&2; \
(test -f $@ || echo git-log is required to generate this file >> $@)); \
else \
test -f $@ || \
(echo A git checkout and git-log is required to generate ChangeLog >&2 && \
echo A git checkout and git-log is required to generate this file >> $@); \
rm -f $(DESTDIR)$(pkgconfigdir)/gtk+-3.0.pc
if test -f $(srcdir)/ && test -f $(srcdir)/ ; then \
CONFIG_FILES="INSTALL:$(srcdir)/ README:$(srcdir)/" \
$(SHELL) config.status \
&& cp INSTALL README $(distdir) ; \
.PHONY: ChangeLog
--enable-gtk-doc \
--disable-doc-cross-references \
--enable-man \
--disable-maintainer-mode \