3 This file is part of the Vamsas Client version 0.1.
4 Copyright 2009 by Jim Procter, Iain Milne, Pierre Marguerite,
5 Andrew Waterhouse and Dominik Lindner.
7 Earlier versions have also been incorporated into Jalview version 2.4
8 since 2008, and TOPALi version 2 since 2007.
10 The Vamsas Client is free software: you can redistribute it and/or modify
11 it under the terms of the GNU Lesser General Public License as published by
12 the Free Software Foundation, either version 3 of the License, or
13 (at your option) any later version.
15 The Vamsas Client is distributed in the hope that it will be useful,
16 but WITHOUT ANY WARRANTY; without even the implied warranty of
17 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 GNU Lesser General Public License for more details.
20 You should have received a copy of the GNU Lesser General Public License
21 along with the Vamsas Client. If not, see <http://www.gnu.org/licenses/>.
23 <project name="vamsas-client" default="build" basedir=".">
26 <!--<property name="target1.4" value="true"> -->
27 <property name="libDir" value="lib" />
28 <property name="toolsDir" value="tools" />
29 <property name="resourceDir" value="resources" />
30 <property name="sourceDir" value="src" />
31 <property name="outputDir" value="classes" />
32 <property name="packageDir" value="packages" />
33 <property name="vamsasClient.jar" value="vamsas-client.jar" />
34 <property name="vamsasClientDoc.jar" value="vamsas-client-docs.jar" />
35 <property name="vamsasClientSource.jar" value="vamsas-client-src-doc.jar" />
36 <property name="vamsasSchemaDocs.jar" value="vamsas-schema-and-doc.jar" />
37 <property name="vamsas.schema" value="schemas/vamsas.xsd" />
38 <property name="vamsas.doc.schema" value="schemas/vamsasDocument.xsd" />
39 <property name="vamsas.schema.package" value="uk.ac.vamsas.objects.core" />
40 <property name="vamsas.schema.package.src" value="uk/ac/vamsas/objects/core" />
41 <property name="vamsas.schema.sourcegen.properties" value="schemas/castorbuilder.properties" />
42 <path id="castor.classpath">
44 <include name="*.jar" />
45 <include name="**/*.jar" />
48 <include name="*.jar" />
49 <include name="**/*.jar" />
56 <path id="build.classpath">
57 <fileset dir="${toolsDir}">
58 <include name="*.jar" />
59 <include name="**/*.jar" />
62 <fileset dir="${libDir}">
63 <include name="*.jar" />
64 <include name="**/*.jar" />
66 <!-- path refid="axis.classpath" -->
69 <target name="cleancoresource" depends="init" description="Clean automatically generated packages">
71 <fileset dir="${sourceDir}/${vamsas.schema.package.src}">
72 <include name="*.java" />
73 <include name="descriptors/*.java" />
77 <target name="makecoresource" depends="init, cleancoresource" description="Generate Java source files from XSD.">
78 <taskdef name="castor-srcgen" classname="org.castor.anttask.CastorCodeGenTask" classpathref="castor.classpath" />
79 <!-- Should apply this to every schema file in ${vamsas.schemas} directory -->
80 <castor-srcgen file="${vamsas.schema}" todir="${sourceDir}" package="${vamsas.schema.package}" warnings="true" nodesc="false" properties="${vamsas.schema.sourcegen.properties}" />
81 <castor-srcgen file="${vamsas.doc.schema}" todir="${sourceDir}" package="${vamsas.schema.package}" warnings="true" nodesc="false" properties="${vamsas.schema.sourcegen.properties}" />
83 <target name="prepare" depends="init">
84 <mkdir dir="${packageDir}" />
85 <mkdir dir="${outputDir}" />
86 <copy todir="${outputDir}">
87 <fileset dir="${resourceDir}" />
88 <fileset dir="${basedir}">
89 <include name="LICENS*" />
90 <include name="COPYING*" />
91 <include name="CONTRIB" />
92 <include name="README" />
96 <target name="clean" depends="init">
98 <fileset dir="${outputDir}">
100 <include name="*.*" />
101 <include name="**/*" />
102 <include name="**/*.*" />
105 <delete dir="${axisbuild}" />
106 <!-- <ant dir="test" antfile="build.xml" target="clean"
107 inheritRefs="true"/> -->
109 <target name="realclean" depends="init, clean">
110 <delete dir="${packageDir}" />
112 <target name="distclean" depends="init, realclean">
113 <echo message="REMOVING ALL BACKUP/AUTOSAVES!" />
116 <include name="#*#" />
117 <include name="#*.*#" />
118 <include name="**/#*#" />
119 <include name="**/#*.*#" />
120 <include name="*~" />
121 <include name="*.*~" />
122 <include name="**/*~" />
123 <include name="**/*.*~" />
127 <target name="build1.4" depends="init,prepare" if="target1.4">
128 <javac classpathref="build.classpath" debug="on" srcdir="${sourceDir}" destdir="${outputDir}" deprecation="on" source="1.4" target="1.4">
129 <exclude name="uk/ac/ebi/msd/vamsas/**" />
130 <exclude name="uk/ac/vamsas/test/document/SAXTreeViewer.*"/>
133 <target name="build1.5" depends="init,prepare" unless="target1.4">
134 <javac classpathref="build.classpath" debug="on" srcdir="${sourceDir}" destdir="${outputDir}" deprecation="on" source="1.5" target="1.5">
135 <exclude name="uk/ac/ebi/msd/vamsas/**" />
138 <target name="build" depends="build1.4,build1.5">
139 <echo message="Finished building" />
141 <target name="jar" depends="build, javadoc">
142 <jar destfile="${packageDir}/${vamsasClient.jar}">
143 <fileset dir="${outputDir}">
144 <exclude name="cache*/**" />
145 <include name="**/*" />
146 <exclude name="*.jar.*" />
147 <exclude name="**/*.jar" />
148 <exclude name="**/*.jar.*" />
149 <exclude name="*.java" />
150 <exclude name="**/*.java" />
151 <exclude name="uk/*.class" />
152 <exclude name="log4j.properties" />
153 <exclude name="commons-logging.properties" />
156 <jar destfile="${packageDir}/${vamsasClientDoc.jar}">
157 <fileset dir="docs/api">
158 <include name="**/*" />
160 <fileset dir="${basedir}">
161 <include name="README" />
162 <include name="CONTRIB" />
163 <include name="LICEN*" />
164 <include name="COPYING*" />
167 <jar destfile="${packageDir}/${vamsasSchemaDocs.jar}">
168 <fileset dir="${basedir}/schemas">
169 <include name="*.xsd" />
171 <fileset dir="${basedir}/docs/schema">
172 <include name="**/*" />
174 <fileset dir="${basedir}">
175 <include name="COPYING*" />
178 <jar destfile="${packageDir}/${vamsasClientSource.jar}">
179 <fileset dir="${basedir}">
180 <include name="src/**/*.java" />
181 <include name="src/**/*.cdr" />
182 <exclude name="*~" />
183 <exclude name="**/*.java~" />
184 <include name="resources/**" />
185 <include name="utils/**" />
186 <include name="tools/**" />
187 <include name="schemas/**" />
188 <include name="test" />
189 <include name="docs/**" />
190 <include name="tools/**" />
191 <include name="lib/**" />
192 <include name="README" />
193 <include name="CONTRIB" />
194 <include name="LICEN*" />
195 <include name="COPYING*" />
196 <include name="*.eclipse*" />
197 <include name="*.launch" />
198 <include name="build.xml" />
203 <target name="javadoc" depends="init">
204 <javadoc destdir="docs/api" classpathref="build.classpath" author="true" version="true" use="true">
205 <fileset dir="${sourceDir}" defaultexcludes="yes">
206 <exclude name="**/.castor.cdr" />
207 <!-- this was for the old ebi packages.
208 <exclude name="uk/**"/>
209 <exclude name="uk/*.java"/> -->