Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
epoxy
GitHub Repository: epoxy/proj11
Path: blob/master/SLICK_HOME/build.xml
1455 views
1
<!--
2
The Slick2D Build file. It has the following capabilities:
3
4
dist - Build the complete distribution
5
build-key-store - Build a valid key store for distributing your game
6
sign-a-jar - Sign a JAR file for distribution using a key store generated here
7
8
javadoc - generate the javadoc for Slick
9
-->
10
<project name="slick" default="dist" basedir="." xmlns:artifact="urn:maven-artifact-ant">
11
<taskdef name="pack200" classname="com.sun.tools.apache.ant.pack200.Pack200Task" classpath="Pack200Task.jar"/>
12
<path id="maven-ant-tasks.classpath" path="maven/maven-ant-tasks-2.0.9.jar" />
13
<typedef resource="org/apache/maven/artifact/ant/antlib.xml"
14
uri="urn:maven-artifact-ant"
15
classpathref="maven-ant-tasks.classpath" />
16
17
<!--
18
Initialise the build script
19
-->
20
<target name="init">
21
<property name="username" value="kevin"/>
22
<property name="host" value="bob.newdawnsoftware.com"/>
23
<property name="dir" value="/home/kevin/public_html/slick"/>
24
25
<!-- Need to add versioning stuff here! -->
26
27
<property name="mode" value="demos"/>
28
<property name="demos" value="/home/kevin/public_html/slick/${mode}"/>
29
<property name="demoscodebase" value="http://slick.cokeandcode.com/${mode}"/>
30
31
<property name="build.dir" value="target"/>
32
<property name="dist" value="dist"/>
33
34
<delete dir="${build.dir}"/>
35
<mkdir dir="${build.dir}/classes"/>
36
<mkdir dir="${build.dir}/example-classes"/>
37
<delete dir="${dist}"/>
38
<mkdir dir="${dist}"/>
39
<delete dir="webstart"/>
40
<mkdir dir="webstart"/>
41
<delete dir="lzma"/>
42
<mkdir dir="lzma"/>
43
</target>
44
45
<!--
46
Build the java source to the Slick Library
47
-->
48
<target name="build-slick" depends="init">
49
<propertyfile file="src/version">
50
<entry key="build" type="int" operation="+" value="1"/>
51
</propertyfile>
52
<property file="src/version" prefix="version"/>
53
54
<delete dir="lib/slick.jar"/>
55
<javac includes="org/newdawn/slick/**" debug="true" srcdir="src" destdir="${build.dir}/classes" target="1.4" source="1.4">
56
<classpath>
57
<pathelement path="lib/lwjgl.jar"/>
58
<pathelement path="applet/lwjgl_util_applet.jar"/>
59
<pathelement path="lib/ibxm.jar"/>
60
<pathelement path="lib/jnlp.jar"/>
61
<pathelement path="lib/jogg-0.0.7.jar"/>
62
<pathelement path="lib/jorbis-0.0.15.jar"/>
63
</classpath>
64
</javac>
65
<jar destfile="lib/slick.jar"
66
basedir="${build.dir}/classes" includes="org/newdawn/slick/**"/>
67
<jar update="true" destfile="lib/slick.jar"
68
basedir="src" includes="org/newdawn/slick/data/*"/>
69
<jar update="true" destfile="lib/slick.jar"
70
basedir="src" includes="version"/>
71
<copy file="lib/slick.jar" toDir="applet"/>
72
</target>
73
74
<target name="build-slick-source" depends="init">
75
<delete file="lib/slick-sources.jar"/>
76
77
<jar destfile="lib/slick-sources.jar"
78
basedir="src" includes="org/newdawn/slick/**" excludes="org/newdawn/slick/data/*"/>
79
</target>
80
81
<target name="deploy-maven" depends="build-slick, build-slick-source">
82
<input message="Maven Username" addproperty="maven.username"/>
83
<input message="Maven Password:" addproperty="maven.password"/>
84
85
<copy file="lib/slick.jar" toFile="maven/slick-${version.build}.jar"/>
86
<copy file="lib/slick-sources.jar" toFile="maven/slick-${version.build}-sources.jar"/>
87
<copy file="maven/slick.pom.template" toFile="maven/slick-${version.build}.pom">
88
<filterset>
89
<filter token="VERSION" value="${version.build}"/>
90
</filterset>
91
</copy>
92
93
<artifact:install-provider artifactId="wagon-ssh" version="1.0-beta-2"/>
94
<artifact:deploy file="maven/slick-${version.build}.jar">
95
<artifact:pom file="maven/slick-${version.build}.pom" id="slick"/>
96
<artifact:attach file="maven/slick-${version.build}-sources.jar" classifier="sources"/>
97
<artifact:remoteRepository url="scp://bob.newdawnsoftware.com:122/home/kevin/public_html/slick/mavenrepo">
98
<authentication username="${maven.username}" password="${maven.password}" />
99
</artifact:remoteRepository>
100
</artifact:deploy>
101
</target>
102
103
<target name="slick-util" depends="build-slick">
104
<jar destfile="lib/slick-util.jar">
105
<fileset dir="${build.dir}/classes">
106
<include name="org/newdawn/slick/opengl/*.class"/>
107
<include name="org/newdawn/slick/opengl/renderer/*.class"/>
108
<include name="org/newdawn/slick/openal/*.class"/>
109
<include name="org/newdawn/slick/util/ResourceLoader.class"/>
110
<include name="org/newdawn/slick/util/*Location.class"/>
111
<include name="org/newdawn/slick/util/Log.class"/>
112
<include name="org/newdawn/slick/loading/*.class"/>
113
<include name="org/newdawn/slick/SlickException.class"/>
114
<include name="org/newdawn/slick/tests/TestUtils.class"/>
115
<include name="org/newdawn/slick/Font.class"/>
116
<include name="org/newdawn/slick/Color.class"/>
117
<include name="org/newdawn/slick/TrueTypeFont*.class"/>
118
<include name="org/newdawn/slick/util/BufferedImageUtil.class"/>
119
<include name="org/newdawn/slick/util/LogSystem.class"/>
120
<include name="org/newdawn/slick/util/DefaultLogSystem.class"/>
121
</fileset>
122
</jar>
123
124
<zip destfile="lib/slick-util-src.zip">
125
<fileset dir="src">
126
<include name="org/newdawn/slick/opengl/*.java"/>
127
<include name="org/newdawn/slick/opengl/renderer/*.java"/>
128
<include name="org/newdawn/slick/openal/*.java"/>
129
<include name="org/newdawn/slick/util/ResourceLoader.java"/>
130
<include name="org/newdawn/slick/util/*Location.java"/>
131
<include name="org/newdawn/slick/util/Log.java"/>
132
<include name="org/newdawn/slick/loading/*.java"/>
133
<include name="org/newdawn/slick/SlickException.java"/>
134
<include name="org/newdawn/slick/tests/TestUtils.java"/>
135
<include name="org/newdawn/slick/Font.java"/>
136
<include name="org/newdawn/slick/Color.java"/>
137
<include name="org/newdawn/slick/TrueTypeFont.java"/>
138
<include name="org/newdawn/slick/util/BufferedImageUtil.java"/>
139
<include name="org/newdawn/slick/util/LogSystem.class"/>
140
<include name="org/newdawn/slick/util/DefaultLogSystem.class"/>
141
</fileset>
142
</zip>
143
144
<zip destfile="${dist}/slick-util.zip">
145
<fileset dir="." includes="lib/slick-util.jar"/>
146
<fileset dir="." includes="lib/slick-util-src.zip"/>
147
<fileset dir="." includes="lib/ibxm.jar"/>
148
<fileset dir="." includes="lib/jorbis*.jar"/>
149
<fileset dir="." includes="lib/jogg*.jar"/>
150
<fileset dir="." includes="lib/lwjgl*.jar"/>
151
</zip>
152
153
<delete dir="javadoc-util"/>
154
<mkdir dir="javadoc-util"/>
155
156
<javadoc sourcepath="src"
157
defaultexcludes="yes"
158
destdir="javadoc-util"
159
author="true"
160
version="true"
161
use="true"
162
windowtitle="Slick Util - LWJGL Utilities extracted from Slick">
163
<fileset dir="src" defaultexcludes="yes">
164
<include name="org/newdawn/slick/opengl/*.java"/>
165
<include name="org/newdawn/slick/opengl/renderer/*.java"/>
166
<include name="org/newdawn/slick/openal/*.java"/>
167
<include name="org/newdawn/slick/util/ResourceLoader.java"/>
168
<include name="org/newdawn/slick/util/*Location.java"/>
169
<include name="org/newdawn/slick/util/Log.java"/>
170
<include name="org/newdawn/slick/loading/*.java"/>
171
<include name="org/newdawn/slick/SlickException.java"/>
172
<include name="org/newdawn/slick/tests/TestUtils.java"/>
173
<include name="org/newdawn/slick/tests/TestUtils.java"/>
174
<include name="org/newdawn/slick/Font.java"/>
175
<include name="org/newdawn/slick/Color.java"/>
176
<include name="org/newdawn/slick/TrueTypeFont.java"/>
177
<include name="org/newdawn/slick/util/BufferedImageUtil.java"/>
178
</fileset>
179
<classpath>
180
<pathelement path="lib/slick.jar"/>
181
<pathelement path="lib/lwjgl.jar"/>
182
<pathelement path="lib/ibxm.jar"/>
183
<pathelement path="lib/jogg-0.0.7.jar"/>
184
<pathelement path="lib/jorbis-0.0.15.jar"/>
185
</classpath>
186
<doctitle><![CDATA[<h1>Slick</h1>]]></doctitle>
187
<bottom><![CDATA[<i>Copyright &#169; 2006 New Dawn Software. All Rights Reserved.</i>]]></bottom>
188
</javadoc>
189
</target>
190
191
<!-- build the pedigree tool -->
192
<target name="build-pedigree" depends="build-slick">
193
<delete file="lib/pedigree.jar"/>
194
<javac includes="org/newdawn/slick/tools/peditor/**" debug="true" srcdir="tools" destdir="${build.dir}/classes" target="1.4" source="1.4">
195
<classpath>
196
<pathelement path="lib/slick.jar"/>
197
<pathelement path="lib/lwjgl.jar"/>
198
</classpath>
199
</javac>
200
<jar destfile="lib/pedigree.jar"
201
basedir="${build.dir}/classes" includes="org/newdawn/slick/tools/peditor/**">
202
<manifest>
203
<attribute name="Main-Class" value="org.newdawn.slick.tools.peditor.ParticleEditor"/>
204
<attribute name="Class-Path" value="slick.jar lwjgl.jar"/>
205
</manifest>
206
</jar>
207
<jar update="true" destfile="lib/pedigree.jar"
208
basedir="tools" includes="org/newdawn/slick/tools/peditor/data/*"/>
209
</target>
210
211
<!-- build the hiero tool -->
212
<target name="build-hiero" depends="init">
213
<delete file="lib/hiero.jar"/>
214
<javac includes="org/newdawn/slick/tools/hiero/**" debug="true" srcdir="tools" destdir="${build.dir}/classes" target="1.4" source="1.4">
215
</javac>
216
<jar destfile="lib/hiero.jar"
217
basedir="${build.dir}/classes" includes="org/newdawn/slick/tools/hiero/**">
218
<manifest>
219
<attribute name="Main-Class" value="org.newdawn.slick.tools.hiero.Hiero"/>
220
</manifest>
221
</jar>
222
<jar update="true" destfile="lib/hiero.jar"
223
basedir="tools" includes="org/newdawn/slick/tools/hiero/resources/*"/>
224
<jar update="true" destfile="lib/hiero.jar"
225
basedir="tools" includes="org/newdawn/slick/tools/hiero/*.jpg"/>
226
</target>
227
228
<!-- build the scalar tool -->
229
<target name="build-scalar" depends="init">
230
<delete file="lib/scalar.jar"/>
231
<javac includes="org/newdawn/slick/tools/scalar/**" debug="true" srcdir="tools" destdir="${build.dir}/classes" target="1.4" source="1.4">
232
</javac>
233
<jar destfile="lib/scalar.jar"
234
basedir="${build.dir}/classes" includes="org/newdawn/slick/tools/scalar/**">
235
<manifest>
236
<attribute name="Main-Class" value="org.newdawn.slick.tools.scalar.Scalar"/>
237
</manifest>
238
</jar>
239
</target>
240
241
<!-- build the sprite packer tool -->
242
<target name="build-packer" depends="init">
243
<delete dir="lib/scalar.jar"/>
244
<javac includes="org/newdawn/slick/tools/packulike/**" debug="true" srcdir="tools" destdir="${build.dir}/classes" target="1.4" source="1.4">
245
</javac>
246
<jar destfile="lib/packulike.jar"
247
basedir="${build.dir}/classes" includes="org/newdawn/slick/tools/packulike/**">
248
<manifest>
249
<attribute name="Main-Class" value="org.newdawn.slick.tools.packulike.Packer"/>
250
</manifest>
251
</jar>
252
</target>
253
254
<!-- build the examples -->
255
<target name="build-examples" depends="init">
256
<delete dir="lib/slick-examples.jar"/>
257
<javac includes="org/newdawn/slick/**" debug="true" srcdir="examples" destdir="${build.dir}/example-classes" target="1.4" source="1.4">
258
<classpath>
259
<pathelement path="lib/slick.jar"/>
260
<pathelement path="lib/lwjgl.jar"/>
261
<pathelement path="applet/lwjgl_util_applet.jar"/>
262
<pathelement path="lib/ibxm.jar"/>
263
<pathelement path="lib/jnlp.jar"/>
264
<pathelement path="lib/jogg-0.0.7.jar"/>
265
<pathelement path="lib/jorbis-0.0.15.jar"/>
266
</classpath>
267
</javac>
268
<jar destfile="lib/slick-examples.jar"
269
basedir="${build.dir}/example-classes" includes="org/newdawn/slick/**">
270
</jar>
271
</target>
272
273
<!--
274
Generate the javadoc from the Slick sources
275
-->
276
<target name="javadoc" depends="init">
277
<delete dir="javadoc"/>
278
<mkdir dir="javadoc"/>
279
280
<javadoc sourcepath="src"
281
defaultexcludes="yes"
282
destdir="javadoc"
283
author="true"
284
version="true"
285
use="true"
286
windowtitle="Slick - The 2D Library">
287
<packageset dir="src" defaultexcludes="yes">
288
<include name="org/newdawn/slick/**/**"/>
289
</packageset>
290
<classpath>
291
<pathelement path="lib/slick.jar"/>
292
<pathelement path="lib/lwjgl.jar"/>
293
<pathelement path="lib/jnlp.jar"/>
294
<pathelement path="applet/lwjgl_util_applet.jar"/>
295
<pathelement path="lib/ibxm.jar"/>
296
<pathelement path="lib/jogg-0.0.7.jar"/>
297
<pathelement path="lib/jorbis-0.0.15.jar"/>
298
</classpath>
299
<doctitle><![CDATA[<h1>Slick</h1>]]></doctitle>
300
<bottom><![CDATA[<i>Copyright &#169; 2006 New Dawn Software. All Rights Reserved.</i>]]></bottom>
301
</javadoc>
302
</target>
303
304
<!--
305
Build and package the complete Slick distribution and demo game
306
-->
307
<target name="dist" depends="build-slick, build-examples, javadoc, build-test-webstarts">
308
<zip destfile="${dist}/slick.zip">
309
<fileset dir="." includes="applet/applet.html"/>
310
<fileset dir="." includes="applet/jinput.jar"/>
311
<fileset dir="." includes="applet/lwjgl.jar"/>
312
<fileset dir="." includes="applet/lwjgl_applet.jar"/>
313
<fileset dir="." includes="applet/lwjgl_util_applet.jar"/>
314
<fileset dir="." includes="applet/natives.jar"/>
315
<fileset dir="." includes="javadoc/**"/>
316
<fileset dir="." includes="src/org/newdawn/slick/**"/>
317
<fileset dir="." includes="tools/**"/>
318
<fileset dir="." includes="lib/**"/>
319
<fileset dir="." includes="testdata/**"/>
320
<fileset dir="." includes="scripts/**"/>
321
<fileset dir="." includes="readme.txt"/>
322
<fileset dir="." includes="build.xml"/>
323
<fileset dir="." includes="lwjgl.dll"/>
324
<fileset dir="." includes="OpenAL32.dll"/>
325
<fileset dir="." includes="jinput-dx8.dll"/>
326
<fileset dir="." includes="jinput-raw.dll"/>
327
</zip>
328
</target>
329
330
<!--
331
Build pedigree distribution
332
-->
333
<target name="dist-pedigree" depends="build-pedigree">
334
<zip destfile="${dist}/pedigree.zip">
335
<fileset dir="lib" includes="pedigree.jar"/>
336
<fileset dir="lib" includes="lwjgl.jar"/>
337
<fileset dir="lib" includes="slick.jar"/>
338
<zipfileset src="lib/natives-win32.jar"/>
339
<zipfileset src="lib/natives-linux.jar"/>
340
<zipfileset src="lib/natives-mac.jar"/>
341
<fileset dir="." includes="pedigree-readme.xml"/>
342
<fileset dir="." includes="testdata/flame.xml"/>
343
<fileset dir="." includes="testdata/smoke.xml"/>
344
<fileset dir="." includes="testdata/system.xml"/>
345
</zip>
346
</target>
347
348
<target name="build-webstart-pedigree" depends="build-pedigree">
349
<input message="KeyStore Alias, a username:" addproperty="keystore.alias"/>
350
<input message="KeyStore Password, a password:" addproperty="keystore.password"/>
351
352
<copyandsign jar="pedigree"/>
353
<createdemojnlp name="pedigree" title="Slick2D Pedigree, Whiskas flavoured" mainclass="org.newdawn.slick.tools.peditor.ParticleEditor"/>
354
</target>
355
356
<target name="upload-pedigree" depends="build-webstart-pedigree, dist-pedigree">
357
<copy todir="${dir}/downloads" file="dist/pedigree.zip"/>
358
<copy todir="${demos}" file="webstart/pedigree.jar"/>
359
360
</target>
361
362
<!--
363
Build hiero distribution
364
-->
365
<target name="dist-hiero" depends="build-hiero">
366
<zip destfile="${dist}/hiero.zip">
367
<fileset dir="lib" includes="hiero.jar"/>
368
</zip>
369
</target>
370
371
<target name="build-webstart-hiero" depends="build-hiero">
372
<input message="KeyStore Alias, a username:" addproperty="keystore.alias"/>
373
<input message="KeyStore Password, a password:" addproperty="keystore.password"/>
374
375
<copyandsign jar="hiero"/>
376
<createdemojnlp name="hiero" title="Slick2D Hiero Bitmap Font Generator" mainclass="org.newdawn.slick.tools.hiero.Hiero"/>
377
</target>
378
379
<target name="upload-hiero" depends="build-webstart-hiero, dist-hiero">
380
<copy todir="${dir}/downloads" file="dist/hiero.zip"/>
381
<copy todir="${demos}" file="webstart/hiero.jar"/>
382
</target>
383
384
385
<!--
386
Build scalar distribution
387
-->
388
<target name="dist-scalar" depends="build-scalar">
389
<zip destfile="${dist}/scalar.zip">
390
<fileset dir="lib" includes="scalar.jar"/>
391
</zip>
392
</target>
393
394
<target name="build-webstart-scalar" depends="build-scalar">
395
<input message="KeyStore Alias, a username:" addproperty="keystore.alias"/>
396
<input message="KeyStore Password, a password:" addproperty="keystore.password"/>
397
398
<copyandsign jar="scalar"/>
399
<createdemojnlp name="scalar" title="Slick2D Scalar Scale2/3X Tool" mainclass="org.newdawn.slick.tools.scalar.Scalar"/>
400
</target>
401
402
<target name="upload-scalar" depends="build-webstart-scalar, dist-scalar">
403
<copy todir="${dir}/downloads" file="dist/scalar.zip"/>
404
<copy todir="${demos}" file="webstart/scalar.jar"/>
405
</target>
406
407
<!--
408
Build packer distribution
409
-->
410
<target name="dist-packer" depends="build-packer">
411
<zip destfile="${dist}/packulike.zip">
412
<fileset dir="lib" includes="packulike.jar"/>
413
</zip>
414
</target>
415
416
<target name="build-webstart-packer" depends="build-packer">
417
<input message="KeyStore Alias, a username:" addproperty="keystore.alias"/>
418
<input message="KeyStore Password, a password:" addproperty="keystore.password"/>
419
420
<copyandsign jar="packulike"/>
421
<createdemojnlp name="packer" title="Slick2D Sprite Packer" mainclass="org.newdawn.slick.tools.packulike.Packer"/>
422
</target>
423
424
<target name="upload-packer" depends="build-webstart-packer, dist-packer">
425
<copy todir="${dir}/downloads" file="dist/packulike.zip"/>
426
<copy todir="${demos}" file="webstart/packulike.jar"/>
427
</target>
428
<!--
429
Create a keystore to use when signing your own games
430
-->
431
<target name="build-key-store">
432
<input message="KeyStore Alias, a username:" addproperty="keystore.alias"/>
433
<input message="KeyStore Password, a password:" addproperty="keystore.password"/>
434
<input message="KeyStore Name, your name:" addproperty="keystore.name"/>
435
<input message="KeyStore Company, your development group or company:" addproperty="keystore.company"/>
436
437
<genkey keystore="${keystore.alias}.ks" alias="${keystore.alias}" storepass="${keystore.password}" >
438
<dname>
439
<param name="CN" value="${keystore.name}"/>
440
<param name="OU" value="${keystore.company}"/>
441
<param name="O" value=""/>
442
<param name="C" value=""/>
443
</dname>
444
</genkey>
445
</target>
446
447
<!--
448
Package and sign the libraries require for a webstart distribution of Slick
449
-->
450
<target name="build-webstart-libs" depends="build-slick, build-examples">
451
<input message="KeyStore Alias, a username:" addproperty="keystore.alias"/>
452
<input message="KeyStore Password, a password:" addproperty="keystore.password"/>
453
454
<copyandsign jar="ibxm"/>
455
<copyandsign jar="lwjgl"/>
456
<copyandsign jar="jogg-0.0.7"/>
457
<copyandsign jar="jinput"/>
458
<copyandsign jar="jorbis-0.0.15"/>
459
<copyandsignres jar="natives-linux"/>
460
<copyandsignres jar="natives-win32"/>
461
<copyandsignres jar="natives-mac"/>
462
<copyandsign jar="slick"/>
463
<!-- copyandsign jar="lwjgl_util_applet"/ -->
464
<copy file="webstart/slick.jar" toFile="webstart/slick-b${version.build}.jar"/>
465
<copyandsign jar="slick-examples"/>
466
</target>
467
468
<!--
469
Sign a single jar - useful for your game specific jars
470
-->
471
<target name="sign-a-jar">
472
<input message="KeyStore Alias, a username:" addproperty="keystore.alias"/>
473
<input message="KeyStore Password, a password:" addproperty="keystore.password"/>
474
<input message="Jar Location" addproperty="jar"/>
475
476
<signjar jar="${jar}" keystore="${keystore.alias}.ks" storepass="${keystore.password}" alias="${keystore.alias}"/>
477
</target>
478
479
<!--
480
Generate and package the JNLP and HTML files for the Slick webstart demos
481
-->
482
<target name="build-test-webstarts" depends="build-webstart-libs">
483
<input message="KeyStore Alias, a username:" addproperty="keystore.alias"/>
484
<input message="KeyStore Password, a password:" addproperty="keystore.password"/>
485
486
<jar destfile="webstart/testdata.jar"
487
basedir="." includes="testdata/**"/>
488
<copy file="webstart/testdata.jar" toDir="applet"/>
489
<signjar jar="webstart/testdata.jar" keystore="${keystore.alias}.ks" storepass="${keystore.password}" alias="${keystore.alias}"/>
490
491
<echo file="webstart/demos.txt">VERSION|0.4.8|SUBJECT|Webstart Demos|CONTENT|[html]</echo>
492
493
<createdemojnlp name="imagetest" title="Slick2D Image Test" mainclass="org.newdawn.slick.tests.ImageTest"/>
494
<createdemojnlp name="fonttest" title="Slick2D Font Test" mainclass="org.newdawn.slick.tests.FontTest"/>
495
<createdemojnlp name="inputtest" title="Slick2D Input Test" mainclass="org.newdawn.slick.tests.InputTest"/>
496
<createdemojnlp name="soundtest" title="Slick2D Sound Test" mainclass="org.newdawn.slick.tests.SoundTest"/>
497
<createdemojnlp name="animationtest" title="Slick2D Animation Test" mainclass="org.newdawn.slick.tests.AnimationTest"/>
498
<createdemojnlp name="graphicstest" title="Slick2D Graphics Test" mainclass="org.newdawn.slick.tests.GraphicsTest"/>
499
<createdemojnlp name="geomtest" title="Slick2D Geom Test" mainclass="org.newdawn.slick.tests.GeomTest"/>
500
<createdemojnlp name="tilemaptest" title="Slick2D TileMap Test" mainclass="org.newdawn.slick.tests.TileMapTest"/>
501
502
<createdemojnlp name="particletest" title="Slick2D Particle Test" mainclass="org.newdawn.slick.tests.ParticleTest"/>
503
<createdemojnlp name="duplicateemittertest" title="Slick2D Duplicate Emitter Test" mainclass="org.newdawn.slick.tests.DuplicateEmitterTest"/>
504
<createdemojnlp name="transformtest" title="Slick2D Transform Test" mainclass="org.newdawn.slick.tests.TransformTest"/>
505
<createdemojnlp name="statebasedtest" title="Slick2D StateBasedGame Test" mainclass="org.newdawn.slick.tests.StateBasedTest"/>
506
507
<createdemojnlp name="guitest" title="Slick2D GUI Test" mainclass="org.newdawn.slick.tests.GUITest"/>
508
<createdemojnlp name="packedtest" title="Slick2D Packed Sprite Sheet Test" mainclass="org.newdawn.slick.tests.PackedSheetTest"/>
509
510
<createdemojnlp name="storedstatetest" title="Slick2D Stored State Test" mainclass="org.newdawn.slick.tests.SavedStateTest"/>
511
<createdemojnlp name="pedigreetest" title="Slick2D Pedigree Test" mainclass="org.newdawn.slick.tests.PedigreeTest"/>
512
<createdemojnlp name="flashtest" title="Slick2D Flash Test" mainclass="org.newdawn.slick.tests.FlashTest"/>
513
<createdemojnlp name="deferredtest" title="Slick2D Deferred Test" mainclass="org.newdawn.slick.tests.DeferredLoadingTest"/>
514
515
<createdemojnlp name="spritesheetfonttest" title="Slick2D Sprite Sheet Font Test" mainclass="org.newdawn.slick.tests.SpriteSheetFontTest"/>
516
<createdemojnlp name="transparentcolortest" title="Slick2D Transparent Color Test" mainclass="org.newdawn.slick.tests.TransparentColorTest"/>
517
<createdemojnlp name="polygontest" title="Slick2D Polygon Point Test" mainclass="org.newdawn.slick.tests.PolygonTest"/>
518
519
<createdemojnlp name="purefonttest" title="Slick2D Pure Font Test" mainclass="org.newdawn.slick.tests.PureFontTest"/>
520
<createdemojnlp name="canvastest" title="Slick2D Canvas Container Test" mainclass="org.newdawn.slick.tests.CanvasContainerTest"/>
521
<createdemojnlp name="antialiastest" title="Slick2D Anti-Alias Test" mainclass="org.newdawn.slick.tests.AntiAliasTest"/>
522
523
<createdemojnlp name="offscreen" title="Slick2D Offscreen Rendering Test" mainclass="org.newdawn.slick.tests.ImageGraphicsTest"/>
524
<createdemojnlp name="clip" title="Slick2D Clipping Test" mainclass="org.newdawn.slick.tests.ClipTest"/>
525
<createdemojnlp name="imagereadtest" title="Slick2D Image Read Test" mainclass="org.newdawn.slick.tests.ImageReadTest"/>
526
<createdemojnlp name="bigimagetest" title="Slick2D Big Image Test" mainclass="org.newdawn.slick.tests.BigImageTest"/>
527
<createdemojnlp name="slickcallable" title="Slick2D Callables" mainclass="org.newdawn.slick.tests.SlickCallableTest"/>
528
<createdemojnlp name="keyrepeat" title="Slick2D Key Repeat" mainclass="org.newdawn.slick.tests.KeyRepeatTest"/>
529
<createdemojnlp name="musiclistener" title="Slick2D Music Listener" mainclass="org.newdawn.slick.tests.MusicListenerTest"/>
530
<createdemojnlp name="gradient" title="Slick2D Gradients" mainclass="org.newdawn.slick.tests.GradientTest"/>
531
<createdemojnlp name="transition" title="Slick2D Transitions" mainclass="org.newdawn.slick.tests.TransitionTest"/>
532
533
<!-- Examples under here please -->
534
<createdemojnlp template="slickexample.jnlp" name="scroller" title="Slick2D TileMap Scroll Example" mainclass="org.newdawn.slick.examples.scroller.Scroller"/>
535
536
<echo file="webstart/demos.txt" append="true">[/html]|DATE|1162965600</echo>
537
</target>
538
539
<!--
540
Upload the distrubtion ZIPs
541
-->
542
<target name="upload-dist" depends="dist, slick-util">
543
<copy todir="${dir}/downloads" file="dist/slick.zip"/>
544
<copy todir="${dir}/downloads/util" file="dist/slick-util.zip"/>
545
<copy todir="${dir}/downloads" file="lib/slick.jar"/>
546
<copy todir="${dir}/downloads/util" file="lib/slick-util.jar"/>
547
<copy todir="${dir}/downloads" file="src/version"/>
548
</target>
549
550
<!--
551
Upload the test webstarts to the Slick website
552
-->
553
<target name="upload-test-webstarts" depends="dist">
554
<copy todir="${demos}" file="webstart/slick.jar"/>
555
<copy todir="${demos}/versions" file="webstart/slick-b${version.build}.jar"/>
556
<copy todir="${demos}" file="webstart/slick-examples.jar"/>
557
<copy todir="${demos}" file="webstart/testdata.jar"/>
558
<copy todir="${demos}">
559
<fileset dir="webstart">
560
<include name="*.jnlp"/>
561
</fileset>
562
</copy>
563
<copy todir="${dir}/content/static" file="webstart/demos.txt"/>
564
</target>
565
566
<!--
567
Upload the javadoc
568
-->
569
<target name="upload-javadoc" depends="dist">
570
<copy todir="${dir}/javadoc">
571
<fileset dir="javadoc" includes="**/*"/>
572
</copy>
573
<copy todir="${dir}/javadoc-util">
574
<fileset dir="javadoc-util" includes="**/*"/>
575
</copy>
576
</target>
577
578
<!--
579
Upload everything, i.e. create a complete update to the Slick stuff.
580
-->
581
<target name="upload-all" depends="deploy-maven, upload-dist, upload-test-webstarts, upload-javadoc, upload-pedigree, upload-hiero, upload-scalar, upload-packer">
582
</target>
583
584
<!--
585
A macro to copy and sign a library for webstart distribution
586
-->
587
<macrodef name="copyandsign">
588
<attribute name="jar" default="NOT SET"/>
589
<sequential>
590
<copy file="lib/@{jar}.jar" toDir="webstart"/>
591
<signjar jar="webstart/@{jar}.jar" keystore="${keystore.alias}.ks" storepass="${keystore.password}" alias="${keystore.alias}"/>
592
<copy file="lib/@{jar}.jar" toDir="lzma"/>
593
<antcall target="compress-sign-class">
594
<param name="dir" value="lzma/"/>
595
<param name="jarfile" value="@{jar}"/>
596
</antcall>
597
</sequential>
598
</macrodef>
599
600
<macrodef name="copyandsignres">
601
<attribute name="jar" default="NOT SET"/>
602
<sequential>
603
<copy file="lib/@{jar}.jar" toDir="webstart"/>
604
<signjar jar="webstart/@{jar}.jar" keystore="${keystore.alias}.ks" storepass="${keystore.password}" alias="${keystore.alias}"/>
605
<copy file="lib/@{jar}.jar" toDir="lzma"/>
606
<signjar jar="lzma/@{jar}.jar" keystore="${keystore.alias}.ks" storepass="${keystore.password}" alias="${keystore.alias}"/>
607
<antcall target="compress-resource">
608
<param name="input" value="lzma/@{jar}.jar"/>
609
<param name="output" value="lzma/@{jar}.jar.lzma"/>
610
</antcall>
611
</sequential>
612
</macrodef>
613
614
<!--
615
A macro to copy and preprocess the JNLP template for all webstart demos
616
-->
617
<macrodef name="createdemojnlp">
618
<attribute name="name" default="NOT SET"/>
619
<attribute name="title" default="NOT SET"/>
620
<attribute name="mainclass" default="NOT SET"/>
621
<attribute name="template" default="slickdemo.jnlp"/>
622
<attribute name="datajar" default="testdata.jar"/>
623
<attribute name="projectjar" default=""/>
624
<sequential>
625
<delete file="webstart/@{name}.jnlp"/>
626
<copy file="scripts/@{template}" toFile="webstart/@{name}.jnlp">
627
<filterchain>
628
<replacetokens>
629
<token key="title" value="@{title}"/>
630
<token key="mainclass" value="@{mainclass}"/>
631
<token key="jnlpname" value="@{name}.jnlp"/>
632
<token key="homepage" value="http://slick.cokeandcode.com"/>
633
<token key="datajar" value="@{datajar}"/>
634
<token key="projectjar" value="@{projectjar}"/>
635
<token key="vendor" value="Slick 2D"/>
636
<token key="codebase" value="${demoscodebase}"/>
637
</replacetokens>
638
</filterchain>
639
</copy>
640
641
<echo file="webstart/demos.txt" append="true">
642
&lt;a href="http://slick.cokeandcode.com/demos/@{name}.jnlp"&gt; @{title} &lt;/a&gt;
643
&lt;br/&gt;
644
</echo>
645
</sequential>
646
</macrodef>
647
648
<target name="repack200" description="Pack200-repack a jar file">
649
<pack200 src="${input}" destfile="${output}" repack="true"/>
650
</target>
651
652
<target name="pack200" description="Pack200 a jar file">
653
<pack200 src="${input}" destfile="${output}"/>
654
</target>
655
656
<target name="lzma" description="LZMA compress a file">
657
<java fork="true" classname="SevenZip.LzmaAlone">
658
<classpath>
659
<pathelement location="JLzma.jar"/>
660
</classpath>
661
<jvmarg value="-Xmx512m"/>
662
<arg value="e"/>
663
<arg value="${input}"/>
664
<arg value="${output}"/>
665
</java>
666
</target>
667
668
<target name="compress-sign-class">
669
<antcall target="repack200">
670
<param name="input" value="${dir}${jarfile}.jar"/>
671
<param name="output" value="${dir}${jarfile}-repack.jar"/>
672
</antcall>
673
<signjar jar="${dir}${jarfile}-repack.jar" keystore="${keystore.alias}.ks" storepass="${keystore.password}" alias="${keystore.alias}"/>
674
<antcall target="pack200">
675
<param name="input" value="${dir}${jarfile}-repack.jar"/>
676
<param name="output" value="${dir}${jarfile}.jar.pack"/>
677
</antcall>
678
<antcall target="lzma">
679
<param name="input" value="${dir}${jarfile}.jar.pack"/>
680
<param name="output" value="${dir}${jarfile}.jar.pack.lzma"/>
681
</antcall>
682
<delete file="${dir}${jarfile}-repack.jar"/>
683
<delete file="${dir}${jarfile}.jar.pack"/>
684
<delete file="${dir}${jarfile}.jar"/>
685
</target>
686
687
<target name="compress-resource">
688
<antcall target="lzma">
689
<param name="input" value="${input}"/>
690
<param name="output" value="${output}"/>
691
</antcall>
692
<delete file="${input}"/>
693
</target>
694
695
</project>
696
697