Update Cairo, Pixman; update FF4beta - still broken, cannot pass fresh cairo correctly to it yet

svn path=/nixpkgs/trunk/; revision=24714
This commit is contained in:
Michael Raskin 2010-11-16 21:05:54 +00:00
parent d3d18bca23
commit e59ddf7bcb
4 changed files with 79 additions and 5 deletions

View File

@ -13,16 +13,17 @@
rec {
firefoxVersion = "4.0b6";
firefoxVersion = "4.0b7";
xulVersion = "2.0b6"; # this attribute is used by other packages
xulVersion = "2.0b7"; # this attribute is used by other packages
src = fetchurl {
url = "http://releases.mozilla.org/pub/mozilla.org/firefox/releases/${firefoxVersion}/source/firefox-${firefoxVersion}.source.tar.bz2";
sha256 = "1ssgb41h43kbf012iwdybf9kp2gfqkg3icf81dg8ibwr2cd0kmz2";
sha256 = "02cc466a92af828ff3bc563d4515bd98064cf5f136b5871e072b9408fb4db128";
};
enableParallelBuilding = true;
commonConfigureFlags =
[ "--enable-optimize"
@ -48,11 +49,11 @@ rec {
inherit src;
buildInputs =
[ pkgconfig gtk perl zip libIDL libjpeg libpng zlib cairo bzip2
[ pkgconfig gtk perl zip libIDL libjpeg libpng zlib cairo bzip2
python dbus dbus_glib pango freetype fontconfig xlibs.libXi
xlibs.libX11 xlibs.libXrender xlibs.libXft xlibs.libXt file
alsaLib nspr /* nss */ libnotify xlibs.pixman libvpx yasm mesa
wirelesstools xlibs.libXscrnsaver xlibs.scrnsaverproto
wirelesstools xlibs.libXScrnSaver xlibs.scrnsaverproto
xlibs.libXext xlibs.xextproto
];

View File

@ -0,0 +1,60 @@
{ postscriptSupport ? true
, pdfSupport ? true
, pngSupport ? true
, xcbSupport ? false
, stdenv, fetchurl, pkgconfig, x11, fontconfig, freetype
, zlib, libpng, pixman, libxcb ? null, xcbutil ? null
}:
assert postscriptSupport -> zlib != null;
assert pngSupport -> libpng != null;
assert xcbSupport -> libxcb != null && xcbutil != null;
stdenv.mkDerivation rec {
name = "cairo-1.10.0";
src = fetchurl {
url = "http://cairographics.org/releases/${name}.tar.gz";
sha256 = "1cllxp8rx5zxkfpn36ysqg1kqz5d1cvbbf2fsy440n8m8v6f8b0g";
};
buildInputs =
[ pkgconfig x11 fontconfig pixman ] ++
stdenv.lib.optionals xcbSupport [ libxcb xcbutil ];
propagatedBuildInputs =
[ freetype ] ++
stdenv.lib.optional postscriptSupport zlib ++
stdenv.lib.optional pngSupport libpng;
configureFlags =
stdenv.lib.optional xcbSupport "--enable-xcb" ++
stdenv.lib.optional pdfSupport "--enable-pdf";
preConfigure = ''
# Work around broken `Requires.private' that prevents Freetype
# `-I' flags to be propagated.
sed -i "src/cairo.pc.in" \
-es'|^Cflags:\(.*\)$|Cflags: \1 -I${freetype}/include/freetype2 -I${freetype}/include|g'
'';
meta = {
description = "A 2D graphics library with support for multiple output devices";
longDescription = ''
Cairo is a 2D graphics library with support for multiple output
devices. Currently supported output targets include the X
Window System, Quartz, Win32, image buffers, PostScript, PDF,
and SVG file output. Experimental backends include OpenGL
(through glitz), XCB, BeOS, OS/2, and DirectFB.
Cairo is designed to produce consistent output on all output
media while taking advantage of display hardware acceleration
when available (e.g., through the X Render Extension).
'';
homepage = http://cairographics.org/;
licenses = [ "LGPLv2+" "MPLv1" ];
};
}

View File

@ -967,6 +967,16 @@ let
buildInputs = [pkgconfig perl ];
})) // {inherit perl ;};
pixman_0_20_0 = (stdenv.mkDerivation ((if overrides ? pixman then overrides.pixman else x: x) {
name = "pixman-0.20.0";
builder = ./builder.sh;
src = fetchurl {
url = mirror://xorg/individual/lib/pixman-0.20.0.tar.bz2;
sha256 = "1dc804v98222n5awx1x1inwwdp6p7yksiw5yr8jip2pk3fbak627";
};
buildInputs = [pkgconfig perl ];
})) // {inherit perl ;};
printproto = (stdenv.mkDerivation ((if overrides ? printproto then overrides.printproto else x: x) {
name = "printproto-1.0.4";
builder = ./builder.sh;

View File

@ -2619,6 +2619,9 @@ let
buddy = callPackage ../development/libraries/buddy { };
cairo = callPackage ../development/libraries/cairo { };
cairo_1_10_0 = callPackage ../development/libraries/cairo/1.10.nix {
pixman = xlibs.pixman_0_20_0;
};
cairomm = callPackage ../development/libraries/cairomm { };