nixpkgs/pkgs/development/tools/documentation/doxygen/default.nix
2015-01-08 10:26:49 +01:00

56 lines
1.4 KiB
Nix

{ stdenv, fetchurl, perl, python, flex, bison, qt4 }:
let
name = "doxygen-1.8.6";
in
stdenv.mkDerivation {
inherit name;
src = fetchurl {
url = "ftp://ftp.stack.nl/pub/users/dimitri/${name}.src.tar.gz";
sha256 = "0pskjlkbj76m9ka7zi66yj8ffjcv821izv3qxqyyphf0y0jqcwba";
};
patches = [ ./tmake.patch ];
buildInputs =
[ perl python flex bison ]
++ stdenv.lib.optional (qt4 != null) qt4;
prefixKey = "--prefix ";
configureFlags =
[ "--dot dot" ]
++ stdenv.lib.optional (qt4 != null) "--with-doxywizard";
preConfigure =
''
patchShebangs .
'' + stdenv.lib.optionalString (qt4 != null)
''
echo "using QTDIR=${qt4}..."
export QTDIR=${qt4}
'';
makeFlags = "MAN1DIR=share/man/man1";
enableParallelBuilding = true;
meta = {
license = stdenv.lib.licenses.gpl2Plus;
homepage = "http://doxygen.org/";
description = "Source code documentation generator tool";
longDescription = ''
Doxygen is a documentation system for C++, C, Java, Objective-C,
Python, IDL (CORBA and Microsoft flavors), Fortran, VHDL, PHP,
C\#, and to some extent D. It can generate an on-line
documentation browser (in HTML) and/or an off-line reference
manual (in LaTeX) from a set of documented source files.
'';
maintainers = [stdenv.lib.maintainers.simons];
platforms = if qt4 != null then stdenv.lib.platforms.linux else stdenv.lib.platforms.unix;
};
}