3 <title>Release Notes for Symbian Build System v2</title> |
3 <title>Release Notes for Symbian Build System v2</title> |
4 </head> |
4 </head> |
5 <body> |
5 <body> |
6 |
6 |
7 <h1>Release Notes for Symbian Build System v2</h1> |
7 <h1>Release Notes for Symbian Build System v2</h1> |
|
8 |
|
9 <h2>version 2.14.2</h2> |
|
10 |
|
11 <h3>Defect Fixes</h3> |
|
12 <ul> |
|
13 <li>Fix: minor change: tracecompiler trace folder rename</li> |
|
14 <li><a href="http://developer.symbian.org/bugs/show_bug.cgi?id=2886">SF Bug 2886</a> - [Raptor] STDEXE targets cannot be built with GCC-E</li> |
|
15 <li><a href="http://developer.symbian.org/bugs/show_bug.cgi?id=2713">SF Bug 2713</a> - [Raptor] Terminal filter needs to allow more make errors through</li> |
|
16 <li>Fix: smoketests fail for emake and rvct 4</li> |
|
17 <li>Fix permissions for exported files with group ownership on Linux</li> |
|
18 <li><a href="http://developer.symbian.org/bugs/show_bug.cgi?id=2697">SF Bug 2697</a> - [Raptor] Macro __SYMBIAN_STDCPP_SUPPORT__ not automatically defined for STD targets</li> |
|
19 <li><a href="http://developer.symbian.org/bugs/show_bug.cgi?id=2712">SF Bug 2712</a> - [Raptor] STDEXE and STDDLL targets: euser.lib not automatically included for UDEB builds</li> |
|
20 <li><a href="http://developer.symbian.org/bugs/show_bug.cgi?id=2735">SF Bug 2735</a> - [Raptor] Relative unit paths in pkgdefs are not handled correctly</li> |
|
21 <li>Fix: resources with headeronly can fail because of an invalid dependency</li> |
|
22 <li>Fix: ARMFPU softvfp+vfpv2 for postlinker and RVCT only</li> |
|
23 <li><a href="http://developer.symbian.org/bugs/show_bug.cgi?id=2276">SF Bug 2276</a> - [Raptor] ZIP exports from deep directory hierarchies fail</li> |
|
24 <li><a href="notes/emulatorstacksize.txt"> Reduction of emulator stack size to 512KB </a>; see also the enhancement <a href="http://developer.symbian.org/bugs/show_bug.cgi?id=2605"> SF Bug 2606 </a> - [Raptor] Can we use a smaller stack size for the emulator </li> |
|
25 <li><a href="http://developer.symbian.org/bugs/show_bug.cgi?id=3091">SF Bug 3091</a> - [Raptor] When reporting missing bld.inf's from a Sys def a / can be missing</li> |
|
26 <li><a href="http://developer.symbian.org/bugs/show_bug.cgi?id=2825">SF Bug 2825</a> - [Raptor] Meta elements should be ignored when processing a sysdef</li> |
|
27 <li><a href="notes/tcom_allbefore.txt">Trace all source files in a component before compiling any file</a>. Helps prevent build breaks in some situations where an asset change is really needed.</li> |
|
28 </ul> |
|
29 |
|
30 <h2>version 2.14.1</h2> |
|
31 |
|
32 <h3>Defect Fixes</h3> |
|
33 <ul> |
|
34 |
|
35 <li><a href="http://developer.symbian.org/bugs/show_bug.cgi?id=2203"> SF Bug 2203 </a> - [Raptor] Building extension makefile with SBS_BUILD_DIR set to another drive</li> |
|
36 <li>Fix : tracecompiler.mk caused poor makefile parse performance due to use of $(shell)</li> |
|
37 <li><a href="http://developer.symbian.org/bugs/show_bug.cgi?id=2561">SF Bug 2561</a> - [Raptor] creates incorrect .iby files w.r.t target file versions & ramtargets</li> |
|
38 <li><a href="http://developer.symbian.org/bugs/show_bug.cgi?id=2562">SF Bug 2562</a> - [Raptor] adds incorrect entries into .iby files w.r.t file paths</li> |
|
39 <li><a href="http://developer.symbian.org/bugs/show_bug.cgi?id=2809">SF Bug 2809</a> - [Raptor] Intermediate Resource Filenames not unique (2.14.0 only), rom fails to boot</li> |
|
40 <li><a href="http://developer.symbian.org/bugs/show_bug.cgi?id=1859">SF Bug 1859</a> - [Raptor] Traceback when TARGET missing from MMP file</li> |
|
41 </ul> |
8 |
42 |
9 <h2>version 2.14.0</h2> |
43 <h2>version 2.14.0</h2> |
10 |
44 |
11 <h3>New Features</h3> |
45 <h3>New Features</h3> |
12 <ul> |
46 <ul> |
29 <li><a href="notes/tcomsupport.txt">Fix: ensure trace paths exist before build starts to avoid clashes during the build with some make engines </a></li> |
63 <li><a href="notes/tcomsupport.txt">Fix: ensure trace paths exist before build starts to avoid clashes during the build with some make engines </a></li> |
30 <li><a href="notes/tcomsupport.txt">Fix: permit traces header directory to be specified in systemincludes - helps Qt </a></li> |
64 <li><a href="notes/tcomsupport.txt">Fix: permit traces header directory to be specified in systemincludes - helps Qt </a></li> |
31 <li><a href="notes/localresourcecopying.txt">Fix: (performance in cluster builds) do resource copying on local host.</a></li> |
65 <li><a href="notes/localresourcecopying.txt">Fix: (performance in cluster builds) do resource copying on local host.</a></li> |
32 <li>Fix: don't generate multiple copies of the same resource just because there are several target paths. Generate it once and copy that to the different target paths. Helps when winscw is built after an arm build.</li> |
66 <li>Fix: don't generate multiple copies of the same resource just because there are several target paths. Generate it once and copy that to the different target paths. Helps when winscw is built after an arm build.</li> |
33 <li>Fix: (performance) remove unnecessary copying of rpp files into epoc32\localisation as they are not used.</li> |
67 <li>Fix: (performance) remove unnecessary copying of rpp files into epoc32\localisation as they are not used.</li> |
34 <li>Fix: (performance) remove -C option when preprocessing rpp files - causes comments to be stripped from the rpp resulting in smaller files that improves performance.</li> |
|
35 |
68 |
36 </ul> |
69 </ul> |
37 |
70 |
38 |
71 |
39 <h2>version 2.13.0</h2> |
72 <h2>version 2.13.0</h2> |
72 <pre> |
105 <pre> |
73 version 2.12.5 |
106 version 2.12.5 |
74 |
107 |
75 Defect Fixes: |
108 Defect Fixes: |
76 - Fix: Workaround for emake engine log corruption when clockskew errors occur (annofile2log). |
109 - Fix: Workaround for emake engine log corruption when clockskew errors occur (annofile2log). |
77 Allow Raptor to obtain log from emake annotation file where it is uncorrupted. A new |
110 Allow Raptor to obtain log from emake annotation file where it is uncorrupted. A new |
78 Make engine option "copylogfromannofile" enables/disables this mode for emake. If this option is disabled |
111 Make engine option "copylogfromannofile" enables/disables this mode for emake. If this option is disabled |
79 or if no annotation file is specified for the build then Raptor reads logs directly as normal. |
112 or if no annotation file is specified for the build then Raptor reads logs directly as normal. |
80 - SF Bug 2125 - [Raptor] - tracecompiler what output incorrect if mmp basename contains '.' e.g. fred.prd.mmp |
113 - SF Bug 2125 - [Raptor] - tracecompiler what output incorrect if mmp basename contains '.' e.g. fred.prd.mmp |
81 - SF Bug 2191 - [Raptor] - When forcesuccess is enabled, exit status for a failed recipe is "retry" but should be "failed" |
114 - SF Bug 2191 - [Raptor] - When forcesuccess is enabled, exit status for a failed recipe is "retry" but should be "failed" |
82 - Fix: extend tracecompiler tests to Linux |
115 - Fix: extend tracecompiler tests to Linux |
83 - Fix: Amendment to SF Bug 1511 fix - removal of blanked DEFFILE keyword from e32abiv2ani.flm |
116 - Fix: Amendment to SF Bug 1511 fix - removal of blanked DEFFILE keyword from e32abiv2ani.flm |
84 - Fix: improve robustness to bad -c options |
117 - Fix: improve robustness to bad -c options |
85 |
118 |
113 version 2.12.2 |
146 version 2.12.2 |
114 |
147 |
115 Defect Fixes: |
148 Defect Fixes: |
116 - SF Bug 1569 - excessive recompilation in incremental tracecompiler builds |
149 - SF Bug 1569 - excessive recompilation in incremental tracecompiler builds |
117 - Better error messages for make-engine selection. |
150 - Better error messages for make-engine selection. |
118 e.g. "sbs -e arm" will now produce a useful error message rather than |
151 e.g. "sbs -e arm" will now produce a useful error message rather than |
119 a traceback. "arm" is a real variant but it's not a make engine. In |
152 a traceback. "arm" is a real variant but it's not a make engine. In |
120 the past sbs would have tried to use it and would have failed with a |
153 the past sbs would have tried to use it and would have failed with a |
121 complicated traceback. Also doesn't traceback for non-existent make engines. |
154 complicated traceback. Also doesn't traceback for non-existent make engines. |
122 - sbs_filter chose wrong embedded default python version. Set to 2.6.4 now. |
155 - sbs_filter chose wrong embedded default python version. Set to 2.6.4 now. |
123 - FilterCheck did not check files when run from sbs_filter |
156 - FilterCheck did not check files when run from sbs_filter |
137 |
170 |
138 New Features: |
171 New Features: |
139 - New 'Patchable Constants' target type: TARGETTYPE pdll |
172 - New 'Patchable Constants' target type: TARGETTYPE pdll |
140 - Combine Linking and Postlinking into a single step - performance improvement. |
173 - Combine Linking and Postlinking into a single step - performance improvement. |
141 - Support exit codes from next version of the trace compiler which will issue them |
174 - Support exit codes from next version of the trace compiler which will issue them |
142 - New sbs_filter script and batchfile to ease the use of sbs_filter.py. |
175 - New sbs_filter script and batchfile to ease the use of sbs_filter.py. |
143 Allows filters to be executed over a log after a build has been done. |
176 Allows filters to be executed over a log after a build has been done. |
144 e.g. |
177 e.g. |
145 |
178 |
146 sbs_filter --filters=FilterWhat < logfile.log |
179 sbs_filter --filters=FilterWhat < logfile.log |
147 |
180 |
148 (This runs a "--what" without regenerating any makefiles or reparsing |
181 (This runs a "--what" without regenerating any makefiles or reparsing |
149 the matadata.) |
182 the matadata.) |
150 - New (beta) FilterWhatComp filter. Simulates abld log output for |
183 - New (beta) FilterWhatComp filter. Simulates abld log output for |
151 use with parse_what.pl for packing up zips by component. Whatcomp output |
184 use with parse_what.pl for packing up zips by component. Whatcomp output |
152 uses the incoming epocroot value. i.e. if epocroot is relative then so is |
185 uses the incoming epocroot value. i.e. if epocroot is relative then so is |
153 the what output. e.g. if EPOCROOT=\ then the output will be of the form: |
186 the what output. e.g. if EPOCROOT=\ then the output will be of the form: |
154 |
187 |
155 "\epoc32\release\armv5\...." |
188 "\epoc32\release\armv5\...." |
156 |
189 |
157 If it's "..\myepocroot" then the output will be: |
190 If it's "..\myepocroot" then the output will be: |
158 |
191 |
159 "..\myepocroot\epoc32\release\armv5". |
192 "..\myepocroot\epoc32\release\armv5". |
160 |
193 |
161 If it's absolute then the what output will also be absolute. |
194 If it's absolute then the what output will also be absolute. |
162 - New FilterCheck filter. This can be used with sbs_filter to perform the |
195 - New FilterCheck filter. This can be used with sbs_filter to perform the |
163 equivalent of --check using the log output from a build. It is more |
196 equivalent of --check using the log output from a build. It is more |
164 efficient than --check because the metadata is not parsed and no makefiles |
197 efficient than --check because the metadata is not parsed and no makefiles |
165 are generated. e.g. |
198 are generated. e.g. |
166 |
199 |
167 sbs_filter --filters=FilterCheck < logfile.log |
200 sbs_filter --filters=FilterCheck < logfile.log |
168 |
201 |
169 - New (beta) graphical build visualisation tool (bin/timelines.py). |
202 - New (beta) graphical build visualisation tool (bin/timelines.py). |
170 Requires pygame and PyOpenGL. e.g. |
203 Requires pygame and PyOpenGL. e.g. |
171 |
204 |
172 python timelines.py < filename.log |
205 python timelines.py < filename.log |
173 |
206 |
174 - New (beta) log analyser (recipestats.py) for recording the total time spent |
207 - New (beta) log analyser (recipestats.py) for recording the total time spent |
175 in each type of recipe in the build. e.g. |
208 in each type of recipe in the build. e.g. |
176 |
209 |
177 python recipestats.py < filename.log > stats.csv |
210 python recipestats.py < filename.log > stats.csv |
178 |
211 |
179 The output is in CSV format. |
212 The output is in CSV format. |
180 |
213 |
181 Defect Fixes: |
214 Defect Fixes: |
182 - fix for ARM9E + ARMV5 pre-processing confusion |
215 - fix for ARM9E + ARMV5 pre-processing confusion |
183 - SF bug 1606: template_ext.flm wrongly creates dependencies to OTHER_CFG targets |
216 - SF bug 1606: template_ext.flm wrongly creates dependencies to OTHER_CFG targets |
184 - SF bug 1570: Adding then removing a capability can produce incorrect |
217 - SF bug 1570: Adding then removing a capability can produce incorrect |
185 result: e.g. ALL TCB -TCB becomes ALL -TCB but it should be just ALL |
218 result: e.g. ALL TCB -TCB becomes ALL -TCB but it should be just ALL |
186 |
219 |
187 Other Changes: |
220 Other Changes: |
188 - Default to using Python 2.6.4 on windows (no change in compatibility with |
221 - Default to using Python 2.6.4 on windows (no change in compatibility with |
189 older versions of Python). |
222 older versions of Python). |
190 |
223 |
191 |
224 |
192 version 2.11.3 |
225 version 2.11.3 |
193 |
226 |
505 |
538 |
506 Defect Fixes: |
539 Defect Fixes: |
507 DPDEF136719 Raptor: sbsv2cache.py cache file generation fails with very large log files |
540 DPDEF136719 Raptor: sbsv2cache.py cache file generation fails with very large log files |
508 DPDEF136715 On Linux the shipped python 2.5.2 is not found |
541 DPDEF136715 On Linux the shipped python 2.5.2 is not found |
509 DPDEF132996 SBSv2 doesn't generate AUTO.BAT file |
542 DPDEF132996 SBSv2 doesn't generate AUTO.BAT file |
510 DPDEF136382 SBSv2: explicit dll versioning not supported on arm platforms |
543 DPDEF136382 SBSv2: explicit dll versioning not supported on arm platforms |
511 DPDEF135843 [Raptor Rollout] Raptor does not support OPTION_REPLACE ARMASM/OPTION ARMASM |
544 DPDEF135843 [Raptor Rollout] Raptor does not support OPTION_REPLACE ARMASM/OPTION ARMASM |
512 DPDEF136693 makesis fails when multiple instances are run concurrently with the same target |
545 DPDEF136693 makesis fails when multiple instances are run concurrently with the same target |
513 |
546 |
514 |
547 |
515 version 2.5.3 |
548 version 2.5.3 |