source: trunk/build.xml

Last change on this file was 1534, checked in by fredrik, 16 years ago

Preparing for release of version 1.1.5

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 16.7 KB
Line 
1<?xml version="1.0"?>
2
3<!--
4$Id: build.xml 1534 2007-02-13 08:07:43Z fredrik $
5
6Copyright (C) Authors contributing to this file.
7
8This file is part of Proteios. Available at http://www.proteios.org/
9
10Proteios is free software; you can redistribute it and/or modify it
11under the terms of the GNU General Public License as published by the
12Free Software Foundation; either version 2 of the License, or (at your
13option) any later version.
14
15Proteios is distributed in the hope that it will be useful, but
16WITHOUT ANY WARRANTY; without even the implied warranty of
17MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18General Public License for more details.
19
20You should have received a copy of the GNU General Public License
21along with this program; if not, write to the Free Software
22Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
23USA.
24-->
25
26<project name="Proteios" default="all" basedir=".">
27    <description>
28      Proteios build file
29    </description>
30    <!-- set global properties for this build -->
31    <property name="proteios.version" value="1.1.5" />
32    <property name="src" location="src/org"/>
33    <property name="dist" location="dist"/>
34    <property name="build" location="dist/bin"/>
35    <property name="docs" location="docs"/>
36    <property name="build_lib"  location="build_lib"/>
37    <property name="lib"  location="dist/proteios/lib"/>
38
39    <target name="init">
40        <!-- Create the time stamp -->
41        <tstamp/>
42    </target>
43
44    <target name="all" depends="core,importer,query,exporter,batch,server,gui"
45        description="compile all packages" />
46
47    <target name="doc" depends="javadoc,xsddoc,uml"
48        description="generate all documentation" />
49
50    <target name="core" depends="init,hib_element" 
51        description="compile the core package" >
52        <!-- Compile the java code from ${src} into ${build} -->
53        <javac encoding="iso-8859-1" srcdir="${src}" 
54            destdir="${build}"
55            includes="**/core/*.java **/core/element/*.java "
56        debug="true">
57         <classpath>
58           <fileset dir="${lib}">
59             <include name="*.jar"/>
60           </fileset>
61        </classpath>
62        </javac>
63    </target>
64   
65    <target name="exporter" depends="core"
66        description="compile the exporter package" >
67        <!-- Compile the java code from ${src} into ${build} -->
68        <javac encoding="iso-8859-1" srcdir="${src}"
69            destdir="${build}"
70            includes="**/exporter/*.java" debug="true">
71           <classpath>
72             <fileset dir="${lib}">
73               <include name="*.jar"/>
74             </fileset>
75           </classpath>
76        </javac>
77    </target>
78
79    <target name="importer" depends="init"
80        description="compile the importer package" >
81        <!-- Compile the java code from ${src} into ${build} -->
82        <javac encoding="iso-8859-1" srcdir="${src}"
83            destdir="${build}"
84            includes="**/importer/*.java"
85            excludes="**/gui/importer/*.java" debug="true">
86           <classpath>
87             <fileset dir="${lib}">
88               <include name="*.jar"/>
89             </fileset>
90           </classpath>
91        </javac>
92    </target>
93
94    <target name="batch" depends="core"
95        description="compile the batch package" >
96        <!-- Compile the java code from ${src} into ${build} -->
97        <javac encoding="iso-8859-1" srcdir="${src}"
98            destdir="${build}"
99            includes="**/batch/*.java" debug="true">
100           <classpath>
101             <fileset dir="${lib}">
102               <include name="*.jar"/>
103             </fileset>
104           </classpath>
105        </javac>
106    </target>
107
108    <target name="server" depends="batch"
109        description="compile the server package" >
110        <!-- Compile the java code from ${src} into ${build} -->
111        <javac encoding="iso-8859-1" srcdir="${src}"
112            destdir="${build}"
113            includes="**/server/*.java" debug="true">
114           <classpath>
115             <fileset dir="${lib}">
116               <include name="*.jar"/>
117             </fileset>
118           </classpath>
119        </javac>
120    </target>
121
122    <target name="query" depends="core"
123        description="compile the query package" >
124        <!-- Compile the java code from ${src} into ${build} -->
125        <javac encoding="iso-8859-1" srcdir="${src}"
126            destdir="${build}"
127            includes="**/query/*.java"
128            excludes="**/gui/query/*.java" debug="true">
129           <classpath>
130             <fileset dir="${lib}">
131               <include name="*.jar"/>
132             </fileset>
133           </classpath>
134        </javac>
135    </target>
136
137    <target name="gui" depends="init, exporter, query" 
138        description="compile the gui package" >
139        <!-- Compile the java code from ${src} into ${build} -->
140        <javac encoding="iso-8859-1" srcdir="${src}" 
141            destdir="${build}"
142            includes="proteios/gui/**/*.java" 
143            debug="true">
144        <classpath>
145          <fileset dir="${lib}">
146          <include name="*.jar"/>
147          </fileset>
148        </classpath>
149    </javac>
150        <javac encoding="iso-8859-1" srcdir="${src}" 
151            destdir="${build}"
152            includes="proteios/gui/*.java">
153        <classpath>
154          <fileset dir="${lib}">
155          <include name="*.jar"/>
156        </fileset>
157        </classpath>
158    </javac>
159    </target>
160
161    <target name="clean"
162        description="clean up" >
163        <!-- Delete the ${build} directory trees -->
164        <delete dir="${build}/org"/>
165    </target>
166
167
168    <target name="javadoc"
169        description="generate source code API documentation" >
170
171        <javadoc 
172            encoding="iso-8859-1"
173            destdir="${docs}/javadoc"
174            author="true"
175            version="true"
176            use="true"
177            access="private"
178            windowtitle="Proteios API">
179
180            <fileset dir="${src}" defaultexcludes="yes">
181                <include name="**/*.java" />
182                <exclude name="**/Base64Coder.java"/>
183            </fileset>
184        <classpath>
185          <fileset dir="${lib}">
186          <include name="*.jar"/>
187        </fileset>
188        </classpath>
189
190            <doctitle><![CDATA[<h1>Proteios API</h1>]]></doctitle>
191            <bottom><![CDATA[<i>Copyright &#169; 2006 Rikard Alm, Per G&auml;rd&eacute;n, Jari H&auml;kkinen, Fredrik Levander - proteios.org </i>]]></bottom>
192        </javadoc>
193    </target>
194
195
196    <target name="xsddoc" depends="xsddoc_proteios,xsddoc_proteiosData,xsddoc_proteiosMzData,xsddoc_proteiosActions,xsddoc_analyseLCMS"/>
197
198    <target name="xsddoc_proteios"
199        description="generate XML schema documentation using xalan and xs3p">
200      <java classname="org.apache.xalan.xslt.Process">
201        <arg value="-IN"/>
202        <arg value="${dist}/proteios/conf/proteios.xsd"/>
203        <arg value="-XSL"/>
204        <arg value="${build_lib}/xs3p.xsl"/>
205        <arg value="-OUT"/>
206        <arg value="${docs}/xsddoc/proteios.html"/>
207        <classpath>
208          <pathelement location="${lib}/xercesImpl.jar"/>
209          <pathelement location="${lib}/xalan.jar"/>
210        </classpath>
211      </java>
212    </target>
213
214    <target name="xsddoc_proteiosData"
215        description="generate XML schema documentation using xalan and xs3p">
216      <java classname="org.apache.xalan.xslt.Process">
217        <arg value="-IN"/>
218        <arg value="${dist}/proteios/conf/proteiosData.xsd"/>
219        <arg value="-XSL"/>
220        <arg value="${build_lib}/xs3p.xsl"/>
221        <arg value="-OUT"/>
222        <arg value="${docs}/xsddoc/proteiosData.html"/>
223        <classpath>
224          <pathelement location="${lib}/xercesImpl.jar"/>
225          <pathelement location="${lib}/xalan.jar"/>
226        </classpath>
227      </java>
228    </target>
229
230    <target name="xsddoc_proteiosMzData"
231        description="generate XML schema documentation using xalan and xs3p">
232      <java classname="org.apache.xalan.xslt.Process">
233        <arg value="-IN"/>
234        <arg value="${dist}/proteios/conf/proteiosMzData.xsd"/>
235        <arg value="-XSL"/>
236        <arg value="${build_lib}/xs3p.xsl"/>
237        <arg value="-OUT"/>
238        <arg value="${docs}/xsddoc/proteiosMzData.html"/>
239        <classpath>
240          <pathelement location="${lib}/xercesImpl.jar"/>
241          <pathelement location="${lib}/xalan.jar"/>
242        </classpath>
243      </java>
244    </target>
245
246    <target name="xsddoc_proteiosActions"
247        description="generate XML schema documentation using xalan and xs3p">
248      <java classname="org.apache.xalan.xslt.Process">
249        <arg value="-IN"/>
250        <arg value="${dist}/proteios/conf/proteiosActions.xsd"/>
251        <arg value="-XSL"/>
252        <arg value="${build_lib}/xs3p.xsl"/>
253        <arg value="-OUT"/>
254        <arg value="${docs}/xsddoc/proteiosActions.html"/>
255        <classpath>
256          <pathelement location="${lib}/xercesImpl.jar"/>
257          <pathelement location="${lib}/xalan.jar"/>
258        </classpath>
259      </java>
260    </target>
261
262    <target name="xsddoc_analyseLCMS"
263        description="generate XML schema documentation using xalan and xs3p">
264      <java classname="org.apache.xalan.xslt.Process">
265        <arg value="-IN"/>
266        <arg value="${dist}/proteios/conf/import/prc/analyseLCMS.xsd"/>
267        <arg value="-XSL"/>
268        <arg value="${build_lib}/xs3p.xsl"/>
269        <arg value="-OUT"/>
270        <arg value="${docs}/xsddoc/import/prc/analyseLCMS.html"/>
271        <classpath>
272          <pathelement location="${lib}/xercesImpl.jar"/>
273          <pathelement location="${lib}/xalan.jar"/>
274        </classpath>
275      </java>
276    </target>
277
278
279    <target name="uml" depends="uml_core,uml_importer,uml_exporter, uml_batch, uml_gui.main,uml_gui.importer,uml_gui.tree"/>
280
281    <target name="uml_core"
282        description="generate uml for core package using UmlGraph" >
283        <javadoc encoding="iso-8859-1">
284            <doclet name="UmlGraph" path="${build_lib}/UmlGraph.jar">
285                <param name="-all"/>
286                <param name="-qualify"/>
287                <param name="-private"/>
288                <param name="-hide" value="java.lang.Exception"/>
289                <param name="-hide" value="org.proteios.core.XMLProcessor.MySAXBuilder"/>
290            </doclet>
291            <fileset dir="${src}" defaultexcludes="yes">
292                <include name="**/core/*.java" />
293            </fileset>
294        </javadoc>
295        <apply executable="dot">
296            <arg value="-Tps"/>
297            <arg value="-o${docs}/uml/core.ps"/>
298            <fileset file="graph.dot"/>
299        </apply>
300    </target>
301
302    <target name="uml_importer"
303        description="generate uml for importer package using UmlGraph" >
304        <javadoc encoding="iso-8859-1">
305            <doclet name="UmlGraph" path="${build_lib}/UmlGraph.jar">
306                <param name="-all"/>
307                <param name="-qualify"/>
308                <param name="-private"/>
309                <param name="-hide" value="java.lang.Exception"/>
310            </doclet>
311            <fileset dir="${src}" defaultexcludes="yes">
312                <include name="**/importer/*.java" />
313                <exclude name="**/gui/importer/*.java" />
314            </fileset>
315        </javadoc>
316        <apply executable="dot">
317            <arg value="-Tps"/>
318            <arg value="-o${docs}/uml/importer.ps"/>
319            <fileset file="graph.dot"/>
320        </apply>
321    </target>
322
323    <target name="uml_exporter"
324        description="generate uml for exporter package using UmlGraph" >
325        <javadoc encoding="iso-8859-1">
326            <doclet name="UmlGraph" path="${build_lib}/UmlGraph.jar">
327                <param name="-all"/>
328                <param name="-qualify"/>
329                <param name="-private"/>
330                <param name="-hide" value="java.lang.Exception"/>
331            </doclet>
332            <fileset dir="${src}" defaultexcludes="yes">
333                <include name="**/exporter/*.java" />
334                <exclude name="**/gui/exporter/*.java" />
335            </fileset>
336        </javadoc>
337        <apply executable="dot">
338            <arg value="-Tps"/>
339            <arg value="-o${docs}/uml/exporter.ps"/>
340            <fileset file="graph.dot"/>
341        </apply>
342    </target>
343
344    <target name="uml_batch"
345        description="generate uml for batch package using UmlGraph" >
346        <javadoc encoding="iso-8859-1">
347            <doclet name="UmlGraph" path="${build_lib}/UmlGraph.jar">
348                <param name="-all"/>
349                <param name="-qualify"/>
350                <param name="-private"/>
351                <param name="-hide" value="java.lang.Exception"/>
352            </doclet>
353            <fileset dir="${src}" defaultexcludes="yes">
354                <include name="**/batch/*.java" />
355                <exclude name="**/gui/batch/*.java" />
356            </fileset>
357        </javadoc>
358        <apply executable="dot">
359            <arg value="-Tps"/>
360            <arg value="-o${docs}/uml/batch.ps"/>
361            <fileset file="graph.dot"/>
362        </apply>
363    </target>
364
365    <target name="uml_gui.main"
366        description="generate uml for gui.main package using UmlGraph" >
367        <javadoc encoding="iso-8859-1">
368            <doclet name="UmlGraph" path="${build_lib}/UmlGraph.jar">
369                <param name="-all"/>
370                <param name="-qualify"/>
371                <param name="-private"/>
372                <param name="-hide" value="javax.swing.JPanel"/>
373                <param name="-hide" value="javax.swing.JFrame"/>
374            </doclet>
375            <fileset dir="${src}" defaultexcludes="yes">
376                <include name="**/gui/main/*.java" />
377            </fileset>
378        </javadoc>
379        <apply executable="dot">
380            <arg value="-Tps"/>
381            <arg value="-o${docs}/uml/gui/main.ps"/>
382            <fileset file="graph.dot"/>
383        </apply>
384    </target>
385
386    <target name="uml_gui.importer"
387        description="generate uml for gui.importer package using UmlGraph" >
388        <javadoc encoding="iso-8859-1">
389            <doclet name="UmlGraph" path="${build_lib}/UmlGraph.jar">
390                <param name="-all"/>
391                <param name="-qualify"/>
392                <param name="-private"/>
393                <param name="-hide" value="java.lang.Thread"/>
394                <param name="-hide" value="javax.swing.JFrame"/>
395                <param name="-hide" value="javax.swing.JPanel"/>
396                <param name="-hide" value="java.awt.dnd.DropTargetListener"/>
397                <param name="-hide" value="java.awt.event.ActionListener"/>
398            </doclet>
399            <fileset dir="${src}" defaultexcludes="yes">
400                <include name="**/gui/importer/*.java" />
401            </fileset>
402        </javadoc>
403        <apply executable="dot">
404            <arg value="-Tps"/>
405            <arg value="-o${docs}/uml/gui/importer.ps"/>
406            <fileset file="graph.dot"/>
407        </apply>
408    </target>
409
410    <target name="uml_gui.tree"
411        description="generate uml for gui.tree package using UmlGraph" >
412        <javadoc encoding="iso-8859-1">
413            <doclet name="UmlGraph" path="${build_lib}/UmlGraph.jar">
414                <param name="-all"/>
415                <param name="-qualify"/>
416                <param name="-private"/>
417                <param name="-hide" value="java.lang.Thread"/>
418                <param name="-hide" value="javax.swing.JPanel"/>
419                <param name="-hide" value="javax.swing.JTree"/>
420                <param name="-hide" value="javax.swing.event.TreeWillExpandListener"/>
421                <param name="-hide" value="javax.swing.tree.DefaultTreeCellRenderer"/>
422                <param name="-hide" value="javax.swing.tree.DefaultMutableTreeNode"/>
423                <param name="-hide" value="javax.swing.JPopupMenu"/>
424            </doclet>
425            <fileset dir="${src}" defaultexcludes="yes">
426                <include name="**/gui/tree/*.java" />
427            </fileset>
428        </javadoc>
429        <apply executable="dot">
430            <arg value="-Tps"/>
431            <arg value="-o${docs}/uml/gui/tree.ps"/>
432            <fileset file="graph.dot"/>
433        </apply>
434    </target>
435
436    <target name="hib_element" depends="init"
437        description="Generates Hibernate class descriptor files.">
438
439        <!-- Define the hibernatedoclet task -->
440    <path id="xdoclet.classpath">
441        <fileset dir="${build_lib}/">
442          <include name="*.jar"/>
443        </fileset>
444    </path>
445
446    <taskdef name="hibernatedoclet"
447      classname="xdoclet.modules.hibernate.HibernateDocletTask">
448        <classpath refid="xdoclet.classpath"/>
449    </taskdef>
450
451        <!-- Execute the hibernatedoclet task -->
452        <hibernatedoclet destdir="${build}">
453            <fileset dir="src">
454                <include name="org/proteios/core/element/*.java"/>
455            </fileset>
456            <hibernate version="2.0"/>
457        </hibernatedoclet>
458
459        <!-- Upgrade grammar from Hibernate1 to Hibernate2 -->
460        <replace dir=".">
461            <include name="**/*.hbm.xml"/>
462            <replacefilter token="readonly=" value="inverse="/>
463            <replacefilter token="role=" value="name="/>
464            <replacefilter token="2.0.dtd" value="3.0.dtd"/>
465            <replacefilter token="2.0//EN" value="3.0//EN"/>
466        </replace>
467    </target>
468
469  <!-- Run the proteios GUI. -->
470  <target name="run_proteios">
471    <java fork="true" dir="${dist}" classname="org.proteios.gui.main.GMain">
472      <arg value="-Xmx1000m"/>
473      <classpath>
474        <pathelement path="${dist}"/>
475        <pathelement path="${dist}/bin"/>
476        <pathelement path="${dist}/proteios/conf"/>
477        <pathelement path="${dist}/proteios/conf/0.8"/>
478        <!-- include all jar files  -->
479        <fileset dir="${build_lib}">
480          <include name="*.jar"/>
481        </fileset>
482        <fileset dir="${lib}">
483          <include name="*.jar"/>
484        </fileset>
485      </classpath>
486    </java>
487  </target>
488
489  <!-- Run the proteios batch. -->
490  <target name="batchProteios">
491    <java fork="true" dir="${dist}" classname="org.proteios.batch.BMain">
492      <arg value="-Xmx1000m"/>
493      <classpath>
494        <pathelement path="${dist}"/>
495        <pathelement path="${dist}/bin"/>
496        <pathelement path="${dist}/proteios/conf"/>
497        <pathelement path="${dist}/proteios/conf/0.8"/>
498        <!-- include all jar files  -->
499        <fileset dir="${build_lib}">
500          <include name="*.jar"/>
501        </fileset>
502        <fileset dir="${lib}">
503          <include name="*.jar"/>
504        </fileset>
505      </classpath>
506    </java>
507  </target>
508
509  <!-- Run the proteios XMLRPC server. -->
510  <target name="xmlrpcServer">
511    <java fork="true" dir="${dist}" classname="org.proteios.server.XMLRPCServer">
512      <arg value="-Xmx1000m"/>
513      <classpath>
514        <pathelement path="${dist}"/>
515        <pathelement path="${dist}/bin"/>
516        <pathelement path="${dist}/proteios/conf"/>
517        <pathelement path="${dist}/proteios/conf/0.8"/>
518        <!-- include all jar files  -->
519        <fileset dir="${build_lib}">
520          <include name="*.jar"/>
521        </fileset>
522        <fileset dir="${lib}">
523          <include name="*.jar"/>
524        </fileset>
525      </classpath>
526    </java>
527  </target>
528
529</project>
Note: See TracBrowser for help on using the repository browser.