common/build.xml
author Shabe Razvi <shaber@symbian.org>
Thu, 15 Apr 2010 16:54:31 +0100
changeset 971 35d8126bcf87
parent 950 ca764fdeb15e
child 972 608adae327af
permissions -rw-r--r--
Use qt.qmake.ant.template property for custom qmake template
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
     1
<?xml version="1.0" encoding="UTF-8"?>
73
b8d6af733d6d Add first cut of packaging solution
Shabe Razvi <shaber@symbian.org>
parents: 69
diff changeset
     2
<project name="SF-COMMON-CONFIG" xmlns:hlm="http://www.nokia.com/helium">
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
     3
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
     4
    <property environment="env"/> <!-- make environment variables available via env -->
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
     5
    
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
     6
    <dirname property="sf.common.config.dir" file="${ant.file.SF-COMMON-CONFIG}"/>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
     7
    
857
c72c6eafadc6 Added new logic to deal with drive letter allocation when builds are launched from Hudson.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
     8
    <!-- If we're told that we've been invoked by Hudson, then use the executor number to determine the drive to use -->
c72c6eafadc6 Added new logic to deal with drive letter allocation when builds are launched from Hudson.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
     9
    <if>
c72c6eafadc6 Added new logic to deal with drive letter allocation when builds are launched from Hudson.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
    10
        <isset property="sf.hudson.executor.number"/>
c72c6eafadc6 Added new logic to deal with drive letter allocation when builds are launched from Hudson.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
    11
        <then>
c72c6eafadc6 Added new logic to deal with drive letter allocation when builds are launched from Hudson.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
    12
            <!-- This property could be set differently according to the varying set-ups of build parks -->
c72c6eafadc6 Added new logic to deal with drive letter allocation when builds are launched from Hudson.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
    13
            <property name="sf.hudson.executor.drive.letter.mapping" value="zyxwvutsrqponmlk"/>
c72c6eafadc6 Added new logic to deal with drive letter allocation when builds are launched from Hudson.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
    14
            <!-- Pick the Nth letter from the string using a regex -->
c72c6eafadc6 Added new logic to deal with drive letter allocation when builds are launched from Hudson.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
    15
            <!-- (Would be nice if ant gave us a more obvious way to look up an item from an array...) -->
c72c6eafadc6 Added new logic to deal with drive letter allocation when builds are launched from Hudson.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
    16
            <!-- Default string is arranged to use z: for executor 0, y: for executor 1, etc, etc. At present, SF build machines have a maximum of 4 executors -->
c72c6eafadc6 Added new logic to deal with drive letter allocation when builds are launched from Hudson.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
    17
            <propertyregex property="sf.spec.job.drive" input="${sf.hudson.executor.drive.letter.mapping}" regexp="\w{${sf.hudson.executor.number}}(\w)" select="\1:"/>
c72c6eafadc6 Added new logic to deal with drive letter allocation when builds are launched from Hudson.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
    18
        </then>
c72c6eafadc6 Added new logic to deal with drive letter allocation when builds are launched from Hudson.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
    19
    </if>
c72c6eafadc6 Added new logic to deal with drive letter allocation when builds are launched from Hudson.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
    20
    
858
f9fc2a3f8f70 Code to automatically find a physical drive for running a build, triggered as necessary.
Simon Howkins <simonh@symbian.org>
parents: 857
diff changeset
    21
    <!-- If we've not has a physical drive specified, then we'd better be able to work one out... -->
f9fc2a3f8f70 Code to automatically find a physical drive for running a build, triggered as necessary.
Simon Howkins <simonh@symbian.org>
parents: 857
diff changeset
    22
    <if>
926
86dabb8aa2dd Relocated Helium 7 *.log.dir property settings from root build.xml to common\build.xml so that 'sf.spec.job.drive' works again.
MattD <mattd@symbian.org>
parents: 923
diff changeset
    23
        <and>
86dabb8aa2dd Relocated Helium 7 *.log.dir property settings from root build.xml to common\build.xml so that 'sf.spec.job.drive' works again.
MattD <mattd@symbian.org>
parents: 923
diff changeset
    24
        <not><isset property="sf.spec.job.rootdir"/></not>
858
f9fc2a3f8f70 Code to automatically find a physical drive for running a build, triggered as necessary.
Simon Howkins <simonh@symbian.org>
parents: 857
diff changeset
    25
        <not><isset property="sf.spec.job.root.drive"/></not>
926
86dabb8aa2dd Relocated Helium 7 *.log.dir property settings from root build.xml to common\build.xml so that 'sf.spec.job.drive' works again.
MattD <mattd@symbian.org>
parents: 923
diff changeset
    26
        </and>
858
f9fc2a3f8f70 Code to automatically find a physical drive for running a build, triggered as necessary.
Simon Howkins <simonh@symbian.org>
parents: 857
diff changeset
    27
        <then>
f9fc2a3f8f70 Code to automatically find a physical drive for running a build, triggered as necessary.
Simon Howkins <simonh@symbian.org>
parents: 857
diff changeset
    28
            <exec executable="perl" outputproperty="sf.spec.job.root.drive" logerror="true" failonerror="true">
f9fc2a3f8f70 Code to automatically find a physical drive for running a build, triggered as necessary.
Simon Howkins <simonh@symbian.org>
parents: 857
diff changeset
    29
                <arg value="${sf.common.config.dir}/tools/findPhysicalDrive.pl"/>
891
6c56420d1006 Updated capabilities of findPhysicalDrive to support imminent work on locating the hg cache.
Simon Howkins <simonh@symbian.org>
parents: 889
diff changeset
    30
                <arg value="-space"/>
858
f9fc2a3f8f70 Code to automatically find a physical drive for running a build, triggered as necessary.
Simon Howkins <simonh@symbian.org>
parents: 857
diff changeset
    31
            </exec>
f9fc2a3f8f70 Code to automatically find a physical drive for running a build, triggered as necessary.
Simon Howkins <simonh@symbian.org>
parents: 857
diff changeset
    32
        </then>
f9fc2a3f8f70 Code to automatically find a physical drive for running a build, triggered as necessary.
Simon Howkins <simonh@symbian.org>
parents: 857
diff changeset
    33
    </if>
f9fc2a3f8f70 Code to automatically find a physical drive for running a build, triggered as necessary.
Simon Howkins <simonh@symbian.org>
parents: 857
diff changeset
    34
    
360
38e924ed959d Created framework for separating postbuild related activities into a separate file.
Simon Howkins <simonh@symbian.org>
parents: 358
diff changeset
    35
    <!-- Import common properties -->
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    36
    <import file="${sf.common.config.dir}/common_props.ant.xml" />
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
    37
    
858
f9fc2a3f8f70 Code to automatically find a physical drive for running a build, triggered as necessary.
Simon Howkins <simonh@symbian.org>
parents: 857
diff changeset
    38
    <property name="sf.spec.job.rootdir" value="${sf.spec.job.root.drive}/${sf.spec.job.root.path}"/>
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
    39
    <property name="sf.spec.sourcesync.sourcespecdir" value="${sf.project.location}"/>
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    40
    
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    41
    <!-- setup Helium internal properties from their equivalent in the project spec -->
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    42
    <property name="build.name" value="${sf.spec.job.name}"/>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    43
    <property name="core.build.version" value="${sf.spec.job.codeline}"/>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    44
    <property name="build.number" value="${sf.spec.job.number}"/>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    45
    <property name="build.drive" value="${sf.spec.job.drive}"/>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    46
    <property name="email.from" value="${sf.spec.email.from}"/>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    47
    <property name="local.free.space" value="${sf.spec.job.freespace}"/>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    48
    <property name="network.free.space" value="${sf.spec.publish.network.freespace}"/>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    49
    <property name="network.drive" value="${sf.spec.publish.networkdrive}"/>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    50
    <property name="prep.root.dir" value="${sf.spec.job.rootdir}"/>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    51
    <property name="publish" value="${sf.spec.publish.enable}"/>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    52
    <property name="publish.root.dir" value="${sf.spec.publish.rootdir}"/>
197
e7c76e615b76 Initial implementation of publishing to Diamonds
Dario Sestito <darios@symbian.org>
parents: 196
diff changeset
    53
    <property name="diamonds.host" value="${sf.spec.publish.diamonds.server}"/>
e7c76e615b76 Initial implementation of publishing to Diamonds
Dario Sestito <darios@symbian.org>
parents: 196
diff changeset
    54
    <property name="diamonds.port" value="${sf.spec.publish.diamonds.port}"/>
e7c76e615b76 Initial implementation of publishing to Diamonds
Dario Sestito <darios@symbian.org>
parents: 196
diff changeset
    55
    <property name="diamonds.path" value="${sf.spec.publish.diamonds.path}"/>
594
3692c6f462b4 Reviewed build category and tags
Dario Sestito <darios@symbian.org>
parents: 473
diff changeset
    56
    <property name="build.family" value="${sf.spec.job.name}"/>
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    57
    <property name="build.system" value="${sf.spec.build.system}"/>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    58
    <property name="base_release.path" value="${sf.spec.baseline.location}"/>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    59
    <property name="base_release.getenv_options" value="${sf.spec.baseline.getenv_options}"/>
389
ea20e8722576 Default BuildEnv.xml file can now be overridden by one delivered in FBF project. Check can also be skipped by setting sf.suppress.buildenv.check property.
Shabe Razvi <shaber@symbian.org>
parents: 381
diff changeset
    60
    <property name="ccm.user.password" value="set_to_any_value_to_skip_scm_checks__for_helium_5"/>
857
c72c6eafadc6 Added new logic to deal with drive letter allocation when builds are launched from Hudson.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
    61
    <property name="ats.drive" value="${sf.spec.ats_worker.drive}"/>
926
86dabb8aa2dd Relocated Helium 7 *.log.dir property settings from root build.xml to common\build.xml so that 'sf.spec.job.drive' works again.
MattD <mattd@symbian.org>
parents: 923
diff changeset
    62
    <property name="skip.sbs.layer.generation" value="true"/> <!-- helium 7: needs to be predefined before hlm import -->
971
35d8126bcf87 Use qt.qmake.ant.template property for custom qmake template
Shabe Razvi <shaber@symbian.org>
parents: 950
diff changeset
    63
    <property name="qt.qmake.ant.template" value="${sf.common.config.dir}/templates/run-qmake.ant.xml.ftl"/> <!-- override helium default to use our own template -->
35d8126bcf87 Use qt.qmake.ant.template property for custom qmake template
Shabe Razvi <shaber@symbian.org>
parents: 950
diff changeset
    64
    
926
86dabb8aa2dd Relocated Helium 7 *.log.dir property settings from root build.xml to common\build.xml so that 'sf.spec.job.drive' works again.
MattD <mattd@symbian.org>
parents: 923
diff changeset
    65
    <!-- override helium 7 defaults to operate like helium 5.
86dabb8aa2dd Relocated Helium 7 *.log.dir property settings from root build.xml to common\build.xml so that 'sf.spec.job.drive' works again.
MattD <mattd@symbian.org>
parents: 923
diff changeset
    66
       *.log.dir props dont exist yet so need to be set now, otherwise they 
86dabb8aa2dd Relocated Helium 7 *.log.dir property settings from root build.xml to common\build.xml so that 'sf.spec.job.drive' works again.
MattD <mattd@symbian.org>
parents: 923
diff changeset
    67
       become immutable after helium.ant.xml import -->
86dabb8aa2dd Relocated Helium 7 *.log.dir property settings from root build.xml to common\build.xml so that 'sf.spec.job.drive' works again.
MattD <mattd@symbian.org>
parents: 923
diff changeset
    68
      
86dabb8aa2dd Relocated Helium 7 *.log.dir property settings from root build.xml to common\build.xml so that 'sf.spec.job.drive' works again.
MattD <mattd@symbian.org>
parents: 923
diff changeset
    69
    <property name="prep.log.dir"    value="${build.drive}/output/logs"/>
86dabb8aa2dd Relocated Helium 7 *.log.dir property settings from root build.xml to common\build.xml so that 'sf.spec.job.drive' works again.
MattD <mattd@symbian.org>
parents: 923
diff changeset
    70
    <property name="compile.log.dir" value="${build.drive}/output/logs"/>
86dabb8aa2dd Relocated Helium 7 *.log.dir property settings from root build.xml to common\build.xml so that 'sf.spec.job.drive' works again.
MattD <mattd@symbian.org>
parents: 923
diff changeset
    71
    <property name="post.log.dir"    value="${build.drive}/output/logs"/>
86dabb8aa2dd Relocated Helium 7 *.log.dir property settings from root build.xml to common\build.xml so that 'sf.spec.job.drive' works again.
MattD <mattd@symbian.org>
parents: 923
diff changeset
    72
    <property name="archive.log.dir"    value="${build.drive}/output/logs"/>
86dabb8aa2dd Relocated Helium 7 *.log.dir property settings from root build.xml to common\build.xml so that 'sf.spec.job.drive' works again.
MattD <mattd@symbian.org>
parents: 923
diff changeset
    73
    <property name="signals.log.dir"    value="${build.drive}/output/logs"/>
86dabb8aa2dd Relocated Helium 7 *.log.dir property settings from root build.xml to common\build.xml so that 'sf.spec.job.drive' works again.
MattD <mattd@symbian.org>
parents: 923
diff changeset
    74
     
368
cb0ec85c881d Set Raptor -j option to 2 for package builds
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
    75
    <if>
cb0ec85c881d Set Raptor -j option to 2 for package builds
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
    76
      <isset property="sf.spec.sbs.numberofjobs"/>
cb0ec85c881d Set Raptor -j option to 2 for package builds
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
    77
      <then>
cb0ec85c881d Set Raptor -j option to 2 for package builds
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
    78
        <property name="number.of.threads" value="${sf.spec.sbs.numberofjobs}"/>
cb0ec85c881d Set Raptor -j option to 2 for package builds
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
    79
      </then>
cb0ec85c881d Set Raptor -j option to 2 for package builds
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
    80
    </if>
263
5ee8d148ce40 Make BC testing more robust. Now requires PDT_HOME env var to be set rather than fail silently. Plus Logs zip tidy up.
Shabe Razvi <shaber@symbian.org>
parents: 262
diff changeset
    81
    
