common/build.xml
author MattD <mattd@symbian.org>
Mon, 15 Mar 2010 11:11:50 +0000
changeset 925 f1243b2c51fe
parent 923 5ccf9d5ab663
child 926 86dabb8aa2dd
permissions -rw-r--r--
build_md5.zip now in release_metadata.xml
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>
f9fc2a3f8f70 Code to automatically find a physical drive for running a build, triggered as necessary.
Simon Howkins <simonh@symbian.org>
parents: 857
diff changeset
    23
        <not><isset property="sf.spec.job.root.drive"/></not>
f9fc2a3f8f70 Code to automatically find a physical drive for running a build, triggered as necessary.
Simon Howkins <simonh@symbian.org>
parents: 857
diff changeset
    24
        <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
    25
            <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
    26
                <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
    27
                <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
    28
            </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
    29
        </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
    30
    </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
    31
    
360
38e924ed959d Created framework for separating postbuild related activities into a separate file.
Simon Howkins <simonh@symbian.org>
parents: 358
diff changeset
    32
    <!-- Import common properties -->
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    33
    <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
    34
    
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
    35
    <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
    36
    <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
    37
    
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    38
    <!-- 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
    39
    <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
    40
    <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
    41
    <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
    42
    <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
    43
    <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
    44
    <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
    45
    <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
    46
    <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
    47
    <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
    48
    <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
    49
    <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
    50
    <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
    51
    <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
    52
    <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
    53
    <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
    54
    <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
    55
    <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
    56
    <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
    57
    <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
    58
    <property name="ats.drive" value="${sf.spec.ats_worker.drive}"/>
899
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
    59
    <property name="skip.sbs.layer.generation" value="true"/> <!-- helium 7: needs to be predefined before hlm import --> 
368
cb0ec85c881d Set Raptor -j option to 2 for package builds
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
    60
    <if>
cb0ec85c881d Set Raptor -j option to 2 for package builds
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
    61
      <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
    62
      <then>
cb0ec85c881d Set Raptor -j option to 2 for package builds
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
    63
        <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
    64
      </then>
cb0ec85c881d Set Raptor -j option to 2 for package builds
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
    65
    </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
    66
    
624
5264fdaaf0c6 Make sf.spec.job.codeline the publishing category
Dario Sestito <darios@symbian.org>
parents: 618
diff changeset
    67
    <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
    68
    
198
4b1e939c052c Added yarp to diamonds publishing
Dario Sestito <darios@symbian.org>
parents: 197
diff changeset
    69
    <!-- 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
    70
    <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
    71
    
360
38e924ed959d Created framework for separating postbuild related activities into a separate file.
Simon Howkins <simonh@symbian.org>
parents: 358
diff changeset
    72
    <!-- 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
    73
    <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
    74
    
360
38e924ed959d Created framework for separating postbuild related activities into a separate file.
Simon Howkins <simonh@symbian.org>
parents: 358
diff changeset
    75
    <!-- Import common references -->
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    76
    <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
    77
             
360
38e924ed959d Created framework for separating postbuild related activities into a separate file.
Simon Howkins <simonh@symbian.org>
parents: 358
diff changeset
    78
    <!-- 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
    79
    <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
    80
	
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
    81
    <!-- 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
    82
    <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
    83
    
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
    84
    <!-- 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
    85
    <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
    86
      <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
    87
        <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
    88
        <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
    89
      </or></not>
899
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
    90
      <then>
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
    91
          <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
    92
          <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
    93
          
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents: 901
diff changeset
    94
          <!-- Never fail on sbs compile errors -->
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents: 901
diff changeset
    95
          <hlm:signalInput id="compileSignalInput" failbuild="never">
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents: 901
diff changeset
    96
            <hlm:notifierListRef refid="defaultFailNotifier" />
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents: 901
diff changeset
    97
          </hlm:signalInput>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents: 901
diff changeset
    98
          
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents: 901
diff changeset
    99
          <hlm:signalInput id="raptorErrorSignalInput" failbuild="never">
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents: 901
diff changeset
   100
            <hlm:notifierListRef refid="defaultFailNotifier" />
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents: 901
diff changeset
   101
          </hlm:signalInput>
899
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
   102
      </then>
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
   103
    </if>
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
   104
    
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
   105
    <!--
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
   106
      - END OF PROPERTY DEFINITIONS, TARGETS START HERE
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
   107
      -->
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
   108
    
