new ant build for Jalview.
[jalview.git] / build.xml
1 <?xml version="1.0"?>
2 <project name="jalviewX" default="build" basedir=".">
3   <!-- utils is a class path to additional utilities needed for
4   building docs, jars and webstart stuff -->
5
6   <target name="init">
7
8     <property name="libDir" value="lib"/>
9     <property name="resourceDir" value="resources"/>
10     <property name="helpDir" value="help"/>
11     <property name="docDir" value="doc"/>
12     <property name="sourceDir" value="src" />
13     <property name="outputDir" value="classes" />
14     <property name="outputJar" value="jalview.jar" />
15
16     <path id="build.classpath">
17       <fileset dir="utils">
18         <include name="**/*.jar"/>
19       </fileset>
20       <fileset dir="${libDir}">
21         <include name="**/*.jar"/>
22       </fileset>
23     </path>
24
25   </target>
26
27   <target name="clean" depends="init">
28         <!-- not efficient yet. -->
29     <delete dir="${outputDir}"/>
30   </target>
31
32   <target name="distclean" depends="init, clean">
33     
34     <echo message="REMOVING ALL BACKUP/AUTOSAVES!"/>
35     <delete>
36       <fileset dir=".">
37         <include name="${outputJar}"/>
38         <include name="#*#"/>
39         <include name="#*.*#"/>
40         <include name="**/#*#"/>
41         <include name="**/#*.*#"/>
42         <include name="*~"/>
43         <include name="*.*~"/>
44         <include name="**/*~"/>
45         <include name="**/*.*~"/>
46       </fileset>
47     </delete>
48   </target>
49   
50   <target name="prepare" depends="clean">
51     <mkdir dir="${outputDir}"/>
52     <copy todir="${outputDir}">
53       <fileset dir=".">
54         <include name="${docDir}/**/*.*"/>
55         <include name="${helpDir}/**/*.*"/>
56         <include name="${libDir}"/>
57       </fileset>
58       <fileset dir="${resourceDir}">
59         <include name="**/*.*"/>
60       </fileset>
61     </copy>
62   </target>
63
64   <target name="build" depends="init, prepare">
65             <!-- not efficient yet. -->
66      <javac srcdir="${sourceDir}" destdir="${outputDir}"
67         classpathref="build.classpath" />
68   </target>
69
70   
71
72   <target name="package" depends="init, build">
73     
74   </target>
75 </project>