sf-platform/compile-hlm-5.ant.xml
changeset 913 eeffe74cd1b2
child 1169 5fafe4f9fda8
equal deleted inserted replaced
903:4ccad00aa05d 913:eeffe74cd1b2
       
     1 <?xml version="1.0" encoding="UTF-8"?>
       
     2 <project name="SF-COMPILE-HLM-5" xmlns:hlm="http://www.nokia.com/helium">
       
     3   <!--
       
     4     == Name: SF-OS-COMPILE
       
     5     ==
       
     6     == Desc: Compile OS part of build using the spec defined in:
       
     7     ==
       
     8     ==         - job_props.ant.xml
       
     9     ==         - job_refs.ant.xml
       
    10     ==
       
    11     -->
       
    12   <target name="sf-os-compile" depends="sf-compile-options">
       
    13 
       
    14     <echo message="INFO Using Helium 5 for sf-os-compile"/>
       
    15     <!-- generate baseline dir list to allow delta creation -->
       
    16     <if><isset property="sf.os.compile.fast"/>
       
    17       <then>
       
    18         <echo message="INFO [FAST COMPILE] Skipping baseline dir list generation"/>
       
    19       </then>
       
    20       <else>
       
    21         <antcall target="sf-list-dir" inheritAll="false">
       
    22           <param name="sf.list.name" value="baseline"/>
       
    23         </antcall>
       
    24       </else>
       
    25     </if>
       
    26     
       
    27     <!-- OS clean main build -->
       
    28     <if><istrue value="${sf.spec.baseline.clean}"/>
       
    29       <then>
       
    30         <hlm:argSet id="sbs.main.clean.sbs.var">
       
    31           <hlm:arg name="config" value="${sf.spec.sbs.config}" />
       
    32           <hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}" />
       
    33           <hlm:arg name="command" value="CLEAN --check" />
       
    34         </hlm:argSet>
       
    35         <antcall target="compile-main" inheritAll="false" inheritRefs="true">
       
    36           <param name="build.system" value="${sf.spec.build.system}" />
       
    37           <param name="compile.sysdef.dtd.stub" value="${sf.spec.os.sysdef.dtd}" />
       
    38           <param name="sysdef.configurations.list" value="${sf.spec.os.sysdef.clean.configurations.list}" />
       
    39           <param name="sf.spec.sysdef.version" value ="${sf.spec.os.sysdef.version}"/>
       
    40           <reference refid="sbs.main.clean.sbs.var" torefid="sbs.var" />
       
    41           <reference refid="sbs.fullbuild.options" torefid="sbs.make.options" />
       
    42           <reference refid="sf.spec.os.system.definition.files" torefid="system.definition.files" />
       
    43         </antcall>
       
    44       </then>
       
    45     </if>
       
    46 
       
    47     <if><isset property="sf.os.compile.fast"/>
       
    48       <then>
       
    49         <echo message="INFO [FAST COMPILE] Skipping baseline vs post-clean delta generation"/>
       
    50       </then>
       
    51       <else>
       
    52         <antcall target="sf-list-dir" inheritAll="false">
       
    53           <param name="sf.list.name" value="post-clean"/>
       
    54         </antcall>
       
    55         <!-- what has been cleaned from baseline PDK by sos model -->
       
    56         <antcall target="sf-delta-dir" inheritAll="false">
       
    57           <param name="sf.list_a.name" value="baseline"/>
       
    58           <param name="sf.list_b.name" value="post-clean"/>
       
    59         </antcall>
       
    60       </else>
       
    61     </if>
       
    62     
       
    63     <if><isset property="sf.os.compile.fast"/>
       
    64       <then>
       
    65         <echo message="INFO [FAST COMPILE] Skipping Tools/Tools2 builds"/>
       
    66       </then>
       
    67       <else>
       
    68       
       
    69         <for list="${sf.spec.sbs.tools.config}" delimiter="," param="sf.spec.sbs.tools.splitconfig">
       
    70           <sequential>
       
    71             <echo message="INFO [Iterative tools compile] @{sf.spec.sbs.tools.splitconfig}"/>
       
    72             <propertyregex property="sf.building.tools2" override="true" input="@{sf.spec.sbs.tools.splitconfig}" regexp="^tools2" select="true" defaultValue="false"/>
       
    73 
       
    74             <if>
       
    75               <istrue value="${sf.building.tools2}"/>
       
    76               <then>
       
    77                 <!-- "tools2" build -->
       
    78                 <hlm:argSet id="sbs.tools2.var">
       
    79                   <hlm:arg name="config" value="@{sf.spec.sbs.tools.splitconfig}" />
       
    80                   <hlm:arg name="singlejob" value="false" />
       
    81                   <hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}" />
       
    82                   <hlm:arg name="retry-limit" value="${sf.spec.sbs.retry.limit}" />
       
    83                 </hlm:argSet>
       
    84                 <antcall target="compile-main" inheritAll="false" inheritRefs="true">
       
    85                   <param name="build.system" value="${sf.spec.build.system}" />
       
    86                   <param name="compile.sysdef.dtd.stub" value="${sf.spec.os.sysdef.dtd}" />
       
    87                   <param name="sysdef.configurations.list" value="${sf.spec.os.sysdef.clean.configurations.list}" />
       
    88                   <param name="sf.spec.sysdef.version" value ="${sf.spec.os.sysdef.version}"/>
       
    89                   <reference refid="sbs.tools2.var" torefid="sbs.var" />
       
    90                   <reference refid="sbs.toolsbuild.options" torefid="sbs.make.options" />
       
    91                   <reference refid="sf.spec.os.system.definition.files" torefid="system.definition.files" />
       
    92                 </antcall>
       
    93 
       
    94                 <antcall target="sf-list-dir" inheritAll="false">
       
    95                   <param name="sf.list.name" value="post-build-tools2"/>
       
    96                 </antcall>
       
    97               </then>
       
    98 
       
    99               <else>
       
   100                 <!-- "tools" build -->
       
   101                 <hlm:argSet id="sbs.tools.var">
       
   102                   <hlm:arg name="config" value="@{sf.spec.sbs.tools.splitconfig}" />
       
   103                   <hlm:arg name="singlejob" value="true" />
       
   104                   <hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}" />
       
   105                   <hlm:arg name="retry-limit" value="${sf.spec.sbs.retry.limit}" />
       
   106                 </hlm:argSet>
       
   107                 <antcall target="compile-main" inheritAll="false" inheritRefs="true">
       
   108                   <param name="build.system" value="${sf.spec.build.system}" />
       
   109                   <param name="compile.sysdef.dtd.stub" value="${sf.spec.os.sysdef.dtd}" />
       
   110                   <param name="sysdef.configurations.list" value="${sf.spec.os.sysdef.clean.configurations.list}" />
       
   111                   <param name="sf.spec.sysdef.version" value ="${sf.spec.os.sysdef.version}"/>
       
   112                   <reference refid="sbs.tools.var" torefid="sbs.var" />
       
   113                   <reference refid="sbs.toolsbuild.options" torefid="sbs.make.options" />
       
   114                   <reference refid="sf.spec.os.system.definition.files" torefid="system.definition.files" />
       
   115                 </antcall>
       
   116 
       
   117                 <antcall target="sf-list-dir" inheritAll="false">
       
   118                   <param name="sf.list.name" value="post-build-tools"/>
       
   119                 </antcall>
       
   120               </else>
       
   121 	    </if>
       
   122           </sequential>    
       
   123         </for>
       
   124 
       
   125       </else>
       
   126     </if>
       
   127 
       
   128     <if><istrue value="${sf.os.compile.iterate}"/>
       
   129       <then>
       
   130         <for list="${sf.spec.sbs.config}" delimiter="," param="sf.spec.sbs.splitconfig">
       
   131           <sequential>
       
   132             <echo message="INFO [Iterative compile] @{sf.spec.sbs.splitconfig}"/>
       
   133 
       
   134             <hlm:argSet id="sbs.main.iterate.sbs.var">
       
   135               <hlm:arg name="config" value="@{sf.spec.sbs.splitconfig}" />
       
   136               <hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}" />
       
   137               <hlm:arg name="retry-limit" value="${sf.spec.sbs.retry.limit}" />
       
   138             </hlm:argSet>
       
   139             <antcall target="compile-main" inheritAll="false" inheritRefs="true">
       
   140               <param name="build.system" value="${sf.spec.build.system}" />
       
   141               <param name="compile.sysdef.dtd.stub" value="${sf.spec.os.sysdef.dtd}" />
       
   142               <param name="sysdef.configurations.list" value="${sf.spec.os.sysdef.clean.configurations.list}" />
       
   143               <param name="sf.spec.sysdef.version" value ="${sf.spec.os.sysdef.version}"/>
       
   144               <reference refid="sbs.main.iterate.sbs.var" torefid="sbs.var" />
       
   145               <reference refid="sbs.fullbuild.options" torefid="sbs.make.options" />
       
   146               <reference refid="sf.spec.os.system.definition.files" torefid="system.definition.files" />
       
   147             </antcall>
       
   148           </sequential>
       
   149         </for>
       
   150       </then>
       
   151       <else>
       
   152         <!-- OS main build -->
       
   153         <hlm:argSet id="sbs.main.sbs.var">
       
   154           <hlm:arg name="config" value="${sf.spec.sbs.config}" />
       
   155           <hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}" />
       
   156           <hlm:arg name="retry-limit" value="${sf.spec.sbs.retry.limit}" />
       
   157         </hlm:argSet>
       
   158         <antcall target="compile-main" inheritAll="false" inheritRefs="true">
       
   159           <param name="build.system" value="${sf.spec.build.system}" />
       
   160           <param name="compile.sysdef.dtd.stub" value="${sf.spec.os.sysdef.dtd}" />
       
   161           <param name="sysdef.configurations.list" value="${sf.spec.os.sysdef.clean.configurations.list}" />
       
   162           <param name="sf.spec.sysdef.version" value ="${sf.spec.os.sysdef.version}"/>
       
   163           <reference refid="sbs.main.sbs.var" torefid="sbs.var" />
       
   164           <reference refid="sbs.fullbuild.options" torefid="sbs.make.options" />
       
   165           <reference refid="sf.spec.os.system.definition.files" torefid="system.definition.files" />
       
   166         </antcall>
       
   167       </else>
       
   168     </if>
       
   169 
       
   170     <if><isset property="sf.os.compile.fast"/>
       
   171       <then>
       
   172         <echo message="INFO [FAST COMPILE] Skipping delta and intersect list generation"/>
       
   173       </then>
       
   174       <else>
       
   175         <antcall target="sf-list-dir" inheritAll="false">
       
   176           <param name="sf.list.name" value="post-build-main"/>
       
   177         </antcall>
       
   178         
       
   179         <!-- what has been built in tools2+tools+main -->
       
   180         <antcall target="sf-delta-dir" inheritAll="false">
       
   181           <param name="sf.list_a.name" value="post-clean"/>
       
   182           <param name="sf.list_b.name" value="post-build-main"/>
       
   183         </antcall>
       
   184         
       
   185         <!-- what has been cleaned and rebuilt -->
       
   186         <antcall target="sf-intersect-dir" inheritAll="false">
       
   187           <param name="sf.list_a.name" value="post-clean_delta"/>       <!-- clean list -->
       
   188           <param name="sf.list_b.name" value="post-build-main_delta"/>  <!-- built list -->
       
   189         </antcall>
       
   190       </else>
       
   191     </if>
       
   192     
       
   193   </target>
       
   194 
       
   195   <!--
       
   196     == Name: SF-S60-COMPILE
       
   197     ==
       
   198     == Desc: Compile S60 part of build using the spec defined in:
       
   199     ==
       
   200     ==         - job_props.ant.xml
       
   201     ==         - job_refs.ant.xml
       
   202     ==
       
   203     -->
       
   204   <target name="sf-s60-compile" depends="sf-compile-options">
       
   205 
       
   206         <hlm:argSet id="sbs.tools.var">
       
   207           			<hlm:arg name="config" value="${sf.spec.sbs.tools.config}" />
       
   208           			<hlm:arg name="singlejob" value="true" />
       
   209           			<hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}" />
       
   210                                 <hlm:arg name="retry-limit" value="${sf.spec.sbs.retry.limit}" />
       
   211     		</hlm:argSet>
       
   212 
       
   213 			<hlm:argSet id="sbs.tools.clean.var">
       
   214           			<hlm:arg name="config" value="${sf.spec.sbs.tools.config}" />
       
   215           			<hlm:arg name="singlejob" value="true" />
       
   216           			<hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}" />
       
   217     		</hlm:argSet>
       
   218 
       
   219     		<hlm:argSet id="sbs.main.sbs.var">
       
   220           			<hlm:arg name="config" value="${sf.spec.sbs.config}" />
       
   221           			<hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}" />
       
   222                                 <hlm:arg name="retry-limit" value="${sf.spec.sbs.retry.limit}" />
       
   223     		</hlm:argSet>
       
   224 
       
   225 			<hlm:argSet id="sbs.main.clean.sbs.var">
       
   226           			<hlm:arg name="config" value="${sf.spec.sbs.config}" />
       
   227           			<hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}" />
       
   228 				<hlm:arg name="command" value="CLEAN --check" />
       
   229     		</hlm:argSet>
       
   230 			
       
   231           			<hlm:argSet id="sbs.main.what.sbs.var">
       
   232           			<hlm:arg name="config" value="${sf.spec.sbs.config}" />
       
   233           			<hlm:arg name="enable-filter" value="${sf.spec.logs.raptorfilter.enable}" />
       
   234 				<hlm:arg name="command" value="WHAT" />
       
   235     		</hlm:argSet>
       
   236 
       
   237     		<hlm:sbsMakeOptions engine="gmake" id="sbs.toolsbuild.options" />
       
   238     		<hlm:sbsMakeOptions engine="gmake" id="sbs.fullbuild.options" />
       
   239 
       
   240 		<antcall target="sf-list-dir" inheritAll="false">
       
   241 			<param name="sf.list.name" value="s60-baseline"/>
       
   242 		</antcall>
       
   243 		
       
   244 			<!-- s60 what  -->
       
   245 			<!--
       
   246     		<antcall target="compile-main" inheritAll="false" inheritRefs="true">
       
   247           			<param name="build.system" value="${sf.spec.build.system}" />
       
   248           			<param name="sysdef.configurations.list" value="${sf.spec.s60.sysdef.clean.configurations.list}" />
       
   249                     <param name="sf.spec.sysdef.version" value="${sf.spec.s60.sysdef.version}"/>
       
   250           			<reference refid="sbs.main.what.sbs.var" torefid="sbs.var" />
       
   251           			<reference refid="sbs.fullbuild.options" torefid="sbs.make.options" />
       
   252           			<reference refid="sf.spec.s60.system.definition.files" torefid="system.definition.files" />
       
   253     		</antcall>
       
   254 			-->
       
   255 			<!-- s60 clean main build -->
       
   256 			<if><istrue value="${sf.spec.baseline.clean}"/>
       
   257 				<then>
       
   258 					<antcall target="compile-main" inheritAll="false" inheritRefs="true">
       
   259 							<param name="build.system" value="${sf.spec.build.system}" />
       
   260 							<param name="sysdef.configurations.list" value="${sf.spec.s60.sysdef.clean.configurations.list}" />
       
   261 							<param name="sf.spec.sysdef.version" value="${sf.spec.s60.sysdef.version}"/>
       
   262 							<reference refid="sbs.main.clean.sbs.var" torefid="sbs.var" />
       
   263 							<reference refid="sbs.fullbuild.options" torefid="sbs.make.options" />
       
   264 							<reference refid="sf.spec.s60.system.definition.files" torefid="system.definition.files" />
       
   265 					</antcall>
       
   266 				</then>
       
   267 			</if>
       
   268 
       
   269 			<antcall target="sf-list-dir" inheritAll="false">
       
   270 				<param name="sf.list.name" value="post-s60-clean"/>
       
   271 			</antcall>
       
   272 			
       
   273 			<!-- what has been cleaned from baseline PDK by s60 model -->
       
   274 			<antcall target="sf-delta-dir" inheritAll="false">
       
   275 				<param name="sf.list_a.name" value="s60-baseline"/>
       
   276 				<param name="sf.list_b.name" value="post-s60-clean"/>
       
   277 			</antcall>		
       
   278 			
       
   279 
       
   280             <!-- s60  tools build -->
       
   281     		<antcall target="compile-main" inheritAll="false" inheritRefs="true">
       
   282           			<param name="build.system" value="${sf.spec.build.system}" />
       
   283           			<param name="sysdef.configurations.list" value="${sf.spec.s60.sysdef.clean.configurations.list}" />
       
   284 					<param name="sf.spec.sysdef.version" value ="${sf.spec.s60.sysdef.version}"/>
       
   285           			<reference refid="sbs.tools.var" torefid="sbs.var" />
       
   286           			<reference refid="sbs.toolsbuild.options" torefid="sbs.make.options" />
       
   287           			<reference refid="sf.spec.s60.system.definition.files" torefid="system.definition.files" />
       
   288     		</antcall>
       
   289 
       
   290 			<antcall target="sf-list-dir" inheritAll="false">
       
   291 				<param name="sf.list.name" value="post-s60-build-tools"/>
       
   292 			</antcall>
       
   293 
       
   294     		<!-- s60 main build -->
       
   295     		<antcall target="compile-main" inheritAll="false" inheritRefs="true">
       
   296           			<param name="build.system" value="${sf.spec.build.system}" />
       
   297           			<param name="sysdef.configurations.list" value="${sf.spec.s60.sysdef.clean.configurations.list}" />
       
   298                                 <param name="sf.spec.sysdef.version" value="${sf.spec.s60.sysdef.version}"/>
       
   299           			<reference refid="sbs.main.sbs.var" torefid="sbs.var" />
       
   300           			<reference refid="sbs.fullbuild.options" torefid="sbs.make.options" />
       
   301           			<reference refid="sf.spec.s60.system.definition.files" torefid="system.definition.files" />
       
   302     		</antcall>
       
   303 			
       
   304 			
       
   305 			<antcall target="sf-list-dir" inheritAll="false">
       
   306 				<param name="sf.list.name" value="post-s60-build-main"/>
       
   307 			</antcall>
       
   308 
       
   309 			<!-- what has been built by tools+2+main -->
       
   310 			<antcall target="sf-delta-dir" inheritAll="false">
       
   311 				<param name="sf.list_a.name" value="s60-baseline"/>
       
   312 				<param name="sf.list_b.name" value="post-s60-build-main"/>
       
   313 			</antcall>		
       
   314 			
       
   315 			<!-- what has been cleaned and rebuilt -->
       
   316 			<antcall target="sf-intersect-dir" inheritAll="false">
       
   317 				<param name="sf.list_a.name" value="post-s60-clean_delta"/>       <!-- clean list -->
       
   318 				<param name="sf.list_b.name" value="post-s60-build-main_delta"/>  <!-- built list -->
       
   319 			</antcall>
       
   320 		
       
   321 	</target>
       
   322     
       
   323 </project>
       
   324