624
5264fdaaf0c6 Make sf.spec.job.codeline the publishing category
Dario Sestito <darios@symbian.org>
parents: 618
diff changeset
    82
    <property name="sf.diamonds.tags" value="_${sf.spec.job.codeline},${sf.spec.publish.diamonds.tag}"/>
594
3692c6f462b4 Reviewed build category and tags
Dario Sestito <darios@symbian.org>
parents: 473
diff changeset
    83
    
198
4b1e939c052c Added yarp to diamonds publishing
Dario Sestito <darios@symbian.org>
parents: 197
diff changeset
    84
    <!-- SF-specific Helium properties not meant to be exposed in the project spec -->
4b1e939c052c Added yarp to diamonds publishing
Dario Sestito <darios@symbian.org>
parents: 197
diff changeset
    85
    <property name="diamonds.listener.configuration.file" location="${sf.common.config.dir}/diamonds/config.xml.ftl"/>
4b1e939c052c Added yarp to diamonds publishing
Dario Sestito <darios@symbian.org>
parents: 197
diff changeset
    86
    
360
38e924ed959d Created framework for separating postbuild related activities into a separate file.
Simon Howkins <simonh@symbian.org>
parents: 358
diff changeset
    87
    <!-- Import all core HELIUM targets -->
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    88
    <import file="${helium.dir}/helium.ant.xml" />
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    89
    
360
38e924ed959d Created framework for separating postbuild related activities into a separate file.
Simon Howkins <simonh@symbian.org>
parents: 358
diff changeset
    90
    <!-- Import common references -->
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    91
    <import file="${sf.common.config.dir}/common_refs.ant.xml" />
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    92
             
360
38e924ed959d Created framework for separating postbuild related activities into a separate file.
Simon Howkins <simonh@symbian.org>
parents: 358
diff changeset
    93
    <!-- Import functionality distributed into other file(s) -->
38e924ed959d Created framework for separating postbuild related activities into a separate file.
Simon Howkins <simonh@symbian.org>
parents: 358
diff changeset
    94
    <import file="${sf.common.config.dir}/build.postbuild.xml"/>
381
ad45f298ad85 Test targets seperated from "build.postbuild.xml" and put into "build.test.xml"
royt <tathagatar@symbian.org>
parents: 377
diff changeset
    95
	
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
    96
    <!-- Import test functionality distributed into other file(s) -->
381
ad45f298ad85 Test targets seperated from "build.postbuild.xml" and put into "build.test.xml"
royt <tathagatar@symbian.org>
parents: 377
diff changeset
    97
    <import file="${sf.common.config.dir}/build.test.xml"/>
389
ea20e8722576 Default BuildEnv.xml file can now be overridden by one delivered in FBF project. Check can also be skipped by setting sf.suppress.buildenv.check property.
Shabe Razvi <shaber@symbian.org>
parents: 381
diff changeset
    98
    
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
    99
    <!-- helium 7+ compatability. needs to be defined -->
899
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
   100
    <if>
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
   101
      <not><or>
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
   102
        <equals arg1="${helium.version}" arg2="5.0"/>
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
   103
        <equals arg1="${last.major.helium.version}" arg2="5.0"/>
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
   104
      </or></not>
899
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
   105
      <then>
927
a15a7e841752 Turn off zipContentMacro failure for empty zip targets in Helium 7
Shabe Razvi <shaber@symbian.org>
parents: 926
diff changeset
   106
          <property name="sf.using.newer.than.helium5" value="true"/>
899
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
   107
          <property name="schema.new" value="true"/>
913
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents: 901
diff changeset
   108
          <property name="skip.sbs.parser.exception" value="true"/>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents: 901
diff changeset
   109
          
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents: 901
diff changeset
   110
          <!-- Never fail on sbs compile errors -->
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents: 901
diff changeset
   111
          <hlm:signalInput id="compileSignalInput" failbuild="never">
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents: 901
diff changeset
   112
            <hlm:notifierListRef refid="defaultFailNotifier" />
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents: 901
diff changeset
   113
          </hlm:signalInput>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents: 901
diff changeset
   114
          
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents: 901
diff changeset
   115
          <hlm:signalInput id="raptorErrorSignalInput" failbuild="never">
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents: 901
diff changeset
   116
            <hlm:notifierListRef refid="defaultFailNotifier" />
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents: 901
diff changeset
   117
          </hlm:signalInput>
899
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
   118
      </then>
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
   119
    </if>
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
   120
    
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
   121
    <!--
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
   122
      - END OF PROPERTY DEFINITIONS, TARGETS START HERE
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
   123
      -->
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
   124
    
874
60a32d297711 Remove check-tool-dependencies to allow > Perl 5.6.1
Shabe Razvi <shaber@symbian.org>
parents: 866
diff changeset
   125
    <target name="sf-prep" depends="sf-prep-announce,prep-drive,init-build-area,create-bom,log-build-env">
367
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   126
        <!-- Test for the disk space we would like for this build -->
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   127
	<fail>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   128
            <condition>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   129
                <not>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   130
                    <or>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   131
                        <isset property="sf.suppress.drive.space.check"/>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   132
                        <hasfreespace partition="${build.drive}" needed="${sf.drive.space.needed}"/>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   133
                    </or>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   134
                </not>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   135
            </condition>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   136
Insufficient space to run this build to completion. (Was looking for ${sf.drive.space.needed}.) To suppress this check, set the property sf.suppress.drive.space.check to any value.
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   137
        </fail>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   138
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   139
        <tempfile property="prep.dynamic.config" suffix="ant.xml" destdir="${temp.build.dir}"/>
389
ea20e8722576 Default BuildEnv.xml file can now be overridden by one delivered in FBF project. Check can also be skipped by setting sf.suppress.buildenv.check property.
Shabe Razvi <shaber@symbian.org>
parents: 381
diff changeset
   140
829
b9c988316957 Ensured build environment is always compared with expected environment, whether or not it would abort the build because of it.
Simon Howkins <simonh@symbian.org>
parents: 792
diff changeset
   141
        <runtarget target="sf-check-env"/>
861
caa0601f50c5 Added stopwatch tasks through most of the code hit during a platform build.
Simon Howkins <simonh@symbian.org>
parents: 860
diff changeset
   142
        <stopwatch name="sf-prep" action="elapsed"/>
389
ea20e8722576 Default BuildEnv.xml file can now be overridden by one delivered in FBF project. Check can also be skipped by setting sf.suppress.buildenv.check property.
Shabe Razvi <shaber@symbian.org>
parents: 381
diff changeset
   143
    </target>
861
caa0601f50c5 Added stopwatch tasks through most of the code hit during a platform build.
Simon Howkins <simonh@symbian.org>
parents: 860
diff changeset
   144
caa0601f50c5 Added stopwatch tasks through most of the code hit during a platform build.
Simon Howkins <simonh@symbian.org>
parents: 860
diff changeset
   145
    <target name="sf-prep-announce">    
caa0601f50c5 Added stopwatch tasks through most of the code hit during a platform build.
Simon Howkins <simonh@symbian.org>
parents: 860
diff changeset
   146
        <stopwatch name="sf-prep"/>
caa0601f50c5 Added stopwatch tasks through most of the code hit during a platform build.
Simon Howkins <simonh@symbian.org>
parents: 860
diff changeset
   147
        <echo>[SF-PREP]</echo>
caa0601f50c5 Added stopwatch tasks through most of the code hit during a platform build.
Simon Howkins <simonh@symbian.org>
parents: 860
diff changeset
   148
    </target>
caa0601f50c5 Added stopwatch tasks through most of the code hit during a platform build.
Simon Howkins <simonh@symbian.org>
parents: 860
diff changeset
   149
389
ea20e8722576 Default BuildEnv.xml file can now be overridden by one delivered in FBF project. Check can also be skipped by setting sf.suppress.buildenv.check property.
Shabe Razvi <shaber@symbian.org>
parents: 381
diff changeset
   150
    <target name="sf-check-env">
884
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   151
    	<!-- Dario's environment dumper -->
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   152
    	<exec executable="perl" dir="${build.drive}">
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   153
            <arg value="${sf.common.config.dir}/tools/envinfo.pl"/>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   154
        </exec>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   155
    	
389
ea20e8722576 Default BuildEnv.xml file can now be overridden by one delivered in FBF project. Check can also be skipped by setting sf.suppress.buildenv.check property.
Shabe Razvi <shaber@symbian.org>
parents: 381
diff changeset
   156
        <!-- Conditional location of BuildEnv.xml. Project always preferred to default -->
ea20e8722576 Default BuildEnv.xml file can now be overridden by one delivered in FBF project. Check can also be skipped by setting sf.suppress.buildenv.check property.
Shabe Razvi <shaber@symbian.org>
parents: 381
diff changeset
   157
        <if><available file="${sf.project.location}/BuildEnv.xml"/>        
ea20e8722576 Default BuildEnv.xml file can now be overridden by one delivered in FBF project. Check can also be skipped by setting sf.suppress.buildenv.check property.
Shabe Razvi <shaber@symbian.org>
parents: 381
diff changeset
   158
            <then>
ea20e8722576 Default BuildEnv.xml file can now be overridden by one delivered in FBF project. Check can also be skipped by setting sf.suppress.buildenv.check property.
Shabe Razvi <shaber@symbian.org>
parents: 381
diff changeset
   159
                <property name="sf.buildenv.location" value="${sf.project.location}"/>
ea20e8722576 Default BuildEnv.xml file can now be overridden by one delivered in FBF project. Check can also be skipped by setting sf.suppress.buildenv.check property.
Shabe Razvi <shaber@symbian.org>
parents: 381
diff changeset
   160
            </then>
ea20e8722576 Default BuildEnv.xml file can now be overridden by one delivered in FBF project. Check can also be skipped by setting sf.suppress.buildenv.check property.
Shabe Razvi <shaber@symbian.org>
parents: 381
diff changeset
   161
            <else>
ea20e8722576 Default BuildEnv.xml file can now be overridden by one delivered in FBF project. Check can also be skipped by setting sf.suppress.buildenv.check property.
Shabe Razvi <shaber@symbian.org>
parents: 381
diff changeset
   162
                <property name="sf.buildenv.location" value="${sf.common.config.dir}/tools"/>
ea20e8722576 Default BuildEnv.xml file can now be overridden by one delivered in FBF project. Check can also be skipped by setting sf.suppress.buildenv.check property.
Shabe Razvi <shaber@symbian.org>
parents: 381
diff changeset
   163
            </else>
ea20e8722576 Default BuildEnv.xml file can now be overridden by one delivered in FBF project. Check can also be skipped by setting sf.suppress.buildenv.check property.
Shabe Razvi <shaber@symbian.org>
parents: 381
diff changeset
   164
        </if>
ea20e8722576 Default BuildEnv.xml file can now be overridden by one delivered in FBF project. Check can also be skipped by setting sf.suppress.buildenv.check property.
Shabe Razvi <shaber@symbian.org>
parents: 381
diff changeset
   165
        
ea20e8722576 Default BuildEnv.xml file can now be overridden by one delivered in FBF project. Check can also be skipped by setting sf.suppress.buildenv.check property.
Shabe Razvi <shaber@symbian.org>
parents: 381
diff changeset
   166
        <echo message="Build Env against ${sf.buildenv.location}/BuildEnv.xml"/>
604
aa36fa431e3d Added processing of the BuildEnvironmentCheck for BRAG purposes.
Simon Howkins <simonh@symbian.org>
parents: 603
diff changeset
   167
        <exec executable="perl" dir="${sf.common.config.dir}/tools" resultproperty="sf.checkenv.exit">
358
61571c10c5d0 Added Build environment check feature
ThomasE
parents: 356
diff changeset
   168
            <arg value="CheckBuildEnv.pl"/>
389
ea20e8722576 Default BuildEnv.xml file can now be overridden by one delivered in FBF project. Check can also be skipped by setting sf.suppress.buildenv.check property.
Shabe Razvi <shaber@symbian.org>
parents: 381
diff changeset
   169
            <arg value="--xml=${sf.buildenv.location}/BuildEnv.xml"/>
358
61571c10c5d0 Added Build environment check feature
ThomasE
parents: 356
diff changeset
   170
            <arg value="--dbg=${build.log.dir}/BuildEnvironmentCheck.log"/>
367
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   171
            <arg value="--sbs='${sf.spec.sbs.config}'"/>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   172
            <arg value="--tools='${sf.spec.sbs.tools.config}'"/>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   173
            <arg value="Common"/>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   174
        </exec>
880
3d35abce1659 Commented out log-to-brag call on build environment checker as its results shouldn't be brag affecting
Dario Sestito <darios@symbian.org>
parents: 874
diff changeset
   175
        <!-- antcall target="sf-log-to-brag">
647
4d2a89833fea Created a dedicated sf-log-to-brag target so it can take care of the commonality of the task, including the creation of the directory for XML output.
Simon Howkins <simonh@symbian.org>
parents: 637
diff changeset
   176
            <param name="sf.brag.phase" value="Prebuild"/>
4d2a89833fea Created a dedicated sf-log-to-brag target so it can take care of the commonality of the task, including the creation of the directory for XML output.
Simon Howkins <simonh@symbian.org>
parents: 637
diff changeset
   177
            <param name="sf.brag.step" value="Build Environment Check"/>
4d2a89833fea Created a dedicated sf-log-to-brag target so it can take care of the commonality of the task, including the creation of the directory for XML output.
Simon Howkins <simonh@symbian.org>
parents: 637
diff changeset
   178
            <param name="sf.brag.log" value="${build.log.dir}/BuildEnvironmentCheck.log"/>
4d2a89833fea Created a dedicated sf-log-to-brag target so it can take care of the commonality of the task, including the creation of the directory for XML output.
Simon Howkins <simonh@symbian.org>
parents: 637
diff changeset
   179
            <param name="sf.brag.id" value="BuildEnvironmentCheck"/>
880
3d35abce1659 Commented out log-to-brag call on build environment checker as its results shouldn't be brag affecting
Dario Sestito <darios@symbian.org>
parents: 874
diff changeset
   180
        </antcall -->
604
aa36fa431e3d Added processing of the BuildEnvironmentCheck for BRAG purposes.
Simon Howkins <simonh@symbian.org>
parents: 603
diff changeset
   181
        <fail>
aa36fa431e3d Added processing of the BuildEnvironmentCheck for BRAG purposes.
Simon Howkins <simonh@symbian.org>
parents: 603
diff changeset
   182
            <condition>
