22 --> |
22 --> |
23 <project name="helium" xmlns:hlm="http://www.nokia.com/helium"> |
23 <project name="helium" xmlns:hlm="http://www.nokia.com/helium"> |
24 <description> |
24 <description> |
25 Main full build targets and properties |
25 Main full build targets and properties |
26 </description> |
26 </description> |
|
27 |
27 <property environment="env" /> |
28 <property environment="env" /> |
28 |
29 |
29 |
|
30 <!-- Load the current Helium version. --> |
30 <!-- Load the current Helium version. --> |
31 <!--* @property helium.version |
31 <!--* @property helium.version |
32 @type string |
32 @type string |
33 @scope private |
33 @scope private |
34 --> |
34 --> |
35 <property file="${helium.dir}/config/version.txt"/> |
35 <property file="${helium.dir}/config/version.txt"/> |
36 |
36 |
37 <!-- Libraries |
37 |
38 ======================================================================--> |
|
39 <import file="helium_preinclude.ant.xml"/> |
38 <import file="helium_preinclude.ant.xml"/> |
40 |
39 |
41 <!-- The path where Helium-specific outputs are written to. |
|
42 @type string |
|
43 @scope private |
|
44 --> |
|
45 <property name="helium.build.dir" location="${helium.dir}/build"/> |
|
46 |
40 |
47 <hlm:typedef file="${helium.dir}/tools/common/common.antlib.xml" uri="http://www.nokia.com/helium"/> |
41 <hlm:typedef file="${helium.dir}/tools/common/common.antlib.xml" uri="http://www.nokia.com/helium"/> |
48 |
42 |
49 <!-- Location of generated logging config. |
43 <!-- Import default configuration settings. --> |
50 @type string |
44 <import file="tools/common/default_config.ant.xml"/> |
51 @scope private |
|
52 --> |
|
53 <property name="logging.output.file" location="${cache.dir}/logging.${env.PID}.conf" /> |
|
54 <fmpp sourceFile="${helium.dir}/config/logging.conf.ftl" outputFile="${logging.output.file}" quiet="true"> |
|
55 <data expandProperties="yes"> |
|
56 ant: antProperties() |
|
57 </data> |
|
58 </fmpp> |
|
59 |
|
60 <!-- Properties |
|
61 ======================================================================--> |
|
62 <!-- Used to specify which team configuration is being used. These configuration files are under /mc/mc_build/teams. |
|
63 @type string |
|
64 --> |
|
65 <property name="team" value="${env.TEAM}"/> |
|
66 |
|
67 <!-- See if 'bn' is defined as a shortcut for build.number. --> |
|
68 <if> |
|
69 <isset property="bn"/> |
|
70 <then> |
|
71 <!-- Build number |
|
72 @type integer |
|
73 @scope public |
|
74 --> |
|
75 <property name="build.number" value="${bn}"/> |
|
76 </then> |
|
77 </if> |
|
78 |
|
79 <!-- If build.drive not define then search the next free drive --> |
|
80 <if> |
|
81 <and> |
|
82 <not> |
|
83 <isset property="build.drive"/> |
|
84 </not> |
|
85 <os family="windows"/> |
|
86 </and> |
|
87 <then> |
|
88 <!-- used to track if build.drive has predefined or not |
|
89 @type flag |
|
90 @scope private |
|
91 --> |
|
92 <property name="build.drive.notdefined" value="true"/> |
|
93 <exec osfamily="windows" executable="python" failonerror="true" outputproperty="build.drive"> |
|
94 <arg line="-m searchnextdrive"/> |
|
95 </exec> |
|
96 <if> |
|
97 <equals arg1="${build.drive}" arg2="Error: No free drive!"/> |
|
98 <then> |
|
99 <fail message="ERROR: Failed to assign build drive, please check you are not running out of drives." /> |
|
100 </then> |
|
101 </if> |
|
102 <exec osfamily="windows" executable="subst" failonerror="false"> |
|
103 <arg value="${build.drive}" /> |
|
104 <arg value="${env.TEMP}/helium/temp_drive" /> |
|
105 </exec> |
|
106 <echo> Using build drive ${build.drive} </echo> |
|
107 </then> |
|
108 </if> |
|
109 |
|
110 <!-- For unix os prep.build.dir is equivalent to build.drive --> |
|
111 <condition property="prep.build.dir" value="${build.drive}"> |
|
112 <and> |
|
113 <isset property="build.drive"/> |
|
114 <os family="unix"/> |
|
115 </and> |
|
116 </condition> |
|
117 |
|
118 |
|
119 <if> |
|
120 <and> |
|
121 <isset property="major.version"/> |
|
122 <isset property="minor.version"/> |
|
123 </and> |
|
124 <then> |
|
125 <!-- This Defaults to the ${major.version}.${minor.version} combo and is available so that 1 number can be used (dot can be removed) |
|
126 @type string |
|
127 --> |
|
128 <property name="core.build.version" value="${major.version}.${minor.version}"/> |
|
129 </then> |
|
130 <else> |
|
131 <!-- This Defaults to the ${major.version}.${minor.version} combo and is available so that 1 number can be used (dot can be removed) |
|
132 @type string |
|
133 --> |
|
134 <property name="core.build.version" value="${env.USERNAME}"/> |
|
135 </else> |
|
136 </if> |
|
137 |
|
138 <!--* @property read.build.int |
|
139 If defined, indicates that the build number should be read from an incrementing text file. |
|
140 @type string |
|
141 @scope public |
|
142 --> |
|
143 <!--* @property build.tag |
|
144 If defined, defines the prefix for the build number when it is read from an incrementing text file. |
|
145 @type string |
|
146 @scope public |
|
147 --> |
|
148 <if> |
|
149 <and> |
|
150 <isset property="read.build.int"/> |
|
151 <not> |
|
152 <isset property="build.number"/> |
|
153 </not> |
|
154 </and> |
|
155 <then> |
|
156 <if> |
|
157 <isset property="build.tag"/> |
|
158 <then> |
|
159 <property name="build.tag.ext" value="${build.tag}."/> |
|
160 </then> |
|
161 <else> |
|
162 <property name="build.tag.ext" value=""/> |
|
163 <property name="build.tag" value=""/> |
|
164 </else> |
|
165 </if> |
|
166 <!-- Use an internal directory to store text files for assigning build number information. --> |
|
167 <!-- The directory where the build integer database text files are stored. |
|
168 @type string |
|
169 @scope private |
|
170 --> |
|
171 <property name="build.int.db.dir" location="${publish.root.dir}/internal/build_int_db"/> |
|
172 <mkdir dir="${build.int.db.dir}"/> |
|
173 <property name="build.int.db.file" value="${build.int.db.dir}/${build.name}_${core.build.version}_${build.tag}_build_int_db.txt"/> |
|
174 <if> |
|
175 <available file="${build.int.db.file}"/> |
|
176 <then> |
|
177 <echo>Reading from existing build number property file.</echo> |
|
178 <property file="${build.int.db.file}"/> |
|
179 <echo>Build int = ${build.int}</echo> |
|
180 <!-- Read the comments in the file too, for history information. --> |
|
181 <loadfile property="build.int.db.file.comments" srcFile="${build.int.db.file}"> |
|
182 <filterchain> |
|
183 <linecontains> |
|
184 <contains value="# history: "/> |
|
185 </linecontains> |
|
186 </filterchain> |
|
187 </loadfile> |
|
188 <!-- Set the property in case nothing was found. --> |
|
189 <property name="build.int.db.file.comments" value=""/> |
|
190 <echo>History comments: |
|
191 ${build.int.db.file.comments}</echo> |
|
192 <!-- Build number |
|
193 @type integer |
|
194 @scope public |
|
195 --> |
|
196 <property name="build.number" value="${build.tag.ext}${build.int}"/> |
|
197 <echo>Writing incremented build int back to file.</echo> |
|
198 <propertyfile file="${build.int.db.file}" comment="build.int database file"> |
|
199 <entry key="build.int" type="int" default="001" operation="+" pattern="000"/> |
|
200 </propertyfile> |
|
201 <tstamp> |
|
202 <format property="build.int.db.file.tstamp" pattern="dd/MM/yyyy-HH:mm:ss"/> |
|
203 </tstamp> |
|
204 <concat destfile="${build.int.db.file}" append="true"> |
|
205 ${build.int.db.file.comments} |
|
206 # history: ${env.COMPUTERNAME};${env.USERNAME};${build.int.db.file.tstamp};${build.int} |
|
207 </concat> |
|
208 </then> |
|
209 <else> |
|
210 <echo>Build number property file not found. Creating a new one.</echo> |
|
211 <property name="new.build.int" value="001"/> |
|
212 <!-- Build number |
|
213 @type integer |
|
214 @scope public |
|
215 --> |
|
216 <property name="build.number" value="${build.tag.ext}${new.build.int}"/> |
|
217 <echo>Build number = ${build.number}</echo> |
|
218 <propertyfile file="${build.int.db.file}" comment="build.int database file"> |
|
219 <entry key="build.int" type="int" default="001" operation="+" pattern="000"/> |
|
220 </propertyfile> |
|
221 </else> |
|
222 </if> |
|
223 </then> |
|
224 </if> |
|
225 |
|
226 |
|
227 <!-- Define a number of properties that should be consistent amongst all builds. They can be overridden |
|
228 within any config or team Ant file though. --> |
|
229 <!-- A general label for this type of build. Currently if not defined, product.name will be used to set this property, but this will likely be removed in future. |
|
230 @type string |
|
231 @editable required |
|
232 --> |
|
233 <property name="build.name" value="helium"/> |
|
234 <if> |
|
235 <and> |
|
236 <isset property="core.build.version"/> |
|
237 <isset property="build.number"/> |
|
238 </and> |
|
239 <then> |
|
240 <!-- Version of the build. |
|
241 @type string |
|
242 @scope private |
|
243 --> |
|
244 <property name="build.version" value="${core.build.version}.${build.number}"/> |
|
245 </then> |
|
246 <else> |
|
247 <!-- Version of the build. |
|
248 @type string |
|
249 @scope private |
|
250 --> |
|
251 <property name="build.version" value="${env.USERNAME}"/> |
|
252 </else> |
|
253 </if> |
|
254 |
|
255 <!-- A unique ID for the build. |
|
256 @type string |
|
257 @scope private |
|
258 --> |
|
259 <property name="build.id" value="${build.name}_${build.version}"/> |
|
260 <!-- The general type of the build. This is used for checking the tools environment. Potential values include core, ido, product. |
|
261 @type string |
|
262 --> |
|
263 <property name="build.type" value="core"/> |
|
264 <condition property="epocroot" value="${env.EPOCROOT}" else="${env.EPOCROOT}/"> |
|
265 <matches pattern="^.*[\\/]$" string="${env.EPOCROOT}" /> |
|
266 </condition> |
|
267 <!-- The data model XML file for the Ant configuration. |
|
268 @type string |
|
269 @scope private |
|
270 --> |
|
271 <property name="data.model.file" location="${helium.dir}/config/helium_data_model.xml"/> |
|
272 <!-- The data model XML file for the Ant configuration parsed. |
|
273 @type string |
|
274 @scope private |
|
275 --> |
|
276 <property name="data.model.parsed" location="${helium.build.dir}/datamodel.out"/> |
|
277 <condition property="data.model.xsl" value="${helium.dir}/extensions/nokia/config/helium_nokia_data_model.xsl" else="${helium.dir}/config/helium_data_model.xsl"> |
|
278 <available file="${helium.dir}/extensions/nokia/config/helium_nokia_data_model.xsl"/> |
|
279 </condition> |
|
280 <!-- Location of helium database |
|
281 @type string |
|
282 @scope private |
|
283 --> |
|
284 <property name="database.file" location="${basedir}/build/database.xml"/> |
|
285 <!-- Directory where CCM operations will be performed. |
|
286 @type string |
|
287 --> |
|
288 <property name="ccm.base.dir" location="${ccm.home.dir}\${minor.version}"/> |
|
289 <!-- This is the directory where the build area is prepared. Once created it is substed to the build.drive. |
|
290 @type string |
|
291 @scope private |
|
292 --> |
|
293 <property name="prep.build.dir" location="${prep.root.dir}/${build.id}"/> |
|
294 <!-- This is the directory where build output is placed. |
|
295 @type string |
|
296 @scope private |
|
297 --> |
|
298 |
|
299 <!-- If build.drive not define then prep.buil.dir is the value for build.drive for unix os --> |
|
300 <condition property="build.drive" value="${prep.build.dir}"> |
|
301 <and> |
|
302 <not> |
|
303 <isset property="build.drive"/> |
|
304 </not> |
|
305 <os family="unix"/> |
|
306 </and> |
|
307 </condition> |
|
308 |
|
309 <property name="build.output.dir" location="${build.drive}/output"/> |
|
310 <!-- This is where the diamonds output XML files are stored. |
|
311 @type string |
|
312 @scope private |
|
313 --> |
|
314 <property name="diamonds.build.output.dir" location="${build.output.dir}/diamonds"/> |
|
315 <!-- This is the directory where sisfiles are placed. |
|
316 @type string |
|
317 @scope private |
|
318 --> |
|
319 <property name="build.sisfiles.dir" location="${build.output.dir}/sisfiles"/> |
|
320 <!-- This is the directory where build area is archived after the build has finished. |
|
321 @type string |
|
322 @scope private |
|
323 --> |
|
324 <property name="zips.build.dir" location="${build.output.dir}/build_area/engineering_english"/> |
|
325 <!-- This is the directory where build area is archived after the localisation. |
|
326 @type string |
|
327 @scope private |
|
328 --> |
|
329 <property name="zips.loc.dir" location="${build.output.dir}/build_area/localised"/> |
|
330 <!-- The directory where subcon zips are stored. |
|
331 @type string |
|
332 @scope private |
|
333 --> |
|
334 <property name="subcon.zips.dir" location="${build.output.dir}/build_area/subcon"/> |
|
335 <!-- This is the directory where flash files are archived. |
|
336 @type string |
|
337 @scope private |
|
338 --> |
|
339 <property name="zips.flashfiles.dir" location="${build.output.dir}/zips_flashfiles"/> |
|
340 <!-- This is where the build logs are stored. |
|
341 @type string |
|
342 @scope private |
|
343 --> |
|
344 <property name="build.log.dir" location="${build.output.dir}/logs"/> |
|
345 <!-- This is where the signal related files are stored. |
|
346 @type string |
|
347 @scope private |
|
348 --> |
|
349 <property name="build.signal.status.dir" location="${build.log.dir}/signals"/> |
|
350 <!-- This is the email template path where it updates the build status based on metadata database contents. The default file could (email_status_orm.html.ftl under tools\common\template\log)be used as the base and any additional info could be added |
|
351 @type string |
|
352 --> |
|
353 <property name="build.status.email.template" location="${helium.dir}/tools/common/templates/log/email_status_orm.html.ftl" /> |
|
354 <!-- Location of build metadata database. |
|
355 @type string |
|
356 @scope private |
|
357 --> |
|
358 <condition property="metadata.dbfile" value="${build.log.dir}/${build.id}_metadata_db" else="${build.log.dir}/${build.id}${env.PID}_metadata_db"> |
|
359 <isset property="build.number"/> |
|
360 </condition> |
|
361 |
|
362 <!-- Directory to store temporary files generated during the process. |
|
363 @type string |
|
364 @scope private |
|
365 --> |
|
366 <property name="temp.build.dir" location="${build.output.dir}/temp_build_files"/> |
|
367 <!-- The 'failonerror' attribute for exec tasks. |
|
368 @type boolean |
|
369 @scope public |
|
370 --> |
|
371 <property name="failonerror" value="false"/> |
|
372 <!-- Maximum allowable errors in a build. |
|
373 @type number |
|
374 --> |
|
375 <property name="build.errors.limit" value="0"/> |
|
376 <!-- Unsubsted drive after build finished. If not defined then helium should left the drive as subst. Set the value as "yes" if you want to unsubst after build finished. |
|
377 @type string |
|
378 --> |
|
379 <property name="unsubst.after.build" value="no"/> |
|
380 <!-- display warnings at build startup if required properties are not defined. |
|
381 @type string |
|
382 @scope private |
|
383 --> |
|
384 <property name="validate.properties.at.startup" value="yes"/> |
|
385 <!-- A unique name for the WA Sources ZIP file. |
|
386 @type string |
|
387 @scope private |
|
388 --> |
|
389 <property name="zip.wa.file" value="${build.drive}/output/src/${build.id}_sources.zip"/> |
|
390 <!-- The location and name of the target times log file. Default value is: ${build.log.dir}/${build.id}_targetTimesLog.csv |
|
391 @type string |
|
392 --> |
|
393 <property name="target.times.log.file" value="${build.log.dir}/${build.id}_targetTimesLog.csv"/> |
|
394 |
|
395 <!-- Cache related properties. --> |
|
396 <!-- Directory where Helium can store files on a temporary basis for a user per build. |
|
397 @type string |
|
398 @scope private |
|
399 --> |
|
400 <property name="build.cache.dir" location="${cache.dir}/${build.id}"/> |
|
401 <!-- Directory where Helium can store log files on a temporary basis for a user per build. |
|
402 @type string |
|
403 @scope private |
|
404 --> |
|
405 <property name="build.cache.log.dir" location="${build.cache.dir}/logs"/> |
|
406 <mkdir dir="${build.cache.log.dir}"/> |
|
407 |
|
408 <!-- Path location for the memory tracing data captured by the TracingLogger. |
|
409 @type string |
|
410 @scope private |
|
411 --> |
|
412 <property name="tracing.csv.file" location="${build.cache.dir}/logs/${build.id}_traces.csv"/> |
|
413 |
|
414 <!-- Publish dir configuration. Defines subdir first and next toplevel properties. --> |
|
415 <!-- Subdir part of the publish dir, relative to publish.root.dir |
|
416 @type string |
|
417 --> |
|
418 <property name="publish.subdir" value="${build.name}/builds/${core.build.version}/${build.id}"/> |
|
419 <!-- Subdir part of the publish release dir, relative to publish.root.dir |
|
420 @type string |
|
421 @scope private |
|
422 --> |
|
423 <property name="publish.release.subdir" value="${build.name}/releases/${core.build.version}/${build.id}"/> |
|
424 <!-- Directory where the build is published (includes build.id) |
|
425 @type string |
|
426 --> |
|
427 <property name="publish.dir" location="${publish.root.dir}/${publish.subdir}"/> |
|
428 <!-- The directory where the release of this build is published to on the local network. |
|
429 @type string |
|
430 @scope private |
|
431 --> |
|
432 <property name="publish.release.dir" location="${publish.root.dir}/${publish.release.subdir}"/> |
|
433 <condition property="is.published" else="false"> |
|
434 <isset property="publish"/> |
|
435 </condition> |
|
436 |
|
437 <!-- The directory where flash images of build can be found |
|
438 @type string |
|
439 @scope private |
|
440 --> |
|
441 <property name="release.images.dir" value="${build.output.dir}/release_flash_images"/> |
|
442 <!-- Defines location of binaries created in build. Used in check-capability target while generating capability scan report. |
|
443 @type string |
|
444 @scope private |
|
445 --> |
|
446 <property name="binary.root" value="${build.drive}/epoc32/release/armv5/urel" /> |
|
447 <!-- Location of python library |
|
448 @type string |
|
449 @scope private |
|
450 --> |
|
451 <property name="python.dir" value="${helium.dir}/external/python/lib"/> |
|
452 <!-- @type string |
|
453 @scope private |
|
454 --> |
|
455 <property name="python.tools" value="${helium.dir}/external/python/bin"/> |
|
456 |
|
457 <!-- EBS is selected as the default build system, but ec for Electric Cloud could be used. --> |
|
458 <!-- This specifies which build system is used. Default for this is ebs You can use ec for Electric Cloud.. |
|
459 @type string |
|
460 --> |
|
461 <property name="build.system" value="ebs"/> |
|
462 <!-- Path for the output XML file generated by genxml used as input to EBS or EC. |
|
463 @type string |
|
464 @scope private |
|
465 --> |
|
466 <property name="genxml.output.file" location="${temp.build.dir}/${build.id}.${sysdef.configuration}.xml" /> |
|
467 <!-- The path of the generated canonical System Definition file that contains all the input System Definition file content. |
|
468 @type string |
|
469 @scope private |
|
470 --> |
|
471 <property name="canonical.sysdef.file" value="${build.output.dir}/build/canonical_system_definition.xml"/> |
|
472 <!-- @type string |
|
473 @scope private |
|
474 --> |
|
475 <property name="build.system.${build.system}" value="Not used"/> |
|
476 <!-- This is the file where build summary is stored. |
|
477 @type string |
|
478 @scope private |
|
479 --> |
|
480 <property name="build.summary.file" location="${build.log.dir}/summary/${build.id}_summary.log.xml"/> |
|
481 <property name="error.summary.file" location="${build.log.dir}/summary/${build.id}_error_summary.log.xml"/> |
|
482 <!-- Defines name of the log file. |
|
483 @type string |
|
484 @scope private |
|
485 --> |
|
486 <property name="build.log" value="${build.log.dir}/${build.id}_main.ant.log"/> |
|
487 <!-- Diamonds Configuration file with full path used for diamonds listener. |
|
488 @type string |
|
489 --> |
|
490 <property name="diamonds.listener.configuration.file" location="${helium.dir}/config/diamonds_config.xml.ftl"/> |
|
491 <!-- Path where ant XML files dynamically downloaded from jar file. |
|
492 @type string |
|
493 @scope private |
|
494 --> |
|
495 <property name="antlib.import.module.path" location="${helium.dir}/tools/hlm-antlib-imports"/> |
|
496 |
|
497 <!-- Following are temporarily defined here until global tools available--> |
|
498 <!-- This specifies the directory where Electric Cloud history files are stored. Currently defined in helium.ant.xml and mapped related to publish.root.dir |
|
499 @type string |
|
500 @scope private |
|
501 --> |
|
502 <property name="ec.history.dir" location="${publish.root.dir}\${product.family}\ec_history"/> |
|
503 <!-- Version of build |
|
504 @type string |
|
505 --> |
|
506 <property name="release.label" value="${build.version}"/> |
|
507 <!-- mode is either serial / parallel - default is parallel |
|
508 @type string |
|
509 --> |
|
510 <property name="ec.mode" value="parallel" /> |
|
511 <!-- Setting this to "1" will force xml2mak to generate only warnings (instead of errors) for duplicate components in the component list |
|
512 @type string |
|
513 @scope private |
|
514 --> |
|
515 <property name="ec.allow.duplicates" value="0" /> |
|
516 <!-- Defines log file where to record archiving of engineering english area. |
|
517 @type string |
|
518 @scope private |
|
519 --> |
|
520 <property name="zip.ee.log.file" location="${build.log.dir}/${build.id}_ee_zip.log" /> |
|
521 <!-- The path to the localization zipping log file. |
|
522 @type string |
|
523 @scope private |
|
524 --> |
|
525 <property name="zip.localised.log.file" location="${build.log.dir}/${build.id}_localised_zip.log" /> |
|
526 <!-- Defines log file where to record archiving of subcon environment. |
|
527 @type string |
|
528 @scope private |
|
529 --> |
|
530 <property name="zip.subcon.log.file" value="${build.log.dir}/${build.id}_subcon_zip.log" /> |
|
531 <!-- The log file name for zipping subcon_roms. |
|
532 @type string |
|
533 @scope private |
|
534 --> |
|
535 <property name="zip.subcon_roms.log.file" location="${build.log.dir}/${build.id}_subcon_roms_zip.log" /> |
|
536 <!-- The log file name for zipping trace_roms. |
|
537 @type string |
|
538 @scope private |
|
539 --> |
|
540 <property name="zip.trace_roms.log.file" location="${build.log.dir}/${build.id}_trace_roms_zip.log" /> |
|
541 <!-- target to be executed in case of exceptions (mainly to generate the summary and raise signal). |
|
542 @type string |
|
543 @scope private |
|
544 --> |
|
545 <property name="exceptions.target" value="hlm-exception-handler"/> |
|
546 <!-- The tools dependencies Ivy settings configuration file. |
|
547 @type string |
|
548 --> |
|
549 <property name="tools.ivy.config.file" location="${helium.dir}/config/ivy/tools_ivy_settings.xml" /> |
|
550 |
|
551 <!-- A file where persistent properties for a build should be stored. |
|
552 @type string |
|
553 @scope private |
|
554 --> |
|
555 <property name="build.property.cache.file" location="${diamonds.build.output.dir}/build_properties_cache.txt" /> |
|
556 <!-- The path for the Python script to handle the ccm task bridge to the ccm.py module. |
|
557 @type string |
|
558 @scope private |
|
559 --> |
|
560 <property name="ccmtask.python.script.file" location="${helium.dir}/tools/preparation/synergy/ccmtask.jep" /> |
|
561 <!-- Level of ant logging. |
|
562 @type string |
|
563 --> |
|
564 <property name="ant.loglevel" value="verbose"/> |
|
565 |
|
566 <if> |
|
567 <available file="${build.property.cache.file}"/> |
|
568 <then> |
|
569 <property file="${build.property.cache.file}"/> |
|
570 </then> |
|
571 </if> |
|
572 |
|
573 |
|
574 <!-- Default number of threads is 2 * NUMBER_OF_PROCESSORS, but this can be overridden by defining the |
|
575 property manually. --> |
|
576 <if> |
|
577 <not> |
|
578 <isset property="number.of.threads"/> |
|
579 </not> |
|
580 <then> |
|
581 <if> |
|
582 <isset property="env.NUMBER_OF_PROCESSORS"/> |
|
583 <then> |
|
584 <math result="number.of.threads" operand1="${env.NUMBER_OF_PROCESSORS}" operation="*" operand2="2" datatype="int"/> |
|
585 </then> |
|
586 <else> |
|
587 <!-- how many parallel threads can run |
|
588 @type string |
|
589 @scope public |
|
590 --> |
|
591 <property name="number.of.threads" value="2"/> |
|
592 </else> |
|
593 </if> |
|
594 </then> |
|
595 </if> |
|
596 |
|
597 <!--* @property product.family |
|
598 In product builds defines the product family that the build product belong to. |
|
599 @type string |
|
600 @editable required |
|
601 @scope public |
|
602 --> |
|
603 |
|
604 <!--* @property product.list |
|
605 In product builds defines the list of products that are build in the configuration. Property is used in rom image creation, localisation release notes creation and data packaging. |
|
606 @type string |
|
607 @editable required |
|
608 @scope public |
|
609 --> |
|
610 |
|
611 <!--* @property diamonds.build.tags |
|
612 |
|
613 @type string |
|
614 @editable optional |
|
615 @scope public |
|
616 --> |
|
617 |
45 |
618 <!-- Import basic targets. |
46 <!-- Import basic targets. |
619 |
47 |
620 The intention would be to split the targets into separate files somewhat |
48 The intention would be to split the targets into separate files somewhat |
621 matching the build phases located inside \nbuild and import each one here. |
49 matching the build phases and import each one here. |
622 --> |
50 --> |
623 <import file="extensions/nokia/build.xml" optional="true"/> |
51 <import file="extensions/nokia/build.xml" optional="true"/> |
624 <import file="tools/preparation/preparation.ant.xml"/> |
52 <import file="tools/preparation/preparation.ant.xml"/> |
625 <import file="tools/common/common.ant.xml"/> |
53 <import file="tools/common/common.ant.xml"/> |
626 <import file="tools/common/testing.ant.xml"/> |
54 <import file="tools/common/testing.ant.xml"/> |