Helium API

Target create-canonical-sysdef-file

Location

d:\maintools\sf-config\sf-platform\build.xml:84:

Conditional execution

No conditions on target execution.


Description

This target is effectively a callback, called from compile-main. Its responsibility is to convert the set of peices in ref "system.definition.files" into one sys def with absolute paths

However, in our builds, we know that there will only be one sysdef peice passed in, so that makes things a lot simpler


Property dependencies

NameEdit status
User editable properties
Internal properties
canonical.sysdef.filenever


Target dependencies

create-canonical-sysdef-file dependencies


Source code

    <target name="create-canonical-sysdef-file">
    <fail message="Symbian builds create a canonical system definition from exactly one peice">
      <condition>
        <resourcecount refid="system.definition.files" when="ne" count="1"/>
      </condition>
    </fail>

    <!-- Locate the first/only item referenced -->
    <for param="file">
      <resources refid="system.definition.files"/>
      <sequential>
        <echo message="@{file}"/>
        <!-- Once a property is set, it stays set - bingo! -->
        <property name="sf.first.system.definition" value="@{file}"/>
      </sequential>
    </for>

    <!-- Having located the file, copy it to the final desired location, absoluting tha paths as we go -->
    <copy tofile="${canonical.sysdef.file}" file="${sf.first.system.definition}" overwrite="true" verbose="true">
      <filterchain>
        <replaceregex pattern="bldFile=&quot;os" replace="bldFile=&quot;/sf/os" flags="gi"/>
        <replaceregex pattern="mrp=&quot;os" replace="mrp=&quot;/sf/os" flags="gi"/>
        <replaceregex pattern="bldFile=&quot;mw" replace="bldFile=&quot;/sf/mw" flags="gi"/>
        <replaceregex pattern="mrp=&quot;mw" replace="mrp=&quot;/sf/mw" flags="gi"/>
        <replaceregex pattern="bldFile=&quot;app" replace="bldFile=&quot;/sf/app" flags="gi"/>
        <replaceregex pattern="mrp=&quot;app" replace="mrp=&quot;/sf/app" flags="gi"/>
        <replaceregex pattern="bldFile=&quot;tools" replace="bldFile=&quot;/sf/tools" flags="gi"/>
        <replaceregex pattern="mrp=&quot;tools" replace="mrp=&quot;/sf/tools" flags="gi"/>
        <replaceregex pattern="bldFile=&quot;adaptation" replace="bldFile=&quot;/sf/adaptation" flags="gi"/>
        <replaceregex pattern="mrp=&quot;adaptation" replace="mrp=&quot;/sf/adaptation" flags="gi"/>
        <expandproperties/>
      </filterchain>
    </copy>

 </target>

Helium API
Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. License: http://www.eclipse.org/legal/epl-v10.html