now basically works, although not tested
[captive-validator.git] / build.xml
1 <?xml version="1.0"?>
2
3 <project default="jar" basedir=".">
4
5   <property file="build.properties" />
6   <property file="VERSION" />
7   
8   <property name="distname" value="dnssecreconciler-${version}" />
9
10   <property name="build.dir" value="build" />
11   <property name="build.dest" value="${build.dir}/classes" />
12   <property name="build.lib.dest" value="${build.dir}/lib" />
13   <property name="build.src" value="src" />
14
15   <property name="packages" value="com.verisignlabs.dnssec.*" />
16   <property name="doc.dir" value="docs" />
17   <property name="javadoc.dest" value="${doc.dir}/javadoc" />
18
19   <property name="lib.dir" value="lib" />
20
21   <!-- set the standard classpath -->
22   <path id="project.classpath">
23     <pathelement location="${build.dest}" />
24     <fileset dir="${lib.dir}" includes="*.jar,*.zip" />
25   </path>
26   <property name="project.classpath" refid="project.classpath" />
27
28   <target name="prepare-src">
29     <mkdir dir="${build.dest}" />
30     <mkdir dir="${build.lib.dest}" />
31   </target>
32
33   <target name="compile" depends="prepare-src" >
34     <javac srcdir="${build.src}" 
35            destdir="${build.dest}"
36            classpathref="project.classpath"
37            deprecation="true" 
38            includes="com/verisign/" />
39   </target>
40
41   <target name="jar" depends="usage,compile">
42
43     <jar destfile="${build.lib.dest}/dnssecreconciler.jar">
44       <zipfileset dir="${build.dest}" includes="**/*.class" />
45
46       <zipfileset src="${lib.dir}/dnsjava-2.0.8-vrsn-2.jar" />
47       <zipfileset src="${lib.dir}/log4j-1.2.15.jar" />
48
49       <manifest>
50         <attribute name="Main-Class"
51                    value="com.verisign.cl.DNSSECReconciler" />
52       </manifest>
53     </jar>
54   </target>
55
56   <target name="javadoc" depends="usage">
57     <mkdir dir="${javadoc.dest}"/>
58     <javadoc packagenames="${packages}" 
59              classpath="${project.classpath}"
60              sourcepath="${build.src}" 
61              destdir="${javadoc.dest}"
62              verbose="true" author="true" 
63              windowtitle="jdnssec-tools-${version}" 
64              use="true">
65       <link href="http://java.sun.com/j2se/1.4.2/docs/api/" />
66       <link href="http://www.xbill.org/dnsjava/doc/" />
67     </javadoc>
68   </target>
69
70
71   <target name="clean" depends="usage">
72     <delete dir="${build.dest}" />
73     <delete dir="${build.lib.dest}" />
74   </target>
75
76
77   <target name="usage">
78     <echo message=" " />
79     <echo message="DNSSECReconciler v. ${version} Build System" />
80     <echo message="--------------------------------" />
81     <echo message="Available Targets:" />
82     <echo message="  compile           - compiles the source code" />
83     <echo message="  jar (default)     - compiles the source code, creates jar" />
84     <echo message="  javadoc           - create javadoc from source" />
85     <echo message="  clean             - delete class files" />
86     <echo message="  dist              - package it up" />
87     <echo message="  usage             - this help message" />
88     <echo message=" " />
89   </target>
90
91 </project>
92