doc/api/helium/target-sf-bc-check.html
author MattD <mattd@symbian.org>
Fri, 16 Oct 2009 14:57:32 +0100
changeset 684 6d65abb8bba1
parent 627 56a1d97e7c73
permissions -rw-r--r--
sf-run-evalid - minor change to make sure that evalid is run at the root of the build drive, which can stop the MD5s from being generated. (evalid requires dirs to be relative and not absolute)


<?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-bc-check</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"> &#160;<a href="overview-summary.html"><font class="navbarfont1"><b>overview</b></font>&#160;</a></td>

  <td bgcolor="#ffffff" class="navbarcell1">    <a href="deprecated-list.html"><font class="navbarfont1"><b>deprecated</b></font></a>&#160;</td>
    
  <td bgcolor="#eeeeff" class="navbarcell1">    <a href="properties-table.html"><font class="navbarfont1"><b>properties-table</b></font></a>&#160;</td>  
  <td bgcolor="#eeeeff" class="navbarcell1">    <a href="index-1.html"><font class="navbarfont1"><b>index</b></font></a>&#160;</td>
  <td bgcolor="#eeeeff" class="navbarcell1">    <a href="help.html"><font class="navbarfont1"><b>help</b></font></a>&#160;</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">
&#160;prev&#160;
&#160;next</font></td>
<td bgcolor="white" class="navbarcell2"><font size="-2">
  <a href="index.html?overview-summary.html" target="_top"><b>frames</b></a>  &#160;
&#160;<a href="overview-summary.html" target="_top"><b>no frames</b></a>  &#160;

&#160;<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-bc-check</h2>

<p><b>Location</b></p>
<p>    <tt class="docutils literal"><a href="/d:/maintools/sf-config/common/build.test.xml#L34">d:\maintools\sf-config\common\build.test.xml:34:</a></tt>  
</p>

<p><b>Conditional execution</b></p>        
<p>No conditions on target execution.</p>
<hr/>

<h3>Description</h3>
<p>
<p>static and dynamic BC Test target</p></p>
<p/>
<hr/>


<h3>Target external Dependency</h3>
<p> 
<table class="docutils" width="50%">
    <tr>
        <th class="head">Name</th>
    </tr>
        <tr>
                    <td>cmd</td>
            </tr>
        <tr>
                    <td>cmd</td>
            </tr>
        <tr>
                    <td>cmd</td>
            </tr>
        <tr>
                    <td>cmd</td>
            </tr>
        <tr>
                    <td>cmd</td>
            </tr>
        <tr>
                    <td>cmd</td>
            </tr>
        <tr>
                    <td>perl</td>
            </tr>
        <tr>
                    <td>python</td>
            </tr>
        <tr>
                    <td>python</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><a href="property-build.drive.html" title="<p>Substed drive where the build is performed. if not defined then helium should search next available build drive letter and subst autometically</p>" target="classframe"><tt class="docutils literal">build.drive</tt></a></td><td><a href="help.html" title="Help" target="classframe">recommended</a></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-bc-check.dot.png" alt="sf-bc-check dependencies" usemap="#dependencies"
     style="border-style: none"/>
<map name="dependencies" id="dependencies">
<area shape="rect" id="node1" href="target-sf-bc-check.html" title="sf&#45;bc&#45;check" alt="" coords="189,72,291,120">
<area shape="rect" id="node6" href="target-sf-send-testpkg.html" title="sf&#45;send&#45;testpkg" alt="" coords="341,72,469,120">
<area shape="rect" id="node2" href="target-sf-postbuild.html" title="sf&#45;postbuild" alt="" coords="21,36,123,84">
<area shape="rect" id="node4" href="target-sf-test-bc-check.html" title="sf&#45;test&#45;bc&#45;check" alt="" coords="7,108,137,156">
<area shape="rect" id="node9" href="target-sf-start-ats.html" title="sf&#45;start&#45;ats" alt="" coords="549,5,643,53">
<area shape="rect" id="node11" href="target-sf-find-ATS-worker-root.html" title="sf&#45;find&#45;ATS&#45;worker&#45;root" alt="" coords="715,99,899,147">
<area shape="rect" id="node13" href="target-sf-make-junction.html" title="sf&#45;make&#45;junction" alt="" coords="529,144,663,192">
</map>
</p>
<hr/>