874
60a32d297711 Remove check-tool-dependencies to allow > Perl 5.6.1
Shabe Razvi <shaber@symbian.org>
parents: 866
diff changeset
   109
    <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
   110
        <!-- 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
   111
	<fail>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   112
            <condition>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   113
                <not>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   114
                    <or>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   115
                        <isset property="sf.suppress.drive.space.check"/>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   116
                        <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
   117
                    </or>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   118
                </not>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   119
            </condition>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   120
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
   121
        </fail>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   122
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   123
        <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
   124
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
   125
        <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
   126
        <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
   127
    </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
   128
caa0601f50c5 Added stopwatch tasks through most of the code hit during a platform build.
Simon Howkins <simonh@symbian.org>
parents: 860
diff changeset
   129
    <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
   130
        <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
   131
        <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
   132
    </target>
caa0601f50c5 Added stopwatch tasks through most of the code hit during a platform build.
Simon Howkins <simonh@symbian.org>
parents: 860
diff changeset
   133
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
   134
    <target name="sf-check-env">
884
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   135
    	<!-- Dario's environment dumper -->
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   136
    	<exec executable="perl" dir="${build.drive}">
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   137
            <arg value="${sf.common.config.dir}/tools/envinfo.pl"/>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   138
        </exec>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   139
    	
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
        <!-- 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
   141
        <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
   142
            <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
   143
                <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
   144
            </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
   145
            <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
   146
                <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
   147
            </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
   148
        </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
   149
        
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
        <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
   151
        <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
   152
            <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
   153
            <arg value="--xml=${sf.buildenv.location}/BuildEnv.xml"/>
358
61571c10c5d0 Added Build environment check feature
ThomasE
parents: 356
diff changeset
   154
            <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
   155
            <arg value="--sbs='${sf.spec.sbs.config}'"/>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   156
            <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
   157
            <arg value="Common"/>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   158
        </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
   159
        <!-- 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
   160
            <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
   161
            <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
   162
            <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
   163
            <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
   164
        </antcall -->
604
aa36fa431e3d Added processing of the BuildEnvironmentCheck for BRAG purposes.
Simon Howkins <simonh@symbian.org>
parents: 603
diff changeset
   165
        <fail>
aa36fa431e3d Added processing of the BuildEnvironmentCheck for BRAG purposes.
Simon Howkins <simonh@symbian.org>
parents: 603
diff changeset
   166
            <condition>
aa36fa431e3d Added processing of the BuildEnvironmentCheck for BRAG purposes.
Simon Howkins <simonh@symbian.org>
parents: 603
diff changeset
   167
                <not>
aa36fa431e3d Added processing of the BuildEnvironmentCheck for BRAG purposes.
Simon Howkins <simonh@symbian.org>
parents: 603
diff changeset
   168
                    <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
   169
                        <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
   170
                        <isset property="sf.suppress.buildenv.check"/>
aa36fa431e3d Added processing of the BuildEnvironmentCheck for BRAG purposes.
Simon Howkins <simonh@symbian.org>
parents: 603
diff changeset
   171
                    </or>
aa36fa431e3d Added processing of the BuildEnvironmentCheck for BRAG purposes.
Simon Howkins <simonh@symbian.org>
parents: 603
diff changeset
   172
                </not>
aa36fa431e3d Added processing of the BuildEnvironmentCheck for BRAG purposes.
Simon Howkins <simonh@symbian.org>
parents: 603
diff changeset
   173
            </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
   174
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
   175
        </fail>
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   176
    </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
   177
366
cde2244c8ea6 First drop of script to generate build summary
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
   178
    <target name="sf-summary" depends="">
cde2244c8ea6 First drop of script to generate build summary
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
   179
        <echo>[SF-SUMMARY]</echo>
cde2244c8ea6 First drop of script to generate build summary
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
   180
        <echo message="Generating build summary"/>
cde2244c8ea6 First drop of script to generate build summary
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
   181
        <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
   182
          <arg value="brag_script.pl"/>
cde2244c8ea6 First drop of script to generate build summary
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
   183
          <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
   184
          <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
   185
        </exec>
cde2244c8ea6 First drop of script to generate build summary
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
   186
    </target>
cde2244c8ea6 First drop of script to generate build summary
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
   187
    
415
cc2965329dd1 Removed unnecessary target.
Simon Howkins <simonh@symbian.org>
parents: 414
diff changeset
   188
    <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
   189
        <echo>[SF-BUILD-ALL]</echo>