aa36fa431e3d Added processing of the BuildEnvironmentCheck for BRAG purposes.
Simon Howkins <simonh@symbian.org>
parents: 603
diff changeset
   183
                <not>
aa36fa431e3d Added processing of the BuildEnvironmentCheck for BRAG purposes.
Simon Howkins <simonh@symbian.org>
parents: 603
diff changeset
   184
                    <or>
617
637df8247b78 sf-check-env - Fixed typo causing build to always halt if 'sf.suppress.buildenv.check' isn't set.
MattD <mattd@symbian.org>
parents: 610
diff changeset
   185
                        <equals arg1="${sf.checkenv.exit}" arg2="0"/>
604
aa36fa431e3d Added processing of the BuildEnvironmentCheck for BRAG purposes.
Simon Howkins <simonh@symbian.org>
parents: 603
diff changeset
   186
                        <isset property="sf.suppress.buildenv.check"/>
aa36fa431e3d Added processing of the BuildEnvironmentCheck for BRAG purposes.
Simon Howkins <simonh@symbian.org>
parents: 603
diff changeset
   187
                    </or>
aa36fa431e3d Added processing of the BuildEnvironmentCheck for BRAG purposes.
Simon Howkins <simonh@symbian.org>
parents: 603
diff changeset
   188
                </not>
aa36fa431e3d Added processing of the BuildEnvironmentCheck for BRAG purposes.
Simon Howkins <simonh@symbian.org>
parents: 603
diff changeset
   189
            </condition>
617
637df8247b78 sf-check-env - Fixed typo causing build to always halt if 'sf.suppress.buildenv.check' isn't set.
MattD <mattd@symbian.org>
parents: 610
diff changeset
   190
Build Environment Check failed (${sf.checkenv.exit}). To stop this failure aborting the build set property sf.suppress.buildenv.check to any value.
604
aa36fa431e3d Added processing of the BuildEnvironmentCheck for BRAG purposes.
Simon Howkins <simonh@symbian.org>
parents: 603
diff changeset
   191
        </fail>
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   192
    </target>
647
4d2a89833fea Created a dedicated sf-log-to-brag target so it can take care of the commonality of the task, including the creation of the directory for XML output.
Simon Howkins <simonh@symbian.org>
parents: 637
diff changeset
   193
366
cde2244c8ea6 First drop of script to generate build summary
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
   194
    <target name="sf-summary" depends="">
cde2244c8ea6 First drop of script to generate build summary
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
   195
        <echo>[SF-SUMMARY]</echo>
cde2244c8ea6 First drop of script to generate build summary
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
   196
        <echo message="Generating build summary"/>
cde2244c8ea6 First drop of script to generate build summary
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
   197
        <exec executable="perl" dir="${sf.common.config.dir}/tools/summary" failonerror="true">
cde2244c8ea6 First drop of script to generate build summary
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
   198
          <arg value="brag_script.pl"/>
cde2244c8ea6 First drop of script to generate build summary
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
   199
          <arg value="--buildid=${sf.spec.job.name}_${sf.spec.job.codeline}.${sf.spec.job.number}"/>
cde2244c8ea6 First drop of script to generate build summary
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
   200
          <arg value="--basedir=${sf.spec.job.rootdir}"/>
cde2244c8ea6 First drop of script to generate build summary
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
   201
        </exec>
cde2244c8ea6 First drop of script to generate build summary
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
   202
    </target>
cde2244c8ea6 First drop of script to generate build summary
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
   203
    
415
cc2965329dd1 Removed unnecessary target.
Simon Howkins <simonh@symbian.org>
parents: 414
diff changeset
   204
    <target name="sf-build-all" depends="sf-prebuild-noprep,sf-build-noprep,sf-postbuild">
cc2965329dd1 Removed unnecessary target.
Simon Howkins <simonh@symbian.org>
parents: 414
diff changeset
   205
        <echo>[SF-BUILD-ALL]</echo>
cc2965329dd1 Removed unnecessary target.
Simon Howkins <simonh@symbian.org>
parents: 414
diff changeset
   206
    </target>
cc2965329dd1 Removed unnecessary target.
Simon Howkins <simonh@symbian.org>
parents: 414
diff changeset
   207
    
159
cb50a5d37880 Added new helium target: 'sf-build-and-pack' for use if you need to babysit 'sf-prebuild'
MattD <mattd@symbian.org>
parents: 154
diff changeset
   208
    <target name="sf-build-and-pack" depends="sf-build-noprep,sf-postbuild">
cb50a5d37880 Added new helium target: 'sf-build-and-pack' for use if you need to babysit 'sf-prebuild'
MattD <mattd@symbian.org>
parents: 154
diff changeset
   209
        <echo>[SF-BUILD-AND-PACK]</echo>
cb50a5d37880 Added new helium target: 'sf-build-and-pack' for use if you need to babysit 'sf-prebuild'
MattD <mattd@symbian.org>
parents: 154
diff changeset
   210
    </target>
cb50a5d37880 Added new helium target: 'sf-build-and-pack' for use if you need to babysit 'sf-prebuild'
MattD <mattd@symbian.org>
parents: 154
diff changeset
   211
414
40b07ed8f169 Restructure sf-prebuild to ensure that sf-build-all doesnt invoke sf-prep.
Shabe Razvi <shaber@symbian.org>
parents: 397
diff changeset
   212
    <target name="sf-build" depends="sf-prebuild,sf-build-noprep,sf-postbuild">
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   213
        <echo>[SF-BUILD]</echo>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   214
    </target>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   215
    
860
fbd25e274e6b Added sf-scrub-build, for completely freeing up the resources used by a build (ie deleting it from the HD).
Simon Howkins <simonh@symbian.org>
parents: 858
diff changeset
   216
    <target name="sf-scrub-build" description="Cleans up everything left behind after a build. Danger!">
fbd25e274e6b Added sf-scrub-build, for completely freeing up the resources used by a build (ie deleting it from the HD).
Simon Howkins <simonh@symbian.org>
parents: 858
diff changeset
   217
        <if>
fbd25e274e6b Added sf-scrub-build, for completely freeing up the resources used by a build (ie deleting it from the HD).
Simon Howkins <simonh@symbian.org>
parents: 858
diff changeset
   218
            <available file="${sf.spec.job.drive}/"/>
fbd25e274e6b Added sf-scrub-build, for completely freeing up the resources used by a build (ie deleting it from the HD).
Simon Howkins <simonh@symbian.org>
parents: 858
diff changeset
   219
            <then>
fbd25e274e6b Added sf-scrub-build, for completely freeing up the resources used by a build (ie deleting it from the HD).
Simon Howkins <simonh@symbian.org>
parents: 858
diff changeset
   220
                <!-- Un-subst the drive -->
fbd25e274e6b Added sf-scrub-build, for completely freeing up the resources used by a build (ie deleting it from the HD).
Simon Howkins <simonh@symbian.org>
parents: 858
diff changeset
   221
                <hlm:unsubst drive="${sf.spec.job.drive}"/>
fbd25e274e6b Added sf-scrub-build, for completely freeing up the resources used by a build (ie deleting it from the HD).
Simon Howkins <simonh@symbian.org>
parents: 858
diff changeset
   222
            </then>
fbd25e274e6b Added sf-scrub-build, for completely freeing up the resources used by a build (ie deleting it from the HD).
Simon Howkins <simonh@symbian.org>
parents: 858
diff changeset
   223
        </if>
fbd25e274e6b Added sf-scrub-build, for completely freeing up the resources used by a build (ie deleting it from the HD).
Simon Howkins <simonh@symbian.org>
parents: 858
diff changeset
   224
        <!-- Delete build directory -->
fbd25e274e6b Added sf-scrub-build, for completely freeing up the resources used by a build (ie deleting it from the HD).
Simon Howkins <simonh@symbian.org>
parents: 858
diff changeset
   225
        <delete dir="${prep.build.dir}"/>
fbd25e274e6b Added sf-scrub-build, for completely freeing up the resources used by a build (ie deleting it from the HD).
Simon Howkins <simonh@symbian.org>
parents: 858
diff changeset
   226
    </target>
fbd25e274e6b Added sf-scrub-build, for completely freeing up the resources used by a build (ie deleting it from the HD).
Simon Howkins <simonh@symbian.org>
parents: 858
diff changeset
   227
    
916
a93d4e0357e5 Export system model to BOM directory. This used to be done by generate-layers, however this isnt called by compile-main anymore.
Shabe Razvi <shaber@symbian.org>
parents: 914
diff changeset
   228
    <!-- Note: Not used from Helium 7 onwards -->
241
c451bd0c0782 generate-layer overridden target from platform/build.xml to common/build.xml
Dario Sestito <darios@symbian.org>
parents: 240
diff changeset
   229
    <target name="generate-layers">
c451bd0c0782 generate-layer overridden target from platform/build.xml to common/build.xml
Dario Sestito <darios@symbian.org>
parents: 240
diff changeset
   230
       <echo message="canno-file:${canonical.sysdef.file}"/>
c451bd0c0782 generate-layer overridden target from platform/build.xml to common/build.xml
Dario Sestito <darios@symbian.org>
parents: 240
diff changeset
   231
       <echo message="raptor-filters:raptor_${sysdef.configuration}"/>
c451bd0c0782 generate-layer overridden target from platform/build.xml to common/build.xml
Dario Sestito <darios@symbian.org>
parents: 240
diff changeset
   232
c451bd0c0782 generate-layer overridden target from platform/build.xml to common/build.xml
Dario Sestito <darios@symbian.org>
parents: 240
diff changeset
   233
       <!-- All we want is a sysdef with the config name appended, so just copy it -->
c451bd0c0782 generate-layer overridden target from platform/build.xml to common/build.xml
Dario Sestito <darios@symbian.org>
parents: 240
diff changeset
   234
       <echo message="INFO: Skip GenXML and copy sysdef to sysdef+config name"/>
c451bd0c0782 generate-layer overridden target from platform/build.xml to common/build.xml
Dario Sestito <darios@symbian.org>
parents: 240
diff changeset
   235
       <copy file="${canonical.sysdef.file}" tofile="${build.drive}/output/build/canonical_system_definition_${sysdef.configuration}_temp.xml"/>
c451bd0c0782 generate-layer overridden target from platform/build.xml to common/build.xml
Dario Sestito <darios@symbian.org>
parents: 240
diff changeset
   236
c451bd0c0782 generate-layer overridden target from platform/build.xml to common/build.xml
Dario Sestito <darios@symbian.org>
parents: 240
diff changeset
   237
        <copy file="${build.drive}/output/build/canonical_system_definition_${sysdef.configuration}_temp.xml" tofile="${build.drive}/output/build/canonical_system_definition_${sysdef.configuration}.xml">
c451bd0c0782 generate-layer overridden target from platform/build.xml to common/build.xml
Dario Sestito <darios@symbian.org>
parents: 240
diff changeset
   238
        <filterchain>
c451bd0c0782 generate-layer overridden target from platform/build.xml to common/build.xml
Dario Sestito <darios@symbian.org>
parents: 240
diff changeset
   239
            <linecontainsregexp negate="true">
c451bd0c0782 generate-layer overridden target from platform/build.xml to common/build.xml
Dario Sestito <darios@symbian.org>
parents: 240
diff changeset
   240
                <regexp pattern="^\s*$"/>
c451bd0c0782 generate-layer overridden target from platform/build.xml to common/build.xml
Dario Sestito <darios@symbian.org>
parents: 240
diff changeset
   241
            </linecontainsregexp>
c451bd0c0782 generate-layer overridden target from platform/build.xml to common/build.xml
Dario Sestito <darios@symbian.org>
parents: 240
diff changeset
   242
        </filterchain>
c451bd0c0782 generate-layer overridden target from platform/build.xml to common/build.xml
Dario Sestito <darios@symbian.org>
parents: 240
diff changeset
   243
        </copy>
c451bd0c0782 generate-layer overridden target from platform/build.xml to common/build.xml
Dario Sestito <darios@symbian.org>
parents: 240
diff changeset
   244
        <copy file="${build.drive}/output/build/canonical_system_definition_${sysdef.configuration}.xml" todir="${build.log.dir}/BOM/"/>
c451bd0c0782 generate-layer overridden target from platform/build.xml to common/build.xml
Dario Sestito <darios@symbian.org>
parents: 240
diff changeset
   245
        <delete file="${build.drive}/output/build/canonical_system_definition_${sysdef.configuration}_temp.xml"/>
c451bd0c0782 generate-layer overridden target from platform/build.xml to common/build.xml
Dario Sestito <darios@symbian.org>
parents: 240
diff changeset
   246
    </target>
123
5b2818c52aae Add optiona BC checking to build process
Louis Henry Nayegon <louisn@symbian.org>
parents: 114
diff changeset
   247
414
40b07ed8f169 Restructure sf-prebuild to ensure that sf-build-all doesnt invoke sf-prep.
Shabe Razvi <shaber@symbian.org>
parents: 397
diff changeset
   248
    <target name="sf-prebuild" depends="sf-prep,sf-prebuild-noprep"/>
906
5239d4d0bed1 Take the UH parser from the utilities repo
Dario Sestito <darios@symbian.org>
parents: 901
diff changeset
   249
    <target name="sf-prebuild-noprep" depends="sf-prebuild-announce,sf-diamonds-connect,sf-diamonds-envinfo,sf-diamonds-tag-build,sf-get-utils,sf-getenvs,sf-syncsource,sf-diamondize-bom">
861
caa0601f50c5 Added stopwatch tasks through most of the code hit during a platform build.
Simon Howkins <simonh@symbian.org>
parents: 860
diff changeset
   250
        <stopwatch name="sf-prebuild" action="elapsed"/>
caa0601f50c5 Added stopwatch tasks through most of the code hit during a platform build.
Simon Howkins <simonh@symbian.org>
parents: 860
diff changeset
   251
    </target>
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   252
    
395
1f4867b1e0c1 Updated the mechanism for the conditional execution of sf-diamods-tag-build
Simon Howkins <simonh@symbian.org>
parents: 393
diff changeset
   253
    <target name="sf-prebuild-announce">
861
caa0601f50c5 Added stopwatch tasks through most of the code hit during a platform build.
Simon Howkins <simonh@symbian.org>
parents: 860
diff changeset
   254
        <stopwatch name="sf-prebuild"/>
