HomeUser GuideDevelopmentDownloadLegal

Development: Build-time Tools Used

Tools Overview

The project mulifex makes use of a number of build-time tools.

The following table lists these tools along with the versions, homepages and licensing information.

Tools Version Homepage
saxon 6.5.2 http://saxon.sourceforge.net/
apache-ant 1.6.1 http://ant.apache.org/
QDox 1.5 http://qdox.codehaus.org/
tooldoc - Project specific
ant-contrib 0.5 http://ant-contrib.sourceforge.net/
mingw 3.1.0-1 http://mingw.sourceforge.net/
ant-tools - Project specific
tigris-style 1.1 http://style.tigris.org/

Tools Details

The following section lists detail information for each of the libraries.

Please refer to the corresponding tool.xml description in the tool directory for further information.

saxon

XSLT and XQuery processor.

Saxon is an XSLT and XQuery processor that is used to replace Xalan in Ant tasks. The XalanXSLT implementation bundled with Ant is not capable of reparsing the same document twice within a stylesheet which is required by some of the tools.

Saxon is only used if ant is invoked using the project commandline tool build.sh or build.cmd.

When using Eclipse and the built-in ant-runner Saxon is not used. Check out the utility documentation of Eclipse to use an "endorsed" Xerces.

Version: 6.5.2
Homepage: http://saxon.sourceforge.net/
License: Mozilla Public License, Version 1.0

apache-ant

Java-based build tool similar to the Unix make tool.

Version: 1.6.1
Homepage: http://ant.apache.org/
License: Apache Software License, Version 1.1

QDox

QDox is a high speed, small footprint parser for extracting class/interface/method definitions from source files complete with JavaDoc @tags. It is designed to be used by active code generators or documentation tools.

Version: 1.5
Homepage: http://qdox.codehaus.org/
License: Apache 1.1 Style Software License

tooldoc

Ant task and XSLT documentation drivers for tool descriptions.

Each tool used resides in its own folder and is described by a simple XML file (take a look at some of the tool.xml files in the /tool/<toolgroup>/<toolname> subfolders.

Groups of tools (such as build tools, libraries, etc.) are also grouped in a folder and there is an overview description file called tools.xml which describes the tool group. Take a look e.g. at /tool/build/tools.xml.

Generation of tool information webpages is a two-step process:

  1. Generation of a unified tool information XML file using the toollist ant task (have a look at the ant driver file /tool/build/toodoc/ant.xml on how to invoke toollist).
  2. Generation of the a single webpage for each tool group using the tooldoc style sheets (used in build.xml to build pages like the one you're currently viewing).

There is not much documentation about tooldoc but most of what's here should be self-explanatory -- and of course there's also the source :-).

Version: -
Homepage: Project specific
License: Project specific
Requires: apache-ant 1.6.1
ant-tools (project specific)

ant-contrib

A collection of tasks and utilities for Apache Ant.

Version: 0.5
Homepage: http://ant-contrib.sourceforge.net/
License: Apache Software License, Version 1.1
Requires: apache-ant 1.6.1

mingw

Minimalist GNU For Windows.

A collection of freely available and freely distributable Windows specific header files and import libraries combined with GNU toolsets that allow one to produce native Windows programs that do not rely on any 3rd-party C runtime DLLs.

There are lots of file packages available for download.

The easiest way is to get the single installer file MinGW-3.1.0-1.exe which is listed in the MinGW package.

Version: 3.1.0-1
Homepage: http://mingw.sourceforge.net/
License: GNU General Public License, Version 2.

ant-tools

Custom MuliFex Ant Tool Tasks.

Currently the following tasks are included:

toollist
Helper task for the tooldoc project tool.
xsltdoc
Extended xslt task that automatically passes in some parameters (like generation source, timestamp, etc.). This task is mainly to prevent cluttered build files that have the same copy/pasted lines all over the place.
webdoc
Documentation build task that builds webpages for the tigris-style. It takes a couple of HTML files as well as a site description file as input and creates the whole webpage including navigation, breadcrumbs, etc. pp. Take a look at build.xml on how it is used for MuliFex.
Version: -
Homepage: Project specific
License: Project specific
Requires: apache-ant 1.6.1
dom4j 1.4

tigris-style

Cascading stylesheets for web applications.

The project webpage as well as the user guide and the developer documentation make use of the tigris style.

This "build tool" therefore consists of resources used unmodified as well as some driver scripts to generate the documentation.

Customizations to the tigris style are stored in the documentation resource folder of the project.

Version: 1.1
Homepage: http://style.tigris.org/
License: Apache Software License, Version 1.1