sf-platform/compile.ant.xml
author srilekhas <srilekhas@symbian.org>
Tue, 05 Oct 2010 17:41:52 +0100
changeset 1283 dcbd9aa4a422
parent 1282 6a4e549c6310
child 1284 6d59ffe91cb2
permissions -rw-r--r--
Made changes to compile.ant.xml to include the tools_model.xml
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
913
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
     1
<?xml version="1.0" encoding="UTF-8"?>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
     2
<project name="SF-COMPILE" xmlns:hlm="http://www.nokia.com/helium">
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
     3
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
     4
 <math result="sf.spec.sbs.numberofjobs" operand1="${env.NUMBER_OF_PROCESSORS}" operation="*" operand2="2" datatype="int"/>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
     5
 
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
     6
  <!-- compile specified sysdef file. called from sf-compile target in sf-platform/build.xml -->
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
     7
  <target name="sf-os-compile">
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
     8
    
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
     9
    <antcall target="sf-do-compile" inheritAll="false" inheritRefs="true">
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    10
        <param name="sysdef.configurations.list" value="${sf.spec.os.sysdef.clean.configurations.list}" />
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    11
        <reference refid="sf.spec.os.system.definition.files" torefid="system.definition.files" />
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    12
    </antcall>
1283
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
    13
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
    14
      <!-- Export model to BOM, as generate-layers target is no longer called from compile-main target -->
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
    15
      <!-- Name of file in BOM should always be system_model.xml, so that it can be predictably re-used again -->
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
    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"/>
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
    17
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
    18
    <antcall target="sf-do-compile" inheritAll="false" inheritRefs="true">
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
    19
        <param name="sysdef.configurations.list" value="bldmelast" />
1282
6a4e549c6310 compile.ant.xml updated to compile tools_model.xml.
srilekhas <srilekhas@symbian.org>
parents: 1170
diff changeset
    20
        <reference refid="sf.spec.tools.system.definition.files" torefid="system.definition.files" />
6a4e549c6310 compile.ant.xml updated to compile tools_model.xml.
srilekhas <srilekhas@symbian.org>
parents: 1170
diff changeset
    21
    </antcall>
1283
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
    22
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
    23
      <!-- Export model to BOM, as generate-layers target is no longer called from compile-main target -->
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
    24
      <!-- Name of file in BOM should always be system_model.xml, so that it can be predictably re-used again -->
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
    25
      <copy file="${build.drive}/output/build/canonical_system_definition_bldmelast.xml" tofile="${build.log.dir}/BOM/tools_model.xml"/>
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
    26
913
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    27
  </target>
1283
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
    28
913
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    29
  
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    30
  <!-- compile sbs.tools.config and sbs.config. tools built only if its not being unpacked first.
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    31
       note: must be called from sf-os/s60-compile targets, as sys model input needed -->
1021
1a9b749add1a Add sf-do-compile depends on create-canonical-sysdef-file
Shabe Razvi <shaber@symbian.org>
parents: 1020
diff changeset
    32
  <target name="sf-do-compile" depends="create-canonical-sysdef-file">
914
e4c5389160b3 Fix scan_antlogs.pl execution plus fix ConE calls to use PDT_HOME env variable
Shabe Razvi <shaber@symbian.org>
parents: 913
diff changeset
    33
    <echo message="INFO Using Helium 7+ for sf-do-compile"/>
1014
5eec172ee719 1. Run exports post-qmake to ensure exports from generated bld.infs
Shabe Razvi <shaber@symbian.org>
parents: 975
diff changeset
    34
1020
bc818b5bb6d9 Simplify compilation by requiring a prebuilt qmake, which will generate bld.infs first.
Shabe Razvi <shaber@symbian.org>
parents: 1017
diff changeset
    35
    <!-- explicitly run qmake once, as iterative build will repeat the step. if qmake is not unpacked already, then this step is skipped  -->
bc818b5bb6d9 Simplify compilation by requiring a prebuilt qmake, which will generate bld.infs first.
Shabe Razvi <shaber@symbian.org>
parents: 1017
diff changeset
    36
    <antcall target="run-qmake" inheritAll="false" inheritRefs="true">
bc818b5bb6d9 Simplify compilation by requiring a prebuilt qmake, which will generate bld.infs first.
Shabe Razvi <shaber@symbian.org>
parents: 1017
diff changeset
    37
      <param name="qmake.enabled" value="true"/>