395
1f4867b1e0c1 Updated the mechanism for the conditional execution of sf-diamods-tag-build
Simon Howkins <simonh@symbian.org>
parents: 393
diff changeset
   255
        <echo>[SF-PREBUILD]</echo>
1f4867b1e0c1 Updated the mechanism for the conditional execution of sf-diamods-tag-build
Simon Howkins <simonh@symbian.org>
parents: 393
diff changeset
   256
    </target>
601
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents: 596
diff changeset
   257
    
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents: 596
diff changeset
   258
    <target name="sf-diamonds-connect">
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents: 596
diff changeset
   259
      <if>
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents: 596
diff changeset
   260
        <istrue value="${sf.spec.publish.enable}"/>
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents: 596
diff changeset
   261
        <then>
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents: 596
diff changeset
   262
          <echo>[SF-DIAMONDS-CONNECT]</echo>
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents: 596
diff changeset
   263
          <runtarget target="diamonds"/>
602
Dario Sestito <darios@symbian.org>
parents: 599 601
diff changeset
   264
          <echo message="Save Diamonds build id value (${diamonds.build.id}) in a file"/>
Dario Sestito <darios@symbian.org>
parents: 599 601
diff changeset
   265
          <echo message="diamonds.build.id=${diamonds.build.id}" file="${build.log.dir}/diamonds_build_id.properties"/>
601
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents: 596
diff changeset
   266
        </then>
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents: 596
diff changeset
   267
      </if>
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents: 596
diff changeset
   268
    </target>
884
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   269
    
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   270
    <target name="sf-diamonds-envinfo">
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   271
      <if>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   272
        <istrue value="${sf.spec.publish.enable}"/>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   273
        <then>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   274
          <echo>[SF-DIAMONDS-ENVINFO]</echo>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   275
          <echo message="Send ${build.log.dir}/diamonds_envinfo.xml to Diamonds"/>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   276
          <exec executable="python">
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   277
		    <arg value="${sf.common.config.dir}/tools/brag/send_xml_to_diamonds.py"/>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   278
		    <arg value="-u"/>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   279
		    <arg value="http://${diamonds.host}${diamonds.build.id}"/>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   280
		    <arg value="-f"/>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   281
		    <arg value="${build.log.dir}/diamonds_envinfo.xml"/>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   282
		  </exec>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   283
        </then>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   284
      </if>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   285
    </target>
395
1f4867b1e0c1 Updated the mechanism for the conditional execution of sf-diamods-tag-build
Simon Howkins <simonh@symbian.org>
parents: 393
diff changeset
   286
377
598bc53daddb renamed 'sf-tag-build' to 'sf-diamonds-tag-build' to stop unneccessary confusion with source tagging...
MattD <mattd@symbian.org>
parents: 369
diff changeset
   287
    <target name="sf-diamonds-tag-build">
395
1f4867b1e0c1 Updated the mechanism for the conditional execution of sf-diamods-tag-build
Simon Howkins <simonh@symbian.org>
parents: 393
diff changeset
   288
      <if>
1f4867b1e0c1 Updated the mechanism for the conditional execution of sf-diamods-tag-build
Simon Howkins <simonh@symbian.org>
parents: 393
diff changeset
   289
        <istrue value="${sf.spec.publish.enable}"/>
1f4867b1e0c1 Updated the mechanism for the conditional execution of sf-diamods-tag-build
Simon Howkins <simonh@symbian.org>
parents: 393
diff changeset
   290
        <then>
1f4867b1e0c1 Updated the mechanism for the conditional execution of sf-diamods-tag-build
Simon Howkins <simonh@symbian.org>
parents: 393
diff changeset
   291
          <echo>[SF-DIAMONDS-TAG-BUILD]</echo>
601
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents: 596
diff changeset
   292
          <echo message="Generate ${build.drive}/output/logs/sf-diamonds-tag-build.xml with Diamonds tags for this build"/>
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents: 596
diff changeset
   293
          <exec executable="perl" dir="${sf.common.config.dir}/tools" failonerror="true">
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents: 596
diff changeset
   294
            <arg value="${sf.common.config.dir}/tools/generate_diamonds_tags_xml.pl"/>
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents: 596
diff changeset
   295
            <arg value="--tags=${sf.diamonds.tags}"/>
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents: 596
diff changeset
   296
            <arg value="--output=${build.drive}/output/logs/sf-diamonds-tag-build.xml"/>
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents: 596
diff changeset
   297
          </exec>
395
1f4867b1e0c1 Updated the mechanism for the conditional execution of sf-diamods-tag-build
Simon Howkins <simonh@symbian.org>
parents: 393
diff changeset
   298
        </then>
1f4867b1e0c1 Updated the mechanism for the conditional execution of sf-diamods-tag-build
Simon Howkins <simonh@symbian.org>
parents: 393
diff changeset
   299
      </if>
321
55c062276b22 Enable build tagging on Diamonds (default: 'test')
Dario Sestito <darios@symbian.org>
parents: 320
diff changeset
   300
    </target>
55c062276b22 Enable build tagging on Diamonds (default: 'test')
Dario Sestito <darios@symbian.org>
parents: 320
diff changeset
   301
    
396
178a6d6661b3 Moved tasks for generating config and project BOMs into their own target so they can be tested independently, and simplified them slightly also.
Simon Howkins <simonh@symbian.org>
parents: 395
diff changeset
   302
    <target name="sf-record-proj-conf-bom">
178a6d6661b3 Moved tasks for generating config and project BOMs into their own target so they can be tested independently, and simplified them slightly also.
Simon Howkins <simonh@symbian.org>
parents: 395
diff changeset
   303
        <!-- create BOM dir -->
178a6d6661b3 Moved tasks for generating config and project BOMs into their own target so they can be tested independently, and simplified them slightly also.
Simon Howkins <simonh@symbian.org>
parents: 395
diff changeset
   304
        <mkdir dir="${build.drive}/output/logs/BOM"/>
178a6d6661b3 Moved tasks for generating config and project BOMs into their own target so they can be tested independently, and simplified them slightly also.
Simon Howkins <simonh@symbian.org>
parents: 395
diff changeset
   305
        
178a6d6661b3 Moved tasks for generating config and project BOMs into their own target so they can be tested independently, and simplified them slightly also.
Simon Howkins <simonh@symbian.org>
parents: 395
diff changeset
   306
        <!-- record config and project information in BOM files -->
178a6d6661b3 Moved tasks for generating config and project BOMs into their own target so they can be tested independently, and simplified them slightly also.
Simon Howkins <simonh@symbian.org>
parents: 395
diff changeset
   307
        <exec executable="hg" dir="${sf.config.dir}" outputproperty="sf.job.bom.config.repo">
178a6d6661b3 Moved tasks for generating config and project BOMs into their own target so they can be tested independently, and simplified them slightly also.
Simon Howkins <simonh@symbian.org>
parents: 395
diff changeset
   308
            <arg value="showconfig"/>
178a6d6661b3 Moved tasks for generating config and project BOMs into their own target so they can be tested independently, and simplified them slightly also.
Simon Howkins <simonh@symbian.org>
parents: 395
diff changeset
   309
            <arg value="paths.default"/>
178a6d6661b3 Moved tasks for generating config and project BOMs into their own target so they can be tested independently, and simplified them slightly also.
Simon Howkins <simonh@symbian.org>
parents: 395
diff changeset
   310
        </exec>
473
5a04267d3fe7 Bug 365 build-info.xml - BOM for config & project in different format to sources
Simon Howkins <simonh@symbian.org>
parents: 472
diff changeset
   311
        <propertyregex input="${sf.job.bom.config.repo}" regexp="\\" replace="/" global="true" property="sf.job.bom.config.repo" override="true"/>
396
178a6d6661b3 Moved tasks for generating config and project BOMs into their own target so they can be tested independently, and simplified them slightly also.
Simon Howkins <simonh@symbian.org>
parents: 395
diff changeset
   312
        <exec executable="hg" dir="${sf.config.dir}" outputproperty="sf.job.bom.config.checksum">
178a6d6661b3 Moved tasks for generating config and project BOMs into their own target so they can be tested independently, and simplified them slightly also.
Simon Howkins <simonh@symbian.org>
parents: 395
diff changeset
   313
            <arg value="identify"/>
178a6d6661b3 Moved tasks for generating config and project BOMs into their own target so they can be tested independently, and simplified them slightly also.
Simon Howkins <simonh@symbian.org>
parents: 395
diff changeset
   314
            <arg value="-i"/>
178a6d6661b3 Moved tasks for generating config and project BOMs into their own target so they can be tested independently, and simplified them slightly also.
Simon Howkins <simonh@symbian.org>
parents: 395
diff changeset
   315
        </exec>
471
fa59cc9be549 Bug 365 build-info.xml - BOM for config & project in different format to sources
Simon Howkins <simonh@symbian.org>
parents: 467
diff changeset
   316
        <echo message="${sf.job.bom.config.repo},sf-config,${sf.job.bom.config.checksum}" file="${build.drive}/output/logs/BOM/config.csv"/>
396
178a6d6661b3 Moved tasks for generating config and project BOMs into their own target so they can be tested independently, and simplified them slightly also.
Simon Howkins <simonh@symbian.org>
parents: 395
diff changeset
   317
178a6d6661b3 Moved tasks for generating config and project BOMs into their own target so they can be tested independently, and simplified them slightly also.
Simon Howkins <simonh@symbian.org>
parents: 395
diff changeset
   318
        <exec executable="hg" dir="${sf.project.location}" outputproperty="sf.job.bom.project.repo">
178a6d6661b3 Moved tasks for generating config and project BOMs into their own target so they can be tested independently, and simplified them slightly also.
Simon Howkins <simonh@symbian.org>
parents: 395
diff changeset
   319
            <arg value="showconfig"/>
178a6d6661b3 Moved tasks for generating config and project BOMs into their own target so they can be tested independently, and simplified them slightly also.
Simon Howkins <simonh@symbian.org>
parents: 395
diff changeset
   320
            <arg value="paths.default"/>
178a6d6661b3 Moved tasks for generating config and project BOMs into their own target so they can be tested independently, and simplified them slightly also.
Simon Howkins <simonh@symbian.org>
parents: 395
diff changeset
   321
        </exec>
473
5a04267d3fe7 Bug 365 build-info.xml - BOM for config & project in different format to sources
Simon Howkins <simonh@symbian.org>
parents: 472
diff changeset
   322
        <propertyregex input="${sf.job.bom.project.repo}" regexp="\\" replace="/" global="true" property="sf.job.bom.project.repo" override="true"/>
396
178a6d6661b3 Moved tasks for generating config and project BOMs into their own target so they can be tested independently, and simplified them slightly also.
Simon Howkins <simonh@symbian.org>
parents: 395
diff changeset
   323
        <exec executable="hg" dir="${sf.project.location}" outputproperty="sf.job.bom.project.checksum">
178a6d6661b3 Moved tasks for generating config and project BOMs into their own target so they can be tested independently, and simplified them slightly also.
Simon Howkins <simonh@symbian.org>
parents: 395
diff changeset
   324
            <arg value="identify"/>
178a6d6661b3 Moved tasks for generating config and project BOMs into their own target so they can be tested independently, and simplified them slightly also.
Simon Howkins <simonh@symbian.org>
parents: 395
diff changeset
   325
            <arg value="-i"/>
178a6d6661b3 Moved tasks for generating config and project BOMs into their own target so they can be tested independently, and simplified them slightly also.
Simon Howkins <simonh@symbian.org>
parents: 395
diff changeset
   326
        </exec>
471
fa59cc9be549 Bug 365 build-info.xml - BOM for config & project in different format to sources
Simon Howkins <simonh@symbian.org>
parents: 467
diff changeset
   327
	<echo message="${sf.job.bom.project.repo},build/config,${sf.job.bom.project.checksum}" file="${build.drive}/output/logs/BOM/project.csv"/>
396
178a6d6661b3 Moved tasks for generating config and project BOMs into their own target so they can be tested independently, and simplified them slightly also.
Simon Howkins <simonh@symbian.org>
parents: 395
diff changeset
   328
    </target>
906
5239d4d0bed1 Take the UH parser from the utilities repo
Dario Sestito <darios@symbian.org>
parents: 901
diff changeset
   329
    
5239d4d0bed1 Take the UH parser from the utilities repo
Dario Sestito <darios@symbian.org>
parents: 901
diff changeset
   330
    <target name="sf-get-utils">
5239d4d0bed1 Take the UH parser from the utilities repo
Dario Sestito <darios@symbian.org>
parents: 901
diff changeset
   331
    	<stopwatch name="sf-get-utils"/>
5239d4d0bed1 Take the UH parser from the utilities repo
Dario Sestito <darios@symbian.org>
parents: 901
diff changeset
   332
			<echo message="Cloning utilities repository to ${build.drive}/utilities"/>
5239d4d0bed1 Take the UH parser from the utilities repo
Dario Sestito <darios@symbian.org>
parents: 901
diff changeset
   333
            <exec executable="hg">
5239d4d0bed1 Take the UH parser from the utilities repo
Dario Sestito <darios@symbian.org>
parents: 901
diff changeset
   334
              <arg value="clone"/>
5239d4d0bed1 Take the UH parser from the utilities repo
Dario Sestito <darios@symbian.org>
parents: 901
diff changeset
   335
              <arg value="-rdefault"/>
950
ca764fdeb15e Change URL to utilities repo
Dario Sestito <darios@symbian.org>
parents: 939
diff changeset
   336
              <arg value="http://developer.symbian.org/oss/MCL/sftools/fbf/utilities"/>
906
5239d4d0bed1 Take the UH parser from the utilities repo
Dario Sestito <darios@symbian.org>
parents: 901
diff changeset
   337
              <arg value="${build.drive}/utilities"/>
5239d4d0bed1 Take the UH parser from the utilities repo
Dario Sestito <darios@symbian.org>
parents: 901
diff changeset
   338
            </exec>
5239d4d0bed1 Take the UH parser from the utilities repo
Dario Sestito <darios@symbian.org>
parents: 901
diff changeset
   339
    	<stopwatch name="sf-get-utils" action="elapsed"/>
5239d4d0bed1 Take the UH parser from the utilities repo
Dario Sestito <darios@symbian.org>
parents: 901
diff changeset
   340
    </target>
