<echo message="compileApplet - compiles all necessary files for Applet"/>
<echo message="makeApplet - compiles, then packages and obfuscates the Applet"/>
<echo message="See docs/building.html and the comments in build file for other targets."/>
+ <echo message="note: compile and makeApplet require the property java118.home to be set to point to a java 1.1.8 jdk."/>
</target>
</fileset> -->
</path>
<!-- Jalview Version String displayed by application on startup and used to check for updates -->
- <property name="JALVIEW_VERSION" value="DEVELOPMENT"/>
+ <property name="JALVIEW_VERSION" value="DEVELOPMENT"/> <!-- 2.4 (VAMSAS)" -->
+ <!-- Include debugging information in javac true or false -->
+ <property name="javac.debug" value="true"/>
<!-- Don't change anything below here unless you know what you are doing! -->
<!-- Url path for WebStart in JNLP file -->
<property name="WebStartLocation" value="http://www.jalview.org/webstart"/>
<property name="outputDir" value="classes" />
<property name="packageDir" value="dist" />
<property name="outputJar" value="jalview.jar" />
+ <!-- Jalview Applet JMol Jar Dependency -->
+ <property name="jmolJar" value="Jmol-11.0.2.jar" />
<!-- Jalview Web Service Clients - see the comments in 'buildextclients' for details -->
<property name="wsdl.File" value="http://www.compbio.dundee.ac.uk/JalviewWS/services/jpred?wsdl" />
<property name="wsdl.Files" value="http://www.compbio.dundee.ac.uk/JalviewWS/services/vamsas?wsdlFiles" />
<include name="*.jar"/>
<include name="**/*.jar"/>
</fileset>
+
</path>
+ <property name="source.dist.name" value="${basedir}/jalview-src.tar.gz"/>
+ <!-- The Location of the java 1.1.8 jdk -->
+ <property name="java118.home" value="C:\Sun\jdk1.1.8" />
+ <property name="applet.jre.tools" value="${java118.home}/lib/classes.zip"/>
+ <!-- jre for 1.4 version
+ <property name="applet.jre.tools" value="${java.home}/lib/rt.jar"/>
+ -->
+ <!-- the classpath for building the 1.1 applet -->
+ <path id="jalviewlite.deps">
+ <fileset dir="${java118.home}">
+ <include name="lib/classes.zip"/>
+ </fileset>
+ <pathelement location="lib/${jmolJar}"/>
+ </path>
</target>
<javac source="1.4" target="1.4"
srcdir ="${sourceDir}"
destdir="${outputDir}"
+ debug="${javac.debug}"
classpathref="build.classpath">
<exclude name="jalview/*applet*"/>
<exclude name="com/stevesoft/**"/>
<taskdef classpathref="build.classpath" resource="com/roxes/tools/ant/taskdefs.properties"/>
<!-- codebase="http://www.jalview.org/jalview/webstart" -->
- <jnlp toFile="${packageDir}/jalview.jnlp" href="jalview.jnlp"
+ <!-- href="jalview.jnlp" prevent hard-wired pickup of jnlp in certain javaws versions -->
+ <jnlp toFile="${packageDir}/jalview.jnlp"
codebase="${WebStartLocation}">
<information>
<title>Jalview</title>
- <!-- Compile, package and obfuscate Jalview Applet -->
- <target name="makeApplet" depends="obfuscate"/>
+ <!-- Compile, package and obfuscate Jalview Applet -->
+ <target name="makeApplet" depends="obfuscate"/>
- <target name="compileApplet" depends="init,clean">
- <mkdir dir="${outputDir}"/>
+ <target name="compileApplet" depends="init,clean">
+ <mkdir dir="${outputDir}"/>
<javac source="1.2"
target="1.1"
srcdir="${sourceDir}"
destdir="${outputDir}"
- classpath="lib/jmol.jar"
+ classpath="lib/${jmolJar}"
includes="jalview/appletgui/**"
excludes="ext/**,MCview/**,org/**,vamsas/**"
-
/>
- </target>
-
- <target name="packageApplet" depends="compileApplet, buildPropertiesFile">
- <copy file="${resourceDir}/images/idwidth.gif" toFile="${outputDir}/images/idwidth.gif"/>
- <copy file="${resourceDir}/images/link.gif" toFile="${outputDir}/images/link.gif"/>
- <jar destfile="in.jar">
- <manifest>
- <attribute name="Main-Class" value="jalview.bin.JalviewLite"/>
- </manifest>
- <fileset dir="${outputDir}">
- <include name="com/**"/>
- <include name="MCview/**"/>
- <include name="jalview/**"/>
- <include name=".build_properties"/>
- <include name="images/idwidth.gif"/>
- <include name="images/link.gif"/>
- </fileset>
- </jar>
- </target>
-
- <target name="obfuscate" depends="packageApplet">
- <taskdef resource="proguard/ant/task.properties" classpath="utils/proguard.jar" />
- <path id="jalviewlite.deps">
- <pathelement location="${java.home}/lib/rt.jar"/>
- <pathelement location="lib/jmol.jar"/>
- </path>
- <proguard>
- <libraryjar refid="jalviewlite.deps"/>
+ </target>
+
+ <target name="packageApplet" depends="compileApplet, buildPropertiesFile">
+ <copy file="${resourceDir}/images/idwidth.gif" toFile="${outputDir}/images/idwidth.gif"/>
+ <copy file="${resourceDir}/images/link.gif" toFile="${outputDir}/images/link.gif"/>
+ <jar destfile="in.jar">
+ <manifest>
+ <attribute name="Main-Class" value="jalview.bin.JalviewLite"/>
+ </manifest>
+ <fileset dir="${outputDir}">
+ <include name="com/**"/>
+ <include name="MCview/**"/>
+ <include name="jalview/**"/>
+ <include name=".build_properties"/>
+ <include name="images/idwidth.gif"/>
+ <include name="images/link.gif"/>
+ </fileset>
+ </jar>
+ </target>
+
+ <target name="obfuscate" depends="packageApplet">
+ <path id="obfuscateDeps.path">
+ <pathelement location="${applet.jre.tools}"/>
+ <pathelement location="lib/${jmolJar}"/>
+ </path>
+ <taskdef resource="proguard/ant/task.properties" classpath="utils/proguard.jar" />
+ <proguard>
+ <injar file="in.jar"/>
+ <outjar file="jalviewApplet.jar"/>
+ <libraryjar refid="obfuscateDeps.path"/>
+ <keep access="public" type="class"
+ name="jalview.bin.JalviewLite">
+ <field access="public"/>
+ <method access="public"/>
+ <constructor access="public"/>
+ </keep>
+<!-- -libraryjars "${obfuscateDeps}"
-injars in.jar
-outjars jalviewApplet.jar
-keep public class jalview.bin.JalviewLite
{ public * ; }
+ -->
</proguard>
- <delete file="in.jar"/>
- </target>
+ <delete file="in.jar"/>
+ </target>
<target name="castorbinding" depends="init" description="Generate Java bindings to supported Jalview XML models.">
<taskdef name="castor-srcgen"
- classname="org.exolab.castor.tools.ant.taskdefs.CastorSourceGenTask"
- classpathref="build.classpath" />
+ classname="org.castor.anttask.CastorCodeGenTask"
+ classpathref="build.classpath" />
<delete>
- <fileset dir="${sourceDir}/jalview/schemabinding/version2/">
- <filename name="*"/>
+ <fileset dir="${sourceDir}/jalview/schemabinding/version2">
+ <include name="*.java"/>
+ <include name="descriptors/*.java"/>
</fileset>
</delete>
<castor-srcgen file="${schemaDir}/vamsas.xsd"
todir="${sourceDir}"
package="jalview.schemabinding.version2"
- warnings="true"
+ warnings="false"
nodesc="false"
+ verbose="true"
properties="${schemaDir}/jalview.properties"
/>
<castor-srcgen file="${schemaDir}/JalviewUserColours.xsd"
todir="${sourceDir}"
package="jalview.schemabinding.version2"
- warnings="true"
+ warnings="false"
nodesc="false"
+ verbose="true"
properties="${schemaDir}/jalview.properties"
/>
<castor-srcgen file="${schemaDir}/jalview.xsd"
todir="${sourceDir}"
package="jalview.schemabinding.version2"
- warnings="true"
+ warnings="false"
nodesc="false"
+ verbose="true"
properties="${schemaDir}/jalview.properties"
+ />
+ <!--
+ now build the jalview.binding package with the old schema set
+ -->
+ <delete>
+ <fileset dir="${sourceDir}/jalview/binding/">
+ <include name="**"/>
+ </fileset>
+ </delete>
+ <castor-srcgen file="${schemaDir}/vamsasJvV1.xsd"
+ todir="${sourceDir}"
+ package="jalview.binding"
+ warnings="false"
+ nodesc="true"
+ verbose="true"
+ properties="${schemaDir}/jalview.nodesc.properties"
+ />
+ <castor-srcgen file="${schemaDir}/JalviewUserColours.xsd"
+ todir="${sourceDir}"
+ package="jalview.binding"
+ warnings="false"
+ nodesc="true"
+ verbose="true"
+ properties="${schemaDir}/jalview.nodesc.properties"
+ />
+ <castor-srcgen file="${schemaDir}/jalviewJvV1.xsd"
+ todir="${sourceDir}"
+ package="jalview.binding"
+ warnings="false"
+ nodesc="true"
+ verbose="true"
+ properties="${schemaDir}/jalview.nodesc.properties"
/>
</target>
+ <target name="sourcedist" description="create jalview source distribution" depends="init">
+ <delete file="${source.dist.name}"/>
+ <tar destfile="${source.dist.name}" compression="gzip">
+ <tarfileset dir="./" prefix="jalview" preserveLeadingSlashes="true">
+ <include name="LICENSE"/>
+ <include name="README"/>
+ <include name="build.xml"/>
+ <include name="jalview-jalopy.xml"/>
+ <include name="JalviewApplet.jpx"/>
+ <include name="JalviewX.jpx"/>
+ <include name="${sourceDir}/*.java"/>
+ <include name="${sourceDir}/**/*.java"/>
+ <include name="${sourceDir}/**/*.cdr"/>
+ <include name="${libDir}/**/*"/>
+ <include name="${resourceDir}/**/*"/>
+ <include name="${helpDir}/**/*"/>
+ <include name="utils/**/*"/>
+ <include name="${schemaDir}/**/*"/>
+ <include name="${docDir}/**/*"/>
+ </tarfileset>
+ </tar>
+ </target>
</project>