<h3>Source code</h3>
<pre>
    &lt;target name=&quot;sf-bc-check&quot;&gt;
        &lt;if&gt;&lt;isset property=&quot;env.PDT_HOME&quot;/&gt;
        &lt;then&gt;
            &lt;!-- create BC dir --&gt;
            &lt;mkdir dir=&quot;${build.log.dir}/BC&quot;/&gt;
            &lt;delete file=&quot;${build.log.dir}/BC/bc.config&quot; quiet=&quot;true&quot;/&gt;
            &lt;delete file=&quot;${build.log.dir}/BC/BBCResults.xsl&quot; quiet=&quot;true&quot;/&gt;
            &lt;delete file=&quot;${build.log.dir}/BC/libraries.txt&quot; quiet=&quot;true&quot;/&gt;
            &lt;delete file=&quot;${build.log.dir}/BC/libraries_report.xml&quot; quiet=&quot;true&quot;/&gt;
            &lt;delete file=&quot;${build.log.dir}/BC/headers.txt&quot; quiet=&quot;true&quot;/&gt;
            &lt;delete file=&quot;${build.log.dir}/BC/headers_report.xml&quot; quiet=&quot;true&quot;/&gt;

            &lt;exec executable=&quot;cmd&quot; output=&quot;${build.log.dir}/BC/bc.config&quot; append=&quot;true&quot;&gt;
                &lt;arg value=&quot;/c&quot;/&gt;
                &lt;arg value=&quot;echo&quot;/&gt;
                &lt;arg value=&quot;BASELINE_NAME=${sf.spec.bccheck.baseline.name}&quot;/&gt;
            &lt;/exec&gt;
            &lt;exec executable=&quot;cmd&quot; output=&quot;${build.log.dir}/BC/bc.config&quot; append=&quot;true&quot;&gt;
                &lt;arg value=&quot;/c&quot;/&gt;
                &lt;arg value=&quot;echo&quot;/&gt;
                &lt;arg value=&quot;BASELINE_SDK_DIR=${sf.spec.bccheck.baseline.skd.dir}&quot;/&gt;
            &lt;/exec&gt;
            &lt;exec executable=&quot;cmd&quot; output=&quot;${build.log.dir}/BC/bc.config&quot; append=&quot;true&quot;&gt;
                &lt;arg value=&quot;/c&quot;/&gt;
                &lt;arg value=&quot;echo&quot;/&gt;
                &lt;arg value=&quot;BASELINE_SDK_S60_VERSION=${sf.spec.bccheck.baseline.s60.version}&quot;/&gt;
            &lt;/exec&gt;
            &lt;exec executable=&quot;cmd&quot; output=&quot;${build.log.dir}/BC/bc.config&quot; append=&quot;true&quot;&gt;
                &lt;arg value=&quot;/c&quot;/&gt;
                &lt;arg value=&quot;echo&quot;/&gt;
                &lt;arg value=&quot;CURRENT_NAME=${build.id}&quot;/&gt;
            &lt;/exec&gt;
            &lt;exec executable=&quot;cmd&quot; output=&quot;${build.log.dir}/BC/bc.config&quot; append=&quot;true&quot;&gt;
                &lt;arg value=&quot;/c&quot;/&gt;
                &lt;arg value=&quot;echo&quot;/&gt;
                &lt;arg value=&quot;CURRENT_SDK_DIR=${build.drive}&quot;/&gt;
            &lt;/exec&gt;
            &lt;exec executable=&quot;cmd&quot; output=&quot;${build.log.dir}/BC/bc.config&quot; append=&quot;true&quot;&gt;
                &lt;arg value=&quot;/c&quot;/&gt;
                &lt;arg value=&quot;echo&quot;/&gt;
                &lt;arg value=&quot;CURRENT_SDK_S60_VERSION=${sf.spec.bccheck.current.s60.version}&quot;/&gt;
            &lt;/exec&gt;

            &lt;copy file=&quot;${sf.spec.pdt.root}/fts/compatibilityanalyser/reports/BBCResults.xsl&quot; tofile=&quot;${build.log.dir}/BC/BBCResults.xsl&quot; failonerror=&quot;false&quot; verbose=&quot;true&quot;/&gt;

            &lt;if&gt;&lt;istrue value=&quot;${sf.spec.bccheck.enable.la}&quot;/&gt;
                &lt;then&gt;
                    &lt;exec executable=&quot;python&quot; dir=&quot;${sf.spec.pdt.root}/fts/compatibilityanalyser&quot; output=&quot;${build.log.dir}/BC/libraries.txt&quot;&gt;
                        &lt;arg value=&quot;CheckBC.py&quot;/&gt;
                        &lt;arg value=&quot;${build.log.dir}/BC/bc.config&quot;/&gt;
                        &lt;arg value=&quot;-la&quot;/&gt;
                        &lt;arg value=&quot;-f&quot;/&gt;
                        &lt;arg value=&quot;${sf.spec.bccheck.reportid}&quot;/&gt;
                    &lt;/exec&gt;
                    &lt;copy file=&quot;${sf.spec.pdt.root}/fts/compatibilityanalyser/reports/Libraries_CompatibilityReport_${sf.spec.bccheck.reportid}.xml&quot; tofile=&quot;${build.log.dir}/BC/libraries_report.xml&quot; failonerror=&quot;false&quot; verbose=&quot;true&quot;/&gt;
                &lt;/then&gt;
            &lt;/if&gt;

            &lt;if&gt;&lt;istrue value=&quot;${sf.spec.bccheck.enable.ha}&quot;/&gt;
                &lt;then&gt;
                    &lt;exec executable=&quot;python&quot; dir=&quot;${sf.spec.pdt.root}/fts/compatibilityanalyser&quot; output=&quot;${build.log.dir}/BC/headers.txt&quot;&gt;
                        &lt;arg value=&quot;CheckBC.py&quot;/&gt;
                        &lt;arg value=&quot;${build.log.dir}/BC/bc.config&quot;/&gt;
                        &lt;arg value=&quot;-ha&quot;/&gt;
                        &lt;arg value=&quot;-f&quot;/&gt;
                        &lt;arg value=&quot;${sf.spec.bccheck.reportid}&quot;/&gt;
                    &lt;/exec&gt;
                    &lt;copy file=&quot;${sf.spec.pdt.root}/fts/compatibilityanalyser/reports/Headers_CompatibilityReport_${sf.spec.bccheck.reportid}.xml&quot; tofile=&quot;${build.log.dir}/BC/headers_report.xml&quot; failonerror=&quot;false&quot; verbose=&quot;true&quot;/&gt;
                &lt;/then&gt;
            &lt;/if&gt;

            &lt;if&gt;&lt;istrue value=&quot;${sf.spec.bccheck.enable.dynamic}&quot;/&gt;
                &lt;then&gt;
                    &lt;for param=&quot;file&quot;&gt;
						&lt;path&gt;
							&lt;fileset dir=&quot;${sf.spec.test.package.location}/../bctest&quot; includes=&quot;*.zip&quot;/&gt;
						&lt;/path&gt;
						&lt;sequential&gt;
							&lt;propertyregex override=&quot;yes&quot; property=&quot;program&quot; input=&quot;@{file}&quot; regexp=&quot;([^\\/\/]*)$&quot; select=&quot;\1&quot;/&gt;  						
                            &lt;echo message=&quot;INFO Updating bctest package with test info&quot;/&gt;
					        &lt;echo message=&quot;************ Test drop package name:  ${program} &quot;/&gt;
                            &lt;exec executable=&quot;perl&quot; dir=&quot;${sf.common.config.dir}/tools/ats/&quot; failonerror=&quot;false&quot; append=&quot;true&quot; output=&quot;${build.log.dir}/ATS_${build.id}_dynamicbc.log&quot;&gt;
                              &lt;arg value=&quot;ats_specialise_test_drop.pl&quot;/&gt;
                              &lt;arg value=&quot;--test-drop-name=${env.COMPUTERNAME}-bctest-${build.id}_${program}&quot;/&gt; 
                              &lt;arg value=&quot;--host-name=${env.COMPUTERNAME}.ad-sfpd.intra&quot;/&gt;
                              &lt;arg value=&quot;--src=${sf.spec.test.package.location}/../bctest/${program}&quot;/&gt;
                              &lt;arg value=&quot;--dest=${sf.spec.test.package.location}\${env.COMPUTERNAME}-bctest-${build.id}_${program}&quot;/&gt;						 
                            &lt;/exec&gt;
                            &lt;!-- Now ready to send to ATS3 --&gt;  
					      &lt;echo message=&quot;Sending Test drop :  ${program} ............&quot;/&gt;									
					&lt;antcall target=&quot;sf-send-testpkg&quot; inheritAll=&quot;false&quot;&gt;
                        &lt;param name=&quot;sf.spec.test.package.name&quot; value=&quot;${env.COMPUTERNAME}-bctest-${build.id}_${program}&quot;/&gt;
                    &lt;/antcall&gt;					
							
						&lt;/sequential&gt;
  
					&lt;/for&gt;
				&lt;/then&gt;
			&lt;/if&gt;
		&lt;/then&gt;
        &lt;else&gt;
            &lt;echo message=&quot;WARNING: PDT_HOME not set, I dont know where the BC tools are installed so cannot continue&quot;/&gt;
        &lt;/else&gt;
		&lt;/if&gt;	
    &lt;/target&gt;
</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"> &#160;<a href="overview-summary.html"><font class="navbarfont1"><b>overview</b></font>&#160;</a></td>

  <td bgcolor="#ffffff" class="navbarcell1">    <a href="deprecated-list.html"><font class="navbarfont1"><b>deprecated</b></font></a>&#160;</td>
    
  <td bgcolor="#eeeeff" class="navbarcell1">    <a href="properties-table.html"><font class="navbarfont1"><b>properties-table</b></font></a>&#160;</td>  
  <td bgcolor="#eeeeff" class="navbarcell1">    <a href="index-1.html"><font class="navbarfont1"><b>index</b></font></a>&#160;</td>
  <td bgcolor="#eeeeff" class="navbarcell1">    <a href="help.html"><font class="navbarfont1"><b>help</b></font></a>&#160;</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">
&#160;prev&#160;
&#160;next</font></td>
<td bgcolor="white" class="navbarcell2"><font size="-2">
  <a href="index.html?overview-summary.html" target="_top"><b>frames</b></a>  &#160;
&#160;<a href="overview-summary.html" target="_top"><b>no frames</b></a>  &#160;

&#160;<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>