396
178a6d6661b3 Moved tasks for generating config and project BOMs into their own target so they can be tested independently, and simplified them slightly also.
Simon Howkins <simonh@symbian.org>
parents: 395
diff changeset
   341
397
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   342
    <target name="sf-getenvs">
861
caa0601f50c5 Added stopwatch tasks through most of the code hit during a platform build.
Simon Howkins <simonh@symbian.org>
parents: 860
diff changeset
   343
        <stopwatch name="sf-getenvs"/>
721
555e9b4085ea Removed unnecessary dependencies, to untangle the dependency graph a little.
Simon Howkins <simonh@symbian.org>
parents: 698
diff changeset
   344
        <!-- create BOM dir -->
555e9b4085ea Removed unnecessary dependencies, to untangle the dependency graph a little.
Simon Howkins <simonh@symbian.org>
parents: 698
diff changeset
   345
        <mkdir dir="${build.drive}/output/logs/BOM"/>
555e9b4085ea Removed unnecessary dependencies, to untangle the dependency graph a little.
Simon Howkins <simonh@symbian.org>
parents: 698
diff changeset
   346
        
397
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   347
        <!-- tools baseline must come before epoc baseline to allow clean listing -->
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   348
        <touch file="${build.drive}/output/logs/BOM/toolsbaseline.txt"/>
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   349
        <if>
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   350
            <istrue value="${sf.spec.toolsbaseline.enable}" />
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   351
            <then>
861
caa0601f50c5 Added stopwatch tasks through most of the code hit during a platform build.
Simon Howkins <simonh@symbian.org>
parents: 860
diff changeset
   352
                <stopwatch name="sf-getenvs (tools)"/>
397
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   353
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   354
                <!-- record toolsbaseline information in BOM file -->
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   355
                <echo message="${sf.spec.toolsbaseline.location}" file="${build.drive}/output/logs/BOM/toolsbaseline.txt"/>
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   356
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   357
                <!-- wrapper around preparation-getenv but with diff params -->
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   358
                <runtarget target="sf-getenv-tools"/>
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   359
                
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   360
                <echo message="INFO Getting tools environment listing"/>
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   361
                <exec executable="perl" dir="${build.log.dir}/" failonerror="true" output="${build.log.dir}/listdir_${build.id}_toolsbaseline.log">
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   362
                    <arg value="${sf.common.config.dir}/tools/listdir.pl"/>
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   363
                    <arg value="${build.drive}/epoc32"/>
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   364
                </exec>
861
caa0601f50c5 Added stopwatch tasks through most of the code hit during a platform build.
Simon Howkins <simonh@symbian.org>
parents: 860
diff changeset
   365
                <stopwatch name="sf-getenvs (tools)" action="elapsed"/>
397
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   366
            </then>
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   367
        </if>        
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   368
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   369
        <touch file="${build.drive}/output/logs/BOM/baseline.txt"/>
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   370
        <if>
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   371
            <istrue value="${sf.spec.baseline.enable}" />
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   372
            <then>
861
caa0601f50c5 Added stopwatch tasks through most of the code hit during a platform build.
Simon Howkins <simonh@symbian.org>
parents: 860
diff changeset
   373
                <stopwatch name="sf-getenvs (baseline)"/>
397
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   374
                <!-- record baseline information in BOM file -->
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   375
                <echo message="${sf.spec.baseline.location}" file="${build.drive}/output/logs/BOM/baseline.txt"/>
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   376
                
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   377
                <!-- run internal target preparation-getenv -->
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   378
                <runtarget target="preparation-getenv"/>
861
caa0601f50c5 Added stopwatch tasks through most of the code hit during a platform build.
Simon Howkins <simonh@symbian.org>
parents: 860
diff changeset
   379
                <stopwatch name="sf-getenvs (baseline)" action="elapsed"/>
397
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   380
            </then>
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   381
        </if>
861
caa0601f50c5 Added stopwatch tasks through most of the code hit during a platform build.
Simon Howkins <simonh@symbian.org>
parents: 860
diff changeset
   382
        <stopwatch name="sf-getenvs" action="elapsed"/>
397
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   383
    </target>
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   384
142
247e27021cd0 Add <sf-getenv-tools> target to unpack tools baseline and also <sf-build-smoketestpkg> to create smoketest package to be sent to ATS3 server
Shabe Razvi <shaber@symbian.org>
parents: 141
diff changeset
   385
    <target name="sf-getenv-tools">
247e27021cd0 Add <sf-getenv-tools> target to unpack tools baseline and also <sf-build-smoketestpkg> to create smoketest package to be sent to ATS3 server
Shabe Razvi <shaber@symbian.org>
parents: 141
diff changeset
   386
        <antcall target="preparation-getenv" inheritAll="false">
247e27021cd0 Add <sf-getenv-tools> target to unpack tools baseline and also <sf-build-smoketestpkg> to create smoketest package to be sent to ATS3 server
Shabe Razvi <shaber@symbian.org>
parents: 141
diff changeset
   387
            <param name="base_release.path"           value="${sf.spec.toolsbaseline.location}"/>
247e27021cd0 Add <sf-getenv-tools> target to unpack tools baseline and also <sf-build-smoketestpkg> to create smoketest package to be sent to ATS3 server
Shabe Razvi <shaber@symbian.org>
parents: 141
diff changeset
   388
            <param name="base_release.getenv_options" value="${sf.spec.toolsbaseline.getenv_options}"/>
247e27021cd0 Add <sf-getenv-tools> target to unpack tools baseline and also <sf-build-smoketestpkg> to create smoketest package to be sent to ATS3 server
Shabe Razvi <shaber@symbian.org>
parents: 141
diff changeset
   389
        </antcall>
247e27021cd0 Add <sf-getenv-tools> target to unpack tools baseline and also <sf-build-smoketestpkg> to create smoketest package to be sent to ATS3 server
Shabe Razvi <shaber@symbian.org>
parents: 141
diff changeset
   390
    </target>
247e27021cd0 Add <sf-getenv-tools> target to unpack tools baseline and also <sf-build-smoketestpkg> to create smoketest package to be sent to ATS3 server
Shabe Razvi <shaber@symbian.org>
parents: 141
diff changeset
   391
397
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   392
    <target name="sf-syncsource">
861
caa0601f50c5 Added stopwatch tasks through most of the code hit during a platform build.
Simon Howkins <simonh@symbian.org>
parents: 860
diff changeset
   393
        <stopwatch name="sf-syncsource"/>
397
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   394
        <touch file="${build.log.dir}/BOM/sources.csv"/> 
866
9dc266797c72 Changed the way that the sf.spec.sourcesync.enable property is used to control the syncing, so that it can sync test repos even if it's not syncing any source repos.
Simon Howkins <simonh@symbian.org>
parents: 865
diff changeset
   395
        <runtarget target="sf-get-source"/>                
397
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   396
        <if>
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   397
            <istrue value="${sf.spec.sourcesync.enable}" />
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   398
            <then>
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   399
                <runtarget target="sf-package-source"/>                
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   400
                <runtarget target="sf-unpack-rnd"/>
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   401
            </then>
866
9dc266797c72 Changed the way that the sf.spec.sourcesync.enable property is used to control the syncing, so that it can sync test repos even if it's not syncing any source repos.
Simon Howkins <simonh@symbian.org>
parents: 865
diff changeset
   402
        </if>
861
caa0601f50c5 Added stopwatch tasks through most of the code hit during a platform build.
Simon Howkins <simonh@symbian.org>
parents: 860
diff changeset
   403
        <stopwatch name="sf-syncsource" action="elapsed"/>
397
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   404
    </target>
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   405
    
865
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   406
    <target name="sf-get-source" depends="sf-generate-source-spec">
889
89a04d480b55 Added profiling timer to sf-get-source target.
Simon Howkins <simonh@symbian.org>
parents: 884
diff changeset
   407
        <stopwatch name="sf-get-source"/>
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: 927
diff changeset
   408
        <!-- Get test manifest, and move resolved csv so that it doesnt conflict with source-spec.ant.xml -->
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: 927
diff changeset
   409
        <ant antfile="${temp.build.dir}/source-test-spec.ant.xml" />
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: 927
diff changeset
   410
        <move file="${build.drive}/output/logs/BOM/sources.csv" tofile="${build.drive}/output/logs/BOM/sources_test.csv"/>
865
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   411
        <ant antfile="${temp.build.dir}/source-spec.ant.xml" />
889
89a04d480b55 Added profiling timer to sf-get-source target.
Simon Howkins <simonh@symbian.org>
parents: 884
diff changeset
   412
        <stopwatch name="sf-get-source" action="elapsed"/>
865
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   413
    </target>
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   414
    
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   415
    <target name="sf-generate-source-spec">
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   416
        <!-- If we've not had a cache specified, but we should use one, then work one out... -->
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   417
        <if>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   418
            <and>    
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   419
                <istrue value="${sf.spec.sourcesync.usecache}"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   420
                <not><isset property="sf.spec.sourcesync.cachelocation"/></not>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   421
            </and>
865
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   422
            <then>
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   423
                <!-- Iterate through drives to look for an existing cache -->
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   424
                <exec executable="perl" outputproperty="sf.spec.sourcesync.all.drives" logerror="true" failonerror="true">
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   425
                    <arg value="${sf.common.config.dir}/tools/findPhysicalDrive.pl"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   426
                    <arg value="-all"/>
865
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   427
                </exec>
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   428
                <for list="${sf.spec.all.drives}" param="physical.drive">
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   429
                    <sequential>
895
5b76b79b6713 Add missing /
Simon Howkins <simonh@symbian.org>
parents: 892
diff changeset
   430
                        <available property="sf.spec.sourcesync.cachelocation" value="@{physical.drive}/${sf.spec.sourcesync.cache.path}" file="@{physical.drive}/${sf.spec.sourcesync.cache.path}" type="dir"/>
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   431
                    </sequential>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   432
                </for>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   433
                <if>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   434
                    <not><isset property="sf.spec.sourcesync.cachelocation"/></not>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   435
                    <then>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   436
                        <!-- No existing cache - locate the preferred drive for creating one -->
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   437
                        <exec executable="perl" outputproperty="sf.spec.sourcesync.largest.drive" logerror="true" failonerror="true">
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   438
                            <arg value="${sf.common.config.dir}/tools/findPhysicalDrive.pl"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   439
                            <arg value="-capacity"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   440
                        </exec>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   441
                        <property name="sf.spec.sourcesync.cachelocation" value="${sf.spec.sourcesync.largest.drive}/${sf.spec.sourcesync.cache.path}"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   442
                        <mkdir dir="${sf.spec.sourcesync.cachelocation}"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   443
                    </then>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   444
                </if>
865
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   445
            </then>
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   446
        </if>
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   447
        
865
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   448
        <!-- TODO: 1. Same file name souce-spec.ant.xml is used for all packages
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   449
        for multiple package builds, this needs to be linked with package name. -->
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   450
        <!-- TODO: 2. Change fmpp data to be a full property rather than relative path -->
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   451
        <delete file="${temp.build.dir}/source-spec.ant.xml"/>
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   452
        
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   453
        <property name="sf.test.csv.file" value="nul:"/>
866
9dc266797c72 Changed the way that the sf.spec.sourcesync.enable property is used to control the syncing, so that it can sync test repos even if it's not syncing any source repos.
Simon Howkins <simonh@symbian.org>
parents: 865
diff changeset
   454
        
9dc266797c72 Changed the way that the sf.spec.sourcesync.enable property is used to control the syncing, so that it can sync test repos even if it's not syncing any source repos.
Simon Howkins <simonh@symbian.org>
parents: 865
diff changeset
   455
        <if>
9dc266797c72 Changed the way that the sf.spec.sourcesync.enable property is used to control the syncing, so that it can sync test repos even if it's not syncing any source repos.
Simon Howkins <simonh@symbian.org>
parents: 865
diff changeset
   456
            <istrue value="${sf.spec.sourcesync.enable}" />
9dc266797c72 Changed the way that the sf.spec.sourcesync.enable property is used to control the syncing, so that it can sync test repos even if it's not syncing any source repos.
Simon Howkins <simonh@symbian.org>
parents: 865
diff changeset
   457
            <then>
9dc266797c72 Changed the way that the sf.spec.sourcesync.enable property is used to control the syncing, so that it can sync test repos even if it's not syncing any source repos.
Simon Howkins <simonh@symbian.org>
parents: 865
diff changeset
   458
                <property name="sf.source.csv.file" value="${sf.spec.sourcesync.sourcespecdir}/${sf.spec.sourcesync.sourcespecfile}"/>
9dc266797c72 Changed the way that the sf.spec.sourcesync.enable property is used to control the syncing, so that it can sync test repos even if it's not syncing any source repos.
Simon Howkins <simonh@symbian.org>
parents: 865
diff changeset
   459
            </then>
9dc266797c72 Changed the way that the sf.spec.sourcesync.enable property is used to control the syncing, so that it can sync test repos even if it's not syncing any source repos.
Simon Howkins <simonh@symbian.org>
parents: 865
diff changeset
   460
        </if>
9dc266797c72 Changed the way that the sf.spec.sourcesync.enable property is used to control the syncing, so that it can sync test repos even if it's not syncing any source repos.
Simon Howkins <simonh@symbian.org>
parents: 865
diff changeset
   461
        <property name="sf.source.csv.file" value="nul:"/>
865
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   462
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   463
        <fmpp sourceFile="${sf.common.config.dir}/templates/source-spec.ant.xml.ftl"
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   464
              outputFile="${temp.build.dir}/source-spec.ant.xml">
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   465
              <data expandProperties="yes">
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   466
                    ant: antProperties()
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   467
                    data: [
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: 927
diff changeset
   468
                        csv(${sf.source.csv.file}, {separator:','})
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: 927
diff changeset
   469
                    ]
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: 927
diff changeset
   470
              </data>
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: 927
diff changeset
   471
        </fmpp>
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: 927
diff changeset
   472
        <fmpp sourceFile="${sf.common.config.dir}/templates/source-spec.ant.xml.ftl"
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: 927
diff changeset
   473
              outputFile="${temp.build.dir}/source-test-spec.ant.xml">
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: 927
diff changeset
   474
              <data expandProperties="yes">
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: 927
diff changeset
   475
                    ant: antProperties()
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: 927
diff changeset
   476
                    data: [
865
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   477
                        csv(${sf.test.csv.file}, {separator:','})
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   478
                    ]
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   479
              </data>
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   480
        </fmpp>
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   481
    </target>
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   482
    
