Don't treat inner classes as test classes with ant.
[fits.git] / build.xml
1 <?xml version="1.0"?>
2 <project name="fits" default="all" basedir=".">
3   <target name="init" description="Sets build properties">
4     <property name="src" value="${basedir}/src"/>
5     <property name="build" value="${basedir}/build"/>
6     <property name="doc" value="${basedir}/doc"/>
7     <path id="project.class.path">
8     </path>
9     <path id="build.class.path">
10       <!--pathelement location="JUNIT.JAR"/-->
11       <pathelement location="/usr/share/junit-4/lib/junit.jar"/>
12     </path>
13     <path id="test.class.path">
14       <pathelement location="${build}"/>
15       <pathelement location="/usr/share/junit-4/lib/junit.jar"/>
16       <pathelement location="/usr/share/hamcrest-core/lib/hamcrest-core.jar"/>
17     </path>
18   </target>
19   <target name="all" depends="jar,javadoc"
20           description="Pseudo-target that builds JAR and Javadoc">
21   </target>
22   <target name="build" depends="init"
23           description="Compiles the classes">
24     <mkdir dir="${build}"/>
25     <javac destdir="${build}" srcdir="${src}" debug="true"
26            deprecation="true" includeantruntime="false">
27       <classpath refid="project.class.path"/>
28       <classpath refid="build.class.path"/>
29     </javac>
30     <copy todir="${build}">
31       <mappedresources>
32         <fileset dir="${src}" includes="**/test/test.fits*"/>
33         <!--fileset dir="${src}/nom/tam/fits/comments.txt"/-->
34         <globmapper from="*" to="*"/>
35       </mappedresources>
36     </copy>
37   </target>
38   <target name="test" depends="build">
39     <junit>
40       <classpath refid="project.class.path" />
41       <classpath refid="test.class.path"/>
42       <formatter type="brief" usefile="false" />
43       <batchtest>
44         <fileset dir="${build}">
45           <include name="**/test/*.class" />
46           <exclude name="**/*$*.class" />
47         </fileset>
48       </batchtest>
49     </junit>
50   </target>
51   <target name="javadoc" depends="init"
52           description="Generates Javadoc API documentation">
53     <mkdir dir="${doc}/api"/>
54     <javadoc packagenames="*"
55              sourcepath="${src}" destdir="${doc}/api"
56              author="true"       version="true"
57              use="true"          private="true"/>
58   </target>
59   <target name="jar" depends="build"
60           description="Builds a project JAR file">
61     <jar basedir="${build}" jarfile="${basedir}/fits.jar">
62       <manifest>
63         <attribute name="Version" value="1.06.0"/>
64         <attribute name="Main-Class"
65                    value="fits"/>
66       </manifest>
67     </jar>
68   </target>
69   <target name="clean" depends="init"
70           description="Erase all generated files and dirs">
71     <delete dir="${build}" verbose="true"/>
72     <delete dir="${doc}/api" verbose="true"/>
73     <delete verbose="true">
74         <fileset dir="${basedir}" includes="*.jar"/>
75         <fileset dir="${basedir}" includes="*.fits"/>
76         <fileset dir="${basedir}" includes="*.fil"/>
77         <fileset dir="${basedir}" includes="*.hdr"/>
78     </delete>
79   </target>
80 </project>