source: trunk/JavaCommons/build.xml @ 281

Last change on this file since 281 was 281, checked in by sherbold, 13 years ago
  • removed coverage results from clean
  • Property svn:mime-type set to text/plain
File size: 18.1 KB
Line 
1<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2<project basedir="." default="dist" name="EventBench">
3        <!-- General Properties -->
4        <property environment="env" />
5        <property name="build.location" value="bin" />
6        <property name="dist.location" value="dist" />
7        <property name="javadoc.location" value="javadoc" />
8        <property name="downloads.location" value="downloads" />
9        <property name="debuglevel" value="source,lines,vars" />
10        <property name="target" value="1.6" />
11        <property name="source" value="1.6" />
12
13        <!-- Distribution Properties -->
14        <property name="dist.location.main" value="${dist.location}/console" />
15        <property name="dist.location.jfcmonitor" value="${dist.location}/jfcmonitor" />
16        <property name="dist.location.javadoc" value="${dist.location}/javadoc" />
17
18        <!-- EventBenchConsole Properties -->
19        <property name="build.location.eventbenchconsole" value="${build.location}/eventbenchconsole" />
20        <property name="EventBenchConsole.jarname" value="eventbenchconsole.jar" />
21        <property name="EventBenchConsole.location" value="../EventBenchConsole" />
22        <path id="EventBenchConsole.classpath">
23                <pathelement location="${build.location.eventbenchconsole}" />
24                <pathelement location="lib/collections-generic-4.01.jar" />
25                <pathelement location="lib/jdom.jar" />
26                <pathelement location="lib/colt-1.2.0.jar" />
27                <pathelement location="lib/concurrent-1.3.4.jar" />
28                <pathelement location="lib/j3d-core-1.3.1.jar" />
29                <pathelement location="lib/jung-3d-2.0.1.jar" />
30                <pathelement location="lib/jung-3d-demos-2.0.1.jar" />
31                <pathelement location="lib/jung-algorithms-2.0.1.jar" />
32                <pathelement location="lib/jung-api-2.0.1.jar" />
33                <pathelement location="lib/jung-graph-impl-2.0.1.jar" />
34                <pathelement location="lib/jung-io-2.0.1.jar" />
35                <pathelement location="lib/jung-jai-2.0.1.jar" />
36                <pathelement location="lib/jung-jai-samples-2.0.1.jar" />
37                <pathelement location="lib/jung-samples-2.0.1.jar" />
38                <pathelement location="lib/jung-visualization-2.0.1.jar" />
39                <pathelement location="lib/stax-api-1.0.1.jar" />
40                <pathelement location="lib/vecmath-1.3.1.jar" />
41                <pathelement location="lib/wstx-asl-3.2.6.jar" />
42                <pathelement location="lib/commons-codec-1.5.jar" />
43                <pathelement location="lib/org.eclipse.core.commands_3.6.0.I20110111-0800.jar" />
44                <pathelement location="lib/org.eclipse.equinox.common_3.6.0.v20110523.jar" />
45                <pathelement location="lib/org.eclipse.jface_3.7.0.I20110522-1430.jar" />
46                <pathelement location="lib/org.eclipse.osgi_3.7.0.v20110613.jar" />
47                <pathelement location="lib/org.eclipse.swt.win32.win32.x86_3.7.0.v3735b.jar" />
48                <pathelement location="lib/org.eclipse.ui.forms_3.5.100.v20110425.jar" />
49                <pathelement location="lib/org.eclipse.ui.workbench_3.7.0.I20110519-0100.jar" />
50                <pathelement location="lib/gui-model-core.jar" />
51                <pathelement location="lib/log4j-1.2.16.jar" />
52                <pathelement location="lib/jopt-simple-3.3.jar" />
53                <path refid="JavaHelperLib.classpath" />
54                <path refid="EventBenchCore.classpath" />
55        </path>
56
57        <!-- EventBenchCore Properties -->
58        <property name="build.location.eventbenchcore" value="${build.location}/eventbenchcore" />
59        <property name="EventBenchCore.jarname" value="eventbenchcore.jar" />
60        <property name="EventBenchCore.location" value="../EventBenchCore" />
61        <path id="EventBenchCore.classpath">
62                <pathelement location="${build.location.eventbenchcore}" />
63                <pathelement location="lib/Jama-1.0.2.jar" />
64                <pathelement location="lib/colt-1.2.0.jar" />
65                <pathelement location="lib/concurrent-1.3.4.jar" />
66                <pathelement location="lib/j3d-core-1.3.1.jar" />
67                <pathelement location="lib/jung-3d-2.0.1.jar" />
68                <pathelement location="lib/jung-3d-demos-2.0.1.jar" />
69                <pathelement location="lib/jung-algorithms-2.0.1.jar" />
70                <pathelement location="lib/jung-api-2.0.1.jar" />
71                <pathelement location="lib/jung-graph-impl-2.0.1.jar" />
72                <pathelement location="lib/jung-io-2.0.1.jar" />
73                <pathelement location="lib/jung-jai-2.0.1.jar" />
74                <pathelement location="lib/jung-jai-samples-2.0.1.jar" />
75                <pathelement location="lib/jung-samples-2.0.1.jar" />
76                <pathelement location="lib/jung-visualization-2.0.1.jar" />
77                <pathelement location="lib/stax-api-1.0.1.jar" />
78                <pathelement location="lib/vecmath-1.3.1.jar" />
79                <pathelement location="lib/wstx-asl-3.2.6.jar" />
80                <pathelement location="lib/commons-codec-1.5.jar" />
81                <pathelement location="lib/collections-generic-4.01.jar" />
82                <path refid="JavaHelperLib.classpath" />
83        </path>
84
85        <!-- JavaHelperLib Properties -->
86        <property name="build.location.javahelperlib" value="${build.location}/javahelperlib" />
87        <property name="JavaHelperLib.jarname" value="javahelperlib.jar" />
88        <property name="JavaHelperLib.location" value="../JavaHelperLib" />
89        <path id="JavaHelperLib.classpath">
90                <pathelement location="${build.location.javahelperlib}" />
91        </path>
92
93        <!-- JFCMonitor Properties -->
94        <property name="build.location.jfcmonitor" value="${build.location}/jfcmonitor" />
95        <property name="JFCMonitor.jarname" value="jfcmonitor.jar" />
96        <property name="JFCMonitor.location" value="../JFCMonitor" />
97        <path id="JFCMonitor.classpath" />
98
99        <!-- Emma Configuration -->
100        <property name="coverage.location" value="coverage" />
101        <property name="coverage.instrumented" value="inst" />
102        <property name="coverage.instrumented.javahelperlib" value="${coverage.instrumented}/javahelperlib" />
103        <property name="coverage.instrumented.eventbenchcore" value="${coverage.instrumented}/eventbenchcore" />
104        <path id="emma.classpath">
105                <pathelement location="lib-test/emma.jar" />
106                <pathelement location="lib-test/emma_ant.jar" />
107        </path>
108
109        <taskdef resource="emma_ant.properties" classpathref="emma.classpath" />
110
111        <!-- JUnit Test General Properties -->
112        <property name="test.location.results" value="test-results" />
113        <property name="test.location.data" value="testdata" />
114        <property name="test.location.output" value="testoutput" />
115        <path id="JUnit.classpath">
116                <pathelement location="lib-test/junit-4.10.jar" />
117                <pathelement location="lib-test/junit-addons-1.4.jar" />
118        </path>
119
120        <!-- JUnit Test EventBenchCore Properties -->
121        <property name="test.location.eventbenchcore" value="${build.location}/eventbenchcore-test" />
122        <property name="EventBenchCoreTest.location" value="../EventBenchCoreTest" />
123        <property name="test.eventbenchcore.main-class" value="de.ugoe.cs.eventbench.TestAll" />
124        <property name="test.eventbenchcore.results" value="${test.location.results}/eventbenchcore" />
125        <path id="EventBenchCoreJUnitCompile.classpath">
126                <pathelement location="${test.location.eventbenchcore}" />
127                <!--<pathelement location="${coverage.instrumented.eventbenchcore}" /> -->
128                <path refid="EventBenchCore.classpath" />
129                <path refid="JUnit.classpath" />
130        </path>
131        <path id="EventBenchCoreJUnitExecute.classpath">
132                        <pathelement location="${coverage.instrumented.eventbenchcore}" />
133                        <path refid="EventBenchCoreJUnitCompile.classpath" />
134                        <path refid="emma.classpath" />
135                </path>
136
137        <!-- JUnit Test JavaHelperLib Properties -->
138        <property name="test.location.javahelperlib" value="${build.location}/javahelperlib-test" />
139        <property name="JavaHelperLibTest.location" value="../JavaHelperLibTest" />
140        <property name="test.javahelperlib.main-class" value="de.ugoe.cs.util.TestAll" />
141        <property name="test.javahelperlib.results" value="${test.location.results}/javahelperlib" />
142        <path id="JavaHelperLibJUnitCompile.classpath">
143                <pathelement location="${test.location.javahelperlib}" />
144                <path refid="JavaHelperLib.classpath" />
145                <path refid="JUnit.classpath" />
146        </path>
147        <path id="JavaHelperLibJUnitExecute.classpath">
148                <pathelement location="${coverage.instrumented.javahelperlib}" />
149                <path refid="JavaHelperLibJUnitCompile.classpath" />
150                <path refid="emma.classpath" />
151        </path>
152
153
154
155        <!-- Initialization Targets -->
156        <target name="init.build">
157                <mkdir dir="${build.location}" />
158        </target>
159        <target name="init.dist">
160                <mkdir dir="${dist.location}" />
161                <mkdir dir="${dist.location.main}" />
162                <mkdir dir="${dist.location.jfcmonitor}" />
163        </target>
164        <target name="init.downloads">
165                <mkdir dir="${downloads.location}" />
166        </target>
167        <target name="init.javadoc">
168                <mkdir dir="${javadoc.location}" />
169        </target>
170        <target depends="init.build" name="init.eventbenchconsole">
171                <mkdir dir="${build.location.eventbenchconsole}" />
172        </target>
173        <target depends="init.build" name="init.eventbenchcore">
174                <mkdir dir="${build.location.eventbenchcore}" />
175        </target>
176        <target depends="init.build" name="init.javahelperlib">
177                <mkdir dir="${build.location.javahelperlib}" />
178        </target>
179        <target depends="init.build" name="init.jfcmonitor">
180                <mkdir dir="${build.location.jfcmonitor}" />
181        </target>
182        <target depends="init.build" name="init.junit">
183                <mkdir dir="${test.location.results}" />
184                <mkdir dir="${test.location.data}" />
185                <mkdir dir="${test.location.output}" />
186        </target>
187        <target depends="init.junit" name="init.eventbenchcore-test">
188                <mkdir dir="${test.location.eventbenchcore}" />
189        </target>
190        <target depends="init.junit" name="init.javahelperlib-test">
191                <mkdir dir="${test.location.javahelperlib}" />
192                <copy includeemptydirs="true" todir="${test.location.data}">
193                        <fileset dir="${JavaHelperLibTest.location}/testdata" />
194                </copy>
195        </target>
196        <target name="init.emma">
197                <mkdir dir="${coverage.instrumented}" />
198                <mkdir dir="${coverage.location}" />
199        </target>
200
201        <!-- Clean-up Targets -->
202        <target name="clean.build">
203                <delete dir="${build.location}" />
204        </target>
205        <target name="clean.dist">
206                <delete dir="${dist.location}" />
207        </target>
208        <target name="clean.javadoc">
209                <delete dir="${javadoc.location}" />
210        </target>
211        <target name="clean.junit">
212                <delete dir="${test.location.results}" />
213                <delete dir="${test.location.data}" />
214                <delete dir="${test.location.output}" />
215        </target>
216        <target name="clean.emma">
217                <delete dir="${coverage.instrumented}" />
218        </target>
219        <target depends="clean.build,clean.dist,clean.javadoc,clean.junit"
220                name="clean.all" />
221
222        <!-- Build Targets -->
223        <target
224                depends="build.javahelperlib,build.eventbenchcore,build.eventbenchconsole,build.jfcmonitor"
225                name="build" />
226        <target depends="init.eventbenchconsole" name="build.eventbenchconsole">
227                <javac debug="true" debuglevel="${debuglevel}"
228                        destdir="${build.location.eventbenchconsole}" source="${source}"
229                        target="${target}" includeantruntime="false">
230                        <src path="${EventBenchConsole.location}/src" />
231                        <classpath refid="EventBenchConsole.classpath" />
232                </javac>
233        </target>
234        <target depends="init.eventbenchcore" name="build.eventbenchcore">
235                <javac debug="true" debuglevel="${debuglevel}"
236                        destdir="${build.location.eventbenchcore}" source="${source}" target="${target}"
237                        includeantruntime="false">
238                        <src path="${EventBenchCore.location}/src" />
239                        <classpath refid="EventBenchCore.classpath" />
240                </javac>
241        </target>
242        <target depends="init.javahelperlib" name="build.javahelperlib">
243                <javac debug="true" debuglevel="${debuglevel}" destdir="${build.location.javahelperlib}"
244                        source="${source}" target="${target}" includeantruntime="false">
245                        <src path="${JavaHelperLib.location}/src" />
246                        <classpath refid="JavaHelperLib.classpath" />
247                </javac>
248        </target>
249        <target depends="init.jfcmonitor" name="build.jfcmonitor">
250                <javac debug="true" debuglevel="${debuglevel}" destdir="${build.location.jfcmonitor}"
251                        source="${source}" target="${target}" includeantruntime="false">
252                        <src path="${JFCMonitor.location}/src" />
253                        <classpath refid="JFCMonitor.classpath" />
254                </javac>
255        </target>
256
257        <!-- Distribution Targets -->
258        <target depends="build,init.dist,javadoc" name="dist">
259                <!-- dist of main components, i.e., the console -->
260                <pathconvert property="dist.libs" pathsep=" ">
261                        <mapper>
262                                <chainedmapper>
263                                        <flattenmapper />
264                                        <globmapper from="*" to="lib/*" />
265                                </chainedmapper>
266                        </mapper>
267                        <path>
268                                <fileset dir="lib">
269                                        <include name="**/*.jar" />
270                                </fileset>
271                        </path>
272                </pathconvert>
273                <property name="dist.classpath"
274                        value="${dist.libs} ${JavaHelperLib.jarname} ${EventBenchCore.jarname}"></property>
275                <jar destfile="${dist.location.main}/${EventBenchConsole.jarname}"
276                        basedir="${build.location.eventbenchconsole}">
277                        <manifest>
278                                <attribute name="Built-By" value="${user.name}" />
279                                <attribute name="Main-Class" value="de.ugoe.cs.eventbench.Runner" />
280                                <attribute name="Class-Path" value="${dist.classpath}" />
281                        </manifest>
282                </jar>
283                <jar destfile="${dist.location.main}/${EventBenchCore.jarname}"
284                        basedir="${build.location.eventbenchcore}">
285                        <manifest>
286                                <attribute name="Built-By" value="${user.name}" />
287                        </manifest>
288                </jar>
289                <jar destfile="${dist.location.main}/${JavaHelperLib.jarname}"
290                        basedir="${build.location.javahelperlib}">
291                        <manifest>
292                                <attribute name="Built-By" value="${user.name}" />
293                                <attribute name="Class-Path" value="${dist.classpath}" />
294                        </manifest>
295                </jar>
296                <copy includeemptydirs="false" todir="${dist.location.main}/lib">
297                        <fileset dir="lib" />
298                </copy>
299                <copy todir="${dist.location.main}/misc">
300                        <fileset dir="${EventBenchConsole.location}/misc" />
301                </copy>
302                <copy todir="${dist.location.main}/rules">
303                        <fileset dir="${EventBenchConsole.location}/rules" />
304                </copy>
305
306                <!-- dist of JFCMonitor -->
307                <jar destfile="${dist.location.jfcmonitor}/${JFCMonitor.jarname}"
308                        basedir="${build.location.jfcmonitor}">
309                        <manifest>
310                                <attribute name="Built-By" value="${user.name}" />
311                                <attribute name="Main-Class" value="de.ugoe.cs.eventbench.jfcmonitor.Runner" />
312                                <attribute name="Class-Path" value="${JavaHelperLib.jarname}" />
313                        </manifest>
314                </jar>
315
316                <!-- copy Javadoc to dist -->
317                <copy includeemptydirs="false" todir="${dist.location.javadoc}">
318                        <fileset dir="${javadoc.location}" />
319                </copy>
320        </target>
321
322
323        <target depends="init.downloads,dist" name="createDownloads">
324                <zip destfile="${downloads.location}/eventbench-complete.zip">
325                        <fileset dir="${dist.location}" />
326                </zip>
327                <zip destfile="${downloads.location}/eventbench-console.zip">
328                        <fileset dir="${dist.location.main}" />
329                </zip>
330                <zip destfile="${downloads.location}/eventbench-jfcmonitor.zip">
331                        <fileset dir="${dist.location.jfcmonitor}" />
332                </zip>
333                <zip destfile="${downloads.location}/eventbench-javadoc.zip">
334                        <fileset dir="${dist.location.javadoc}" />
335                </zip>
336        </target>
337
338        <!-- Javadoc Targets -->
339        <target depends="init.javadoc" name="javadoc"
340                description="o Create Javadocs (Requires Javadoc 1.4+)">
341                <javadoc destdir="${javadoc.location}"
342                        additionalparam="-J-Dorg.apache.commons.attributes.javadoc.CATaglet.sources=${basedir}">
343                        <classpath refid="JavaHelperLib.classpath" />
344                        <classpath refid="EventBenchCore.classpath" />
345                        <classpath refid="EventBenchConsole.classpath" />
346                        <classpath refid="JFCMonitor.classpath" />
347                        <link href="http://download.oracle.com/javase/6/docs/api/" />
348                        <fileset dir="${JavaHelperLib.location}/src" includes="**/*.java" />
349                        <fileset dir="${EventBenchCore.location}/src" includes="**/*.java" />
350                        <fileset dir="${EventBenchConsole.location}/src" includes="**/*.java" />
351                        <fileset dir="${JFCMonitor.location}/src" includes="**/*.java" />
352                </javadoc>
353        </target>
354
355        <!-- JUnit Targets -->
356        <target depends="init.eventbenchcore-test, emma.instrument.eventbenchcore"
357                name="build.eventbenchcore-test">
358                <javac debug="true" debuglevel="${debuglevel}" destdir="${test.location.eventbenchcore}"
359                        source="${source}" target="${target}" includeantruntime="false">
360                        <src path="${EventBenchCoreTest.location}/src" />
361                        <classpath refid="EventBenchCoreJUnitCompile.classpath" />
362                </javac>
363        </target>
364        <target depends="init.javahelperlib-test, emma.instrument.javahelperlib"
365                name="build.javahelperlib-test">
366                <javac debug="true" debuglevel="${debuglevel}" destdir="${test.location.javahelperlib}"
367                        source="${source}" target="${target}" includeantruntime="false">
368                        <src path="${JavaHelperLibTest.location}/src" />
369                        <classpath refid="JavaHelperLibJUnitCompile.classpath" />
370                </javac>
371        </target>
372
373        <target depends="emma.instrument.eventbenchcore,build.eventbenchcore-test"
374                name="junit.eventbenchcore">
375                <junit fork="on" printsummary="yes" haltonfailure="no">
376                        <classpath refid="EventBenchCoreJUnitExecute.classpath" />
377                        <test name="${test.eventbenchcore.main-class}" haltonfailure="no"
378                                outfile="${test.eventbenchcore.results}">
379                                <formatter type="xml" />
380                        </test>
381                        <jvmarg
382                                                        value="-Demma.coverage.out.file=${coverage.location}/eventbenchcore.emma" />
383                                                <jvmarg value="-Demma.coverage.out.merge=true" />
384                </junit>
385        </target>
386        <target depends="emma.instrument.javahelperlib,build.javahelperlib-test"
387                name="junit.javahelperlib">
388                <junit fork="on" printsummary="yes" haltonfailure="no">
389                        <classpath refid="JavaHelperLibJUnitExecute.classpath" />
390                        <test name="${test.javahelperlib.main-class}" haltonfailure="no"
391                                outfile="${test.javahelperlib.results}">
392                                <formatter type="xml" />
393                        </test>
394                        <jvmarg
395                                value="-Demma.coverage.out.file=${coverage.location}/javahelperlib.emma" />
396                        <jvmarg value="-Demma.coverage.out.merge=true" />
397                </junit>
398        </target>
399
400        <target depends="junit.javahelperlib,junit.eventbenchcore" name="junit" />
401
402        <!-- Emma Targets -->
403        <target depends="build.javahelperlib, init.emma" name="emma.instrument.javahelperlib">
404                <emma enabled="true">
405                        <instr instrpath="${build.location.javahelperlib}" destdir="${coverage.instrumented.javahelperlib}"
406                                metadatafile="${coverage.location}/javahelperlib.emma" merge="true" />
407                </emma>
408        </target>
409        <target depends="build.eventbenchcore, init.emma" name="emma.instrument.eventbenchcore">
410                <emma enabled="true">
411                        <instr instrpath="${build.location.eventbenchcore}" destdir="${coverage.instrumented.eventbenchcore}"
412                                metadatafile="${coverage.location}/eventbenchcore.emma" merge="true" />
413                </emma>
414        </target>
415        <target depends="junit" name="emma.report">
416                <emma enabled="true">
417                        <report sourcepath="${JavaHelperLib.location}">
418                                <fileset dir="${coverage.location}">
419                                        <include name="*.emma" />
420                                </fileset>
421                                <xml outfile="${coverage.location}/coverage.xml" depth="method" />
422                        </report>
423                </emma>
424        </target>
425</project>
Note: See TracBrowser for help on using the repository browser.