84
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   483
    <!-- generate dir list using passed location and name 
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   484
    if a baseline list is available then generate deltas too -->
62
2771e394c9bd Catchup from main repo
DarioS@UK-DarioS.symbian.int
parents: 61 40
diff changeset
   485
84
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   486
    <target name="sf-list-dir">
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   487
        <property name="sf.currentlist.name"   value="${sf.list.name}"/> 
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   488
        <property name="sf.dir.location" value="${build.drive}/epoc32"/> 
351
a4c764727769 sf-list-dir - added new tool 'listdir.py' which can exclude a directory and changed the behaviour of sf-list-dir to stop scanning epoc32/build to speed things up.
MattD <mattd@symbian.org>
parents: 350
diff changeset
   489
        <property name="sf.dir.exclude" value="${build.drive}/epoc32/build"/> 
84
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   490
    
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   491
        <if>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   492
            <istrue value="${sf.spec.dirlist.enable}"/>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   493
            <then>
351
a4c764727769 sf-list-dir - added new tool 'listdir.py' which can exclude a directory and changed the behaviour of sf-list-dir to stop scanning epoc32/build to speed things up.
MattD <mattd@symbian.org>
parents: 350
diff changeset
   494
                <echo message="Dirlist name: ${sf.currentlist.name} requested for ${sf.dir.location} excluding ${sf.dir.exclude}"/>
a4c764727769 sf-list-dir - added new tool 'listdir.py' which can exclude a directory and changed the behaviour of sf-list-dir to stop scanning epoc32/build to speed things up.
MattD <mattd@symbian.org>
parents: 350
diff changeset
   495
                <exec executable="python" dir="${build.log.dir}/" failonerror="true" output="${build.log.dir}/listdir_${build.id}_${sf.currentlist.name}.log">
a4c764727769 sf-list-dir - added new tool 'listdir.py' which can exclude a directory and changed the behaviour of sf-list-dir to stop scanning epoc32/build to speed things up.
MattD <mattd@symbian.org>
parents: 350
diff changeset
   496
                    <arg value="${sf.common.config.dir}/tools/listdir.py"/>
84
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   497
                    <arg value="${sf.dir.location}"/>
351
a4c764727769 sf-list-dir - added new tool 'listdir.py' which can exclude a directory and changed the behaviour of sf-list-dir to stop scanning epoc32/build to speed things up.
MattD <mattd@symbian.org>
parents: 350
diff changeset
   498
                    <arg value="${sf.dir.exclude}"/>
84
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   499
                </exec>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   500
            </then>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   501
        </if>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   502
    </target>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   503
    
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   504
    <target name="sf-delta-dir">
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   505
        <property name="sf.currentlist_a.name"   value="${sf.list_a.name}"/> 
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   506
        <property name="sf.currentlist_b.name"   value="${sf.list_b.name}"/>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   507
        <property name="sf.dir.location" value="${build.drive}/epoc32"/> 
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   508
        
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   509
        <if>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   510
            <istrue value="${sf.spec.dirdelta.enable}"/>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   511
            <then>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   512
                <echo message="Delta requested for ${sf.currentlist_a.name} vs ${sf.currentlist_b.name} "/>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   513
                <exec executable="perl" dir="${build.log.dir}/" failonerror="true" output="${build.log.dir}/listdir_${build.id}_${sf.currentlist_b.name}_delta.log">
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   514
                    <arg value="${sf.common.config.dir}/tools/difflist.pl"/>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   515
                    <arg value="${build.log.dir}/listdir_${build.id}_${sf.currentlist_a.name}.log"/>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   516
                    <arg value="${build.log.dir}/listdir_${build.id}_${sf.currentlist_b.name}.log"/>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   517
                </exec>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   518
            </then>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   519
        </if>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   520
    </target>
62
2771e394c9bd Catchup from main repo
DarioS@UK-DarioS.symbian.int
parents: 61 40
diff changeset
   521
  
65
0099c046d4f3 Add intersection target to FBF
ShabeR@UK-SHABER
parents: 63
diff changeset
   522
    <target name="sf-intersect-dir">
84
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   523
        <property name="sf.currentlist_a.name"   value="${sf.list_a.name}"/> 
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   524
        <property name="sf.currentlist_b.name"   value="${sf.list_b.name}"/>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   525
        <property name="sf.dir.location" value="${build.drive}/epoc32"/> 
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   526
    
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   527
        <if>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   528
            <istrue value="${sf.spec.dirdelta.enable}"/>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   529
            <then>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   530
                <echo message="Inersection requested for ${sf.currentlist_a.name} vs ${sf.currentlist_b.name} "/>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   531
                <exec executable="perl" dir="${build.log.dir}/" failonerror="true" output="${build.log.dir}/listdir_${build.id}_${sf.currentlist_b.name}_intersect.log">
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   532
                    <arg value="${sf.common.config.dir}/tools/difflist.pl"/>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   533
                    <arg value="${build.log.dir}/listdir_${build.id}_${sf.currentlist_a.name}.log"/>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   534
                    <arg value="${build.log.dir}/listdir_${build.id}_${sf.currentlist_b.name}.log"/>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   535
                    <arg value="-I"/> <!-- run difflist in intersect mode -->
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   536
                </exec>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   537
            </then>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   538
        </if>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   539
    </target>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   540
721
555e9b4085ea Removed unnecessary dependencies, to untangle the dependency graph a little.
Simon Howkins <simonh@symbian.org>
parents: 698
diff changeset
   541
    <!-- This target is overridden in platform builds, but used directly in package builds -->
899
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
   542
    <target name="sf-build-noprep" depends="sf-truclean,sf-model-from-project,sf-compile,sf-postbuild">
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   543
        <echo>[SF-BUILD-NOPREP]</echo>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   544
    </target>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   545
    
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   546
    <target name="create-canonical-sysdef-file">
347
94b4a136d800 Simplified create-canonical-sysdef-file so that it's just a simple copy.
Simon Howkins <simonh@symbian.org>
parents: 346
diff changeset
   547
      <copy file="${build.drive}/${sf.spec.systemdefinition.location}" tofile="${canonical.sysdef.file}" failonerror="true" verbose="true"/>
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   548
    </target>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   549
    
240
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   550
  <target name="sf-truclean">
861
caa0601f50c5 Added stopwatch tasks through most of the code hit during a platform build.
Simon Howkins <simonh@symbian.org>
parents: 860
diff changeset
   551
    <stopwatch name="sf-truclean"/>
240
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   552
    <if>
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   553
      <istrue value="${sf.spec.build.clean.enable}"/>
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   554
      <then>
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   555
        <echo message="Executing truclean step."/>
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   556
        <fmpp sourceFile="${sf.common.config.dir}/templates/truclean.ant.xml.ftl"
681
eeab5a04dc46 Updated throughout to use the "temp_build_files" dir on the build drive rather than the "generated" directory in the fbf source tree.
Simon Howkins <simonh@symbian.org>
parents: 679
diff changeset
   557
            outputFile="${temp.build.dir}/truclean.ant.xml">
240
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   558
          <data expandProperties="yes">
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   559
              ant: antProperties()
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   560
              data: csv(${sf.spec.sourcesync.sourcespecdir}/${sf.spec.sourcesync.sourcespecfile}, {separator:','})
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   561
          </data>
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   562
        </fmpp>
681
eeab5a04dc46 Updated throughout to use the "temp_build_files" dir on the build drive rather than the "generated" directory in the fbf source tree.
Simon Howkins <simonh@symbian.org>
parents: 679
diff changeset
   563
        <ant antfile="${temp.build.dir}/truclean.ant.xml"/>
240
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   564
      </then>
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   565
      <else>
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   566
        <echo message="Skipping truclean step."/>
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   567
      </else>
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   568
    </if>
861
caa0601f50c5 Added stopwatch tasks through most of the code hit during a platform build.
Simon Howkins <simonh@symbian.org>
parents: 860
diff changeset
   569
    <stopwatch name="sf-truclean" action="elapsed"/>
240
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   570
  </target>
325
779cc88ed845 Allow subprojects within a project repo and model file relative to the subproject dir
Dario Sestito <darios@symbian.org>
parents: 321
diff changeset
   571
  
779cc88ed845 Allow subprojects within a project repo and model file relative to the subproject dir
Dario Sestito <darios@symbian.org>
parents: 321
diff changeset
   572
  <target name="sf-model-from-project">
861
caa0601f50c5 Added stopwatch tasks through most of the code hit during a platform build.
Simon Howkins <simonh@symbian.org>
parents: 860
diff changeset
   573
    <stopwatch name="sf-model-from-project"/>
325
779cc88ed845 Allow subprojects within a project repo and model file relative to the subproject dir
Dario Sestito <darios@symbian.org>
parents: 321
diff changeset
   574
    <if>
779cc88ed845 Allow subprojects within a project repo and model file relative to the subproject dir
Dario Sestito <darios@symbian.org>
parents: 321
diff changeset
   575
      <isset property="sf.spec.systemdefinition.source"/>
779cc88ed845 Allow subprojects within a project repo and model file relative to the subproject dir
Dario Sestito <darios@symbian.org>
parents: 321
diff changeset
   576
      <then>
779cc88ed845 Allow subprojects within a project repo and model file relative to the subproject dir
Dario Sestito <darios@symbian.org>
parents: 321
diff changeset
   577
        <echo message="Using ${sf.spec.systemdefinition.source} as model file"/>
779cc88ed845 Allow subprojects within a project repo and model file relative to the subproject dir
Dario Sestito <darios@symbian.org>
parents: 321
diff changeset
   578
        <echo message="Copying to ${build.drive}/definition.xml"/>
345
26128bd2e266 Un-hardwired an interim location for the system definition.
Simon Howkins <simonh@symbian.org>
parents: 343
diff changeset
   579
        <copy file="${sf.project.location}/${sf.spec.systemdefinition.source}" tofile="${build.drive}${sf.spec.systemdefinition.location}"/>
325
779cc88ed845 Allow subprojects within a project repo and model file relative to the subproject dir
Dario Sestito <darios@symbian.org>
parents: 321
diff changeset
   580
      </then>
330
f2e8947e085a Added invokation to build.xml and adjusted path to backup locations to match my development environment.
Simon Howkins <simonh@symbian.org>
parents: 326
diff changeset
   581
      <else>
f2e8947e085a Added invokation to build.xml and adjusted path to backup locations to match my development environment.
Simon Howkins <simonh@symbian.org>
parents: 326
diff changeset
   582
        <!-- Collate the system definition from the packages listed in sources.csv -->
343
9b3d3d909bde Added some diagnostic output when the system definition is built from the sources.csv file.
Simon Howkins <simonh@symbian.org>
parents: 336
diff changeset
   583
        <echo message="Building system model from ${sf.spec.sourcesync.sourcespecdir}/${sf.spec.sourcesync.sourcespecfile}"/>
332
72ceabdbb597 Should fail the build if we can't generate the system model.
Simon Howkins <simonh@symbian.org>
parents: 331
diff changeset
   584
        <exec executable="perl" dir="${build.drive}/" output="${build.drive}${sf.spec.systemdefinition.location}" logError="true" failonerror="true">
330
f2e8947e085a Added invokation to build.xml and adjusted path to backup locations to match my development environment.
Simon Howkins <simonh@symbian.org>
parents: 326
diff changeset
   585
          <arg value="${sf.common.config.dir}/tools/csvToSysDef.pl"/>
f2e8947e085a Added invokation to build.xml and adjusted path to backup locations to match my development environment.
Simon Howkins <simonh@symbian.org>
parents: 326
diff changeset
   586
          <arg value="${sf.spec.sourcesync.sourcespecdir}/${sf.spec.sourcesync.sourcespecfile}"/>
658
dd5f923b7f91 Make csvToSysDef.pl work with codelines different than 3k
Dario Sestito <darios@symbian.org>
parents: 648
diff changeset
   587
          <arg value="${sf.config.dir}/../build/config/${sf.spec.job.codeline}"/>
330
f2e8947e085a Added invokation to build.xml and adjusted path to backup locations to match my development environment.
Simon Howkins <simonh@symbian.org>
parents: 326
diff changeset
   588
        </exec>
f2e8947e085a Added invokation to build.xml and adjusted path to backup locations to match my development environment.
Simon Howkins <simonh@symbian.org>
parents: 326
diff changeset
   589
      </else>
325
779cc88ed845 Allow subprojects within a project repo and model file relative to the subproject dir
Dario Sestito <darios@symbian.org>
parents: 321
diff changeset
   590
    </if>
861
caa0601f50c5 Added stopwatch tasks through most of the code hit during a platform build.
Simon Howkins <simonh@symbian.org>
parents: 860
diff changeset
   591
    <stopwatch name="sf-model-from-project" action="elapsed"/>
325
779cc88ed845 Allow subprojects within a project repo and model file relative to the subproject dir
Dario Sestito <darios@symbian.org>
parents: 321
diff changeset
   592
  </target>
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   593
    
471
fa59cc9be549 Bug 365 build-info.xml - BOM for config & project in different format to sources
Simon Howkins <simonh@symbian.org>
parents: 467
diff changeset
   594
    <target name="sf-diamondize-bom" depends="sf-record-proj-conf-bom">
472
296ea0545429 Removed conditional around the creation of the build-info.xml - no reason to not do this just because it won't be published later.
Simon Howkins <simonh@symbian.org>
parents: 471
diff changeset
   595
        <fmpp sourceFile="${sf.common.config.dir}/templates/build-info.xml.ftl"
296ea0545429 Removed conditional around the creation of the build-info.xml - no reason to not do this just because it won't be published later.
Simon Howkins <simonh@symbian.org>
parents: 471
diff changeset
   596
              outputFile="${build.drive}/output/logs/sf-diamondize-bom.xml">
296ea0545429 Removed conditional around the creation of the build-info.xml - no reason to not do this just because it won't be published later.
Simon Howkins <simonh@symbian.org>
parents: 471
diff changeset
   597
            <data expandProperties="yes">
296ea0545429 Removed conditional around the creation of the build-info.xml - no reason to not do this just because it won't be published later.
Simon Howkins <simonh@symbian.org>
parents: 471
diff changeset
   598
                ant: antProperties()
