2014-08-31 22:37:57 +02:00
|
|
|
{ stdenv, fetchurl, pkgconfig, libpng, libjpeg, expat, libXaw
|
2015-09-15 11:26:18 +02:00
|
|
|
, yacc, libtool, fontconfig, pango, gd, xorg, gts, gettext, cairo
|
2017-01-09 23:24:17 +01:00
|
|
|
, ApplicationServices
|
2014-08-31 22:37:57 +02:00
|
|
|
}:
|
|
|
|
|
|
|
|
stdenv.mkDerivation rec {
|
|
|
|
version = "2.32.0";
|
|
|
|
name = "graphviz-${version}";
|
|
|
|
|
|
|
|
src = fetchurl {
|
|
|
|
url = "http://www.graphviz.org/pub/graphviz/ARCHIVE/${name}.tar.gz";
|
|
|
|
sha256 = "0ym7lw3xnkcgbk32vfmm3329xymca60gzn90rq6dv8887qqv4lyq";
|
|
|
|
};
|
|
|
|
|
|
|
|
buildInputs =
|
|
|
|
[ pkgconfig libpng libjpeg expat libXaw yacc libtool fontconfig
|
|
|
|
pango gd gts
|
2015-09-15 11:26:18 +02:00
|
|
|
] ++ stdenv.lib.optionals (xorg != null) [ xorg.xlibsWrapper xorg.libXrender ]
|
2017-01-09 23:24:17 +01:00
|
|
|
++ stdenv.lib.optionals stdenv.isDarwin [ ApplicationServices gettext ];
|
2014-08-31 22:37:57 +02:00
|
|
|
|
2015-10-06 20:31:39 +02:00
|
|
|
CPPFLAGS = stdenv.lib.optionalString (stdenv.system == "x86_64-darwin") "-I${cairo.dev}/include/cairo";
|
2014-08-31 22:37:57 +02:00
|
|
|
|
|
|
|
configureFlags =
|
2016-04-16 19:37:32 +02:00
|
|
|
[ "--with-pngincludedir=${libpng.dev}/include"
|
2016-01-24 08:29:34 +01:00
|
|
|
"--with-pnglibdir=${libpng.out}/lib"
|
2016-04-16 19:36:59 +02:00
|
|
|
"--with-jpegincludedir=${libjpeg.dev}/include"
|
2016-01-24 08:29:29 +01:00
|
|
|
"--with-jpeglibdir=${libjpeg.out}/lib"
|
2016-04-16 18:49:30 +02:00
|
|
|
"--with-expatincludedir=${expat.dev}/include"
|
2016-01-24 08:29:09 +01:00
|
|
|
"--with-expatlibdir=${expat.out}/lib"
|
2016-11-24 08:28:56 +01:00
|
|
|
"--with-ltdl-include=${libtool}/include"
|
|
|
|
"--with-ltdl-lib=${libtool.lib}/lib"
|
2014-08-31 22:37:57 +02:00
|
|
|
"--with-cgraph=no"
|
|
|
|
"--with-sparse=no"
|
|
|
|
]
|
2015-09-15 11:26:18 +02:00
|
|
|
++ stdenv.lib.optional (xorg == null) "--without-x";
|
2014-08-31 22:37:57 +02:00
|
|
|
|
2016-02-26 18:38:15 +01:00
|
|
|
hardeningDisable = [ "fortify" ];
|
2016-02-12 02:25:17 +01:00
|
|
|
|
2014-08-31 22:37:57 +02:00
|
|
|
preBuild = ''
|
|
|
|
sed -e 's@am__append_5 *=.*@am_append_5 =@' -i lib/gvc/Makefile
|
|
|
|
'';
|
|
|
|
|
|
|
|
# "command -v" is POSIX, "which" is not
|
|
|
|
postInstall = ''
|
|
|
|
sed -i 's|`which lefty`|"'$out'/bin/lefty"|' $out/bin/dotty
|
|
|
|
sed -i 's|which|command -v|' $out/bin/vimdot
|
|
|
|
'';
|
|
|
|
|
|
|
|
meta = {
|
|
|
|
homepage = "http://www.graphviz.org/";
|
|
|
|
description = "Open source graph visualization software";
|
|
|
|
|
|
|
|
longDescription = ''
|
|
|
|
Graphviz is open source graph visualization software. Graph
|
|
|
|
visualization is a way of representing structural information as
|
|
|
|
diagrams of abstract graphs and networks. It has important
|
|
|
|
applications in networking, bioinformatics, software engineering,
|
|
|
|
database and web design, machine learning, and in visual
|
|
|
|
interfaces for other technical domains.
|
|
|
|
'';
|
|
|
|
|
2016-08-02 16:50:15 +02:00
|
|
|
platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
|
2016-05-16 22:30:20 +02:00
|
|
|
maintainers = with stdenv.lib.maintainers; [ bjornfor raskin ];
|
2014-08-31 22:37:57 +02:00
|
|
|
inherit version;
|
2014-10-07 08:32:49 +02:00
|
|
|
branch = "2.32";
|
2014-08-31 22:37:57 +02:00
|
|
|
};
|
|
|
|
}
|