biglybt: 3.5.0.0 -> 3.6.0.0
[NixPkgs.git] / pkgs / development / ocaml-modules / ocaml-cairo / default.nix
blob2c2ffecf3dbae659c9ba0210ba01e80d9a48096c
1 {stdenv, lib, fetchurl, automake, ocaml, autoconf, gnum4, pkg-config, freetype, lablgtk, unzip, cairo, findlib, gdk-pixbuf, gtk2, pango }:
3 let
4   pname = "ocaml-cairo";
5 in
7 if lib.versionAtLeast ocaml.version "4.06"
8 then throw "${pname} is not available for OCaml ${ocaml.version}"
9 else
11 stdenv.mkDerivation rec {
12   name = "${pname}-${version}";
13   version = "1.2.0";
15   src = fetchurl {
16     url = "http://cgit.freedesktop.org/cairo-ocaml/snapshot/cairo-ocaml-${version}.zip";
17     sha256 = "0l4p9bp6kclr570mxma8wafibr1g5fsjj8h10yr4b507g0hmlh0l";
18   };
20   patches = [ ./META.patch ];
22   strictDeps = true;
24   nativeBuildInputs = [ pkg-config unzip ocaml automake gnum4 autoconf findlib ];
25   buildInputs = [ freetype lablgtk cairo gdk-pixbuf gtk2 pango ];
27   createFindlibDestdir = true;
29  preConfigure = ''
30    aclocal -I support
31    autoconf
32    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE `pkg-config --cflags cairo gdk-pixbuf glib gtk+ pango`"
33    export LABLGTKDIR=${lablgtk}/lib/ocaml/${ocaml.version}/site-lib/lablgtk2
34    cp ${lablgtk}/lib/ocaml/${ocaml.version}/site-lib/lablgtk2/pango.ml ./src
35    cp ${lablgtk}/lib/ocaml/${ocaml.version}/site-lib/lablgtk2/gaux.ml ./src
36   '';
38   postInstall = ''
39     cp META $out/lib/ocaml/${ocaml.version}/site-lib/cairo/
40   '';
42   makeFlags = [ "INSTALLDIR=$(out)/lib/ocaml/${ocaml.version}/site-lib/cairo" ];
44   meta = {
45     homepage = "http://cairographics.org/cairo-ocaml";
46     description = "ocaml bindings for cairo library";
47     license = lib.licenses.gpl2;
48     inherit (ocaml.meta) platforms;
49   };