Use field variable with qualified field name. FIX namespace!
[marc4j.git] / build.xml
1 <?xml version="1.0" encoding="utf-8"?>\r
2 <project name="marc4j" default="jar" basedir=".">\r
3 \r
4         <target name="init">\r
5                 <tstamp />\r
6                 <record name="build.log" loglevel="verbose" append="no" />\r
7         </target>\r
8 \r
9         <property file="build.properties" />\r
10 \r
11         <property name="test.class.name" value="org.marc4j.AllTests" />\r
12 \r
13         <path id="classpath">\r
14                 <fileset dir="${lib.dir}">\r
15                         <include name="**/*.jar" />\r
16                 </fileset>\r
17         </path>\r
18 \r
19         <path id="test.classpath">\r
20                 <pathelement location="${build.dir}" />\r
21                 <fileset dir="${lib.dir}">\r
22                         <include name="**/*.jar" />\r
23                 </fileset>\r
24         </path>\r
25 \r
26         <target name="prepare" depends="init">\r
27                 <mkdir dir="${build.dir}" />\r
28         </target>\r
29 \r
30         <target name="codetablegen">\r
31                 <mkdir dir="${src.dir}/org/marc4j/converter/impl/new" />\r
32                 <java fork="true" classname="org.marc4j.converter.impl.CodeTableGenerator" output="${src.dir}/org/marc4j/converter/impl/new/CodeTableGenerated.java" >\r
33                         <classpath location="${build.dir}" />\r
34                 </java>\r
35             <copy todir="${src.dir}/org/marc4j/converter/impl/">\r
36                 <fileset dir="${src.dir}/org/marc4j/converter/impl/new" includes="**/*.java">\r
37                         <different targetdir="${src.dir}/org/marc4j/converter/impl" ignoreFileTimes="true"/>\r
38                 </fileset>\r
39             </copy>\r
40                 <delete dir="${src.dir}/org/marc4j/converter/impl/new" /> \r
41         </target>\r
42         \r
43         <target name="compile" depends="prepare">\r
44         <javac srcdir="${src.dir}" destdir="${build.dir}" includes="**/*.java" excludes="**/CodeTableGenerated.java" debug="true" debuglevel="source,lines,vars">\r
45             <classpath refid="classpath" />\r
46         </javac>\r
47         <copy todir="${build.dir}">\r
48             <fileset dir="${src.dir}">\r
49                 <include name="**/*.properties" />\r
50                 <include name="**/*.xml" />\r
51                 <exclude name="**/tests/*" />\r
52                 <exclude name="**/tests" />\r
53             </fileset>\r
54         </copy>\r
55                 <antcall target="codetablegen"/>\r
56         <javac srcdir="${src.dir}" destdir="${build.dir}" includes="**/CodeTableGenerated.java" debug="false">\r
57             <classpath refid="classpath" />\r
58         </javac>\r
59         </target>\r
60 \r
61         <target name="test">\r
62                 <junit fork="yes" haltonfailure="yes">\r
63                         <test name="${test.class.name}" />\r
64                         <formatter type="plain" usefile="false" />\r
65                         <classpath refid="test.classpath" />\r
66                 </junit>\r
67         </target>\r
68 \r
69         <target name="jar" depends="compile">\r
70                 <jar jarfile="${project.name}.jar">\r
71                         <fileset dir="${build.dir}">\r
72                                 <include name="**/*.class" />\r
73                                 <exclude name="**/CodeTableGenerator.class" />\r
74                                 <exclude name="**/samples/**/*.*" />\r
75                                 <exclude name="**/test/**/*.*" />\r
76                                 <include name="**/*.properties" />\r
77                                 <include name="**/*.xml" />\r
78                         </fileset>\r
79                 </jar>\r
80         </target>\r
81 \r
82         <target name="javadoc" depends="init">\r
83                 <mkdir dir="${apidoc.dir}" />\r
84                 <javadoc destdir="${apidoc.dir}" author="true" version="true" overview="overview.html" use="true" windowtitle="MARC4J API" doctitle="MARC4J API" bottom="Copyright &#169; 2002-2006 Bas Peters. All Rights Reserved.">\r
85                         <packageset dir="src" defaultexcludes="yes">\r
86                                 <exclude name="org/marc4j/samples" />\r
87                                 <exclude name="org/marc4j/test" />\r
88                         </packageset>\r
89                         <classpath refid="classpath" />\r
90                         <link offline="true" href="http://java.sun.com/products/jdk/1.4/docs/api/" packagelistLoc="." />\r
91                         <link href="http://java.sun.com/j2se/1.4.2/docs/api/" />\r
92                 </javadoc>\r
93         </target>\r
94 \r
95         <target name="clean" depends="init">\r
96                 <delete dir="${dist.dir}" />\r
97                 <delete dir="${build.dir}" />\r
98         </target>\r
99 \r
100         <target name="dist" depends="jar,javadoc">\r
101                 <property name="prefix" value="${project.name}-${version}" />\r
102                 <property name="tmp.dir" value="${dist.dir}/tmp" />\r
103                 <property name="tmp.arc.dir" value="${tmp.dir}/${prefix}" />\r
104                 <property name="dist.arc" value="${dist.dir}/${prefix}" />\r
105                 <mkdir dir="${tmp.arc.dir}" />\r
106                 <copy todir="${tmp.arc.dir}">\r
107                         <fileset dir=".">\r
108                                 <include name="LICENSE.*" />\r
109                                 <include name="build.*" />\r
110                                 <exclude name="*.log" />\r
111                                 <include name="*.jar" />\r
112                                 <include name="*.html" />\r
113                         </fileset>\r
114                 </copy>\r
115                 <copy todir="${tmp.arc.dir}/${src.dir}">\r
116                         <fileset dir="${src.dir}" >\r
117                                 <exclude name="**/CodeTableGenerated.java" />\r
118                     </fileset>\r
119                 </copy>\r
120                 <copy todir="${tmp.arc.dir}/${lib.dir}">\r
121                         <fileset dir="${lib.dir}">\r
122                                 <exclude name="junit*.jar" />\r
123                         </fileset>\r
124                 </copy>\r
125                 <copy todir="${tmp.arc.dir}/${apidoc.dir}">\r
126                         <fileset dir="${apidoc.dir}" />\r
127                 </copy>\r
128                 <tar tarfile="${dist.arc}.tar" basedir="${tmp.arc.dir}" />\r
129                 <gzip zipfile="${dist.arc}.tar.gz" src="${dist.arc}.tar" />\r
130                 <delete file="${dist.arc}.tar" />\r
131                 <delete file="${dist.arc}.zip" />\r
132                 <zip compress="true" basedir="${tmp.dir}" zipfile="${dist.arc}.zip" />\r
133                 <delete dir="${tmp.dir}" />\r
134         </target>\r
135 \r
136 </project>