Moved the generation of the release metadata entry for the MD5 zip outside of
the parallel section, so it can't co-incide with the zipping of the binaries.
Ensured that any errors generated when merging log files are not just hidden
by putting them in the output file (which will render it not well-formed XML).
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE HTML PUBLIC "-//w3c//dtd xhtml 1.0 strict//en"
"http://www.w3.org/tr/xhtml1/dtd/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta name="keywords" content="helium"/>
<meta http-equiv="content-type" content="text/html+xml; charset=iso-8859-1"/>
<link rel="stylesheet" href="stylesheet.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '',
VERSION: '0'
};
</script>
<script type="text/javascript" src="../_static/jquery.js"></script>
<script type="text/javascript" src="../_static/interface.js"></script>
<script type="text/javascript" src="../_static/doctools.js"></script>
<title>Target sf-generate-source-spec</title>
</head>
<body>
<!-- ========= start of top navbar ======= -->
<a name="navbar_top"><!-- --></a>
<a href="#skip-navbar_top" title="skip navigation links"></a>
<table border="0" width="100%" cellpadding="1" cellspacing="0" summary="">
<tr>
<td colspan="2" bgcolor="#eeeeff" class="navbarcell1">
<a name="navbar_top_firstrow"><!-- --></a>
<table border="0" cellpadding="0" cellspacing="3" summary="">
<tr align="center" valign="top">
<td bgcolor="#ffffff" class="navbarcell1">  <a href="overview-summary.html"><font class="navbarfont1"><b>overview</b></font> </a></td>
<td bgcolor="#ffffff" class="navbarcell1"> <a href="deprecated-list.html"><font class="navbarfont1"><b>deprecated</b></font></a> </td>
<td bgcolor="#eeeeff" class="navbarcell1"> <a href="properties-table.html"><font class="navbarfont1"><b>properties-table</b></font></a> </td>
<td bgcolor="#eeeeff" class="navbarcell1"> <a href="index-1.html"><font class="navbarfont1"><b>index</b></font></a> </td>
<td bgcolor="#eeeeff" class="navbarcell1"> <a href="help.html"><font class="navbarfont1"><b>help</b></font></a> </td>
</tr>
</table>
</td>
<td align="right" valign="top" rowspan="3"><em>
<b>Helium API</b></em>
</td>
</tr>
<tr>
<td bgcolor="white" class="navbarcell2"><font size="-2">
 prev 
 next</font></td>
<td bgcolor="white" class="navbarcell2"><font size="-2">
<a href="index.html?overview-summary.html" target="_top"><b>frames</b></a>  
 <a href="overview-summary.html" target="_top"><b>no frames</b></a>  
 <script type="text/javascript">
