Fixed broken jnlp creation.
[jalview.git] / build.xml
1 <?xml version="1.0"?>
2   <project name="jalviewX" default="build" basedir=".">
3     <!-- utils is a class path to additional utilities needed for
4     building docs, jars and webstart stuff -->
5
6
7
8     <target name="init">
9       <path id="axis.classpath">
10 <!-->        <fileset dir="/usr/local/axis/lib">
11           <include name="**/*.jar" />
12         </fileset>
13         <fileset dir="/usr/local/jakarta-tomcat-5/webapps/axis/WEB-INF/lib">
14           <include name="**/*.jar"/>
15           <include name="*.jar"/>
16         </fileset> -->
17       </path>
18
19       <property name="libDir" value="lib"/>
20       <property name="resourceDir" value="resources"/>
21       <property name="helpDir" value="help"/>
22       <property name="docDir" value="doc"/>
23       <property name="sourceDir" value="src" />
24       <property name="outputDir" value="classes" />
25       <property name="packageDir" value="dist" />
26       <property name="outputJar" value="jalview.jar" />
27       <property name="wsdl.File" value="http://anaplog.compbio.dundee.ac.uk:8080/axis/services/jpred?wsdl" />
28         <property name="WebStartLocation" value="http://www.compbio.dundee.ac.uk/~jimp/public_html/jalviewtest/"/>
29       <property name="wsdl.Namespace" value="vamsas" />
30       <property name="wsdl.ClientNS" value="ext.vamsas" />  
31
32       <path id="build.classpath">
33         <fileset dir="utils">
34           <include name="*.jar"/>
35           <include name="**/*.jar"/>
36         </fileset>
37         <fileset dir="${libDir}">
38           <include name="*.jar"/>      
39           <include name="**/*.jar"/>
40         </fileset>
41 <!--        <fileset dir="old_lib_signed">
42 <include name="lib_axis.jar"/> 
43         
44         </fileset>-->
45       </path>
46       <!-->    <uptodate property="help.uptodate"
47       targetfile="${helpDir}/helpIndex.xml">
48       <srcfiles
49                  dir="${helpDir}"
50                  includes="**/*.html" />
51                </uptodate>
52       -->
53     </target>
54
55     <target name="clean" depends="init">
56       <!-- not efficient yet. -->
57       <delete dir="${outputDir}"/>
58     </target>
59
60     <target name="distclean" depends="init, clean">
61       
62       <echo message="REMOVING ALL BACKUP/AUTOSAVES!"/>
63       <delete>
64         <fileset dir=".">
65           <include name="${outputJar}"/>
66           <include name="#*#"/>
67           <include name="#*.*#"/>
68           <include name="**/#*#"/>
69           <include name="**/#*.*#"/>
70           <include name="*~"/>
71           <include name="*.*~"/>
72           <include name="**/*~"/>
73           <include name="**/*.*~"/>
74         </fileset>
75       </delete>
76     </target>
77     
78     <target name="prepare" depends="init">
79       <mkdir dir="${outputDir}"/>
80       <copy todir="${outputDir}">
81         <fileset dir=".">
82
83           <include name="${docDir}/**/*.*"/>
84           <include name="${helpDir}/**/*.*"/>
85           <include name="${libDir}/*.*"/>
86         </fileset>
87         <fileset dir="${resourceDir}">
88           <include name="**/*.*"/>
89         </fileset>
90       </copy>
91     </target>
92
93     <target name="build" depends="prepare">
94       <!-- not efficient yet. -->
95       <javac source="1.4" target="1.4" srcdir="${sourceDir}" destdir="${outputDir}"
96       classpathref="build.classpath" />
97     </target>
98     <target name="buildindices" depends="init, prepare" 
99     unless="help.uptodate">
100     <java
101       classname="com.sun.java.help.search.Indexer"
102       classpathref="build.classpath"
103       fork="true"
104       dir="${outputDir}/${helpDir}"
105       >
106       <arg line="html"/>
107     </java>
108     </target>
109     
110     <target name="makejars" depends="build, buildindices">
111       <!-- make the package jar -->
112       <mkdir dir="${packageDir}"/>
113       
114       <jar destfile="${packageDir}/${outputJar}">
115         <fileset dir="${outputDir}">
116           <exclude name="*.jar" />
117         </fileset>
118       </jar>
119
120       <copy toDir="${packageDir}" flatten="true">
121         <fileset dir="${outputDir}">
122           <include name="*.jar"/>
123           <include name="**/*.jar"/>
124         </fileset>
125       </copy>
126
127       <signjar 
128       storepass="alignmentisfun"
129       keypass="alignmentisfun"
130       keystore="keys/.keystore"
131       alias="jalview"
132       lazy="false"
133       verbose="false"
134       >
135
136       <fileset dir="${packageDir}">
137         <include name="*.jar"/>
138       </fileset>
139       </signjar>
140       <taskdef classpathref="build.classpath" resource="com/roxes/tools/ant/taskdefs.properties"/>
141       
142       <!--    codebase="http://www.jalview.org/jalview/webstart" -->
143       <jnlp toFile="${packageDir}/Jalview.jnlp" href="Jalview.jnlp"
144       codebase="${WebStartLocation}">
145       <information>
146         <title>Jalview</title>
147         <vendor>M Clamp</vendor>
148         <homepage href="www.jalview.org"/>
149         <description>Jalview Multiple Alignment Editor</description>
150         <description kind="short">Jalview</description>
151         <icon href="BartonGroupBanner.gif"/>
152       </information>
153         <resources>
154           <j2se version="1.3+"/>
155           <fileset dir="${packageDir}">
156             <include name="jalview.jar"/>
157           </fileset>
158           <fileset dir="${packageDir}">
159             <include name="*.jar"/>
160             <exclude name="jalview.jar"/>
161           </fileset>
162         </resources>
163         <application_desc main_class="jalview.bin.Jalview">
164           <argument>http://www.compbio.dundee.ac.uk/~andrew/jalview/glut.msf</argument>
165         </application_desc>
166         <security>
167           <all_permissions/>
168         </security>  
169       </jnlp>        
170     </target>
171     <target name="runenv" depends="init">
172       <path id="run.classpath">
173         <pathelement location="${outputDir}"/>
174         <fileset dir="${outputDir}">
175           <include name="${libDir}/*.jar"/>
176         </fileset>
177       </path>
178       <pathconvert targetos="unix" refid="run.classpath" property="run.classpath"/>
179       
180       <echo>java -classpath ${run.classpath} jalview.bin.Jalview
181       </echo>
182     </target>
183     
184     <target name="buildextclients" depends="init">
185       <path id="axisbuild">
186         <!--        <path refid="axis.classpath"/> -->
187         <path refid="build.classpath"/>        
188       </path>
189       <taskdef resource="axis-tasks.properties" classpathref="axisbuild"/>
190       <move todir="./bak">
191         <fileset dir="${sourceDir}" id="client">
192           <include name="${wsdl.ClientNS}/*.*"/>
193         </fileset>
194       </move>
195       
196       <axis-wsdl2java
197       output="${sourceDir}"
198       verbose="true"
199       url="${wsdl.File}" 
200       serverside="false"
201       deployscope="Request"
202       debug="false"
203       >
204       <mappingSet>
205         <mapping 
206         namespace="${wsdl.Namespace}"
207         package="${wsdl.ClientNS}"
208         />
209         <mapping namespace="http://dataTypes.vamsas"
210         package="${wsdl.ClientNS}"/>
211         </mappingSet>      
212     </axis-wsdl2java>
213
214   </target>
215   <target name="package" depends="init, build">
216     
217   </target>
218 </project>