* Latest GTK+, glib, ATK, Pango, FreeType, Cairo, Fontconfig.

svn path=/nixpkgs/branches/stdenv-updates/; revision=11017
This commit is contained in:
Eelco Dolstra 2008-03-07 15:43:43 +00:00
parent 7ba8833f14
commit 5ebab60b5e
11 changed files with 167 additions and 15 deletions

View file

@ -9,19 +9,31 @@ assert postscriptSupport -> zlib != null;
assert pngSupport -> libpng != null;
stdenv.mkDerivation {
name = "cairo-1.4.6";
name = "cairo-1.4.14";
src = fetchurl {
url = http://cairographics.org/releases/cairo-1.4.6.tar.gz;
url = http://cairographics.org/releases/cairo-1.4.14.tar.gz;
sha256 = "15l87pzmlwbxk6m4102g2zln4drq0l32qs60ccs5bpmcnky2lqya";
};
patches = [
# http://bugs.freedesktop.org/show_bug.cgi?id=10989
./isspace.patch
];
buildInputs = [
pkgconfig x11 fontconfig freetype
(if pngSupport then libpng else null)
];
propagatedBuildInputs = [
(if postscriptSupport then zlib else null)
(if pngSupport then libpng else null)
];
propagatedBuildInputs =
stdenv.lib.optional postscriptSupport zlib ++
stdenv.lib.optional pngSupport libpng;
configureFlags =
(if pdfSupport then ["--enable-pdf"] else []);
meta = {
description = "A 2D graphics library with support for multiple output devices";
homepage = http://cairographics.org/;
};
}

View file

@ -3,12 +3,22 @@
assert freetype != null && expat != null;
stdenv.mkDerivation {
name = "fontconfig-2.4.2";
builder = ./builder.sh;
name = "fontconfig-2.5.0";
src = fetchurl {
url = http://fontconfig.org/release/fontconfig-2.4.2.tar.gz;
sha256 = "0qqk6hqh8ardqlgzdgj0zjn6a61z4j6ba9x3xs8pp0c2650xd8v3";
url = http://fontconfig.org/release/fontconfig-2.5.0.tar.gz;
sha256 = "1zhfvxgslgpnlz13ksiq90jgl0747n81c1nkg5klksxp9kdvmiil";
};
buildInputs = [freetype];
propagatedBuildInputs = [expat]; # !!! shouldn't be necessary, but otherwise pango breaks
preConfigure = ''
configureFlags="--with-confdir=$out/etc/fonts --disable-docs --with-default-fonts="
'';
meta = {
description = "A library for font customization and configuration";
homepage = http://fontconfig.org/;
};
}

View file

@ -1,9 +1,15 @@
{stdenv, fetchurl}:
stdenv.mkDerivation {
name = "freetype-2.3.1";
name = "freetype-2.3.5";
src = fetchurl {
url = mirror://sourceforge/freetype/freetype-2.3.1.tar.bz2;
sha256 = "0mb11mprdlcvxyjb62ganwfgvzg4kk3rmr677li8j0484b6ywf5y";
url = mirror://sourceforge/freetype/freetype-2.3.5.tar.bz2;
sha256 = "0zk73lj0rrq4ahg4lfh6qzgs7agsqda3hpnjvy08riq624x7ld8v";
};
meta = {
description = "A font engine";
homepage = http://www.freetype.org/;
};
}

View file

@ -0,0 +1,11 @@
args: with args;
stdenv.mkDerivation {
name = "atk-1.20.0";
src = fetchurl {
url = mirror://gnome/sources/atk/1.20/atk-1.20.0.tar.bz2;
sha256 = "1ja76wd40ibmvgqhl2rnwk217znb7rnccw29jah8s3avpcn2yfqz";
};
buildInputs = [pkgconfig perl];
propagatedBuildInputs = [glib];
}

View file

