lol
1{ stdenv, fetchurl, pkgconfig, libpng, libjpeg, expat, libXaw
2, yacc, libtool, fontconfig, pango, gd, xorg, gts, gettext, cairo
3}:
4
5stdenv.mkDerivation rec {
6 version = "2.32.0";
7 name = "graphviz-${version}";
8
9 src = fetchurl {
10 url = "http://www.graphviz.org/pub/graphviz/ARCHIVE/${name}.tar.gz";
11 sha256 = "0ym7lw3xnkcgbk32vfmm3329xymca60gzn90rq6dv8887qqv4lyq";
12 };
13
14 buildInputs =
15 [ pkgconfig libpng libjpeg expat libXaw yacc libtool fontconfig
16 pango gd gts
17 ] ++ stdenv.lib.optionals (xorg != null) [ xorg.xlibsWrapper xorg.libXrender ]
18 ++ stdenv.lib.optional (stdenv.system == "x86_64-darwin") gettext;
19
20 CPPFLAGS = stdenv.lib.optionalString (stdenv.system == "x86_64-darwin") "-I${cairo}/include/cairo";
21
22 configureFlags =
23 [ "--with-pngincludedir=${libpng}/include"
24 "--with-pnglibdir=${libpng}/lib"
25 "--with-jpegincludedir=${libjpeg}/include"
26 "--with-jpeglibdir=${libjpeg}/lib"
27 "--with-expatincludedir=${expat}/include"
28 "--with-expatlibdir=${expat}/lib"
29 "--with-cgraph=no"
30 "--with-sparse=no"
31 ]
32 ++ stdenv.lib.optional (xorg == null) "--without-x";
33
34 preBuild = ''
35 sed -e 's@am__append_5 *=.*@am_append_5 =@' -i lib/gvc/Makefile
36 '';
37
38 # "command -v" is POSIX, "which" is not
39 postInstall = ''
40 sed -i 's|`which lefty`|"'$out'/bin/lefty"|' $out/bin/dotty
41 sed -i 's|which|command -v|' $out/bin/vimdot
42 '';
43
44 meta = {
45 homepage = "http://www.graphviz.org/";
46 description = "Open source graph visualization software";
47
48 longDescription = ''
49 Graphviz is open source graph visualization software. Graph
50 visualization is a way of representing structural information as
51 diagrams of abstract graphs and networks. It has important
52 applications in networking, bioinformatics, software engineering,
53 database and web design, machine learning, and in visual
54 interfaces for other technical domains.
55 '';
56
57 hydraPlatforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
58 maintainers = with stdenv.lib.maintainers; [ simons bjornfor raskin ];
59 inherit version;
60 branch = "2.32";
61 };
62}