296ea0545429 Removed conditional around the creation of the build-info.xml - no reason to not do this just because it won't be published later.
Simon Howkins <simonh@symbian.org>
parents: 471
diff changeset
   599
                config: csv(${build.drive}/output/logs/BOM/config.csv,{separator:',',headers:[loc,dst,rev]})
296ea0545429 Removed conditional around the creation of the build-info.xml - no reason to not do this just because it won't be published later.
Simon Howkins <simonh@symbian.org>
parents: 471
diff changeset
   600
                project: csv(${build.drive}/output/logs/BOM/project.csv,{separator:',',headers:[loc,dst,rev]})
296ea0545429 Removed conditional around the creation of the build-info.xml - no reason to not do this just because it won't be published later.
Simon Howkins <simonh@symbian.org>
parents: 471
diff changeset
   601
                baseline: slicedText(${build.drive}/output/logs/BOM/baseline.txt,{trim})
296ea0545429 Removed conditional around the creation of the build-info.xml - no reason to not do this just because it won't be published later.
Simon Howkins <simonh@symbian.org>
parents: 471
diff changeset
   602
                toolsbaseline: slicedText(${build.drive}/output/logs/BOM/toolsbaseline.txt,{trim})
296ea0545429 Removed conditional around the creation of the build-info.xml - no reason to not do this just because it won't be published later.
Simon Howkins <simonh@symbian.org>
parents: 471
diff changeset
   603
                sources: csv(${build.drive}/output/logs/BOM/sources.csv,{separator:',',headers:[loc,dst,type,rev,sysdef]})              
296ea0545429 Removed conditional around the creation of the build-info.xml - no reason to not do this just because it won't be published later.
Simon Howkins <simonh@symbian.org>
parents: 471
diff changeset
   604
            </data>
296ea0545429 Removed conditional around the creation of the build-info.xml - no reason to not do this just because it won't be published later.
Simon Howkins <simonh@symbian.org>
parents: 471
diff changeset
   605
        </fmpp>
296ea0545429 Removed conditional around the creation of the build-info.xml - no reason to not do this just because it won't be published later.
Simon Howkins <simonh@symbian.org>
parents: 471
diff changeset
   606
        <!-- Make a copy in BOM dir -->
296ea0545429 Removed conditional around the creation of the build-info.xml - no reason to not do this just because it won't be published later.
Simon Howkins <simonh@symbian.org>
parents: 471
diff changeset
   607
        <copy file="${build.drive}/output/logs/sf-diamondize-bom.xml" tofile="${build.log.dir}/BOM/build-info.xml"/>
61
6066a7d39270 Diamondize BOM info
DarioS@UK-DarioS.symbian.int
parents: 60
diff changeset
   608
    </target>
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   609
84
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   610
    <target name="sf-preprocess-package-config">
614
ebd02353c4d9 Added work-around for the QEMU package whilst it's still in an interim location, but we want to release it in a PDK.
Simon Howkins <simonh@symbian.org>
parents: 610
diff changeset
   611
	<echo message="${sf.spec.sourcesync.sourcespecdir}/${sf.spec.sourcesync.sourcespecfile}"/>
76
a115d49b621f Include epl/sfl category in zipfile name
Shabe Razvi <shaber@symbian.org>
parents: 75
diff changeset
   612
        <exec executable="perl" dir="${build.drive}/" failonerror="false" output="${build.log.dir}/zipconfig.log">
84
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   613
            <arg value="${sf.common.config.dir}/tools/populateziptemplate.pl"/>
166
32693583e769 Added Hg local cache management feature.
ThomasE
parents: 161
diff changeset
   614
            <arg value="${sf.spec.sourcesync.sourcespecdir}/${sf.spec.sourcesync.sourcespecfile}"/>
84
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   615
            <arg value="${sf.common.config.dir}/templates/zip.cfg.xml.ftl.template"/>
681
eeab5a04dc46 Updated throughout to use the "temp_build_files" dir on the build drive rather than the "generated" directory in the fbf source tree.
Simon Howkins <simonh@symbian.org>
parents: 679
diff changeset
   616
            <arg value="${temp.build.dir}/zip.cfg.xml.ftl"/>
247
cfde8b1784f7 Simplified the locations of some generated files, so they are created where they need to be rather than created on one place and moved to another.
Simon Howkins <simonh@symbian.org>
parents: 246
diff changeset
   617
            <arg value="${build.log.dir}/rnd_excludefile.txt"/>
73
b8d6af733d6d Add first cut of packaging solution
Shabe Razvi <shaber@symbian.org>
parents: 69
diff changeset
   618
        </exec>
647
4d2a89833fea Created a dedicated sf-log-to-brag target so it can take care of the commonality of the task, including the creation of the directory for XML output.
Simon Howkins <simonh@symbian.org>
parents: 637
diff changeset
   619
        <antcall target="sf-log-to-brag">
4d2a89833fea Created a dedicated sf-log-to-brag target so it can take care of the commonality of the task, including the creation of the directory for XML output.
Simon Howkins <simonh@symbian.org>
parents: 637
diff changeset
   620
            <param name="sf.brag.phase" value="Prebuild"/>
4d2a89833fea Created a dedicated sf-log-to-brag target so it can take care of the commonality of the task, including the creation of the directory for XML output.
Simon Howkins <simonh@symbian.org>
parents: 637
diff changeset
   621
            <param name="sf.brag.step" value="Preprocess package config"/>
4d2a89833fea Created a dedicated sf-log-to-brag target so it can take care of the commonality of the task, including the creation of the directory for XML output.
Simon Howkins <simonh@symbian.org>
parents: 637
diff changeset
   622
            <param name="sf.brag.log" value="${build.log.dir}/zipconfig.log"/>
4d2a89833fea Created a dedicated sf-log-to-brag target so it can take care of the commonality of the task, including the creation of the directory for XML output.
Simon Howkins <simonh@symbian.org>
parents: 637
diff changeset
   623
            <param name="sf.brag.id" value="PreprocessPackageConfig"/>
4d2a89833fea Created a dedicated sf-log-to-brag target so it can take care of the commonality of the task, including the creation of the directory for XML output.
Simon Howkins <simonh@symbian.org>
parents: 637
diff changeset
   624
        </antcall>
84
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   625
    </target>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   626
    
679
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   627
    <target name="sf-zip-content">
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   628
        <!-- If it's the file we use for everything, and it's not up to date... -->
677
dd6b7decdca2 Major packaging change to work around parallel calls - stopped zipping targets from having direct dependency on 'sf-preprocess-package-config', and instead have 'sf-zip-content' call 'sf-preprocess-package-config' if needed. Changed 'sf-prep' to call a target that wipes out the 'generated' directory. It's not perfect but it gets us going again.
MattD <mattd@symbian.org>
parents: 658
diff changeset
   629
        <if>
dd6b7decdca2 Major packaging change to work around parallel calls - stopped zipping targets from having direct dependency on 'sf-preprocess-package-config', and instead have 'sf-zip-content' call 'sf-preprocess-package-config' if needed. Changed 'sf-prep' to call a target that wipes out the 'generated' directory. It's not perfect but it gets us going again.
MattD <mattd@symbian.org>
parents: 658
diff changeset
   630
          <and>
681
eeab5a04dc46 Updated throughout to use the "temp_build_files" dir on the build drive rather than the "generated" directory in the fbf source tree.
Simon Howkins <simonh@symbian.org>
parents: 679
diff changeset
   631
            <equals arg1="${zip.config.file}" arg2="${temp.build.dir}/zip.cfg.xml.ftl"/>
679
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   632
            <not>
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   633
              <and>
681
eeab5a04dc46 Updated throughout to use the "temp_build_files" dir on the build drive rather than the "generated" directory in the fbf source tree.
Simon Howkins <simonh@symbian.org>
parents: 679
diff changeset
   634
                <uptodate targetfile="${temp.build.dir}/zip.cfg.xml.ftl">
679
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   635
                  <srcfiles dir="${sf.common.config.dir}">
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   636
                    <include name="tools/populateziptemplate.pl"/>
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   637
                    <include name="templates/zip.cfg.xml.ftl.template"/>
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   638
                  </srcfiles>
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   639
                </uptodate>
681
eeab5a04dc46 Updated throughout to use the "temp_build_files" dir on the build drive rather than the "generated" directory in the fbf source tree.
Simon Howkins <simonh@symbian.org>
parents: 679
diff changeset
   640
                <uptodate targetfile="${temp.build.dir}/zip.cfg.xml.ftl">
679
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   641
                  <srcfiles dir="${sf.spec.sourcesync.sourcespecdir}">
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   642
                    <include name="${sf.spec.sourcesync.sourcespecfile}"/>
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   643
                  </srcfiles>
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   644
                </uptodate>
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   645
              </and>
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   646
            </not>
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   647
          </and>
677
dd6b7decdca2 Major packaging change to work around parallel calls - stopped zipping targets from having direct dependency on 'sf-preprocess-package-config', and instead have 'sf-zip-content' call 'sf-preprocess-package-config' if needed. Changed 'sf-prep' to call a target that wipes out the 'generated' directory. It's not perfect but it gets us going again.
MattD <mattd@symbian.org>
parents: 658
diff changeset
   648
          <then>
679
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   649
            <!-- (Re)build the packaging config file -->      
677
dd6b7decdca2 Major packaging change to work around parallel calls - stopped zipping targets from having direct dependency on 'sf-preprocess-package-config', and instead have 'sf-zip-content' call 'sf-preprocess-package-config' if needed. Changed 'sf-prep' to call a target that wipes out the 'generated' directory. It's not perfect but it gets us going again.
MattD <mattd@symbian.org>
parents: 658
diff changeset
   650
            <runtarget target="sf-preprocess-package-config"/>
dd6b7decdca2 Major packaging change to work around parallel calls - stopped zipping targets from having direct dependency on 'sf-preprocess-package-config', and instead have 'sf-zip-content' call 'sf-preprocess-package-config' if needed. Changed 'sf-prep' to call a target that wipes out the 'generated' directory. It's not perfect but it gets us going again.
MattD <mattd@symbian.org>
parents: 658
diff changeset
   651
          </then>  
dd6b7decdca2 Major packaging change to work around parallel calls - stopped zipping targets from having direct dependency on 'sf-preprocess-package-config', and instead have 'sf-zip-content' call 'sf-preprocess-package-config' if needed. Changed 'sf-prep' to call a target that wipes out the 'generated' directory. It's not perfect but it gets us going again.
MattD <mattd@symbian.org>
parents: 658
diff changeset
   652
        </if>
864
2b0f08dedb30 Intelligent way of getting timings for ALL uses of sf-zip-content
Simon Howkins <simonh@symbian.org>
parents: 861
diff changeset
   653
        <stopwatch name="sf-zip-content (${zip.target.name})"/>
677
dd6b7decdca2 Major packaging change to work around parallel calls - stopped zipping targets from having direct dependency on 'sf-preprocess-package-config', and instead have 'sf-zip-content' call 'sf-preprocess-package-config' if needed. Changed 'sf-prep' to call a target that wipes out the 'generated' directory. It's not perfect but it gets us going again.
MattD <mattd@symbian.org>
parents: 658
diff changeset
   654
        <if><available file="${zip.config.file}"/>
dd6b7decdca2 Major packaging change to work around parallel calls - stopped zipping targets from having direct dependency on 'sf-preprocess-package-config', and instead have 'sf-zip-content' call 'sf-preprocess-package-config' if needed. Changed 'sf-prep' to call a target that wipes out the 'generated' directory. It's not perfect but it gets us going again.
MattD <mattd@symbian.org>
parents: 658
diff changeset
   655
          <then>
dd6b7decdca2 Major packaging change to work around parallel calls - stopped zipping targets from having direct dependency on 'sf-preprocess-package-config', and instead have 'sf-zip-content' call 'sf-preprocess-package-config' if needed. Changed 'sf-prep' to call a target that wipes out the 'generated' directory. It's not perfect but it gets us going again.
MattD <mattd@symbian.org>
parents: 658
diff changeset
   656
            <runtarget target="preprocess-zip-config" />
dd6b7decdca2 Major packaging change to work around parallel calls - stopped zipping targets from having direct dependency on 'sf-preprocess-package-config', and instead have 'sf-zip-content' call 'sf-preprocess-package-config' if needed. Changed 'sf-prep' to call a target that wipes out the 'generated' directory. It's not perfect but it gets us going again.
MattD <mattd@symbian.org>
parents: 658
diff changeset
   657
            <property name="zip.${zip.target.name}.log.file" location="${build.log.dir}/${build.id}_${zip.target.name}_zip.log" />
dd6b7decdca2 Major packaging change to work around parallel calls - stopped zipping targets from having direct dependency on 'sf-preprocess-package-config', and instead have 'sf-zip-content' call 'sf-preprocess-package-config' if needed. Changed 'sf-prep' to call a target that wipes out the 'generated' directory. It's not perfect but it gets us going again.
MattD <mattd@symbian.org>
parents: 658
diff changeset
   658
            <property name="zips.${zip.target.name}.spec.name" value="${zip.target.name}" />
927
a15a7e841752 Turn off zipContentMacro failure for empty zip targets in Helium 7
Shabe Razvi <shaber@symbian.org>
parents: 926
diff changeset
   659
            <if><isset property="sf.using.newer.than.helium5"/>
a15a7e841752 Turn off zipContentMacro failure for empty zip targets in Helium 7
Shabe Razvi <shaber@symbian.org>
parents: 926
diff changeset
   660
            <then>
a15a7e841752 Turn off zipContentMacro failure for empty zip targets in Helium 7
Shabe Razvi <shaber@symbian.org>
parents: 926
diff changeset
   661
                <hlm:zipContentMacro type="${zip.target.name}" file="${zip.config.file}" failonemptyconfig="false"/>
a15a7e841752 Turn off zipContentMacro failure for empty zip targets in Helium 7
Shabe Razvi <shaber@symbian.org>
parents: 926
diff changeset
   662
            </then>
a15a7e841752 Turn off zipContentMacro failure for empty zip targets in Helium 7
Shabe Razvi <shaber@symbian.org>
parents: 926
diff changeset
   663
            <else>
