]>
Commit | Line | Data |
---|---|---|
6527f429 DM |
1 | <?xml version="1.0" encoding="utf-8"?>\r |
2 | <!--\r | |
3 | ********************************** DO NOT EDIT **********************************\r | |
4 | \r | |
5 | This file will be replaced during upgrades so DO NOT EDIT this file. If you need to\r | |
6 | adjust the process, reading and understanding this file is the first step.\r | |
7 | \r | |
8 | In most cases, the adjustments can be achieved by setting properties or providing one\r | |
9 | of the "hooks" in the form of a "-before-" or "-after-" target. Whenever possible, look\r | |
10 | for one of these solutions.\r | |
11 | \r | |
12 | Failing that, you can copy whole targets to your build.xml file and it will overrride\r | |
13 | the target provided here. Doing that can create problems for upgrading to newer\r | |
14 | versions of Cmd so it is not recommended but it will be easier to manage than editing\r | |
15 | this file in most cases.\r | |
16 | -->\r | |
17 | <project name="x-pkg-build-impl">\r | |
18 | \r | |
19 | <!--\r | |
20 | ===============================================================\r | |
21 | Find Cmd\r | |
22 | uses targets from find-cmd-impl.xml to detect the current \r | |
23 | install of Sencha Cmd\r | |
24 | ===============================================================\r | |
25 | -->\r | |
26 | <import file="${basedir}/.sencha/package/find-cmd-impl.xml"/>\r | |
27 | <target name="init-cmd" \r | |
28 | depends="find-cmd-in-path,\r | |
29 | find-cmd-in-environment,\r | |
30 | find-cmd-in-shell">\r | |
31 | <echo>Using Sencha Cmd from ${cmd.dir} for ${ant.file}</echo>\r | |
32 | \r | |
33 | <!--\r | |
34 | load the sencha.jar ant task definitions.\r | |
35 | \r | |
36 | NOTE: the 'loaderref' attribute stores this task def's class loader\r | |
37 | on the project by that name, so it will be sharable across sub-projects.\r | |
38 | This fixes out-of-memory issues, as well as increases performance.\r | |
39 | \r | |
40 | To supoprt this, it is recommended that any customizations that use\r | |
41 | 'ant' or 'antcall' tasks set 'inheritrefs=true' on those tasks, in order\r | |
42 | to propagate the senchaloader reference to those subprojects. \r | |
43 | \r | |
44 | The sencha 'x-ant-call' task, which extends 'antcall' and defaults \r | |
45 | 'inheritrefs' to true, may be used in place of antcall in \r | |
46 | build process customizations.\r | |
47 | -->\r | |
48 | <taskdef resource="com/sencha/ant/antlib.xml" \r | |
49 | classpath="${cmd.dir}/sencha.jar"\r | |
50 | loaderref="senchaloader"/>\r | |
51 | \r | |
52 | <!-- \r | |
53 | Some operations require sencha.jar in the current java classpath, \r | |
54 | so this will extend the java.lang.Thread#contextClassLoader with the \r | |
55 | specified java classpath entries\r | |
56 | -->\r | |
57 | <x-extend-classpath>\r | |
58 | <jar path="${cmd.dir}/sencha.jar"/>\r | |
59 | </x-extend-classpath>\r | |
60 | </target>\r | |
61 | \r | |
62 | <!--\r | |
63 | ===============================================================\r | |
64 | Init\r | |
65 | uses targets from init-impl.xml to load Sencha Cmd config\r | |
66 | system properties and ant task definitions\r | |
67 | ===============================================================\r | |
68 | -->\r | |
69 | <import file="${basedir}/.sencha/package/refresh-impl.xml"/>\r | |
70 | <import file="${basedir}/.sencha/package/init-impl.xml"/>\r | |
71 | <target name="init"\r | |
72 | depends="init-local,\r | |
73 | init-cmd,\r | |
74 | -before-init,\r | |
75 | -init,\r | |
76 | -after-init,\r | |
77 | -before-init-defaults,\r | |
78 | -init-defaults,\r | |
79 | -after-init-defaults,\r | |
80 | -init-compiler,\r | |
81 | -init-web-server"/>\r | |
82 | \r | |
83 | <!--\r | |
84 | ===============================================================\r | |
85 | Build\r | |
86 | this is the starting point for the build process. The 'depends'\r | |
87 | attribute on the -build target controls the ordering of the \r | |
88 | different build phases\r | |
89 | ===============================================================\r | |
90 | -->\r | |
91 | <target name="-before-build"/>\r | |
92 | <target name="-build"\r | |
93 | depends="js,\r | |
94 | inherit-resources,\r | |
95 | copy-resources,\r | |
96 | slice,\r | |
97 | sass,\r | |
98 | subpkgs,\r | |
99 | examples,\r | |
100 | pkg"/>\r | |
101 | <target name="-after-build"/>\r | |
102 | <target name="build"\r | |
103 | depends="init,-before-build,-build,-after-build"\r | |
104 | description="Builds the package"/>\r | |
105 | \r | |
106 | <!--\r | |
107 | ===============================================================\r | |
108 | Clean\r | |
109 | removes all artifacts from the output build directories\r | |
110 | ===============================================================\r | |
111 | -->\r | |
112 | <target name="-before-clean"/>\r | |
113 | <target name="-after-clean"/>\r | |
114 | <target name="-clean">\r | |
115 | <delete dir="${package.output.base}"/>\r | |
116 | <delete dir="${build.temp.dir}"/>\r | |
117 | </target>\r | |
118 | <target name="clean" \r | |
119 | depends="init"\r | |
120 | description="Removes all build output produced by the 'build' target">\r | |
121 | <x-ant-call>\r | |
122 | <target name="-before-clean"/>\r | |
123 | <target name="-clean"/>\r | |
124 | <target name="clean-subpkgs"/>\r | |
125 | <target name="clean-examples"/>\r | |
126 | <target name="-after-clean"/>\r | |
127 | </x-ant-call>\r | |
128 | </target>\r | |
129 | \r | |
130 | <!--\r | |
131 | ===============================================================\r | |
132 | JS\r | |
133 | uses targets from js-impl.xml to produce the output js files\r | |
134 | containing package js classes\r | |
135 | ===============================================================\r | |
136 | -->\r | |
137 | <import file="${basedir}/.sencha/package/js-impl.xml"/>\r | |
138 | <target name="js" \r | |
139 | depends="init"\r | |
140 | description="Builds the JS files">\r | |
141 | <x-ant-call unless="skip.js">\r | |
142 | <target name="-before-js"/>\r | |
143 | <target name="-js"/>\r | |
144 | <target name="-after-js"/>\r | |
145 | </x-ant-call>\r | |
146 | </target>\r | |
147 | \r | |
148 | <!--\r | |
149 | ===============================================================\r | |
150 | Resources\r | |
151 | uses targets from resources-impl.xml the package's resources \r | |
152 | to the output directory\r | |
153 | ===============================================================\r | |
154 | -->\r | |
155 | <import file="${basedir}/.sencha/package/resources-impl.xml"/>\r | |
156 | \r | |
157 | <target name="inherit-resources" \r | |
158 | depends="init" \r | |
159 | description="Performs the resource folder inheritance from base theme(s)">\r | |
160 | <x-ant-call unless="skip.inherit">\r | |
161 | <target name="-before-inherit-resources"/>\r | |
162 | <target name="-inherit-resources"/>\r | |
163 | <target name="-after-inherit-resources"/>\r | |
164 | </x-ant-call>\r | |
165 | </target>\r | |
166 | \r | |
167 | <target name="copy-resources" \r | |
168 | depends="init" \r | |
169 | description="Copy theme resources to folder">\r | |
170 | <x-ant-call unless="skip.resources">\r | |
171 | <target name="-before-copy-resources"/>\r | |
172 | <target name="-copy-resources"/>\r | |
173 | <target name="-after-copy-resources"/>\r | |
174 | </x-ant-call>\r | |
175 | </target>\r | |
176 | \r | |
177 | <!--\r | |
178 | ===============================================================\r | |
179 | Sass\r | |
180 | uses targets from sass-impl.xml to produce the output css\r | |
181 | files for the package's styling\r | |
182 | ===============================================================\r | |
183 | -->\r | |
184 | <import file="${basedir}/.sencha/package/sass-impl.xml"/>\r | |
185 | <target name="sass" \r | |
186 | depends="init"\r | |
187 | description="Builds the SASS files using Compass">\r | |
188 | <x-ant-call unless="skip.sass">\r | |
189 | <target name="-before-sass"/>\r | |
190 | <target name="-sass"/>\r | |
191 | <target name="-after-sass"/>\r | |
192 | </x-ant-call>\r | |
193 | </target>\r | |
194 | \r | |
195 | <!--\r | |
196 | ===============================================================\r | |
197 | Slice\r | |
198 | uses targets from slice-impl.xml to extract theme images from\r | |
199 | the package's styling for use with older browsers that don't \r | |
200 | support modern css features\r | |
201 | ===============================================================\r | |
202 | -->\r | |
203 | <import file="${basedir}/.sencha/package/slice-impl.xml"/>\r | |
204 | <target name="slice" \r | |
205 | depends="init" \r | |
206 | description="Slices CSS3 theme to produce non-CSS3 images and sprites">\r | |
207 | <x-ant-call unless="skip.slice">\r | |
208 | <target name="-before-slice"/>\r | |
209 | <target name="-slice"/>\r | |
210 | <target name="-after-slice"/>\r | |
211 | </x-ant-call>\r | |
212 | </target>\r | |
213 | \r | |
214 | \r | |
215 | <!--\r | |
216 | ===============================================================\r | |
217 | Sub Builds\r | |
218 | uses targets from sub-builds.xml to process other packages\r | |
219 | and example applications contained within this package.\r | |
220 | Only the "subpkgs" and "examples" targets are part of the \r | |
221 | main build sequence.\r | |
222 | ===============================================================\r | |
223 | -->\r | |
224 | <import file="sub-builds.xml"/>\r | |
225 | \r | |
226 | <!--\r | |
227 | sub packages\r | |
228 | -->\r | |
229 | <target name="subpkgs" \r | |
230 | depends="init"\r | |
231 | description="Builds all sub-packages">\r | |
232 | <x-ant-call unless="skip.subpkgs">\r | |
233 | <target name="-before-subpkgs"/>\r | |
234 | <target name="-subpkgs"/>\r | |
235 | <target name="-after-subpkgs"/>\r | |
236 | </x-ant-call>\r | |
237 | </target>\r | |
238 | \r | |
239 | <target name="clean-subpkgs" \r | |
240 | depends="init"\r | |
241 | description="Cleans all sub-packages">\r | |
242 | <x-ant-call unless="skip.clean.subpkgs">\r | |
243 | <target name="-before-clean-subpkgs"/>\r | |
244 | <target name="-clean-subpkgs"/>\r | |
245 | <target name="-after-clean-subpkgs"/>\r | |
246 | </x-ant-call>\r | |
247 | </target>\r | |
248 | \r | |
249 | <target name="upgrade-subpkgs" \r | |
250 | depends="init"\r | |
251 | description="Upgrades all sub-packages">\r | |
252 | <x-ant-call unless="skip.upgrade.subpkgs">\r | |
253 | <target name="-before-upgrade-subpkgs"/>\r | |
254 | <target name="-upgrade-subpkgs"/>\r | |
255 | <target name="-after-upgrade-subpkgs"/>\r | |
256 | </x-ant-call>\r | |
257 | </target>\r | |
258 | \r | |
259 | <!--\r | |
260 | example applications\r | |
261 | -->\r | |
262 | <target name="examples" \r | |
263 | depends="init"\r | |
264 | description="Builds all examples">\r | |
265 | <x-ant-call unless="skip.examples">\r | |
266 | <target name="-before-examples"/>\r | |
267 | <target name="-examples"/>\r | |
268 | <target name="-after-examples"/>\r | |
269 | </x-ant-call>\r | |
270 | </target>\r | |
271 | \r | |
272 | <target name="clean-examples" \r | |
273 | depends="init"\r | |
274 | description="Upgrades all examples">\r | |
275 | <x-ant-call unless="skip.clean.examples">\r | |
276 | <target name="-before-clean-examples"/>\r | |
277 | <target name="-clean-examples"/>\r | |
278 | <target name="-after-clean-examples"/>\r | |
279 | </x-ant-call>\r | |
280 | </target>\r | |
281 | \r | |
282 | <target name="upgrade-examples" \r | |
283 | depends="init"\r | |
284 | description="Upgrades all examples">\r | |
285 | <x-ant-call unless="skip.upgrade.examples">\r | |
286 | <target name="-before-upgrade-examples"/>\r | |
287 | <target name="-upgrade-examples"/>\r | |
288 | <target name="-after-upgrade-examples"/>\r | |
289 | </x-ant-call>\r | |
290 | </target>\r | |
291 | \r | |
292 | <!--\r | |
293 | Build PKG\r | |
294 | -->\r | |
295 | <target name="-before-pkg"/>\r | |
296 | <target name="-after-pkg"/>\r | |
297 | <target name="-pkg">\r | |
298 | <x-make-pkg dir="${package.dir}"\r | |
299 | files="${build.pkg.manifest}"\r | |
300 | pkg="${pkg.build.dir}/${pkg.file.name}"\r | |
301 | temp="${build.temp.dir}"/>\r | |
302 | </target>\r | |
303 | <target name="pkg" \r | |
304 | depends="init"\r | |
305 | description="Builds the PKG file">\r | |
306 | <x-ant-call unless="skip.pkg">\r | |
307 | <target name="-before-pkg"/>\r | |
308 | <target name="-pkg"/>\r | |
309 | <target name="-after-pkg"/>\r | |
310 | </x-ant-call>\r | |
311 | </target>\r | |
312 | \r | |
313 | <!--\r | |
314 | ===============================================================\r | |
315 | Help - properties\r | |
316 | displays all current ant properties\r | |
317 | ===============================================================\r | |
318 | -->\r | |
319 | <target name=".props" depends="init"\r | |
320 | description="Lists all properties defined for the build">\r | |
321 | <echoproperties/>\r | |
322 | </target>\r | |
323 | \r | |
324 | <!--\r | |
325 | ===============================================================\r | |
326 | Help - docs\r | |
327 | displays the help message\r | |
328 | ===============================================================\r | |
329 | -->\r | |
330 | <target name=".help" depends="init"\r | |
331 | description="Provides help on the build script">\r | |
332 | \r | |
333 | <x-get-project-targets property="help.message"/>\r | |
334 | \r | |
335 | <echo><![CDATA[${help.message}\r | |
336 | This is the main build script for your package.\r | |
337 | \r | |
338 | The following properties can be used to disable certain steps in the build\r | |
339 | process.\r | |
340 | \r | |
341 | * skip.pkg Do not build the PKG file\r | |
342 | * skip.sass Do not build the SASS.\r | |
343 | * skip.js Do not build the JS files.\r | |
344 | \r | |
345 | For details about how these options affect your build, see\r | |
346 | \r | |
347 | ${basedir}/.sencha/package/build-impl.xml\r | |
348 | \r | |
349 | These options can be stored in a local.properties file in this folder or in the\r | |
350 | local.properties file in the workspace.\r | |
351 | \r | |
352 | Alternatively, these can be supplied on the command line. For example:\r | |
353 | \r | |
354 | sencha ant -Dskip.sass=1 build\r | |
355 | \r | |
356 | To see all currently defined properties, do this:\r | |
357 | \r | |
358 | sencha ant .props\r | |
359 | ]]></echo>\r | |
360 | </target>\r | |
361 | \r | |
362 | </project>\r |