aboutsummaryrefslogtreecommitdiffstats
path: root/build.xml
diff options
context:
space:
mode:
Diffstat (limited to 'build.xml')
-rw-r--r--build.xml109
1 files changed, 109 insertions, 0 deletions
diff --git a/build.xml b/build.xml
new file mode 100644
index 0000000..bed0dec
--- /dev/null
+++ b/build.xml
@@ -0,0 +1,109 @@
+<?xml version="1.0"?>
+
+<!-- Written to assume that classpath is rooted in the current directory. -->
+<!-- So this should be OK if you make this script in the root of a filesystem. -->
+<!-- If not, you may prefer to adjust the basedir, or move some directories around. -->
+<!-- The idea is that both Ant and NetBeans have to know what the package root is -->
+<!-- for the classes in your application. -->
+<project name="utils.jar" basedir="." default="all">
+
+ <!-- Don't worry if you don't know the Ant syntax completely or need help on some tasks! -->
+ <!-- The standard Ant documentation is bundled. See Help | Help Sets | Ant 1.4.1 Manual. -->
+
+ <target name="init">
+ <!-- You can set up any variables you want used throughout the script here. -->
+ <!-- <property name="hello" value="world"/> -->
+ <!-- To use e.g. Jikes, uncomment this line. -->
+ <!-- (Or make the same change in Tools | Options | Ant Settings | Properties.) -->
+ <!-- <property name="build.compiler" value="jikes"/> -->
+ <!-- You might like to set up some overridable paths, etc.: -->
+ <!-- <property name="mylib" value="../lib/mylib.jar"/> -->
+ <mkdir dir="bin" />
+ <mkdir dir="classes" />
+ <mkdir dir="apidocs" />
+ <mkdir dir="src/tests/test_plugin" />
+ </target>
+
+ <target name="compile" depends="init">
+ <!-- Both srcdir and destdir should be package roots. -->
+ <!-- They could be different of course; in that case NetBeans can also be set -->
+ <!-- up to compile to a different filesystem in the same way; see Compiler Types: -->
+ <javac srcdir="src/java" destdir="classes" debug="true" deprecation="true">
+ <include name="net/java/**"/>
+ <!-- To add something to the classpath: -->
+ <!--
+ <classpath>
+ <pathelement location="${mylib}"/>
+ </classpath>
+ -->
+ <!-- To exclude some files: -->
+ <!--
+ <exclude name="com/foo/SomeFile.java"/>
+ <exclude name="com/foo/somepackage/"/>
+ -->
+ </javac>
+ </target>
+
+ <target name="jar" depends="init,compile">
+ <!-- To make a standalone app: -->
+ <!-- 1. Create a myapp.mf manifest somewhere. -->
+ <!-- 2. Put in it: -->
+ <!-- Manifest-Version: 1.0 -->
+ <!-- Main-Class: com.foo.Main -->
+ <!-- 3. Pass to <jar>: manifest="myapp.mf" -->
+ <jar jarfile="bin/jutils.jar" compress="true" basedir="classes">
+ <include name="net/java/**"/>
+ <exclude name="**/*.java"/>
+ <exclude name="**/*.form"/>
+ <exclude name="myapp.mf"/>
+ <exclude name="myapp.jar"/>
+ <exclude name="apidoc"/>
+ <exclude name="**/plugins/test/*Plugin.class"/>
+ </jar>
+ <copy file="bin/jutils.jar" todir="../jinput/coreAPI/lib" />
+ <copy file="bin/jutils.jar" todir="../jinput/plugins/DX8/lib" />
+ <jar jarfile="src/tests/test_plugins/test_plugins.jar" compress="true" basedir="classes">
+ <include name="**/plugins/test/*Plugin.class"/>
+ </jar>
+ </target>
+
+ <target name="all" depends="init,jar" description="Build everything.">
+ <echo message="Application built. Hello ${hello}!"/>
+ </target>
+
+ <target name="test" depends="init,all" description="Try running it.">
+ <java classname="net.java.games.util.plugins.test.PluginTest"
+ fork="true" dir="src/tests" failonerror="true">
+ <classpath>
+ <!-- <pathelement location= "classes" /> -->
+ <pathelement location="bin/jutils.jar"/>
+ </classpath>
+ <!-- Pass some args, perhaps: -->
+ <!-- <arg value="-myfile"/> -->
+ <!-- Will be given as an absolute path: -->
+ <!-- <arg file="myfile.txt"/> -->
+ </java>
+ </target>
+
+ <target name="javadoc" depends="init" description="Javadoc for input API.">
+ <javadoc packagenames="net.java.games.util.plugins.*"
+ destdir="apidocs"
+ additionalparam="-source 1.4">
+ <sourcepath>
+ <pathelement location="src/java"/>
+ </sourcepath>
+ </javadoc>
+ </target>
+
+ <target name="clean" depends="init" description="Clean all build products.">
+ <delete>
+ <fileset dir="classes">
+ <include name="**/*.class"/>
+ </fileset>
+ </delete>
+ <delete file="bin/jutils.jar"/>
+ <delete file="tests/test_plugins/test_plugins.jar"/>
+ <delete dir="apidocs"/>
+ </target>
+
+</project>