sf-platform/compile.ant.xml
changeset 1300 fe97a9594f6c
parent 1288 de3bf79206c8
equal deleted inserted replaced
1299:da1ff046acdc 1300:fe97a9594f6c
    15       <!-- Name of file in BOM should always be system_model.xml, so that it can be predictably re-used again -->
    15       <!-- Name of file in BOM should always be system_model.xml, so that it can be predictably re-used again -->
    16       <copy file="${build.drive}/output/build/canonical_system_definition_${sf.spec.os.sysdef.clean.configurations.list}.xml" tofile="${build.log.dir}/BOM/system_model.xml" failonerror="false"/>
    16       <copy file="${build.drive}/output/build/canonical_system_definition_${sf.spec.os.sysdef.clean.configurations.list}.xml" tofile="${build.log.dir}/BOM/system_model.xml" failonerror="false"/>
    17 
    17 
    18     <if><available file="${sf.spec.systemdefinition.location}/tools_model.xml"/>
    18     <if><available file="${sf.spec.systemdefinition.location}/tools_model.xml"/>
    19       <then>
    19       <then>
       
    20             <!-- perform reallyclean to remove any exported artefacts that are going to be rebuilt -->
       
    21             <antcall target="sf-do-reallyclean" inheritAll="false" inheritRefs="true">
       
    22               <param name="sysdef.configurations.list" value="bldmelast" />
       
    23               <reference refid="sf.spec.tools.system.definition.files" torefid="system.definition.files" />
       
    24             </antcall>
       
    25 
    20             <antcall target="sf-do-compile" inheritAll="false" inheritRefs="true">
    26             <antcall target="sf-do-compile" inheritAll="false" inheritRefs="true">
    21               <param name="sysdef.configurations.list" value="bldmelast" />
    27               <param name="sysdef.configurations.list" value="bldmelast" />
    22               <reference refid="sf.spec.tools.system.definition.files" torefid="system.definition.files" />
    28               <reference refid="sf.spec.tools.system.definition.files" torefid="system.definition.files" />
    23             </antcall>
    29             </antcall>
    24 
    30 
   108         <param name="sysdef.configuration" value="${sysdef.configurations.list}"/>
   114         <param name="sysdef.configuration" value="${sysdef.configurations.list}"/>
   109         <param name="sbs.inputs.list" value="sf.export"/>
   115         <param name="sbs.inputs.list" value="sf.export"/>
   110     </antcall> 
   116     </antcall> 
   111   </target>
   117   </target>
   112 
   118 
       
   119   <!-- perform reallyclean -->
       
   120   <target name="sf-do-reallyclean">
       
   121   
       
   122     <!-- turn comma separated list into sbs friendly -c list, and _ separated list for friendly log names -->
       
   123     <propertyregex property="i.sf.spec.sbs.config.expanded"         override="true" input="${sf.spec.sbs.config}" regexp="(,)" replace=" -c " defaultValue="${sf.spec.sbs.config}" global="true"  casesensitive="false"/>
       
   124     <propertyregex property="i.sf.spec.sbs.tools.config.expanded"   override="true" input="${sf.spec.sbs.tools.config}" regexp="(,)" replace=" -c " defaultValue="${sf.spec.sbs.tools.config}" global="true"  casesensitive="false"/>
       
   125 
       
   126     <hlm:sbsinput id="sf.reallyclean">
       
   127         <sbsOptions>
       
   128             <arg line="-c ${i.sf.spec.sbs.config.expanded} -c ${i.sf.spec.sbs.tools.config.expanded}"/>
       
   129             <arg line="-k" />
       
   130             <arg line="-j ${sf.spec.sbs.numberofjobs}"/>
       
   131             <arg line="-t ${sf.spec.sbs.retry.limit}"/>
       
   132             <arg name="--logfile" value="${build.drive}/output/logs/${build.id}_${sysdef.configurations.list}_reallyclean.log" />
       
   133             <arg name="--makefile" value="${compile.log.dir}/${build.id}_${sysdef.configurations.list}_reallyclean_Makefile" />
       
   134             <arg line="REALLYCLEAN"/>
       
   135         </sbsOptions>
       
   136     </hlm:sbsinput>
       
   137     
       
   138     <!-- call helium's compile-main target using the sbsInput args defined above -->
       
   139     <echo message="INFO REALLCLEAN for all targets"/>
       
   140     <antcall target="compile-main" inheritAll="false" inheritRefs="true">
       
   141         <param name="build.system" value="${sf.spec.build.system}" />
       
   142         <param name="sysdef.configuration" value="${sysdef.configurations.list}"/>
       
   143         <param name="sbs.inputs.list" value="sf.reallyclean"/>
       
   144     </antcall> 
       
   145   </target>
       
   146 
   113   <!-- compile sbs.config list of targets either sequentially or together -->
   147   <!-- compile sbs.config list of targets either sequentially or together -->
   114   <target name="sf-do-target-compile">
   148   <target name="sf-do-target-compile">
   115   
   149   
   116     <if>
   150     <if>
   117       <istrue value="${sf.os.compile.iterate}"/>
   151       <istrue value="${sf.os.compile.iterate}"/>