cc2965329dd1 Removed unnecessary target.
Simon Howkins <simonh@symbian.org>
parents: 414
diff changeset
   190
    </target>
cc2965329dd1 Removed unnecessary target.
Simon Howkins <simonh@symbian.org>
parents: 414
diff changeset
   191
    
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
   192
    <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
   193
        <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
   194
    </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
   195
414
40b07ed8f169 Restructure sf-prebuild to ensure that sf-build-all doesnt invoke sf-prep.
Shabe Razvi <shaber@symbian.org>
parents: 397
diff changeset
   196
    <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
   197
        <echo>[SF-BUILD]</echo>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   198
    </target>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   199
    
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
   200
    <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
   201
        <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
   202
            <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
   203
            <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
   204
                <!-- 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
   205
                <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
   206
            </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
   207
        </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
   208
        <!-- 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
   209
        <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
   210
    </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
   211
    
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
   212
    <!-- 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
   213
    <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
   214
       <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
   215
       <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
   216
c451bd0c0782 generate-layer overridden target from platform/build.xml to common/build.xml
Dario Sestito <darios@symbian.org>
parents: 240
diff changeset
   217
       <!-- 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
   218
       <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
   219
       <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
   220
c451bd0c0782 generate-layer overridden target from platform/build.xml to common/build.xml
Dario Sestito <darios@symbian.org>
parents: 240
diff changeset
   221
        <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
   222
        <filterchain>
c451bd0c0782 generate-layer overridden target from platform/build.xml to common/build.xml
Dario Sestito <darios@symbian.org>
parents: 240
diff changeset
   223
            <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
   224
                <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
   225
            </linecontainsregexp>
c451bd0c0782 generate-layer overridden target from platform/build.xml to common/build.xml
Dario Sestito <darios@symbian.org>
parents: 240
diff changeset
   226
        </filterchain>
c451bd0c0782 generate-layer overridden target from platform/build.xml to common/build.xml
Dario Sestito <darios@symbian.org>
parents: 240
diff changeset
   227
        </copy>
c451bd0c0782 generate-layer overridden target from platform/build.xml to common/build.xml
Dario Sestito <darios@symbian.org>
parents: 240
diff changeset
   228
        <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
   229
        <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
   230
    </target>
123
5b2818c52aae Add optiona BC checking to build process
Louis Henry Nayegon <louisn@symbian.org>
parents: 114
diff changeset
   231
414
40b07ed8f169 Restructure sf-prebuild to ensure that sf-build-all doesnt invoke sf-prep.
Shabe Razvi <shaber@symbian.org>
parents: 397
diff changeset
   232
    <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
   233
    <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
   234
        <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
   235
    </target>
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   236
    
395
1f4867b1e0c1 Updated the mechanism for the conditional execution of sf-diamods-tag-build
Simon Howkins <simonh@symbian.org>
parents: 393
diff changeset
   237
    <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
   238
        <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
   239
        <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
   240
    </target>
601
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents: 596
diff changeset
   241
    
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents: 596
diff changeset
   242
    <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
   243
      <if>
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents: 596
diff changeset
   244
        <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
   245
        <then>
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents: 596
diff changeset
   246
          <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
   247
          <runtarget target="diamonds"/>
602
Dario Sestito <darios@symbian.org>
parents: 599 601
diff changeset
   248
          <echo message="Save Diamonds build id value (${diamonds.build.id}) in a file"/>
Dario Sestito <darios@symbian.org>
parents: 599 601
diff changeset
   249
          <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
   250
        </then>
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents: 596
diff changeset
   251
      </if>
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents: 596
diff changeset
   252
    </target>
884
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   253
    
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   254
    <target name="sf-diamonds-envinfo">
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   255
      <if>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   256
        <istrue value="${sf.spec.publish.enable}"/>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   257
        <then>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   258
          <echo>[SF-DIAMONDS-ENVINFO]</echo>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   259
          <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
   260
          <exec executable="python">
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   261
		    <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
   262
		    <arg value="-u"/>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   263
		    <arg value="http://${diamonds.host}${diamonds.build.id}"/>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   264
		    <arg value="-f"/>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   265
		    <arg value="${build.log.dir}/diamonds_envinfo.xml"/>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   266
		  </exec>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   267
        </then>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   268
      </if>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   269
    </target>
