117 </hlm:signalInput> |
117 </hlm:signalInput> |
118 |
118 |
119 <hlm:signalInput id="signalRunQMakeInput" failbuild="never"> |
119 <hlm:signalInput id="signalRunQMakeInput" failbuild="never"> |
120 <hlm:notifierListRef refid="defaultFailNotifier" /> |
120 <hlm:notifierListRef refid="defaultFailNotifier" /> |
121 </hlm:signalInput> |
121 </hlm:signalInput> |
122 |
122 |
|
123 <!-- allow use of a release_metadata.xml without all referenced files being present --> |
|
124 <hlm:signalInput id="getenvSignalInput" failbuild="never"> |
|
125 <hlm:notifierListRef refid="defaultFailNotifier" /> |
|
126 </hlm:signalInput> |
123 </then> |
127 </then> |
124 </if> |
128 </if> |
125 |
129 |
126 <!-- |
130 <!-- |
127 - END OF PROPERTY DEFINITIONS, TARGETS START HERE |
131 - END OF PROPERTY DEFINITIONS, TARGETS START HERE |
142 </fail> |
146 </fail> |
143 |
147 |
144 <tempfile property="prep.dynamic.config" suffix="ant.xml" destdir="${temp.build.dir}"/> |
148 <tempfile property="prep.dynamic.config" suffix="ant.xml" destdir="${temp.build.dir}"/> |
145 |
149 |
146 <runtarget target="sf-check-env"/> |
150 <runtarget target="sf-check-env"/> |
|
151 |
|
152 <!-- create zips folder for use later --> |
|
153 <mkdir dir="${build.drive}/output/zips"/> |
147 <stopwatch name="sf-prep" action="elapsed"/> |
154 <stopwatch name="sf-prep" action="elapsed"/> |
148 </target> |
155 </target> |
149 |
156 |
150 <target name="sf-prep-announce"> |
157 <target name="sf-prep-announce"> |
151 <stopwatch name="sf-prep"/> |
158 <stopwatch name="sf-prep"/> |
153 </target> |
160 </target> |
154 |
161 |
155 <target name="sf-check-env"> |
162 <target name="sf-check-env"> |
156 <echo message="Create report on environment info"/> |
163 <echo message="Create report on environment info"/> |
157 <!-- Dario's environment dumper --> |
164 <!-- Dario's environment dumper --> |
158 <if> |
165 <if> |
159 <isset property="sf.spec.baseline.location"/> |
166 <isset property="sf.spec.baseline.location"/> |
160 <then> |
167 <then> |
161 <exec executable="perl" dir="${build.drive}/utilities/envinfo"> |
168 <exec executable="perl" dir="${build.drive}/utilities/envinfo"> |
162 <arg value="envinfo.pl"/> |
169 <arg value="envinfo.pl"/> |
163 <arg value="-r"/> |
170 <arg value="-r"/> |
246 </then> |
253 </then> |
247 </if> |
254 </if> |
248 <!-- Delete build directory --> |
255 <!-- Delete build directory --> |
249 <delete dir="${prep.build.dir}"/> |
256 <delete dir="${prep.build.dir}"/> |
250 </target> |
257 </target> |
251 |
|
252 <!-- Note: Not used from Helium 7 onwards --> |
|
253 <target name="generate-layers"> |
|
254 <echo message="canno-file:${canonical.sysdef.file}"/> |
|
255 <echo message="raptor-filters:raptor_${sysdef.configuration}"/> |
|
256 |
|
257 <!-- All we want is a sysdef with the config name appended, so just copy it --> |
|
258 <echo message="INFO: Skip GenXML and copy sysdef to sysdef+config name"/> |
|
259 <copy file="${canonical.sysdef.file}" tofile="${build.drive}/output/build/canonical_system_definition_${sysdef.configuration}_temp.xml"/> |
|
260 |
|
261 <copy file="${build.drive}/output/build/canonical_system_definition_${sysdef.configuration}_temp.xml" tofile="${build.drive}/output/build/canonical_system_definition_${sysdef.configuration}.xml"> |
|
262 <filterchain> |
|
263 <linecontainsregexp negate="true"> |
|
264 <regexp pattern="^\s*$"/> |
|
265 </linecontainsregexp> |
|
266 </filterchain> |
|
267 </copy> |
|
268 <copy file="${build.drive}/output/build/canonical_system_definition_${sysdef.configuration}.xml" todir="${build.log.dir}/BOM/"/> |
|
269 <delete file="${build.drive}/output/build/canonical_system_definition_${sysdef.configuration}_temp.xml"/> |
|
270 </target> |
|
271 |
258 |
272 <target name="sf-prebuild" depends="sf-prep,sf-prebuild-noprep"/> |
259 <target name="sf-prebuild" depends="sf-prep,sf-prebuild-noprep"/> |
273 <target name="sf-prebuild-noprep" depends="sf-prebuild-announce,sf-diamonds-connect,sf-diamonds-envinfo,sf-diamonds-tag-build,sf-getenvs,sf-syncsource,sf-diamondize-bom"> |
260 <target name="sf-prebuild-noprep" depends="sf-prebuild-announce,sf-diamonds-connect,sf-diamonds-envinfo,sf-diamonds-tag-build,sf-getenvs,sf-syncsource,sf-diamondize-bom"> |
274 <stopwatch name="sf-prebuild" action="elapsed"/> |
261 <stopwatch name="sf-prebuild" action="elapsed"/> |
275 </target> |
262 </target> |
346 <propertyregex input="${sf.job.bom.project.repo}" regexp="\\" replace="/" global="true" property="sf.job.bom.project.repo" override="true"/> |
333 <propertyregex input="${sf.job.bom.project.repo}" regexp="\\" replace="/" global="true" property="sf.job.bom.project.repo" override="true"/> |
347 <exec executable="hg" dir="${sf.project.location}" outputproperty="sf.job.bom.project.checksum"> |
334 <exec executable="hg" dir="${sf.project.location}" outputproperty="sf.job.bom.project.checksum"> |
348 <arg value="identify"/> |
335 <arg value="identify"/> |
349 <arg value="-i"/> |
336 <arg value="-i"/> |
350 </exec> |
337 </exec> |
351 <echo message="${sf.job.bom.project.repo},build/config,${sf.job.bom.project.checksum}" file="${build.drive}/output/logs/BOM/project.csv"/> |
338 <echo message="${sf.job.bom.project.repo},build/config,${sf.job.bom.project.checksum}" file="${build.drive}/output/logs/BOM/project.csv"/> |
352 </target> |
339 </target> |
353 |
340 |
354 <target name="sf-get-utils"> |
341 <target name="sf-get-utils"> |
355 <stopwatch name="sf-get-utils"/> |
342 <stopwatch name="sf-get-utils"/> |
356 <echo message="Cloning utilities repository to ${build.drive}/utilities"/> |
343 <echo message="Cloning utilities repository to ${build.drive}/utilities"/> |
357 <exec executable="hg"> |
344 <exec executable="hg"> |
358 <arg value="clone"/> |
345 <arg value="clone"/> |
359 <arg value="--updaterev"/> |
346 <arg value="--updaterev"/> |
360 <arg value="default"/> |
347 <arg value="default"/> |
361 <arg value="http://developer.symbian.org/oss/MCL/sftools/fbf/utilities"/> |
348 <arg value="http://developer.symbian.org/oss/MCL/sftools/fbf/utilities"/> |
362 <arg value="${build.drive}/utilities"/> |
349 <arg value="${build.drive}/utilities"/> |
363 </exec> |
350 </exec> |
364 <stopwatch name="sf-get-utils" action="elapsed"/> |
351 <stopwatch name="sf-get-utils" action="elapsed"/> |
365 </target> |
352 </target> |
366 |
353 |
367 <target name="sf-getenvs"> |
354 <target name="sf-getenvs"> |
368 <stopwatch name="sf-getenvs"/> |
355 <stopwatch name="sf-getenvs"/> |
369 <!-- create BOM dir --> |
356 <!-- create BOM dir --> |
398 <stopwatch name="sf-getenvs (baseline)"/> |
385 <stopwatch name="sf-getenvs (baseline)"/> |
399 <!-- record baseline information in BOM file --> |
386 <!-- record baseline information in BOM file --> |
400 <echo message="${sf.spec.baseline.location}" file="${build.drive}/output/logs/BOM/baseline.txt"/> |
387 <echo message="${sf.spec.baseline.location}" file="${build.drive}/output/logs/BOM/baseline.txt"/> |
401 |
388 |
402 <!-- run internal target preparation-getenv --> |
389 <!-- run internal target preparation-getenv --> |
|
390 <delete file="${build.drive}/currentRelease.xml"/> |
403 <runtarget target="preparation-getenv"/> |
391 <runtarget target="preparation-getenv"/> |
404 <stopwatch name="sf-getenvs (baseline)" action="elapsed"/> |
392 <stopwatch name="sf-getenvs (baseline)" action="elapsed"/> |
405 </then> |
393 </then> |
406 </if> |
394 </if> |
407 <stopwatch name="sf-getenvs" action="elapsed"/> |
395 <stopwatch name="sf-getenvs" action="elapsed"/> |
429 </target> |
417 </target> |
430 |
418 |
431 <target name="sf-get-source" depends="sf-generate-source-spec"> |
419 <target name="sf-get-source" depends="sf-generate-source-spec"> |
432 <stopwatch name="sf-get-source"/> |
420 <stopwatch name="sf-get-source"/> |
433 <!-- Get test manifest, and move resolved csv so that it doesnt conflict with source-spec.ant.xml --> |
421 <!-- Get test manifest, and move resolved csv so that it doesnt conflict with source-spec.ant.xml --> |
434 <ant antfile="${temp.build.dir}/source-test-spec.ant.xml" /> |
422 <if> |
435 <move file="${build.drive}/output/logs/BOM/sources.csv" tofile="${build.drive}/output/logs/BOM/sources_test.csv"/> |
423 <istrue value="${sf.spec.smoketest.enable}"/> |
|
424 <then> |
|
425 <ant antfile="${temp.build.dir}/source-test-spec.ant.xml" /> |
|
426 <move file="${build.drive}/output/logs/BOM/sources.csv" tofile="${build.drive}/output/logs/BOM/sources_test.csv"/> |
|
427 </then> |
|
428 </if> |
|
429 |
|
430 <ant antfile="${temp.build.dir}/source-rnd-spec.ant.xml" /> |
|
431 <move file="${build.drive}/output/logs/BOM/sources.csv" tofile="${build.drive}/output/logs/BOM/sources_rnd.csv"/> |
|
432 |
436 <ant antfile="${temp.build.dir}/source-spec.ant.xml" /> |
433 <ant antfile="${temp.build.dir}/source-spec.ant.xml" /> |
437 <stopwatch name="sf-get-source" action="elapsed"/> |
434 <stopwatch name="sf-get-source" action="elapsed"/> |
438 </target> |
435 </target> |
439 |
436 |
440 <target name="sf-generate-source-spec"> |
437 <target name="sf-generate-source-spec"> |
479 |
476 |
480 <if> |
477 <if> |
481 <istrue value="${sf.spec.sourcesync.enable}" /> |
478 <istrue value="${sf.spec.sourcesync.enable}" /> |
482 <then> |
479 <then> |
483 <property name="sf.source.csv.file" value="${sf.spec.sourcesync.sourcespecdir}/${sf.spec.sourcesync.sourcespecfile}"/> |
480 <property name="sf.source.csv.file" value="${sf.spec.sourcesync.sourcespecdir}/${sf.spec.sourcesync.sourcespecfile}"/> |
484 </then> |
481 <property name="sf.source_rnd.csv.file" value="${sf.spec.sourcesync.sourcespecdir}/${sf.spec.sourcesync.sourcespecfile.rnd}"/> |
485 </if> |
482 </then> |
486 <property name="sf.source.csv.file" value="nul:"/> |
483 </if> |
|
484 <property name="sf.source.csv.file" value="nul:"/> |
|
485 <property name="sf.source_rnd.csv.file" value="nul:"/> |
487 |
486 |
488 <fmpp sourceFile="${sf.common.config.dir}/templates/source-spec.ant.xml.ftl" |
487 <fmpp sourceFile="${sf.common.config.dir}/templates/source-spec.ant.xml.ftl" |
489 outputFile="${temp.build.dir}/source-spec.ant.xml"> |
488 outputFile="${temp.build.dir}/source-spec.ant.xml"> |
490 <data expandProperties="yes"> |
489 <data expandProperties="yes"> |
491 ant: antProperties() |
490 ant: antProperties() |
492 data: [ |
491 data: [ |
493 csv(${sf.source.csv.file}, {separator:','}) |
492 csv(${sf.source.csv.file}, {separator:','}) |
494 ] |
493 ] |
495 </data> |
494 </data> |
496 </fmpp> |
495 </fmpp> |
|
496 |
497 <fmpp sourceFile="${sf.common.config.dir}/templates/source-spec.ant.xml.ftl" |
497 <fmpp sourceFile="${sf.common.config.dir}/templates/source-spec.ant.xml.ftl" |
498 outputFile="${temp.build.dir}/source-test-spec.ant.xml"> |
498 outputFile="${temp.build.dir}/source-rnd-spec.ant.xml"> |
499 <data expandProperties="yes"> |
499 <data expandProperties="yes"> |
500 ant: antProperties() |
500 ant: antProperties() |
501 data: [ |
501 data: [ |
502 csv(${sf.test.csv.file}, {separator:','}) |
502 csv(${sf.source_rnd.csv.file}, {separator:','}) |
503 ] |
503 ] |
504 </data> |
504 </data> |
505 </fmpp> |
505 </fmpp> |
|
506 |
|
507 <if> |
|
508 <istrue value="${sf.spec.smoketest.enable}"/> |
|
509 <then> |
|
510 <fmpp sourceFile="${sf.common.config.dir}/templates/source-spec.ant.xml.ftl" |
|
511 outputFile="${temp.build.dir}/source-test-spec.ant.xml"> |
|
512 <data expandProperties="yes"> |
|
513 ant: antProperties() |
|
514 data: [ |
|
515 csv(${sf.test.csv.file}, {separator:','}) |
|
516 ] |
|
517 </data> |
|
518 </fmpp> |
|
519 </then> |
|
520 </if> |
506 </target> |
521 </target> |
507 |
522 |
508 <!-- generate dir list using passed location and name |
523 <!-- generate dir list using passed location and name |
509 if a baseline list is available then generate deltas too --> |
524 if a baseline list is available then generate deltas too --> |
510 |
525 |
623 ant: antProperties() |
638 ant: antProperties() |
624 config: csv(${build.drive}/output/logs/BOM/config.csv,{separator:',',headers:[loc,dst,rev]}) |
639 config: csv(${build.drive}/output/logs/BOM/config.csv,{separator:',',headers:[loc,dst,rev]}) |
625 project: csv(${build.drive}/output/logs/BOM/project.csv,{separator:',',headers:[loc,dst,rev]}) |
640 project: csv(${build.drive}/output/logs/BOM/project.csv,{separator:',',headers:[loc,dst,rev]}) |
626 baseline: slicedText(${build.drive}/output/logs/BOM/baseline.txt,{trim}) |
641 baseline: slicedText(${build.drive}/output/logs/BOM/baseline.txt,{trim}) |
627 toolsbaseline: slicedText(${build.drive}/output/logs/BOM/toolsbaseline.txt,{trim}) |
642 toolsbaseline: slicedText(${build.drive}/output/logs/BOM/toolsbaseline.txt,{trim}) |
628 sources: csv(${build.drive}/output/logs/BOM/sources.csv,{separator:',',headers:[loc,dst,type,rev,sysdef]}) |
643 sources: csv(${build.drive}/output/logs/BOM/sources.csv, {separator:',',headers:[loc,dst,type,rev,sysdef]}) |
629 </data> |
644 </data> |
630 </fmpp> |
645 </fmpp> |
631 <!-- Make a copy in BOM dir --> |
646 <!-- Make a copy in BOM dir --> |
632 <copy file="${build.drive}/output/logs/sf-diamondize-bom.xml" tofile="${build.log.dir}/BOM/build-info.xml"/> |
647 <copy file="${build.drive}/output/logs/sf-diamondize-bom.xml" tofile="${build.log.dir}/BOM/build-info.xml"/> |
633 </target> |
648 </target> |
738 <arg value="-y"/> <!-- Need to unpack in overwrite mode, due to TEF --> |
753 <arg value="-y"/> <!-- Need to unpack in overwrite mode, due to TEF --> |
739 <arg value="-i!epoc32\*"/> <!-- Only unzip items into the epoc32 tree --> |
754 <arg value="-i!epoc32\*"/> <!-- Only unzip items into the epoc32 tree --> |
740 <arg value="@{rndZip}"/> |
755 <arg value="@{rndZip}"/> |
741 </exec> |
756 </exec> |
742 </sequential> |
757 </sequential> |
743 </for> |
758 </for> |
|
759 |
|
760 <if><istrue value="${sf.spec.baseline.enable}"/> |
|
761 <then> |
|
762 |
|
763 <!-- also unpack any rnd bins from baseline location. may collide with package build getenv --> |
|
764 <delete file="${build.drive}/currentRelease.xml"/> |
|
765 <antcall target="preparation-getenv" inheritAll="false"> |
|
766 <param name="base_release.path" value="${sf.spec.baseline.location}"/> |
|
767 <param name="base_release.getenv_options" value="-i rnd -k"/> |
|
768 </antcall> |
|
769 </then> |
|
770 </if> |
744 </target> |
771 </target> |
745 |
772 |
746 <target name="sf-compile-options"> |
773 <target name="sf-compile-options"> |
747 <hlm:sbsMakeOptions engine="gmake" id="sbs.fullbuild.options"/> |
774 <hlm:sbsMakeOptions engine="gmake" id="sbs.fullbuild.options"/> |
748 <hlm:sbsMakeOptions engine="gmake" id="sbs.toolsbuild.options"/> |
775 <hlm:sbsMakeOptions engine="gmake" id="sbs.toolsbuild.options"/> |