forked from JohnFirth/anotherearth.org
-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.xml
261 lines (227 loc) · 8.98 KB
/
build.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
<?xml version="1.0" encoding="UTF-8"?>
<project name="anotherearth" default="usage" basedir=".">
<description>Tests, and deploys the two maps project.</description>
<property file="build.properties" />
<property name="src.dir" value="src" />
<property name="build.dir" value="build" />
<property name="tests.report.dir" value="/home/john/work/jsunit/tests/report" />
<property name="name" value="anotherearth" />
<property name="appserver.lib" value="" />
<property name="jsUnitJar.dir" value="/home/john/work/jsunit/java/bin/" />
<path id="master-classpath">
<fileset dir="${jsUnitJar.dir}">
<include name="*.jar" />
</fileset>
</path>
<target name="usage">
<echo message="" />
<echo message="${name} build file" />
<echo message="-----------------------------------" />
<echo message="" />
<echo message="Available targets are:" />
<echo message="" />
<echo message="clean --> Clean test reports dir" />
<echo message="jsunit_test --> Unit test javascript" />
<echo message="js.concatenate --> combine js into one file" />
<echo message="js.minify --> shrink JavaScript files" />
<echo message="css.minify --> shrink CSS files" />
<echo message="build --> Build application" />
<echo message="deploy --> Deploy application as directory" />
<echo message="install --> Install application in Tomcat" />
<echo message="reload --> Reload application in Tomcat" />
<echo message="start --> Start Tomcat application" />
<echo message="stop --> Stop Tomcat application" />
<echo message="list --> List Tomcat applications" />
<echo message=""/>
</target>
<target name="clean">
<delete dir="${build.dir}" />
</target>
<target name="jsunit_test" depends="clean" description="use in-browser jsunit test">
<subant target="standalone_test">
<property name="url" value="file:///home/john/work/jsunit/testRunner.html?testPage=file:///home/john/work/two_maps_wc/tests/mapManagerTests.html&autoRun=true" />
<fileset dir="${jsunit.home}" includes="build.xml" />
</subant>
</target>
<target name="js.concatenate">
<mkdir dir="${build.dir}/js" />
<mkdir dir="${build.dir}/concatenated" />
<concat destfile="${build.dir}/concatenated/anotherearth-static.js" fixlastline="yes">
<header trimleading="yes">
/*! Copyright 2010, John Firth. Licensed under BSD (see http://www.anotherearth.org/license.txt)
* Incorporates:
* Translator.js Copyright 2008 Ariel Fleischer.
* jQuery.js Copyright 2010 John Resig.
* jQuery-ui.js Copyright 2010 Copyright 2009 various authors (http://jqueryui.com/about)
* ui-dropdown-checklist.js Copyright 2008-2009 Adrian Tosca
*
* unminified files in js/
*/
</header>
<!-- must go first, as other classes are directly dependent upon them -->
<filelist dir="${src.dir}/js/org/anotherearth/util" files="ArrayList.js" /><!--treated as native class -->
<filelist dir="${src.dir}/js/org/anotherearth/util" files="Interface.js" /><!-- treated as native class -->
<filelist dir="${src.dir}/js/org/anotherearth/util" files="interface_definitions.js" /><!-- directly referenced -->
<fileset dir="${src.dir}/js">
<filename name="**/*.js" />
<not>
<filename name="**/*container.js" />
</not>
<not>
<filename name="**/ArrayList.js" />
</not>
<not>
<filename name="**/Interface.js" />
</not>
<not>
<filename name="**/interface_definitions.js" />
</not>
</fileset>
</concat>
</target>
<target name="js.minify" depends="js.concatenate">
<apply executable="java" parallel="false" failonerror="true">
<fileset dir="${build.dir}/concatenated" includes="*.js" />
<arg line="-jar" />
<arg path="yuicompressor.jar" />
<srcfile />
<arg line="-o" />
<mapper type="glob" from="*.js" to="${build.dir}/js/*-min-2.js" />
<targetfile/>
</apply>
<apply executable="java" parallel="false" failonerror="true">
<filelist dir="${src.dir}/js/org/anotherearth/" files="main_container.js, Pakistan_container.js" />
<arg line="-jar" />
<arg path="yuicompressor.jar" />
<srcfile />
<arg line="-o" />
<mapper type="glob" from="*.js" to="${build.dir}/js/*-min-2.js" />
<targetfile/>
</apply>
<delete dir="${build.dir}/concatenated" />
</target>
<target name="css.minify">
<mkdir dir="${build.dir}/css" />
<mkdir dir="${build.dir}/concatenated" />
<concat destfile="${build.dir}/concatenated/anotherearth.css">
<filelist dir="${src.dir}/css" files="anotherearth.css, jquery-ui-1.7.2.custom.css, ui.dropdownchecklist.css" />
</concat>
<apply executable="java" parallel="false" failonerror="true">
<fileset dir="${build.dir}/concatenated" includes="anotherearth.css"/>
<arg line="-jar"/>
<arg path="yuicompressor.jar"/>
<arg line="--line-break 0"/>
<srcfile/>
<arg line="-o"/>
<mapper type="glob" from="*.css" to="${build.dir}/css/*-min-2.css"/>
<targetfile/>
</apply>
<delete dir="${build.dir}/concatenated" />
</target>
<target name="build" depends="clean, css.minify, js.minify">
<copy todir="${build.dir}" preservelastmodified="true">
<fileset dir="${src.dir}" id="not.license">
<include name="**/*.*" />
<exclude name="js/license.js" />
</fileset>
</copy>
<!-- should be separate target, probably -->
<exec executable="/bin/egrep" outputproperty="debug.count-text" osfamily="unix">
<arg line="'console|alert' ${build.dir} -R --exclude="build.xml"" />
</exec>
<exec executable="/usr/bin/wc" inputstring="${debug.count-text}" outputproperty="debug.count">
<arg value="-l" />
</exec>
<echo message="the number of times that 'console' or 'alert' were found was: ${debug.count}" />
<condition property="debug.found">
<not>
<equals arg1="${debug.count}" arg2="0"/>
</not>
</condition>
<fail if="debug.found" message="Found debug text, either 'console' or 'alert' in files ${debug.count}" />
</target>
<target name="build-dev" depends="clean, css.minify, js.concatenate">
<copy todir="${build.dir}" preservelastmodified="true">
<fileset dir="${src.dir}" id="not.license">
<include name="**/*.*" />
<exclude name="js/license.js" />
</fileset>
</copy>
</target>
<target name="deploy-dev" depends="build-dev" description="Deploy application">
<delete dir="${deploy.path}/anotherearth" />
<copy todir="${deploy.path}/${name}" preservelastmodified="true">
<fileset dir="${build.dir}">
<exclude name="**/.svn/**" />
<include name="**/*.*" />
</fileset>
</copy>
<delete dir="${build.dir}" />
</target>
<target name="deploy-prod" depends="build" description="Deploy application">
<delete dir="${deploy.path}/anotherearth" />
<copy todir="${deploy.path}/${name}" preservelastmodified="true">
<fileset dir="${build.dir}">
<exclude name="**/.svn/**" />
<include name="**/*.*" />
</fileset>
</copy>
<delete dir="${build.dir}" />
</target>
<!-- ============================================================== -->
<!-- Tomcat tasks -->
<!-- ============================================================== -->
<!--
<path id="catalina-ant-classpath">
<fileset dir="${appserver.lib}">
<include name="catalina-ant.jar"/>
</fileset>
</path>
<taskdef name="install" classname="org.apache.catalina.ant.InstallTask">
<classpath refid="catalina-ant-classpath"/>
</taskdef>
<taskdef name="reload" classname="org.apache.catalina.ant.ReloadTask">
<classpath refid="catalina-ant-classpath"/>
</taskdef>
<taskdef name="list" classname="org.apache.catalina.ant.ListTask">
<classpath refid="catalina-ant-classpath"/>
</taskdef>
<taskdef name="start" classname="org.apache.catalina.ant.StartTask">
<classpath refid="catalina-ant-classpath"/>
</taskdef>
<taskdef name="stop" classname="org.apache.catalina.ant.StopTask">
<classpath refid="catalina-ant-classpath"/>
</taskdef>
<target name="install" description="Install application in Tomcat">
<install url="${tomcat.manager.url}"
username="${tomcat.manager.username}"
password="${tomcat.manager.password}"
path="/${name}"
war="${name}"/>
</target>
<target name="reload" description="Reload application in Tomcat">
<reload url="${tomcat.manager.url}"
username="${tomcat.manager.username}"
password="${tomcat.manager.password}"
path="/${name}"/>
</target>
<target name="start" description="Start Tomcat application">
<start url="${tomcat.manager.url}"
username="${tomcat.manager.username}"
password="${tomcat.manager.password}"
path="/${name}"/>
</target>
<target name="stop" description="Stop Tomcat application">
<stop url="${tomcat.manager.url}"
username="${tomcat.manager.username}"
password="${tomcat.manager.password}"
path="/${name}"/>
</target>
<target name="list" description="List Tomcat applications">
<list url="${tomcat.manager.url}"
username="${tomcat.manager.username}"
password="${tomcat.manager.password}"/>
</target>
-->
<!-- End Tomcat tasks -->
</project>