a15a7e841752 Turn off zipContentMacro failure for empty zip targets in Helium 7
Shabe Razvi <shaber@symbian.org>
parents: 926
diff changeset
   664
                <hlm:zipContentMacro type="${zip.target.name}" file="${zip.config.file}" />
a15a7e841752 Turn off zipContentMacro failure for empty zip targets in Helium 7
Shabe Razvi <shaber@symbian.org>
parents: 926
diff changeset
   665
            </else>
a15a7e841752 Turn off zipContentMacro failure for empty zip targets in Helium 7
Shabe Razvi <shaber@symbian.org>
parents: 926
diff changeset
   666
            </if>
677
dd6b7decdca2 Major packaging change to work around parallel calls - stopped zipping targets from having direct dependency on 'sf-preprocess-package-config', and instead have 'sf-zip-content' call 'sf-preprocess-package-config' if needed. Changed 'sf-prep' to call a target that wipes out the 'generated' directory. It's not perfect but it gets us going again.
MattD <mattd@symbian.org>
parents: 658
diff changeset
   667
          </then>
dd6b7decdca2 Major packaging change to work around parallel calls - stopped zipping targets from having direct dependency on 'sf-preprocess-package-config', and instead have 'sf-zip-content' call 'sf-preprocess-package-config' if needed. Changed 'sf-prep' to call a target that wipes out the 'generated' directory. It's not perfect but it gets us going again.
MattD <mattd@symbian.org>
parents: 658
diff changeset
   668
          <else>
dd6b7decdca2 Major packaging change to work around parallel calls - stopped zipping targets from having direct dependency on 'sf-preprocess-package-config', and instead have 'sf-zip-content' call 'sf-preprocess-package-config' if needed. Changed 'sf-prep' to call a target that wipes out the 'generated' directory. It's not perfect but it gets us going again.
MattD <mattd@symbian.org>
parents: 658
diff changeset
   669
            <echo message="ERROR ${zip.config.file} not available for zipping!"/>
dd6b7decdca2 Major packaging change to work around parallel calls - stopped zipping targets from having direct dependency on 'sf-preprocess-package-config', and instead have 'sf-zip-content' call 'sf-preprocess-package-config' if needed. Changed 'sf-prep' to call a target that wipes out the 'generated' directory. It's not perfect but it gets us going again.
MattD <mattd@symbian.org>
parents: 658
diff changeset
   670
          </else>
dd6b7decdca2 Major packaging change to work around parallel calls - stopped zipping targets from having direct dependency on 'sf-preprocess-package-config', and instead have 'sf-zip-content' call 'sf-preprocess-package-config' if needed. Changed 'sf-prep' to call a target that wipes out the 'generated' directory. It's not perfect but it gets us going again.
MattD <mattd@symbian.org>
parents: 658
diff changeset
   671
        </if>
864
2b0f08dedb30 Intelligent way of getting timings for ALL uses of sf-zip-content
Simon Howkins <simonh@symbian.org>
parents: 861
diff changeset
   672
        <stopwatch name="sf-zip-content (${zip.target.name})" action="elapsed"/>
84
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   673
    </target>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   674
    
677
dd6b7decdca2 Major packaging change to work around parallel calls - stopped zipping targets from having direct dependency on 'sf-preprocess-package-config', and instead have 'sf-zip-content' call 'sf-preprocess-package-config' if needed. Changed 'sf-prep' to call a target that wipes out the 'generated' directory. It's not perfect but it gets us going again.
MattD <mattd@symbian.org>
parents: 658
diff changeset
   675
    <target name="sf-package-source" >
461
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   676
        <!-- Firstly zip up rnd by package -->
456
1ba3c86ebec0 Bug 350 RnD binary zips missing all content outside epoc32 tree
Simon Howkins <simonh@symbian.org>
parents: 441
diff changeset
   677
        <antcall target="sf-zip-content">
681
eeab5a04dc46 Updated throughout to use the "temp_build_files" dir on the build drive rather than the "generated" directory in the fbf source tree.
Simon Howkins <simonh@symbian.org>
parents: 679
diff changeset
   678
            <param name="zip.config.file" value="${temp.build.dir}/zip.cfg.xml.ftl"/>
456
1ba3c86ebec0 Bug 350 RnD binary zips missing all content outside epoc32 tree
Simon Howkins <simonh@symbian.org>
parents: 441
diff changeset
   679
            <param name="zip.target.name" value="rnd" />
1ba3c86ebec0 Bug 350 RnD binary zips missing all content outside epoc32 tree
Simon Howkins <simonh@symbian.org>
parents: 441
diff changeset
   680
        </antcall>
1ba3c86ebec0 Bug 350 RnD binary zips missing all content outside epoc32 tree
Simon Howkins <simonh@symbian.org>
parents: 441
diff changeset
   681
        <antcall target="sf-zip-content">
681
eeab5a04dc46 Updated throughout to use the "temp_build_files" dir on the build drive rather than the "generated" directory in the fbf source tree.
Simon Howkins <simonh@symbian.org>
parents: 679
diff changeset
   682
            <param name="zip.config.file" value="${temp.build.dir}/zip.cfg.xml.ftl"/>
456
1ba3c86ebec0 Bug 350 RnD binary zips missing all content outside epoc32 tree
Simon Howkins <simonh@symbian.org>
parents: 441
diff changeset
   683
            <param name="zip.target.name" value="rnd-internal" />
1ba3c86ebec0 Bug 350 RnD binary zips missing all content outside epoc32 tree
Simon Howkins <simonh@symbian.org>
parents: 441
diff changeset
   684
        </antcall>
461
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   685
        <if>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   686
            <istrue value="${sf.spec.package.src.enable}"/>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   687
            <then>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   688
                <echo message="INFO Packaging Source Repos"/>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   689
                <antcall target="sf-zip-content">
681
eeab5a04dc46 Updated throughout to use the "temp_build_files" dir on the build drive rather than the "generated" directory in the fbf source tree.
Simon Howkins <simonh@symbian.org>
parents: 679
diff changeset
   690
                    <param name="zip.config.file" value="${temp.build.dir}/zip.cfg.xml.ftl"/>
461
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   691
                    <param name="zip.target.name" value="src" />
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   692
                </antcall>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   693
                <!-- Then zip up src zips by layer -->
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   694
                <antcall target="sf-zip-content">
681
eeab5a04dc46 Updated throughout to use the "temp_build_files" dir on the build drive rather than the "generated" directory in the fbf source tree.
Simon Howkins <simonh@symbian.org>
parents: 679
diff changeset
   695
                    <param name="zip.config.file" value="${temp.build.dir}/zip.cfg.xml.ftl"/>
461
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   696
                    <param name="zip.target.name" value="src-by-layer" />
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   697
                </antcall>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   698
            </then>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   699
        </if>
84
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   700
    </target>
fcf94a72b33e Improved zip template generation script, to take a third argument for the required location of the output file.
Simon Howkins <simonh@symbian.org>
parents: 81
diff changeset
   701
    
461
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   702
    <!-- Unpack the rnd zips ready to be used in the build -->
111
5b0bc2f89660 Add postbuild RnD packaging. Add .whatlog to os tools build.
Shabe Razvi <shaber@symbian.org>
parents: 109
diff changeset
   703
    <target name="sf-unpack-rnd">
109
cb16ca6483d9 Unpack actual RnD zips rather than fastcopy. Add build collisions tool to <sf-run-analysis> target.
Shabe Razvi <shaber@symbian.org>
parents: 103
diff changeset
   704
        <echo message="Unpacking any available RnD binaries"/>
461
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   705
        <for param="rndZip">
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   706
            <fileset dir="${build.drive}/output/zips/">
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   707
                <include name="binaries_*.zip"/> <!-- Internal rnd bins -->
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   708
                <include name="release/bin_*.zip"/> <!-- Releaseable rnd bins -->
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   709
            </fileset>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   710
            <sequential>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   711
                <exec executable="7za" dir="${build.drive}" output="${build.log.dir}/unzip_${build.id}_binaries_rnd.log" append="true">
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   712
                    <arg value="x"/>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   713
                    <arg value="-y"/> <!-- Need to unpack in overwrite mode, due to TEF -->
467
5d3a9a466963 Fixed RnD content unpacking to ensure that only i9tems in the epoc32 tree are unpacked.
Simon Howkins <simonh@symbian.org>
parents: 461
diff changeset
   714
                    <arg value="-i!epoc32\*"/> <!-- Only unzip items into the epoc32 tree -->
461
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   715
                    <arg value="@{rndZip}"/>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   716
                </exec>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   717
            </sequential>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   718
	</for>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   719
    </target>
637
3effbd6728d4 Modified sf-check-missing-os-files to deal with 'sf.os.compile.iterate' property. Added new target 'sf-compile-options' for setting the gmake sbs compile option, and added it as a dep for the compile targets.
MattD <mattd@symbian.org>
parents: 624
diff changeset
   720
3effbd6728d4 Modified sf-check-missing-os-files to deal with 'sf.os.compile.iterate' property. Added new target 'sf-compile-options' for setting the gmake sbs compile option, and added it as a dep for the compile targets.
MattD <mattd@symbian.org>
parents: 624
diff changeset
   721
  <target name="sf-compile-options">  
3effbd6728d4 Modified sf-check-missing-os-files to deal with 'sf.os.compile.iterate' property. Added new target 'sf-compile-options' for setting the gmake sbs compile option, and added it as a dep for the compile targets.
MattD <mattd@symbian.org>
parents: 624
diff changeset
   722
    <hlm:sbsMakeOptions engine="gmake" id="sbs.fullbuild.options"/>
3effbd6728d4 Modified sf-check-missing-os-files to deal with 'sf.os.compile.iterate' property. Added new target 'sf-compile-options' for setting the gmake sbs compile option, and added it as a dep for the compile targets.
MattD <mattd@symbian.org>
parents: 624
diff changeset
   723
    <hlm:sbsMakeOptions engine="gmake" id="sbs.toolsbuild.options"/>
3effbd6728d4 Modified sf-check-missing-os-files to deal with 'sf.os.compile.iterate' property. Added new target 'sf-compile-options' for setting the gmake sbs compile option, and added it as a dep for the compile targets.
MattD <mattd@symbian.org>
parents: 624
diff changeset
   724
  </target>
461
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   725
    
647
4d2a89833fea Created a dedicated sf-log-to-brag target so it can take care of the commonality of the task, including the creation of the directory for XML output.
Simon Howkins <simonh@symbian.org>
parents: 637
diff changeset
   726
    <!-- Turn a log file into a BRAG XML file - parameters to be passed are sf.brag.* -->
4d2a89833fea Created a dedicated sf-log-to-brag target so it can take care of the commonality of the task, including the creation of the directory for XML output.
Simon Howkins <simonh@symbian.org>
parents: 637
diff changeset
   727
    <target name="sf-log-to-brag">
4d2a89833fea Created a dedicated sf-log-to-brag target so it can take care of the commonality of the task, including the creation of the directory for XML output.
Simon Howkins <simonh@symbian.org>
parents: 637
diff changeset
   728
        <mkdir dir="${build.log.dir}/summary"/>
4d2a89833fea Created a dedicated sf-log-to-brag target so it can take care of the commonality of the task, including the creation of the directory for XML output.
Simon Howkins <simonh@symbian.org>
parents: 637
diff changeset
   729
        <echo message="Generating ${sf.brag.id}_BRAG.xml from ${sf.brag.log}"/>
4d2a89833fea Created a dedicated sf-log-to-brag target so it can take care of the commonality of the task, including the creation of the directory for XML output.
Simon Howkins <simonh@symbian.org>
parents: 637
diff changeset
   730
        <exec executable="perl" failonerror="false" output="${build.log.dir}/summary/${sf.brag.id}_BRAG.xml" logError="true">
4d2a89833fea Created a dedicated sf-log-to-brag target so it can take care of the commonality of the task, including the creation of the directory for XML output.
Simon Howkins <simonh@symbian.org>
parents: 637
diff changeset
   731
            <arg value="${sf.common.config.dir}/tools/brag/logToBRAG.pl"/>
4d2a89833fea Created a dedicated sf-log-to-brag target so it can take care of the commonality of the task, including the creation of the directory for XML output.
Simon Howkins <simonh@symbian.org>
parents: 637
diff changeset
   732
	    <arg value="--phase=${sf.brag.phase}"/>
4d2a89833fea Created a dedicated sf-log-to-brag target so it can take care of the commonality of the task, including the creation of the directory for XML output.
Simon Howkins <simonh@symbian.org>
parents: 637
diff changeset
   733
            <arg value="--step=${sf.brag.step}"/>
4d2a89833fea Created a dedicated sf-log-to-brag target so it can take care of the commonality of the task, including the creation of the directory for XML output.
Simon Howkins <simonh@symbian.org>
parents: 637
diff changeset
   734
            <arg value="--rules=${sf.common.config.dir}/tools/brag/rules.${sf.brag.id}.tsv"/>
4d2a89833fea Created a dedicated sf-log-to-brag target so it can take care of the commonality of the task, including the creation of the directory for XML output.
Simon Howkins <simonh@symbian.org>
parents: 637
diff changeset
   735
            <arg value="${sf.brag.log}"/>
4d2a89833fea Created a dedicated sf-log-to-brag target so it can take care of the commonality of the task, including the creation of the directory for XML output.
Simon Howkins <simonh@symbian.org>
parents: 637
diff changeset
   736
        </exec>
648
5d343f062b11 Added copy to copy the XSL so it's available if ever an XML is generated there.
Simon Howkins <simonh@symbian.org>
parents: 647
diff changeset
   737
        <!-- And copy the XSL so the output can be transformed by a browser -->
5d343f062b11 Added copy to copy the XSL so it's available if ever an XML is generated there.
Simon Howkins <simonh@symbian.org>
parents: 647
diff changeset
   738
        <copy file="${sf.common.config.dir}/tools/brag/brag.xsl" toDir="${build.log.dir}/summary/"/>
647
4d2a89833fea Created a dedicated sf-log-to-brag target so it can take care of the commonality of the task, including the creation of the directory for XML output.
Simon Howkins <simonh@symbian.org>
parents: 637
diff changeset
   739
    </target>
698
382728cd25d2 Add sf-rombuild target to build ROMs. Backout ARM license check suppression.
Shabe Razvi <shaber@symbian.org>
parents: 681
diff changeset
   740
       
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   741
</project>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   742