summary refs log tree commit diff
path: root/pkgs/development/libraries/cairo
diff options
context:
space:
mode:
authorMichael Raskin <7c6f434c@mail.ru>2010-11-16 21:05:54 +0000
committerMichael Raskin <7c6f434c@mail.ru>2010-11-16 21:05:54 +0000
commite59ddf7bcb51f8d37d37900742fd73435cdcee0f (patch)
tree89f9e0985f3b331cc2418bbf0158d7d0e0b4ba1d /pkgs/development/libraries/cairo
parentd3d18bca232f60ffafa14706c4f3869c1e7a4bb8 (diff)
Update Cairo, Pixman; update FF4beta - still broken, cannot pass fresh cairo correctly to it yet
svn path=/nixpkgs/trunk/; revision=24714
Diffstat (limited to 'pkgs/development/libraries/cairo')
-rw-r--r--pkgs/development/libraries/cairo/1.10.nix60
1 files changed, 60 insertions, 0 deletions
diff --git a/pkgs/development/libraries/cairo/1.10.nix b/pkgs/development/libraries/cairo/1.10.nix
new file mode 100644
index 0000000000000..f1eaf65e69cf2
--- /dev/null
+++ b/pkgs/development/libraries/cairo/1.10.nix
@@ -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" ];
+  };
+}