<!--
if(window==top) {
document.writeln('<a href="allclasses-noframe.html"><b>all classes</b></a>');
}
//-->
</script>
<noscript>
<a href="allclasses-noframe.html"><b>all classes</b></a>
</noscript>
</font></td>
</tr>
</table>
<a name="skip-navbar_top"></a>
<!-- ========= end of top navbar ========= -->
<hr/>
<h2>Target sf-generate-source-spec</h2>
<p><b>Location</b></p>
<p> <tt class="docutils literal"><a href="/d:/maintools/sf-config/common/build.xml#L157">d:\maintools\sf-config\common\build.xml:157:</a></tt>
</p>
<p><b>Conditional execution</b></p>
<p>No conditions on target execution.</p>
<hr/>
<h3>Description</h3>
<p>
</p>
<p/>
<hr/>
<h3>Target external Dependency</h3>
<p>
<table class="docutils" width="50%">
<tr>
<th class="head">Name</th>
</tr>
<tr>
<td>perl</td>
</tr>
</table>
</p>
<h3>Property dependencies</h3>
<p>
<table class="docutils" width="50%">
<tr>
<th class="head">Name</th><th class="head">Edit status</th>
</tr>
<tr>
<td colspan="2">User editable properties</td>
</tr>
<tr>
<td colspan="2">Internal properties</td>
</tr>
<tr>
<td><a href="property-build.id.html" title="<p>A unique ID for the build.</p>" target="classframe"><tt class="docutils literal">build.id</tt></a></td><td><a href="help.html" title="Help" target="classframe">discouraged</a></td>
</tr>
<tr>
<td><a href="property-build.log.dir.html" title="<p>This is where the build logs are stored.</p>" target="classframe"><tt class="docutils literal">build.log.dir</tt></a></td><td><a href="help.html" title="Help" target="classframe">discouraged</a></td>
</tr>
</table>
</p>
<hr/>
<h3>Target dependencies</h3>
<p align="center">
<img src="target-sf-generate-source-spec.dot.png" alt="sf-generate-source-spec dependencies" usemap="#dependencies"
style="border-style: none"/>
<map name="dependencies" id="dependencies">
<area shape="rect" id="node1" href="target-sf-generate-source-spec.html" title="sf-generate-source-spec" alt="" coords="165,41,357,89">
<area shape="rect" id="node2" href="target-sf-prep.html" title="sf-prep" alt="" coords="25,5,97,53">
<area shape="rect" id="node4" href="target-sf-get-source.html" title="sf-get-source" alt="" coords="5,77,117,125">
</map>
</p>
<hr/>
<h3>Source code</h3>
<pre>
<target name="sf-generate-source-spec">
<!-- Generate the sources.csv if hg cache is activated -->
<if><istrue value="${sf.spec.sourcesync.usecache}"/>
<then>
<echo message="Generating Hg local cache..."/>
<mkdir dir="${sf.common.config.dir}/generated"/>
<exec executable="perl" dir="${build.log.dir}" failonerror="true" output="${build.log.dir}/${build.id}_hgcache.log">
<arg value="${sf.common.config.dir}/tools/cachefiles.pl"/>
<arg value="${sf.spec.sourcesync.cachelocation}"/>
<arg value="${sf.project.location}/${sf.spec.sourcesync.sourcespecfile}"/>
<arg value="${sf.common.config.dir}/generated/${sf.spec.sourcesync.sourcespecfile}"/>
</exec>
</then>
</if>
<!-- TODO: 1. Same file name souce-spec.ant.xml is used for all packages
for multiple package builds, this needs to be linked with package name. -->
<!-- TODO: 2. Change fmpp data to be a full property rather than relative path -->
<delete file="${sf.common.config.dir}/generated/source-spec.ant.xml"/>
<fmpp sourceFile="${sf.common.config.dir}/templates/source-spec.ant.xml.ftl" outputFile="${sf.common.config.dir}/generated/source-spec.ant.xml">
<data expandProperties="yes">
ant: antProperties()
data: csv(${sf.spec.sourcesync.sourcespecdir}/${sf.spec.sourcesync.sourcespecfile}, {separator:','})
</data>
</fmpp>
</target>
</pre>
<hr/>
<!-- ========= start of top navbar ======= -->
<a name="navbar_top"><!-- --></a>
<a href="#skip-navbar_top" title="skip navigation links"></a>
<table border="0" width="100%" cellpadding="1" cellspacing="0" summary="">
<tr>
<td colspan="2" bgcolor="#eeeeff" class="navbarcell1">
<a name="navbar_top_firstrow"><!-- --></a>
<table border="0" cellpadding="0" cellspacing="3" summary="">
<tr align="center" valign="top">
<td bgcolor="#ffffff" class="navbarcell1">  <a href="overview-summary.html"><font class="navbarfont1"><b>overview</b></font> </a></td>
<td bgcolor="#ffffff" class="navbarcell1"> <a href="deprecated-list.html"><font class="navbarfont1"><b>deprecated</b></font></a> </td>
<td bgcolor="#eeeeff" class="navbarcell1"> <a href="properties-table.html"><font class="navbarfont1"><b>properties-table</b></font></a> </td>
<td bgcolor="#eeeeff" class="navbarcell1"> <a href="index-1.html"><font class="navbarfont1"><b>index</b></font></a> </td>
<td bgcolor="#eeeeff" class="navbarcell1"> <a href="help.html"><font class="navbarfont1"><b>help</b></font></a> </td>
</tr>
</table>
</td>
<td align="right" valign="top" rowspan="3"><em>
<b>Helium API</b></em>
</td>
</tr>
<tr>
<td bgcolor="white" class="navbarcell2"><font size="-2">
 prev 
 next</font></td>
<td bgcolor="white" class="navbarcell2"><font size="-2">
<a href="index.html?overview-summary.html" target="_top"><b>frames</b></a>  
 <a href="overview-summary.html" target="_top"><b>no frames</b></a>  
 <script type="text/javascript">
<!--
if(window==top) {
document.writeln('<a href="allclasses-noframe.html"><b>all classes</b></a>');
}
//-->
</script>
<noscript>
<a href="allclasses-noframe.html"><b>all classes</b></a>
</noscript>
</font></td>
</tr>
</table>
<a name="skip-navbar_top"></a>
<!-- ========= end of top navbar ========= -->
<font size="-2">Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. License: http://www.eclipse.org/legal/epl-v10.html</font>
</body>
</html>