@ -0,0 +1,16 @@
args: with args;
rec {
glib = (import ./glib) args;
atk = (import ./atk) (args // { inherit glib; });
pango = (import ./pango) (args // { inherit glib; });
gtk = (import ./gtk+) (args // { inherit glib atk pango; } );
glibmm = (import ./glibmm) (args // { inherit glib; });
gtkmm = (import ./gtkmm) (args // { inherit gtk atk glibmm; });
}

View file

@ -0,0 +1,17 @@
args: with args;
stdenv.mkDerivation {
name = "glib-2.14.6";
src = fetchurl {
url = mirror://gnome/sources/glib/2.14/glib-2.14.6.tar.bz2;
sha256 = "1fi4xb07d7bfnfi65snvbi6i5kzhr3kad8knbwklj47z779vppvq";
};
buildInputs = [pkgconfig gettext perl];
meta = {
description = "A C library providing non-GUI functionality";
homepage = http://www.gtk.org/;
};
}

View file

@ -0,0 +1,13 @@
args: with args;
stdenv.mkDerivation {
name = "glibmm-2.12.10";
src = fetchurl {
url = http://ftp.gnome.org/pub/GNOME/sources/glibmm/2.12/glibmm-2.12.10.tar.bz2;
sha256 = "02rjjdh0f6kafa1sn4y5ykvm4f2qn3yh4kr4lngcv7vzasqn1dr1";
};
buildInputs = [pkgconfig];
propagatedBuildInputs = [glib libsigcxx];
}

View file

@ -0,0 +1,23 @@
args: with args;
stdenv.mkDerivation {
name = "gtk+-2.12.8";
src = fetchurl {
url = mirror://gnome/sources/gtk+/2.12/gtk+-2.12.8.tar.bz2;
sha256 = "1vzh73lxpp4m85zxhwjkigc28qnfxfjppxmywvwqj86ablnm8bzz";
};
buildInputs = [pkgconfig perl];
propagatedBuildInputs = [
x11 glib atk pango libtiff libjpeg libpng cairo libXrandr
] ++ stdenv.lib.optional xineramaSupport [libXinerama];
passthru = { inherit libtiff libjpeg libpng; };
meta = {
description = "A multi-platform toolkit for creating graphical user interfaces";
homepage = http://www.gtk.org/;
};
}

View file

@ -0,0 +1,13 @@
args: with args;
stdenv.mkDerivation {
name = "gtkmm-2.10.11";
src = fetchurl {
url = http://ftp.gnome.org/pub/GNOME/sources/gtkmm/2.10/gtkmm-2.10.11.tar.bz2;
sha256 = "1bri9r0k69dmi5xgzrlfllp3adfzhz8dh9zkcvi6sjkgfwi594vx";
};
buildInputs = [pkgconfig];
propagatedBuildInputs = [glibmm gtk atk cairomm];
}

View file

@ -0,0 +1,24 @@
args: with args;
stdenv.mkDerivation {
name = "pango-1.18.4";
src = fetchurl {
url = mirror://gnome/sources/pango/1.18/pango-1.18.4.tar.bz2;
sha256 = "1pggwyvklj5pbfwab0dki8nqhph90nq8j4g2rl8d87xanwpcilvg";
};
buildInputs = [pkgconfig];
propagatedBuildInputs = [x11 glib cairo libpng];
# The configure script doesn't seem to pick up the Cairo cflags.
preConfigure = ''
CAIRO_CFLAGS=$(pkg-config --cflags cairo --debug)
'';
meta = {
description = "A library for laying out and rendering of text, with an emphasis on internationalization";
homepage = http://www.pango.org/;
};
}

View file

@ -2426,7 +2426,7 @@ rec {
inherit fetchurl stdenv;
};
gtkLibs = recurseIntoAttrs gtkLibs210;
gtkLibs = recurseIntoAttrs gtkLibs212;
gtkLibs1x = import ../development/libraries/gtk-libs/1.x {
inherit fetchurl stdenv x11 libtiff libjpeg libpng;
@ -2439,6 +2439,13 @@ rec {
xineramaSupport = true;
};
gtkLibs212 = import ../development/libraries/gtk-libs/2.12 {
inherit fetchurl stdenv pkgconfig gettext perl x11
libtiff libjpeg libpng cairo libsigcxx cairomm;
inherit (xlibs) libXinerama libXrandr;
xineramaSupport = true;
};
gtkmozembedsharp = import ../development/libraries/gtkmozembed-sharp {
inherit fetchurl stdenv mono pkgconfig monoDLLFixer;
inherit (gnome) gtk;