bc818b5bb6d9 Simplify compilation by requiring a prebuilt qmake, which will generate bld.infs first.
Shabe Razvi <shaber@symbian.org>
parents: 1017
diff changeset
    38
      <param name="sysdef.configuration" value="${sysdef.configurations.list}"/>
bc818b5bb6d9 Simplify compilation by requiring a prebuilt qmake, which will generate bld.infs first.
Shabe Razvi <shaber@symbian.org>
parents: 1017
diff changeset
    39
    </antcall>
bc818b5bb6d9 Simplify compilation by requiring a prebuilt qmake, which will generate bld.infs first.
Shabe Razvi <shaber@symbian.org>
parents: 1017
diff changeset
    40
1014
5eec172ee719 1. Run exports post-qmake to ensure exports from generated bld.infs
Shabe Razvi <shaber@symbian.org>
parents: 975
diff changeset
    41
    <!-- perform initial exports -->
1015
d059f7d92065 Ensure inheritRefs is set to true
Shabe Razvi <shaber@symbian.org>
parents: 1014
diff changeset
    42
    <antcall target="sf-do-full-export" inheritAll="false" inheritRefs="true">
1014
5eec172ee719 1. Run exports post-qmake to ensure exports from generated bld.infs
Shabe Razvi <shaber@symbian.org>
parents: 975
diff changeset
    43
        <param name="sf.export.stage.name" value="full_export"/>
1283
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
    44
        <param name="sysdef.configuration" value="${sysdef.configurations.list}"/>
1014
5eec172ee719 1. Run exports post-qmake to ensure exports from generated bld.infs
Shabe Razvi <shaber@symbian.org>
parents: 975
diff changeset
    45
    </antcall>	  
1048
f3a459ab2cfe Run qmake after exports too, to allow -configure options to be applied
Shabe Razvi <shaber@symbian.org>
parents: 1021
diff changeset
    46
f3a459ab2cfe Run qmake after exports too, to allow -configure options to be applied
Shabe Razvi <shaber@symbian.org>
parents: 1021
diff changeset
    47
    <!-- explicitly run qmake second time to allow -configure options to be applied -->
f3a459ab2cfe Run qmake after exports too, to allow -configure options to be applied
Shabe Razvi <shaber@symbian.org>
parents: 1021
diff changeset
    48
    <antcall target="run-qmake" inheritAll="false" inheritRefs="true">
f3a459ab2cfe Run qmake after exports too, to allow -configure options to be applied
Shabe Razvi <shaber@symbian.org>
parents: 1021
diff changeset
    49
      <param name="qmake.enabled" value="true"/>
f3a459ab2cfe Run qmake after exports too, to allow -configure options to be applied
Shabe Razvi <shaber@symbian.org>
parents: 1021
diff changeset
    50
      <param name="sysdef.configuration" value="${sysdef.configurations.list}"/>
f3a459ab2cfe Run qmake after exports too, to allow -configure options to be applied
Shabe Razvi <shaber@symbian.org>
parents: 1021
diff changeset
    51
    </antcall>
1014
5eec172ee719 1. Run exports post-qmake to ensure exports from generated bld.infs
Shabe Razvi <shaber@symbian.org>
parents: 975
diff changeset
    52
	
913
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    53
    <if> <!-- If tools baseline unpack has not been specified, or its not a "fast" build then try to build them -->
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    54
      <or>
1101
9485f8e9a74c Fix toolsbaseline build logic
Shabe Razvi <shaber@symbian.org>
parents: 1100
diff changeset
    55
        <isfalse value="${sf.spec.toolsbaseline.enable}"/>
913
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    56
        <isfalse value="${sf.os.compile.fast}"/>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    57
      </or>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    58
      <then>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    59
        <echo message="INFO Building tools, unpack is not specified"/>        
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    60
        
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    61
        <!-- sf.spec.sbs.tools.config param used. do-target-build will decide to build sequentially/together -->
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    62
        <antcall target="sf-do-target-compile" inheritAll="false" inheritRefs="true">
1283
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
    63
            <param name="i.sf.spec.sbs.config" value="${sf.spec.sbs.tools.config}" />   
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
    64
            <param name="sysdef.configuration" value="${sysdef.configurations.list}"/>        
913
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    65
        </antcall>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    66
      </then>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    67
      <else>
1101
9485f8e9a74c Fix toolsbaseline build logic
Shabe Razvi <shaber@symbian.org>
parents: 1100
diff changeset
    68
        <echo message="INFO Skipping tools build, tools were unpacked from ${sf.spec.toolsbaseline.location}"/>
913
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    69
      </else>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    70
      </if>
