Ant Task for Doxygen , with Antlib support (since Ant 1.7), 1.6.1 released. Download it now.

Sunday, March 23, 2008

Overview

This package contains the Ant task to use doxygen, a document generation utility software.

Ant was initially designed to be a build maintenance utility - but now it has a whole lot of projects that extend its features beyond its original intentions. To know more about the same - visit Ant Apache home page.

Doxygen is a document generation utility that is used to generate a variety of documents (html/pdf/hlp/dot - among others) from the given set of source files, by parsing the structures and comments in the same.To know more about the same - visit Doxygen home page.

This project released under Apache License, contains the jar task that helps an Ant build maintainer to integrate doxygen tasks with the same. The ideal target audience of the same would be build maintainers and release engineers of the projects who can integrate this Ant Task with the rest of the release system to generate a set of documentation from the latest version of the source tree.
  • The usage manual is available here.
  • For more examples refer to this page.




Update:



Dec 30 2008: Ant 1.6.1 released. See the Download page for options.

Download

The latest binary release is 1.6.1 .

Download the latest binaries from the sourceforge project page, as below.

Prerequisites:

  • Java 5
  • Ant 1.7 for taglib support (Optional)

Binaries:

Sources:

  • Download Sources
  • Browse SVN
  • Check out the latest tree as -
    svn co https://ant-doxygen.svn.sourceforge.net/svnroot/ant-doxygen/trunk/ant_task/ ant-doxygen
Patches:

To submit the patches - please follow the instructions at the Patches page.

Changelog

1.6 (Dec 2008):
   * antlib.xml added to the package.
   * Build system modified to use ivy ( to manage compile-time dependencies better).

1.5( 2008)

    * Code refactored to use Java Generics internally for better maintenance.

1.4( 2004)

    * Attributes 'versionCompatible' , 'configFile', 'doxygenPath' added to the task.

 
Features:
    * 887510 DoxygenTask.java: Attribute 'versionCompatible' added
    * 885849 DoxygenTask.java: Integrate/Remove of task-element support.
    * 883163 DoxygenTask.java: Ant/Java flavor defaults for Doxygen
    * 702402 DoxygenTask.java: Support for multiple INPUTs.
    * 883174 DoxygenTask.java: Support nested attribute specifications.
    * 883150 DoxygenTask.java: configFile attribute added
    * 881633 DoxygenTask.java: doxygenPath attribute added

Bugs Fixed:
    * 793056 FILE_PATTERNS
    * 739884 Support for Doxygen 1.3
    * 772527 Doxygen 1.3.2 Ant task support
    * 875319 plugin do not support the current doxygen version


1.3(Jan 21 2004):
     The Task is now made independent of the doxygen version installation.
    <property> child nodes are added to the task structure.
      *Warning: Tasks written for version 1.2 may break and may need to be rewritten**


1.2(Sep 18 2002):
        Supports Doxygen version 1.2.18

1.1(Sep 12 2002):
  Attribute ignoreVersion added so as to ignore the version check between the doxygen
 version for which the task is written and the doxygen version installed on the system.

1.0(Sep 11 2002):
Initial Revision.

License

The project is released under Apache License. To know more details about the same - please visit license summary on the apache web site.

Saturday, March 22, 2008

Usage

Description

Generates documentation for source files, using the document generation utility doxygen

Dependency


The 'doxygen' binary need to be pre-installed on the system. If it is not in the PATH environment variable of your operating system, please see the attribute 'doxygenPath' as to how to use the same to invoke doxygen.

Parameters


AttributeDescriptionRequired
versionCompatibleThis is the version of doxygen for which the task is compatible. If set and the version of the doxygen installed on the system does not match with this version, the build would break No
doxygenPathThis is the full path to the doxygen executable that is to be used for executing this doxygen task. By default, the task expects the doxygen binary in the path.No
configFilename If set, then the doxygen task would load the configuration properties from this file. No



Parameters specified as nested elements

property

doxygen task can have more than one 'property' nested elements as follows.



AttributeDescriptionRequired
nameThe name of the property in the Doxygen configuration file. Yes.
valueThe value of the property whose name is specified as 'name' attribute in the Doxygen configuration file.Yes.



Defining Doxygen Task


The doxygen task could be defined in 2 ways as follows.

1.6.0+ ( Preferred):

* Copy ant-doxygen.jar from the binary distribution to $ANT_HOME/lib .
* Define a new URI for doxygen as follows, at the antlib library location, antlib:org.doxygen.tools , as follows.








* Note the revised task invocation (with additional uri prefix for doxygen:) above.

Legacy Task Definition (Deprecated):


<taskdef name="doxygen" classname="org.doxygen.tools.DoxygenTask"
classpath="<path_to_ant_doxygen.jar_file>" />
Note: The legacy task definition would be soon deprecated and the users are suggested to switch to the modern task definition at their earliest convenience.





Examples

  1. To generate documentation by default in current directory, basic option.






  2. To generate html documentation recursively for a given directory and suppress latex documentation.

  3. <doxygen:doxygen>

    <property name="INPUT" value="${inputdir}" />
    <property name="RECURSIVE" value="yes" />
    <property name="GENERATE_LATEX" value="false" />
    <property name="PROJECT_NAME" value="Ant-Doxygen" />
    </doxygen:doxygen >


  4. To launch doxygen that is not installed on the path.
  5. <doxygen:doxygen doxygenPath="/usr/local/doxygen-1.2.5/doxygen" >
    <property name="INPUT" value="${inputdir}" />
    <property name="PROJECT_NAME" value="Ant-Doxygen" />
    </doxygen:doxygen>


  6. To launch doxygen that should be run only with doxygen version 1.2.17.

  7. <doxygen:doxygen versionCompatible="1.2.17" >
    <property name="INPUT" value="${inputdir}" />
    <property name="PROJECT_NAME" value="Ant-Doxygen" />
    </doxygen:doxygen >


  8. To launch doxygen that should be run with doxygen versions 1.2.17 and above.

  9. <doxygen:doxygen versionCompatible="1.2.17+" >
    <property name="INPUT" value="${inputdir}" />
    <property name="PROJECT_NAME" value="Ant-Doxygen" />
    </doxygen:doxygen>


  10. To load the doxygen configuration properties from a given file.

<doxygen:doxygen configFilename="/home/myhome/doxygen.cfg" />

Friday, March 21, 2008

Projects

Sunday, January 21, 2007

Feedback


  • Bugs could be submitted here

  • Feature Requests could be submitted here

  • Patches could be submitted here .

Patches

To submit patches - follow these guidelines.


  • Check out the latest tree from subversion here at -

    svn co https://ant-doxygen.svn.sourceforge.net/svnroot/ant-doxygen/trunk/ant_task/ ant-doxygen


  • Make your necessary changes as per Sun Java Formatting conventions.

  • Create a patch as follows -

    $ svn diff > myfix.patch


  • Submit the patch here at - Ant Task for Doxygen Patches