overview | deprecated | properties-table | index | help
| Helium API
prev next | frames no frames

## Target sf-os-compile

Location

`d:\maintools\sf-config\sf-platform\build.xml:162:`

Conditional execution

No conditions on target execution.

### Description

Name: SF-OS-COMPILE

Desc: Compile OS part of build using the spec defined in:

- job_props.ant.xml - job_refs.ant.xml

### Property dependencies

Name | Edit status
--- | ---
User editable properties
Internal properties

### Target dependencies

### Source code

        <target name="sf-os-compile">

            <hlm:argSet xmlns:hlm="http://www.nokia.com/helium" id="sbs.tools2.var">
                    <hlm:arg name="config" value="tools2_rel.whatlog"/>
                    <hlm:arg name="singlejob" value="false"/>
                    <hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}"/>
                    <hlm:arg name="retry-limit" value="${sf.spec.sbs.retry.limit}"/>
            </hlm:argSet>

    		<hlm:argSet xmlns:hlm="http://www.nokia.com/helium" id="sbs.tools2.clean.var">
                    <hlm:arg name="config" value="tools2_rel.whatlog"/>
                    <hlm:arg name="singlejob" value="false"/>
                    <hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}"/>
    		<hlm:arg name="command" value="CLEAN --check"/>
            </hlm:argSet>

            <hlm:argSet xmlns:hlm="http://www.nokia.com/helium" id="sbs.tools.var">
                    <hlm:arg name="config" value="tools_rel.whatlog"/>
                    <hlm:arg name="singlejob" value="true"/>
                    <hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}"/>
                    <hlm:arg name="retry-limit" value="${sf.spec.sbs.retry.limit}"/>
            </hlm:argSet>

    		<hlm:argSet xmlns:hlm="http://www.nokia.com/helium" id="sbs.tools.clean.var">
                    <hlm:arg name="config" value="tools_rel.whatlog"/>
                    <hlm:arg name="singlejob" value="true"/>
                    <hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}"/>
    		<hlm:arg name="command" value="CLEAN --check"/>
            </hlm:argSet>

            <hlm:argSet xmlns:hlm="http://www.nokia.com/helium" id="sbs.main.sbs.var">
                    <hlm:arg name="config" value="${sf.spec.sbs.config}"/>
                    <hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}"/>
                    <hlm:arg name="retry-limit" value="${sf.spec.sbs.retry.limit}"/>
            </hlm:argSet>

    		<hlm:argSet xmlns:hlm="http://www.nokia.com/helium" id="sbs.main.clean.sbs.var">
                    <hlm:arg name="config" value="${sf.spec.sbs.config}"/>
                    <hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}"/>
    		<hlm:arg name="command" value="CLEAN --check"/>
            </hlm:argSet>

    		<hlm:argSet xmlns:hlm="http://www.nokia.com/helium" id="sbs.main.what.sbs.var">
                    <hlm:arg name="config" value="${sf.spec.sbs.config}"/>
                    <hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}"/>
    		<hlm:arg name="command" value="WHAT"/>
            </hlm:argSet>

            <hlm:sbsMakeOptions xmlns:hlm="http://www.nokia.com/helium" engine="gmake" id="sbs.toolsbuild.options"/>
            <hlm:sbsMakeOptions xmlns:hlm="http://www.nokia.com/helium" engine="gmake" id="sbs.fullbuild.options"/>

    		<!-- generate baseline dir list to allow delta creation -->
    		<if><isset property="sf.os.compile.fast"/>
    			<then>
    				<echo message="INFO [FAST COMPILE] Skipping baseline dir list generation"/>
    			</then>
    			<else>
    				<antcall target="sf-list-dir" inheritAll="false">
    					<param name="sf.list.name" value="baseline"/>
    				</antcall>
    			</else>
    		</if>

    		<!-- OS what -->
    		<!--
            <antcall target="compile-main" inheritAll="false" inheritRefs="true">
                    <param name="build.system" value="${sf.spec.build.system}" />
                    <param name="compile.sysdef.dtd.stub" value="${sf.spec.os.sysdef.dtd}" />
                    <param name="sysdef.configurations.list" value="${sf.spec.os.sysdef.clean.configurations.list}" />
                    <param name="sf.spec.sysdef.version" value ="${sf.spec.os.sysdef.version}"/>
                    <reference refid="sbs.main.what.sbs.var" torefid="sbs.var" />
                    <reference refid="sbs.fullbuild.options" torefid="sbs.make.options" />
                    <reference refid="sf.spec.os.system.definition.files" torefid="system.definition.files" />
            </antcall>
    		-->

    		<!-- OS clean main build -->
    		<if><istrue value="${sf.spec.baseline.clean}"/>
    			<then>
    				<antcall target="compile-main" inheritAll="false" inheritRefs="true">
    						<param name="build.system" value="${sf.spec.build.system}"/>
    						<param name="compile.sysdef.dtd.stub" value="${sf.spec.os.sysdef.dtd}"/>
    						<param name="sysdef.configurations.list" value="${sf.spec.os.sysdef.clean.configurations.list}"/>
    						<param name="sf.spec.sysdef.version" value="${sf.spec.os.sysdef.version}"/>
    						<reference refid="sbs.main.clean.sbs.var" torefid="sbs.var"/>
    						<reference refid="sbs.fullbuild.options" torefid="sbs.make.options"/>
    						<reference refid="sf.spec.os.system.definition.files" torefid="system.definition.files"/>
    				</antcall>
    			</then>
    		</if>

    		<if><isset property="sf.os.compile.fast"/>
    			<then>
    				<echo message="INFO [FAST COMPILE] Skipping baseline vs post-clean delta generation"/>
    			</then>
    			<else>
    				<antcall target="sf-list-dir" inheritAll="false">
    					<param name="sf.list.name" value="post-clean"/>
    				</antcall>
    				<!-- what has been cleaned from baseline PDK by sos model -->
    				<antcall target="sf-delta-dir" inheritAll="false">
    					<param name="sf.list_a.name" value="baseline"/>
    					<param name="sf.list_b.name" value="post-clean"/>
    				</antcall>
    			</else>
    		</if>

    		<if><isset property="sf.os.compile.fast"/>
    			<then>
    				<echo message="INFO [FAST COMPILE] Skipping Tools/Tools2 builds"/>
    			</then>
    			<else>
    				<!-- OS tools2 build first-->
    				<antcall target="compile-main" inheritAll="false" inheritRefs="true">
    						<param name="build.system" value="${sf.spec.build.system}"/>
    						<param name="compile.sysdef.dtd.stub" value="${sf.spec.os.sysdef.dtd}"/>
    						<param name="sysdef.configurations.list" value="${sf.spec.os.sysdef.clean.configurations.list}"/>
    						<param name="sf.spec.sysdef.version" value="${sf.spec.os.sysdef.version}"/>
    						<reference refid="sbs.tools2.var" torefid="sbs.var"/>
    						<reference refid="sbs.toolsbuild.options" torefid="sbs.make.options"/>
    						<reference refid="sf.spec.os.system.definition.files" torefid="system.definition.files"/>
    				</antcall>

    				<antcall target="sf-list-dir" inheritAll="false">
    					<param name="sf.list.name" value="post-build-tools2"/>
    				</antcall>

    				<!-- OS tools build after tools2 -->
    				<antcall target="compile-main" inheritAll="false" inheritRefs="true">
    						<param name="build.system" value="${sf.spec.build.system}"/>
    						<param name="compile.sysdef.dtd.stub" value="${sf.spec.os.sysdef.dtd}"/>
    						<param name="sysdef.configurations.list" value="${sf.spec.os.sysdef.clean.configurations.list}"/>
    						<param name="sf.spec.sysdef.version" value="${sf.spec.os.sysdef.version}"/>
    						<reference refid="sbs.tools.var" torefid="sbs.var"/>
    						<reference refid="sbs.toolsbuild.options" torefid="sbs.make.options"/>
    						<reference refid="sf.spec.os.system.definition.files" torefid="system.definition.files"/>
    				</antcall>

    				<antcall target="sf-list-dir" inheritAll="false">
    					<param name="sf.list.name" value="post-build-tools"/>
    				</antcall>
    			</else>
    		</if>
    		<if><istrue value="${sf.os.compile.iterate}"/>
          <then>
            <for list="${sf.spec.sbs.config}" delimiter="," param="sf.spec.sbs.splitconfig">
              <sequential>
      				<echo message="INFO [Iterative compile] @{sf.spec.sbs.splitconfig}"/>

              <hlm:argSet xmlns:hlm="http://www.nokia.com/helium" id="sbs.main.iterate.sbs.var">
                      <hlm:arg name="config" value="@{sf.spec.sbs.splitconfig}"/>
                      <hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}"/>
                      <hlm:arg name="retry-limit" value="${sf.spec.sbs.retry.limit}"/>
              </hlm:argSet>
              <antcall target="compile-main" inheritAll="false" inheritRefs="true">
                      <param name="build.system" value="${sf.spec.build.system}"/>
                      <param name="compile.sysdef.dtd.stub" value="${sf.spec.os.sysdef.dtd}"/>
                      <param name="sysdef.configurations.list" value="${sf.spec.os.sysdef.clean.configurations.list}"/>
                      <param name="sf.spec.sysdef.version" value="${sf.spec.os.sysdef.version}"/>
                      <reference refid="sbs.main.iterate.sbs.var" torefid="sbs.var"/>
                      <reference refid="sbs.fullbuild.options" torefid="sbs.make.options"/>
                      <reference refid="sf.spec.os.system.definition.files" torefid="system.definition.files"/>
              </antcall>
              </sequential>
            </for>
          </then>
    		  <else>
            <!-- OS main build -->
            <antcall target="compile-main" inheritAll="false" inheritRefs="true">
                    <param name="build.system" value="${sf.spec.build.system}"/>
                    <param name="compile.sysdef.dtd.stub" value="${sf.spec.os.sysdef.dtd}"/>
                    <param name="sysdef.configurations.list" value="${sf.spec.os.sysdef.clean.configurations.list}"/>
                    <param name="sf.spec.sysdef.version" value="${sf.spec.os.sysdef.version}"/>
                    <reference refid="sbs.main.sbs.var" torefid="sbs.var"/>
                    <reference refid="sbs.fullbuild.options" torefid="sbs.make.options"/>
                    <reference refid="sf.spec.os.system.definition.files" torefid="system.definition.files"/>
            </antcall>
    		  </else>
        </if>
    		<if><isset property="sf.os.compile.fast"/>
    			<then>
    				<echo message="INFO [FAST COMPILE] Skipping delta and intersect list generation"/>
    			</then>
    			<else>
    				<antcall target="sf-list-dir" inheritAll="false">
    					<param name="sf.list.name" value="post-build-main"/>
    				</antcall>

    				<!-- what has been built in tools2+tools+main -->
    				<antcall target="sf-delta-dir" inheritAll="false">
    					<param name="sf.list_a.name" value="post-clean"/>
    					<param name="sf.list_b.name" value="post-build-main"/>
    				</antcall>

    				<!-- what has been cleaned and rebuilt -->
    				<antcall target="sf-intersect-dir" inheritAll="false">
    					<param name="sf.list_a.name" value="post-clean_delta"/>       <!-- clean list -->
    					<param name="sf.list_b.name" value="post-build-main_delta"/>  <!-- built list -->
    				</antcall>

    				<!-- what has been cleaned and not rebuilt -->
    			</else>
    		</if>

      </target>

overview | deprecated | properties-table | index | help
| Helium API
prev next | frames no frames

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