1020
bc818b5bb6d9 Simplify compilation by requiring a prebuilt qmake, which will generate bld.infs first.
Shabe Razvi <shaber@symbian.org>
parents: 1017
diff changeset
    71
      	  	  
913
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    72
      <!-- sf.spec.sbs.config param used. do-target-build will decide to build sequentially/together -->
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    73
      <antcall target="sf-do-target-compile" inheritAll="false" inheritRefs="true">
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    74
          <param name="i.sf.spec.sbs.config" value="${sf.spec.sbs.config}" />
1283
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
    75
          <param name="sysdef.configuration" value="${sysdef.configurations.list}"/>
913
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    76
      </antcall>
917
ebd555518364 Move copying of System Model to after compile-main
Shabe Razvi <shaber@symbian.org>
parents: 916
diff changeset
    77
  
1283
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
    78
913
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    79
  </target>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
    80
939
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 917
diff changeset
    81
  <!-- perform export only first to assist when parallel makefile parsing -->
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 917
diff changeset
    82
  <target name="sf-do-full-export">
1100
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1048
diff changeset
    83
  
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1048
diff changeset
    84
    <!-- turn comma separated list into sbs friendly -c list, and _ separated list for friendly log names -->
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1048
diff changeset
    85
    <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"/>
1101
9485f8e9a74c Fix toolsbaseline build logic
Shabe Razvi <shaber@symbian.org>
parents: 1100
diff changeset
    86
    <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"/>
1100
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1048
diff changeset
    87
939
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 917
diff changeset
    88
    <hlm:sbsinput id="sf.export">
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 917
diff changeset
    89
        <sbsOptions>
1100
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1048
diff changeset
    90
            <arg line="-c ${i.sf.spec.sbs.config.expanded} -c ${i.sf.spec.sbs.tools.config.expanded}"/>
939
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 917
diff changeset
    91
            <arg line="-k" />
940
5d6e2c958c66 Include -j option for sf-do-full-export target
Shabe Razvi <shaber@symbian.org>
parents: 939
diff changeset
    92
            <arg line="-j ${sf.spec.sbs.numberofjobs}"/>
939
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 917
diff changeset
    93
            <arg line="-t ${sf.spec.sbs.retry.limit}"/>
1283
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
    94
            <arg name="--logfile" value="${build.drive}/output/logs/${build.id}_${sysdef.configuration}_compile_${sf.export.stage.name}.log" />
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
    95
            <arg name="--makefile" value="${compile.log.dir}/${build.id}_${sysdef.configuration}_compile_${sf.export.stage.name}_Makefile" />
939
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 917
diff changeset
    96
            <arg line="--export-only"/>
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 917
diff changeset
    97
        </sbsOptions>
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 917
diff changeset
    98
    </hlm:sbsinput>
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 917
diff changeset
    99
    
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 917
diff changeset
   100
    <!-- call helium's compile-main target using the sbsInput args defined above -->
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 917
diff changeset
   101
    <echo message="INFO Full export for all targets"/>
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 917
diff changeset
   102
    <antcall target="compile-main" inheritAll="false" inheritRefs="true">
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 917
diff changeset
   103
        <param name="build.system" value="${sf.spec.build.system}" />
1283
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
   104
        <param name="sysdef.configuration" value="${sysdef.configurations.list}"/>
939
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 917
diff changeset
   105
        <param name="sbs.inputs.list" value="sf.export"/>
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 917
diff changeset
   106
    </antcall> 
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 917
diff changeset
   107
  </target>
913
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   108
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   109
  <!-- compile sbs.config list of targets either sequentially or together -->
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   110
  <target name="sf-do-target-compile">
939
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 917
diff changeset
   111
  
913
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   112
    <if>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   113
      <istrue value="${sf.os.compile.iterate}"/>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   114
      <then>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   115
        <for list="${i.sf.spec.sbs.config}" delimiter="," param="item.sbs.splitconfig">
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   116
        <sequential>
939
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 917
diff changeset
   117
        
913
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   118
            <!-- define sbs args, log name etc -->
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   119
            <hlm:sbsinput id="sf.build">
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   120
                <sbsOptions>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   121
                    <arg line="-c @{item.sbs.splitconfig}"/>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   122
                    <arg line="-k" />
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   123
                    <arg line="-j ${sf.spec.sbs.numberofjobs}"/>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   124
                    <arg line="-t ${sf.spec.sbs.retry.limit}"/>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   125
                    <arg line="${sf.spec.sbs.options}"/>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   126
                    <arg name="--filters" value="&quot;${sf.spec.sbs.filter.list}&quot;"/>
