author | Simon Howkins <simonh@symbian.org> |
Wed, 20 Oct 2010 14:55:20 +0100 | |
changeset 1312 | c2abb8ddb43c |
parent 1258 | 7c13417d5e31 |
permissions | -rw-r--r-- |
1251 | 1 |
<?xml version="1.0" encoding="UTF-8"?> |
2 |
<project name="SF-PACKAGE-CONFIG" xmlns:hlm="http://www.nokia.com/helium"> |
|
3 |
<!-- location of this config --> |
|
4 |
<dirname property="sf.package.config.dir" file="${ant.file.SF-PACKAGE-CONFIG}"/> |
|
5 |
||
6 |
<!-- import codeline-specific properties --> |
|
7 |
<import file="${sf.package.config.dir}/${sf.spec.job.codeline}_props.ant.xml" optional="yes"/> |
|
8 |
||
9 |
<!-- import package properties --> |
|
10 |
<import file="${sf.package.config.dir}/package_props.ant.xml" /> |
|
11 |
||
12 |
<!-- import common properties/targets/references --> |
|
13 |
<import file="../common/build.xml" /> |
|
14 |
||
15 |
<!-- import package references --> |
|
16 |
<import file="${sf.package.config.dir}/package_refs.ant.xml" /> |
|
17 |
||
1312
c2abb8ddb43c
Removed support for Helium 5, and therefore was able to simplify sf-compile significantly.
Simon Howkins <simonh@symbian.org>
parents:
1258
diff
changeset
|
18 |
<target name="sf-ensure-v2-sysdef"> |
1251 | 19 |
<!-- Check that package_definition is not in v 3.0.0 otherwise transforms it to 2.0.1 --> |
20 |
<echo message="Check that model file is in a version usable by Raptor"/> |
|
21 |
<exec executable="perl" dir="${sf.common.config.dir}/sysdefdowngrade" failonerror="false" output="${build.log.dir}/sysdefdowngrade.log"> |
|
22 |
<arg value="sysdefdowngrade.pl"/> |
|
23 |
<arg value="--model=${build.drive}/${sf.spec.systemdefinition.location}"/> |
|
24 |
<arg value="--sources=${sf.spec.sourcesync.sourcespecdir}/${sf.spec.sourcesync.sourcespecfile}"/> |
|
25 |
</exec> |
|
26 |
</target> |
|
27 |
||
1312
c2abb8ddb43c
Removed support for Helium 5, and therefore was able to simplify sf-compile significantly.
Simon Howkins <simonh@symbian.org>
parents:
1258
diff
changeset
|
28 |
<target name="sf-compile" depends="sf-ensure-v2-sysdef"> |
1251 | 29 |
<!-- build stuff --> |
30 |
<for list="${sf.spec.sbs.config}" delimiter="," param="item.sbs.splitconfig"> |
|
31 |
<sequential> |
|
32 |
||
33 |
<hlm:sbsinput id="sf.build"> |
|
34 |
<sbsOptions> |
|
35 |
<arg line="-c @{item.sbs.splitconfig}"/> |
|
36 |
<arg line="-k" /> |
|
37 |
<arg line="-j ${sf.spec.sbs.numberofjobs}"/> |
|
38 |
<arg line="-t ${sf.spec.sbs.retry.limit}"/> |
|
39 |
<arg line="${sf.spec.sbs.options}"/> |
|
40 |
<arg name="--filters" value=""${sf.spec.sbs.filter.list}""/> |
|
41 |
<arg name="--logfile" value="${build.log.dir}/${build.id}_@{item.sbs.splitconfig}_compile.log" /> |
|
42 |
<arg name="--makefile" value="${compile.log.dir}/${build.id}_@{item.sbs.splitconfig}_Makefile" /> |
|
43 |
</sbsOptions> |
|
44 |
</hlm:sbsinput> |
|
45 |
||
46 |
<echo message="INFO [Iterative compile] Building target: @{item.sbs.splitconfig}"/> |
|
47 |
<antcall target="compile-main" inheritAll="false" inheritRefs="true"> |
|
48 |
<param name="build.system" value="${sf.spec.build.system}" /> |
|
49 |
<param name="sysdef.configurations.list" value="${sf.spec.sysdef.configurations.list}" /> |
|
50 |
<param name="sbs.inputs.list" value="sf.build"/> |
|
51 |
<reference refid="sf.spec.system.definition.files" torefid="system.definition.files" /> |
|
52 |
</antcall> |
|
53 |
</sequential> |
|
54 |
</for> |
|
55 |
<!-- build test code --> |
|
56 |
<if><istrue value="${sf.spec.package.test.enable}"/> |
|
57 |
<then> |
|
58 |
<for list="${sf.spec.sbs.config}" delimiter="," param="item.sbs.splitconfig"> |
|
59 |
<sequential> |
|
60 |
||
61 |
<hlm:sbsinput id="sf.build"> |
|
62 |
<sbsOptions> |
|
63 |
<arg line="-c @{item.sbs.splitconfig}.test"/> |
|
64 |
<arg line="-k" /> |
|
65 |
<arg line="-j ${sf.spec.sbs.numberofjobs}"/> |
|
66 |
<arg line="-t ${sf.spec.sbs.retry.limit}"/> |
|
67 |
<arg line="${sf.spec.sbs.options}"/> |
|
68 |
<arg name="--filters" value=""${sf.spec.sbs.filter.list}""/> |
|
69 |
<arg name="--logfile" value="${build.log.dir}/${build.id}_@{item.sbs.splitconfig}_compile.log" /> |
|
70 |
<arg name="--makefile" value="${compile.log.dir}/${build.id}_@{item.sbs.splitconfig}_Makefile" /> |
|
71 |
</sbsOptions> |
|
72 |
</hlm:sbsinput> |
|
73 |
||
74 |
<echo message="INFO [Iterative compile] Building target: @{item.sbs.splitconfig}"/> |
|
75 |
<antcall target="compile-main" inheritAll="false" inheritRefs="true"> |
|
76 |
<param name="build.system" value="${sf.spec.build.system}" /> |
|
77 |
<param name="sysdef.configurations.list" value="${sf.spec.sysdef.configurations.list}" /> |
|
78 |
<param name="sbs.inputs.list" value="sf.build"/> |
|
79 |
<reference refid="sf.spec.system.definition.files" torefid="system.definition.files" /> |
|
80 |
</antcall> |
|
81 |
</sequential> |
|
82 |
</for> |
|
83 |
</then> |
|
84 |
</if> |
|
85 |
||
86 |
<!-- CHECK --> |
|
87 |
<exec executable="cmd" dir="${build.drive}/" output="${build.drive}/output\logs\build_check_compile.log"> |
|
88 |
<arg value="/c sbs.bat -s ${build.drive}/output\build\canonical_system_definition_SF.xml -k -c tools2_rel -c winscw -c armv5 -j 32 --check -m ${build.drive}/output\logs\build_check_Makefile"/> |
|
89 |
<!-- argument of -j option can be parameterized with: ${number.of.threads} --> |
|
90 |
</exec> |
|
91 |
</target> |
|
92 |
||
93 |
<target name="sf-test-package"> |
|
94 |
<echo message="INFO Preparing package"/> |
|
95 |
<exec executable="perl" dir="${sf.common.config.dir}/tools/ats/" failonerror="false" output="${build.log.dir}/ATS_${build.id}_prep_package.log"> |
|
96 |
<arg value="hlm_prep_package.pl"/> |
|
97 |
<arg value="--csv-file=${sf.spec.sourcesync.sourcespecdir}/${sf.spec.sourcesync.sourcespecfile}"/> |
|
98 |
<arg value="--bld-drive=${build.drive}"/> |
|
99 |
</exec> |
|
100 |
||
101 |
<echo message="INFO Building package test drop(s)"/> |
|
102 |
<!-- <runtarget target="ats-test"/> --> <!-- Supported from Helium 9.0.5 onwards --> |
|
103 |
<echo message="INFO Skipped - Helium 9.0.5+ required"/> |
|
104 |
||
105 |
<for param="file"> |
|
106 |
<path> |
|
107 |
<fileset dir="${build.drive}/output/ats" includes="*.zip"/> |
|
108 |
</path> |
|
109 |
<sequential> |
|
110 |
<propertyregex override="yes" property="program" input="@{file}" regexp="([^\\/\/]*)$" select="\1"/> |
|
111 |
<echo message="INFO Updating package test drop with test info"/> |
|
112 |
<echo message="************ Test drop name: ${program} " /> |
|
113 |
<exec executable="perl" dir="${sf.common.config.dir}/tools/ats/" failonerror="false" append="true" output="${build.log.dir}/ATS_${build.id}_packagetest.log"> |
|
114 |
<arg value="ats_specialise_test_drop.pl"/> |
|
115 |
<arg value="--test-drop-name=${env.COMPUTERNAME}-packagetest-${build.id}_${program}"/> |
|
116 |
<arg value="--host-name=${env.COMPUTERNAME}.ad-sfpd.intra"/> |
|
117 |
<arg value="--src=${build.drive}/output/ats/${program}"/> |
|
118 |
<arg value="--dest=${sf.spec.test.package.location}\${env.COMPUTERNAME}-packagetest-${build.id}_${program}" /> |
|
119 |
<arg value="--publish=${publish.dir}\ats_reports\${program}"/> |
|
120 |
<arg value="--ats-version=ats4"/> <!-- Hard-coded ats-version as Test Drop Generator for WINSCW supports only ATS4 --> |
|
121 |
</exec> |
|
122 |
<!-- Now ready to send to ATS --> |
|
123 |
<echo message="Sending test drop : ${program} ............" /> |
|
124 |
<antcall target="sf-send-testpkg" inheritAll="false"> |
|
125 |
<param name="sf.spec.test.package.name" value="${env.COMPUTERNAME}-packagetest-${build.id}_${program}"/> |
|
126 |
</antcall> |
|
127 |
</sequential> |
|
128 |
</for> |
|
129 |
||
130 |
</target> |
|
131 |
||
132 |
<target name="ats-emulator-zip"/> <!-- This is to override exisiting Helium target called from ats-test --> |
|
133 |
||
134 |
</project> |
|
135 |