395
1f4867b1e0c1 Updated the mechanism for the conditional execution of sf-diamods-tag-build
Simon Howkins <simonh@symbian.org>
parents: 393
diff changeset
   270
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
   271
    <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
   272
      <if>
1f4867b1e0c1 Updated the mechanism for the conditional execution of sf-diamods-tag-build
Simon Howkins <simonh@symbian.org>
parents: 393
diff changeset
   273
        <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
   274
        <then>
1f4867b1e0c1 Updated the mechanism for the conditional execution of sf-diamods-tag-build
Simon Howkins <simonh@symbian.org>
parents: 393
diff changeset
   275
          <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
   276
          <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
   277
          <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
   278
            <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
   279
            <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
   280
            <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
   281
          </exec>
395
1f4867b1e0c1 Updated the mechanism for the conditional execution of sf-diamods-tag-build
Simon Howkins <simonh@symbian.org>
parents: 393
diff changeset
   282
        </then>
1f4867b1e0c1 Updated the mechanism for the conditional execution of sf-diamods-tag-build
Simon Howkins <simonh@symbian.org>
parents: 393
diff changeset
   283
      </if>
321
55c062276b22 Enable build tagging on Diamonds (default: 'test')
Dario Sestito <darios@symbian.org>
parents: 320
diff changeset
   284
    </target>
55c062276b22 Enable build tagging on Diamonds (default: 'test')
Dario Sestito <darios@symbian.org>
parents: 320
diff changeset
   285
    
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
   286
    <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
   287
        <!-- 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
   288
        <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
   289
        
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
   290
        <!-- 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
   291
        <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
   292
            <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
   293
            <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
   294
        </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
   295
        <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
   296
        <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
   297
            <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
   298
            <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
   299
        </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
   300
        <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
   301
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
        <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
   303
            <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
   304
            <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
   305
        </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
   306
        <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
   307
        <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
   308
            <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
   309
            <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
   310
        </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
   311
	<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
   312
    </target>
906
5239d4d0bed1 Take the UH parser from the utilities repo
Dario Sestito <darios@symbian.org>
parents: 901
diff changeset
   313
    
5239d4d0bed1 Take the UH parser from the utilities repo
Dario Sestito <darios@symbian.org>
parents: 901
diff changeset
   314
    <target name="sf-get-utils">
5239d4d0bed1 Take the UH parser from the utilities repo
Dario Sestito <darios@symbian.org>
parents: 901
diff changeset
   315
    	<stopwatch name="sf-get-utils"/>
5239d4d0bed1 Take the UH parser from the utilities repo
Dario Sestito <darios@symbian.org>
parents: 901
diff changeset
   316
			<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
   317
            <exec executable="hg">
5239d4d0bed1 Take the UH parser from the utilities repo
Dario Sestito <darios@symbian.org>
parents: 901
diff changeset
   318
              <arg value="clone"/>
5239d4d0bed1 Take the UH parser from the utilities repo
Dario Sestito <darios@symbian.org>
parents: 901
diff changeset
   319
              <arg value="-rdefault"/>
5239d4d0bed1 Take the UH parser from the utilities repo
Dario Sestito <darios@symbian.org>
parents: 901
diff changeset
   320
              <arg value="http://developer.symbian.org/oss/MCL/utilities"/>
5239d4d0bed1 Take the UH parser from the utilities repo
Dario Sestito <darios@symbian.org>
parents: 901
diff changeset
   321
              <arg value="${build.drive}/utilities"/>
5239d4d0bed1 Take the UH parser from the utilities repo
Dario Sestito <darios@symbian.org>
parents: 901
diff changeset
   322
            </exec>
5239d4d0bed1 Take the UH parser from the utilities repo
Dario Sestito <darios@symbian.org>
parents: 901
diff changeset
   323
    	<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
   324
    </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
   325
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
   326
    <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
   327
        <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
   328
        <!-- create BOM dir -->
