summary refs log tree commit diff
path: root/pkgs/development/tools/documentation/doxygen/default.nix
blob: 6b98dc7b58c551d1395349d3c8fcd4db83d26319 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
{stdenv, fetchurl, graphviz, perl, flex, bison, gnumake, libX11, libXext, qt}:

stdenv.mkDerivation rec {
  name = "doxygen-1.6.1";

  src = fetchurl {
    url = "ftp://ftp.stack.nl/pub/users/dimitri/${name}.src.tar.gz";
    sha256 = "1lrrsljidil1860a8528qy3hiif5y47i89n1x1zhyjm1abqfsnjc";
  };

  patches = [ ./tmake.patch ];

  buildInputs = [ graphviz perl flex bison libX11 libXext ]
    ++ (if qt != null then [ qt ] else []);

  prefixKey = "--prefix ";
  configureFlags = "--release"
		 + (if qt == null then "" else " --with-doxywizard")
		 ;

  preConfigure =
   (if qt == null
    then ""
    else ''
      echo "using QTDIR=${qt}..."
      export QTDIR=${qt}
    '');
      # export CPLUS_INCLUDE_PATH="${qt}/include:$CPLUS_INCLUDE_PATH"
      # export LIBRARY_PATH="${qt}/lib:$LIBRARY_PATH"

  meta = {
    description = "Doxygen, a 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.
    '';

    homepage = http://doxygen.org/;

    license = "GPLv2+";
  };
}