<?xml version="1.0" ?>
<project name="microXml" default="build">
<property name="build.dir" value="build"/>
<target name="init">
<mkdir dir="build/classes/test"/>
<mkdir dir="build/classes/all"/>
<mkdir dir="build/classes/parser"/>
<mkdir dir="build/src/parser"/>
<mkdir dir="build/doc"/>
</target>
<target name="compile">
<javac destdir="build/classes/all">
<src path="src/parser"/>
<src path="src/state"/>
</javac>
<java classname="org.qwerty.microxml.state.StateHolder" outputproperty="states">
<classpath path="build/classes/all"/>
<arg value="states"/>
</java>
<java classname="org.qwerty.microxml.state.StateHolder" outputproperty="characters">
<classpath path="build/classes/all"/>
<arg value="characters"/>
</java>
<copy todir="build/src/parser" overwrite="true">
<fileset dir="src/parser" includes="**/*.java"/>
<filterset>
<filter token="States" value="${states}"/>
<filter token="Characters" value="${characters}"/>
</filterset>
</copy>
<javac srcdir="build/src/parser" destdir="build/classes/parser" source="1.1" target="1.1" debug="no">
<classpath path="build/classes/all"/>
</javac>
</target>
<target name="build" depends="init,compile">
<jar basedir="build/classes/parser" destfile="build/microXml-1.0.jar">
<manifest>
<attribute name="Implementation-Title" value="microXml"/>
<attribute name="Implementation-Version" value="0.1"/>
</manifest>
</jar>
</target>
<target name="doc" depends="init">
<javadoc sourcepath="src/parser" destdir="build/doc" packagenames="org.qwerty.microxml"/>
</target>
<target name="dist" depends="build, doc">
<mkdir dir="dist"/>
<zip destfile="dist/microXml.zip">
<fileset dir="." includes="src/**/*"/>
<fileset dir="." includes="*.xml"/>
<fileset dir="build" includes="doc/**/*"/>
<fileset dir="build" includes="microXml.jar"/>
</zip>
</target>
<target name="test" depends="build">
<javac srcdir="src/test" destdir="build/classes/test">
<classpath location="build/microXml.jar"/>
<classpath location="lib/junit-3.8.1.jar"/>
</javac>
<junit printsummary="yes">
<classpath location="build/microXml-1.0.jar"/>
<classpath location="build/classes/test"/>
<classpath location="lib/junit-3.8.1.jar"/>
<test name="org.qwerty.microxml.MicroXmlTestSuite"/>
</junit>
</target>
<target name="junit"
depends="build"
description="Run the test suite.">
<junit printsummary="yes"
fork="yes"
haltonfailure="yes">
<classpath>
<fileset dir="./lib"
includes="**/*.jar"/>
<pathelement path="./build/classes/test"/>
</classpath>
<formatter type="plain"/>
<formatter type="xml"/>
</junit>
</target>
</project>