555e9b4085ea Removed unnecessary dependencies, to untangle the dependency graph a little.
Simon Howkins <simonh@symbian.org>
parents: 698
diff changeset
   329
        <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
   330
        
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
   331
        <!-- 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
   332
        <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
   333
        <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
   334
            <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
   335
            <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
   336
                <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
   337
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
   338
                <!-- 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
   339
                <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
   340
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
   341
                <!-- 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
   342
                <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
   343
                
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
   344
                <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
   345
                <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
   346
                    <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
   347
                    <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
   348
                </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
   349
                <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
   350
            </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
   351
        </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
   352
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
        <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
   354
        <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
   355
            <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
   356
            <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
   357
                <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
   358
                <!-- 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
   359
                <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
   360
                
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
                <!-- 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
   362
                <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
   363
                <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
   364
            </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
   365
        </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
   366
        <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
   367
    </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
   368
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
   369
    <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
   370
        <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
   371
            <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
   372
            <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
   373
        </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
   374
    </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
   375
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
   376
    <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
   377
        <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
   378
        <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
   379
        <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
   380
        <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
   381
            <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
   382
            <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
   383
                <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
   384
                <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
   385
            </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
   386
        </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
   387
        <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
   388
    </target>
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   389
    
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
   390
    <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
   391
        <stopwatch name="sf-get-source"/>
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
   392
        <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
   393
        <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
   394
    </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
   395
    
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   396
    <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
   397
        <!-- 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
   398
        <if>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   399
            <and>    
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   400
                <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
   401
                <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
   402
            </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
   403
            <then>
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   404
                <!-- 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
   405
                <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
   406
                    <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
   407
                    <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
   408
                </exec>
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   409
                <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
   410
                    <sequential>
895
5b76b79b6713 Add missing /
Simon Howkins <simonh@symbian.org>
parents: 892
diff changeset
   411
                        <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
   412
                    </sequential>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   413
                </for>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   414
                <if>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   415
                    <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
   416
                    <then>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   417
                        <!-- 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
   418
                        <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
   419
                            <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
   420
                            <arg value="-capacity"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   421
                        </exec>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   422
                        <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
   423
                        <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
   424
                    </then>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   425
                </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
   426
            </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
   427
        </if>
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   428
        
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
   429
        <!-- 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
   430
        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
   431
        <!-- 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
   432
        <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
   433
        
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   434
        <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
   435
        
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
   436
        <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
   437
            <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
   438
            <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
   439
                <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
   440
            </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
   441
        </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
   442
        <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
   443
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   444
        <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
   445
              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
   446
              <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
   447
                    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
   448
                    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
   449
                        csv(${sf.test.csv.file}, {separator:','})
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
   450
                        csv(${sf.source.csv.file}, {separator:','})
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
   451
                    ]
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
              </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
   453
        </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
   454
    </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
   455
    
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
   456
    <!-- 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
   457
    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
   458
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
   459
    <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
   460
        <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
   461
        <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
   462
        <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
   463
    
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
   464
        <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
   465
            <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
   466
            <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
   467
                <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
   468
                <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
   469
                    <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
   470
                    <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
   471
                    <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
   472
                </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
   473
            </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
   474
        </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
   475
    </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
   476
    
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
   477
    <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
   478
        <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
   479
        <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
   480
        <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
   481
        
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
   482
        <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
   483
            <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
   484
            <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
   485
                <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
   486
                <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
   487
                    <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
   488
                    <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
   489
                    <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
   490
                </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
   491
            </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
   492
        </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
   493
    </target>
62
2771e394c9bd Catchup from main repo
DarioS@UK-DarioS.symbian.int
parents: 61 40
diff changeset
   494
  
65
0099c046d4f3 Add intersection target to FBF
ShabeR@UK-SHABER
parents: 63
diff changeset
   495
    <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
   496
        <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
   497
        <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
   498
        <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
   499
    
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
        <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
   501
            <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
   502
            <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
   503
                <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
   504
                <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
   505
                    <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
   506
                    <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
   507
                    <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
   508
                    <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
   509
                </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
   510
            </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
   511
        </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
   512
    </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
   513
721
555e9b4085ea Removed unnecessary dependencies, to untangle the dependency graph a little.
Simon Howkins <simonh@symbian.org>
parents: 698
diff changeset
   514
    <!-- 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
   515
    <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
   516
        <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
   517
    </target>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   518
    
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   519
    <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
   520
      <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
   521
    </target>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   522
    
240
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   523
  <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
   524
    <stopwatch name="sf-truclean"/>
240
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   525
    <if>
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   526
      <istrue value="${sf.spec.build.clean.enable}"/>
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   527
      <then>
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   528
        <echo message="Executing truclean step."/>
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   529
        <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
   530
            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
   531
          <data expandProperties="yes">
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   532
              ant: antProperties()
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   533
              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
   534
          </data>
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   535
        </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
   536
        <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
   537
      </then>
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   538
      <else>
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   539
        <echo message="Skipping truclean step."/>
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   540
      </else>
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   541
    </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
   542
    <stopwatch name="sf-truclean" action="elapsed"/>