1283
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
   127
                    <arg name="--logfile" value="${build.drive}/output/logs/${build.id}_@{item.sbs.splitconfig}_${sysdef.configuration}_compile.log" />
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
   128
                    <arg name="--makefile" value="${compile.log.dir}/${build.id}_@{item.sbs.splitconfig}_${sysdef.configuration}_Makefile" />
939
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 917
diff changeset
   129
                    <arg line="--noexport"/>
913
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   130
                </sbsOptions>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   131
            </hlm:sbsinput>
939
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 917
diff changeset
   132
913
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   133
            <!-- call helium's compile-main target using the sbsInput args defined above -->
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   134
            <echo message="INFO Iterative compile building target: @{item.sbs.splitconfig}"/>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   135
            <antcall target="compile-main" inheritAll="false" inheritRefs="true">
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   136
              <param name="build.system" value="${sf.spec.build.system}" />
1283
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
   137
              <param name="sysdef.configuration" value="${sysdef.configurations.list}"/>
913
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   138
              <param name="sbs.inputs.list" value="sf.build"/>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   139
            </antcall> 
939
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 917
diff changeset
   140
                        
913
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   141
        </sequential>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   142
        </for>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   143
      </then>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   144
      <else>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   145
           <!-- turn comma separated list into sbs friendly -c list, and _ separated list for friendly log names -->
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   146
           <propertyregex property="i.sf.spec.sbs.config.expanded"         override="true" input="${i.sf.spec.sbs.config}" regexp="(,)" replace=" -c " defaultValue="${i.sf.spec.sbs.config}" global="true"  casesensitive="false"/>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   147
           <propertyregex property="i.sf.spec.sbs.config.expanded.logname" override="true" input="${i.sf.spec.sbs.config}" regexp="(,)" replace="_"    defaultValue="${i.sf.spec.sbs.config}" global="true"  casesensitive="false"/>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   148
           <echo message="INFO Target : ${i.sf.spec.sbs.config.expanded}"/>
1283
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
   149
           <echo message="INFO Logname: ${i.sf.spec.sbs.config.expanded.logname} + Config: ${sysdef.configuration}"/>
913
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   150
           
914
e4c5389160b3 Fix scan_antlogs.pl execution plus fix ConE calls to use PDT_HOME env variable
Shabe Razvi <shaber@symbian.org>
parents: 913
diff changeset
   151
           <!-- TODO: Make this use above compile-main call? -->
939
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 917
diff changeset
   152
913
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   153
           <!-- define sbs args, log name etc -->
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   154
           <hlm:sbsinput id="sf.build">
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   155
                <sbsOptions>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   156
                    <arg line="-c ${i.sf.spec.sbs.config.expanded}"/>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   157
                    <arg line="-k" />
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   158
                    <arg line="-j ${sf.spec.sbs.numberofjobs}"/>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   159
                    <arg line="-t ${sf.spec.sbs.retry.limit}"/>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   160
                    <arg line="${sf.spec.sbs.options}"/>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   161
                    <arg name="--filters" value="&quot;${sf.spec.sbs.filter.list}&quot;"/>
1283
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
   162
                    <arg name="--logfile" value="${build.drive}/output/logs/${build.id}_${i.sf.spec.sbs.config.expanded.logname}_${sysdef.configuration}_compile.log" />
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
   163
                    <arg name="--makefile" value="${compile.log.dir}/${build.id}_${i.sf.spec.sbs.config.expanded.logname}_${sysdef.configuration}_Makefile" />
939
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 917
diff changeset
   164
                    <arg line="--noexport"/>
913
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   165
                </sbsOptions>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   166
           </hlm:sbsinput>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   167
            
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   168
            <!-- call helium's compile-main target using the sbsInput args defined above -->
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   169
            <echo message="INFO Building target(s): ${i.sf.spec.sbs.config.expanded}"/>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   170
            <antcall target="compile-main" inheritAll="false" inheritRefs="true">
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   171
              <param name="build.system" value="${sf.spec.build.system}" />
1283
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
   172
              <param name="sysdef.configuration" value="${sysdef.configurations.list}"/>
913
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   173
              <param name="sbs.inputs.list" value="sf.build"/>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   174
            </antcall> 
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   175
           
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   176
      </else>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   177
    </if>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   178
  </target>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents:
diff changeset
   179
  
1283
dcbd9aa4a422 Made changes to compile.ant.xml to include the tools_model.xml
srilekhas <srilekhas@symbian.org>
parents: 1282
diff changeset
   180
</project>