<?xml version="1.0"?>
+<!--
+ This file is part of the Vamsas Client version 0.1.
+ Copyright 2009 by Jim Procter, Iain Milne, Pierre Marguerite,
+ Andrew Waterhouse and Dominik Lindner.
+
+ Earlier versions have also been incorporated into Jalview version 2.4
+ since 2008, and TOPALi version 2 since 2007.
+
+ The Vamsas Client is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Lesser General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ The Vamsas Client is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public License
+ along with the Vamsas Client. If not, see <http://www.gnu.org/licenses/>.
+ -->
<project name="vamsas-client" default="build" basedir=".">
<target name="init">
<property name="sourceDir" value="src" />
<property name="outputDir" value="classes" />
<property name="packageDir" value="packages" />
- <property name="vamsas.schema" value="schemas/vamsas15_9.xsd" />
- <property name="vamsas.schema.package" value="org.vamsas.objects.core" />
- <property name="vamsas.schema.package.src" value="org/vamsas/objects/core" />
+ <property name="vamsasClient.jar" value="vamsas-client.jar" />
+ <property name="vamsasClientDoc.jar" value="vamsas-client-docs.jar" />
+ <property name="vamsasClientSource.jar" value="vamsas-client-src-doc.jar" />
+ <property name="vamsasSchemaDocs.jar" value="vamsas-schema-and-doc.jar" />
+ <property name="vamsas.schema" value="schemas/vamsas.xsd" />
+ <property name="vamsas.doc.schema" value="schemas/vamsasDocument.xsd" />
+ <property name="vamsas.schema.package" value="uk.ac.vamsas.objects.core" />
+ <property name="vamsas.schema.package.src" value="uk/ac/vamsas/objects/core" />
<property name="vamsas.schema.sourcegen.properties" value="schemas/castorbuilder.properties"/>
<path id="castor.classpath">
<fileset dir="tools">
<delete>
<fileset dir="${sourceDir}/${vamsas.schema.package.src}">
<include name="*.java"/>
+ <include name="descriptors/*.java"/>
</fileset>
</delete>
</target>
<target name="makecoresource" depends="init, cleancoresource" description="Generate Java source files from XSD.">
<taskdef name="castor-srcgen"
- classname="org.exolab.castor.tools.ant.taskdefs.CastorSourceGenTask"
+ classname="org.castor.anttask.CastorCodeGenTask"
classpathref="castor.classpath" />
- <castor-srcgen file="${vamsas.schema}"
+ <!-- Should apply this to every schema file in ${vamsas.schemas} directory -->
+ <castor-srcgen file="${vamsas.schema}"
todir="${sourceDir}"
package="${vamsas.schema.package}"
- warnings="false"
+ warnings="true"
nodesc="false"
properties="${vamsas.schema.sourcegen.properties}"
/>
+ <castor-srcgen file="${vamsas.doc.schema}"
+ todir="${sourceDir}"
+ package="${vamsas.schema.package}"
+ warnings="true"
+ nodesc="false"
+ properties="${vamsas.schema.sourcegen.properties}"
+ />
</target>
<target name="prepare" depends="init">
<mkdir dir="${packageDir}"/>
<mkdir dir="${outputDir}"/>
<copy todir="${outputDir}">
<fileset dir="${resourceDir}" />
+ <fileset dir="${basedir}">
+ <include name="LICENS*"/>
+ <include name="COPYING*"/>
+ <include name="CONTRIB"/>
+ <include name="README"/>
+ </fileset>
</copy>
</target>
<target name="clean" depends="init">
<target name="build" depends="init, prepare">
<!-- not efficient yet. : use excludes="*/localtest/*.java" if local tests are not building -->
- <javac classpathref="build.classpath" debug="on" srcdir="${sourceDir}" destdir="${outputDir}" />
+ <javac classpathref="build.classpath" debug="on" srcdir="${sourceDir}" destdir="${outputDir}" deprecation="on" source="1.4" target="1.4">
+ <exclude name="uk/ac/ebi/msd/vamsas/**"/>
+ </javac>
</target>
-
+ <target name="jar" depends="build, javadoc">
+ <jar destfile="${packageDir}/${vamsasClient.jar}">
+ <fileset dir="${outputDir}">
+ <exclude name="cache*/**"/>
+ <include name="**/*" />
+ <exclude name="*.jar.*" />
+ <exclude name="**/*.jar" />
+ <exclude name="**/*.jar.*" />
+ <exclude name="*.java"/>
+ <exclude name="**/*.java"/>
+ <exclude name="uk/*.class"/>
+ <exclude name="log4j.properties"/>
+ <exclude name="commons-logging.properties"/>
+ </fileset>
+ </jar>
+ <jar destfile="${packageDir}/${vamsasClientDoc.jar}">
+ <fileset dir="docs/api">
+ <include name="**/*"/>
+ </fileset>
+ <fileset dir="${basedir}">
+ <include name="README"/>
+ <include name="CONTRIB"/>
+ <include name="LICEN*"/>
+ <include name="COPYING*"/>
+ </fileset>
+ </jar>
+ <jar destfile="${packageDir}/${vamsasSchemaDocs.jar}">
+ <fileset dir="${basedir}/schemas">
+ <include name="*.xsd"/>
+ </fileset>
+ <fileset dir="${basedir}/docs/schema">
+ <include name="**/*"/>
+ </fileset>
+ <fileset dir="${basedir}">
+ <include name="COPYING*"/>
+ </fileset>
+ </jar>
+ <jar destfile="${packageDir}/${vamsasClientSource.jar}">
+ <fileset dir="${basedir}">
+ <include name="src/**/*.java"/>
+ <include name="src/**/*.cdr"/>
+ <exclude name="*~"/>
+ <exclude name="**/*.java~"/>
+ <include name="resources/**"/>
+ <include name="utils/**"/>
+ <include name="tools/**"/>
+ <include name="schemas/**"/>
+ <include name="test"/>
+ <include name="docs/**"/>
+ <include name="tools/**"/>
+ <include name="lib/**"/>
+ <include name="README"/>
+ <include name="CONTRIB"/>
+ <include name="LICEN*"/>
+ <include name="COPYING*"/>
+ <include name="*.eclipse*"/>
+ <include name="*.launch"/>
+ <include name="build.xml"/>
+ </fileset>
+ </jar>
+ </target>
+
+ <target name="javadoc" depends="init">
+ <javadoc destdir="docs/api" classpathref="build.classpath" author="true" version="true" use="true">
+ <fileset dir="${sourceDir}" defaultexcludes="yes">
+ <exclude name="**/.castor.cdr"/>
+ <!-- this was for the old ebi packages.
+ <exclude name="uk/**"/>
+ <exclude name="uk/*.java"/> -->
+ </fileset>
+ </javadoc>
+ </target>
+
</project>