240
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   543
  </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
   544
  
779cc88ed845 Allow subprojects within a project repo and model file relative to the subproject dir
Dario Sestito <darios@symbian.org>
parents: 321
diff changeset
   545
  <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
   546
    <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
   547
    <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
   548
      <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
   549
      <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
   550
        <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
   551
        <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
   552
        <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
   553
      </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
   554
      <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
   555
        <!-- 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
   556
        <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
   557
        <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
   558
          <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
   559
          <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
   560
          <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
   561
        </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
   562
      </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
   563
    </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
   564
    <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
   565
  </target>
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   566
    
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
   567
    <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
   568
        <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
   569
              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
   570
            <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
   571
                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
   572
                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
   573
                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
   574
                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
   575
                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
   576
                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
   577
            </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
   578
        </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
   579
        <!-- 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
   580
        <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
   581
    </target>
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   582
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
   583
    <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
   584
	<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
   585
        <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
   586
            <arg value="${sf.common.config.dir}/tools/populateziptemplate.pl"/>
166
32693583e769 Added Hg local cache management feature.
ThomasE
parents: 161
diff changeset
   587
            <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
   588
            <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
   589
            <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
   590
            <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
   591
        </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
   592
        <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
   593
            <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
   594
            <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
   595
            <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
   596
            <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
   597
        </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
   598
    </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
   599
    
679
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   600
    <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
   601
        <!-- 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
   602
        <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
   603
          <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
   604
            <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
   605
            <not>
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   606
              <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
   607
                <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
   608
                  <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
   609
                    <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
   610
                    <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
   611
                  </srcfiles>
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   612
                </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
   613
                <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
   614
                  <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
   615
                    <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
   616
                  </srcfiles>
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   617
                </uptodate>
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   618
              </and>
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   619
            </not>
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   620
          </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
   621
          <then>
679
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   622
            <!-- (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
   623
            <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
   624
          </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
   625
        </if>
864
2b0f08dedb30 Intelligent way of getting timings for ALL uses of sf-zip-content
Simon Howkins <simonh@symbian.org>
parents: 861
diff changeset
   626
        <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
   627
        <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
   628
          <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
   629
            <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
   630
            <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
   631
            <property name="zips.${zip.target.name}.spec.name" value="${zip.target.name}" />
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
   632
            <hlm:zipContentMacro type="${zip.target.name}" 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
   633
          </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
   634
          <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
   635
            <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
   636
          </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
   637
        </if>
864
2b0f08dedb30 Intelligent way of getting timings for ALL uses of sf-zip-content
Simon Howkins <simonh@symbian.org>
parents: 861
diff changeset
   638
        <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
   639
    </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
   640
    
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
   641
    <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
   642
        <!-- 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
   643
        <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
   644
            <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
   645
            <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
   646
        </antcall>
1ba3c86ebec0 Bug 350 RnD binary zips missing all content outside epoc32 tree
Simon Howkins <simonh@symbian.org>
parents: 441
diff changeset
   647
        <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
   648
            <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
   649
            <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
   650
        </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
   651
        <if>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   652
            <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
   653
            <then>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   654
                <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
   655
                <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
   656
                    <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
   657
                    <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
   658
                </antcall>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   659
                <!-- 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
   660
                <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
   661
                    <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
   662
                    <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
   663
                </antcall>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   664
            </then>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   665
        </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
   666
    </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
   667
    
461
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   668
    <!-- 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
   669
    <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
   670
        <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
   671
        <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
   672
            <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
   673
                <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
   674
                <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
   675
            </fileset>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   676
            <sequential>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   677
                <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
   678
                    <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
   679
                    <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
   680
                    <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
   681
                    <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
   682
                </exec>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   683
            </sequential>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   684
	</for>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   685
    </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
   686
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
   687
  <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
   688
    <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
   689
    <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
   690
  </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
   691
    
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
   692
    <!-- 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
   693
    <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
   694
        <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
   695
        <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
   696
        <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
   697
            <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
   698
	    <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
   699
            <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
   700
            <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
   701
            <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
   702
        </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
   703
        <!-- 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
   704
        <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
   705
    </target>
698
382728cd25d2 Add sf-rombuild target to build ROMs. Backout ARM license check suppression.
Shabe Razvi <shaber@symbian.org>
parents: 681
diff changeset
   706
       
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   707
</project>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   708