common/build.xml
author Dario Sestito <darios@symbian.org>
Fri, 09 Jul 2010 17:55:07 +0100
changeset 1158 739036c00f80
parent 1128 14c8058c3fa1
child 1159 61f32d17739f
permissions -rw-r--r--
Add bitops.pl. Dump start info and envinfo to bitinfo.txt
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
     1
<?xml version="1.0" encoding="UTF-8"?>
73
b8d6af733d6d Add first cut of packaging solution
Shabe Razvi <shaber@symbian.org>
parents: 69
diff changeset
     2
<project name="SF-COMMON-CONFIG" xmlns:hlm="http://www.nokia.com/helium">
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
     3
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
     4
    <property environment="env"/> <!-- make environment variables available via env -->
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
     5
    
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
     6
    <dirname property="sf.common.config.dir" file="${ant.file.SF-COMMON-CONFIG}"/>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
     7
    
857
c72c6eafadc6 Added new logic to deal with drive letter allocation when builds are launched from Hudson.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
     8
    <!-- If we're told that we've been invoked by Hudson, then use the executor number to determine the drive to use -->
c72c6eafadc6 Added new logic to deal with drive letter allocation when builds are launched from Hudson.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
     9
    <if>
c72c6eafadc6 Added new logic to deal with drive letter allocation when builds are launched from Hudson.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
    10
        <isset property="sf.hudson.executor.number"/>
c72c6eafadc6 Added new logic to deal with drive letter allocation when builds are launched from Hudson.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
    11
        <then>
c72c6eafadc6 Added new logic to deal with drive letter allocation when builds are launched from Hudson.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
    12
            <!-- This property could be set differently according to the varying set-ups of build parks -->
c72c6eafadc6 Added new logic to deal with drive letter allocation when builds are launched from Hudson.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
    13
            <property name="sf.hudson.executor.drive.letter.mapping" value="zyxwvutsrqponmlk"/>
c72c6eafadc6 Added new logic to deal with drive letter allocation when builds are launched from Hudson.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
    14
            <!-- Pick the Nth letter from the string using a regex -->
c72c6eafadc6 Added new logic to deal with drive letter allocation when builds are launched from Hudson.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
    15
            <!-- (Would be nice if ant gave us a more obvious way to look up an item from an array...) -->
c72c6eafadc6 Added new logic to deal with drive letter allocation when builds are launched from Hudson.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
    16
            <!-- Default string is arranged to use z: for executor 0, y: for executor 1, etc, etc. At present, SF build machines have a maximum of 4 executors -->
c72c6eafadc6 Added new logic to deal with drive letter allocation when builds are launched from Hudson.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
    17
            <propertyregex property="sf.spec.job.drive" input="${sf.hudson.executor.drive.letter.mapping}" regexp="\w{${sf.hudson.executor.number}}(\w)" select="\1:"/>
c72c6eafadc6 Added new logic to deal with drive letter allocation when builds are launched from Hudson.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
    18
        </then>
c72c6eafadc6 Added new logic to deal with drive letter allocation when builds are launched from Hudson.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
    19
    </if>
c72c6eafadc6 Added new logic to deal with drive letter allocation when builds are launched from Hudson.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
    20
    
858
f9fc2a3f8f70 Code to automatically find a physical drive for running a build, triggered as necessary.
Simon Howkins <simonh@symbian.org>
parents: 857
diff changeset
    21
    <!-- If we've not has a physical drive specified, then we'd better be able to work one out... -->
f9fc2a3f8f70 Code to automatically find a physical drive for running a build, triggered as necessary.
Simon Howkins <simonh@symbian.org>
parents: 857
diff changeset
    22
    <if>
926
86dabb8aa2dd Relocated Helium 7 *.log.dir property settings from root build.xml to common\build.xml so that 'sf.spec.job.drive' works again.
MattD <mattd@symbian.org>
parents: 923
diff changeset
    23
        <and>
86dabb8aa2dd Relocated Helium 7 *.log.dir property settings from root build.xml to common\build.xml so that 'sf.spec.job.drive' works again.
MattD <mattd@symbian.org>
parents: 923
diff changeset
    24
        <not><isset property="sf.spec.job.rootdir"/></not>
858
f9fc2a3f8f70 Code to automatically find a physical drive for running a build, triggered as necessary.
Simon Howkins <simonh@symbian.org>
parents: 857
diff changeset
    25
        <not><isset property="sf.spec.job.root.drive"/></not>
926
86dabb8aa2dd Relocated Helium 7 *.log.dir property settings from root build.xml to common\build.xml so that 'sf.spec.job.drive' works again.
MattD <mattd@symbian.org>
parents: 923
diff changeset
    26
        </and>
858
f9fc2a3f8f70 Code to automatically find a physical drive for running a build, triggered as necessary.
Simon Howkins <simonh@symbian.org>
parents: 857
diff changeset
    27
        <then>
f9fc2a3f8f70 Code to automatically find a physical drive for running a build, triggered as necessary.
Simon Howkins <simonh@symbian.org>
parents: 857
diff changeset
    28
            <exec executable="perl" outputproperty="sf.spec.job.root.drive" logerror="true" failonerror="true">
f9fc2a3f8f70 Code to automatically find a physical drive for running a build, triggered as necessary.
Simon Howkins <simonh@symbian.org>
parents: 857
diff changeset
    29
                <arg value="${sf.common.config.dir}/tools/findPhysicalDrive.pl"/>
891
6c56420d1006 Updated capabilities of findPhysicalDrive to support imminent work on locating the hg cache.
Simon Howkins <simonh@symbian.org>
parents: 889
diff changeset
    30
                <arg value="-space"/>
858
f9fc2a3f8f70 Code to automatically find a physical drive for running a build, triggered as necessary.
Simon Howkins <simonh@symbian.org>
parents: 857
diff changeset
    31
            </exec>
f9fc2a3f8f70 Code to automatically find a physical drive for running a build, triggered as necessary.
Simon Howkins <simonh@symbian.org>
parents: 857
diff changeset
    32
        </then>
f9fc2a3f8f70 Code to automatically find a physical drive for running a build, triggered as necessary.
Simon Howkins <simonh@symbian.org>
parents: 857
diff changeset
    33
    </if>
f9fc2a3f8f70 Code to automatically find a physical drive for running a build, triggered as necessary.
Simon Howkins <simonh@symbian.org>
parents: 857
diff changeset
    34
    
360
38e924ed959d Created framework for separating postbuild related activities into a separate file.
Simon Howkins <simonh@symbian.org>
parents: 358
diff changeset
    35
    <!-- Import common properties -->
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    36
    <import file="${sf.common.config.dir}/common_props.ant.xml" />
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
    37
    
858
f9fc2a3f8f70 Code to automatically find a physical drive for running a build, triggered as necessary.
Simon Howkins <simonh@symbian.org>
parents: 857
diff changeset
    38
    <property name="sf.spec.job.rootdir" value="${sf.spec.job.root.drive}/${sf.spec.job.root.path}"/>
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
    39
    <property name="sf.spec.sourcesync.sourcespecdir" value="${sf.project.location}"/>
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    40
    
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    41
    <!-- setup Helium internal properties from their equivalent in the project spec -->
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    42
    <property name="build.name" value="${sf.spec.job.name}"/>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    43
    <property name="core.build.version" value="${sf.spec.job.codeline}"/>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    44
    <property name="build.number" value="${sf.spec.job.number}"/>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    45
    <property name="build.drive" value="${sf.spec.job.drive}"/>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    46
    <property name="email.from" value="${sf.spec.email.from}"/>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    47
    <property name="local.free.space" value="${sf.spec.job.freespace}"/>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    48
    <property name="network.free.space" value="${sf.spec.publish.network.freespace}"/>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    49
    <property name="network.drive" value="${sf.spec.publish.networkdrive}"/>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    50
    <property name="prep.root.dir" value="${sf.spec.job.rootdir}"/>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    51
    <property name="publish" value="${sf.spec.publish.enable}"/>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    52
    <property name="publish.root.dir" value="${sf.spec.publish.rootdir}"/>
197
e7c76e615b76 Initial implementation of publishing to Diamonds
Dario Sestito <darios@symbian.org>
parents: 196
diff changeset
    53
    <property name="diamonds.host" value="${sf.spec.publish.diamonds.server}"/>
e7c76e615b76 Initial implementation of publishing to Diamonds
Dario Sestito <darios@symbian.org>
parents: 196
diff changeset
    54
    <property name="diamonds.port" value="${sf.spec.publish.diamonds.port}"/>
e7c76e615b76 Initial implementation of publishing to Diamonds
Dario Sestito <darios@symbian.org>
parents: 196
diff changeset
    55
    <property name="diamonds.path" value="${sf.spec.publish.diamonds.path}"/>
594
3692c6f462b4 Reviewed build category and tags
Dario Sestito <darios@symbian.org>
parents: 473
diff changeset
    56
    <property name="build.family" value="${sf.spec.job.name}"/>
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    57
    <property name="build.system" value="${sf.spec.build.system}"/>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    58
    <property name="base_release.path" value="${sf.spec.baseline.location}"/>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    59
    <property name="base_release.getenv_options" value="${sf.spec.baseline.getenv_options}"/>
389
ea20e8722576 Default BuildEnv.xml file can now be overridden by one delivered in FBF project. Check can also be skipped by setting sf.suppress.buildenv.check property.
Shabe Razvi <shaber@symbian.org>
parents: 381
diff changeset
    60
    <property name="ccm.user.password" value="set_to_any_value_to_skip_scm_checks__for_helium_5"/>
857
c72c6eafadc6 Added new logic to deal with drive letter allocation when builds are launched from Hudson.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
    61
    <property name="ats.drive" value="${sf.spec.ats_worker.drive}"/>
926
86dabb8aa2dd Relocated Helium 7 *.log.dir property settings from root build.xml to common\build.xml so that 'sf.spec.job.drive' works again.
MattD <mattd@symbian.org>
parents: 923
diff changeset
    62
    <property name="skip.sbs.layer.generation" value="true"/> <!-- helium 7: needs to be predefined before hlm import -->
971
35d8126bcf87 Use qt.qmake.ant.template property for custom qmake template
Shabe Razvi <shaber@symbian.org>
parents: 950
diff changeset
    63
    <property name="qt.qmake.ant.template" value="${sf.common.config.dir}/templates/run-qmake.ant.xml.ftl"/> <!-- override helium default to use our own template -->
35d8126bcf87 Use qt.qmake.ant.template property for custom qmake template
Shabe Razvi <shaber@symbian.org>
parents: 950
diff changeset
    64
    
926
86dabb8aa2dd Relocated Helium 7 *.log.dir property settings from root build.xml to common\build.xml so that 'sf.spec.job.drive' works again.
MattD <mattd@symbian.org>
parents: 923
diff changeset
    65
    <!-- override helium 7 defaults to operate like helium 5.
86dabb8aa2dd Relocated Helium 7 *.log.dir property settings from root build.xml to common\build.xml so that 'sf.spec.job.drive' works again.
MattD <mattd@symbian.org>
parents: 923
diff changeset
    66
       *.log.dir props dont exist yet so need to be set now, otherwise they 
86dabb8aa2dd Relocated Helium 7 *.log.dir property settings from root build.xml to common\build.xml so that 'sf.spec.job.drive' works again.
MattD <mattd@symbian.org>
parents: 923
diff changeset
    67
       become immutable after helium.ant.xml import -->
86dabb8aa2dd Relocated Helium 7 *.log.dir property settings from root build.xml to common\build.xml so that 'sf.spec.job.drive' works again.
MattD <mattd@symbian.org>
parents: 923
diff changeset
    68
      
86dabb8aa2dd Relocated Helium 7 *.log.dir property settings from root build.xml to common\build.xml so that 'sf.spec.job.drive' works again.
MattD <mattd@symbian.org>
parents: 923
diff changeset
    69
    <property name="prep.log.dir"    value="${build.drive}/output/logs"/>
1109
cae69bccf0cc Output all generated makefiles into compile subdir - to cleanup number of generated files in output\logs
Shabe Razvi <shaber@symbian.org>
parents: 1106
diff changeset
    70
    <!-- property name="compile.log.dir" value="${build.drive}/output/logs"/-->
926
86dabb8aa2dd Relocated Helium 7 *.log.dir property settings from root build.xml to common\build.xml so that 'sf.spec.job.drive' works again.
MattD <mattd@symbian.org>
parents: 923
diff changeset
    71
    <property name="post.log.dir"    value="${build.drive}/output/logs"/>
86dabb8aa2dd Relocated Helium 7 *.log.dir property settings from root build.xml to common\build.xml so that 'sf.spec.job.drive' works again.
MattD <mattd@symbian.org>
parents: 923
diff changeset
    72
    <property name="archive.log.dir"    value="${build.drive}/output/logs"/>
86dabb8aa2dd Relocated Helium 7 *.log.dir property settings from root build.xml to common\build.xml so that 'sf.spec.job.drive' works again.
MattD <mattd@symbian.org>
parents: 923
diff changeset
    73
    <property name="signals.log.dir"    value="${build.drive}/output/logs"/>
86dabb8aa2dd Relocated Helium 7 *.log.dir property settings from root build.xml to common\build.xml so that 'sf.spec.job.drive' works again.
MattD <mattd@symbian.org>
parents: 923
diff changeset
    74
     
368
cb0ec85c881d Set Raptor -j option to 2 for package builds
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
    75
    <if>
cb0ec85c881d Set Raptor -j option to 2 for package builds
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
    76
      <isset property="sf.spec.sbs.numberofjobs"/>
cb0ec85c881d Set Raptor -j option to 2 for package builds
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
    77
      <then>
cb0ec85c881d Set Raptor -j option to 2 for package builds
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
    78
        <property name="number.of.threads" value="${sf.spec.sbs.numberofjobs}"/>
cb0ec85c881d Set Raptor -j option to 2 for package builds
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
    79
      </then>
cb0ec85c881d Set Raptor -j option to 2 for package builds
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
    80
    </if>
263
5ee8d148ce40 Make BC testing more robust. Now requires PDT_HOME env var to be set rather than fail silently. Plus Logs zip tidy up.
Shabe Razvi <shaber@symbian.org>
parents: 262
diff changeset
    81
    
624
5264fdaaf0c6 Make sf.spec.job.codeline the publishing category
Dario Sestito <darios@symbian.org>
parents: 618
diff changeset
    82
    <property name="sf.diamonds.tags" value="_${sf.spec.job.codeline},${sf.spec.publish.diamonds.tag}"/>
594
3692c6f462b4 Reviewed build category and tags
Dario Sestito <darios@symbian.org>
parents: 473
diff changeset
    83
    
198
4b1e939c052c Added yarp to diamonds publishing
Dario Sestito <darios@symbian.org>
parents: 197
diff changeset
    84
    <!-- SF-specific Helium properties not meant to be exposed in the project spec -->
4b1e939c052c Added yarp to diamonds publishing
Dario Sestito <darios@symbian.org>
parents: 197
diff changeset
    85
    <property name="diamonds.listener.configuration.file" location="${sf.common.config.dir}/diamonds/config.xml.ftl"/>
4b1e939c052c Added yarp to diamonds publishing
Dario Sestito <darios@symbian.org>
parents: 197
diff changeset
    86
    
360
38e924ed959d Created framework for separating postbuild related activities into a separate file.
Simon Howkins <simonh@symbian.org>
parents: 358
diff changeset
    87
    <!-- Import all core HELIUM targets -->
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    88
    <import file="${helium.dir}/helium.ant.xml" />
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    89
    
360
38e924ed959d Created framework for separating postbuild related activities into a separate file.
Simon Howkins <simonh@symbian.org>
parents: 358
diff changeset
    90
    <!-- Import common references -->
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    91
    <import file="${sf.common.config.dir}/common_refs.ant.xml" />
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
    92
             
360
38e924ed959d Created framework for separating postbuild related activities into a separate file.
Simon Howkins <simonh@symbian.org>
parents: 358
diff changeset
    93
    <!-- Import functionality distributed into other file(s) -->
38e924ed959d Created framework for separating postbuild related activities into a separate file.
Simon Howkins <simonh@symbian.org>
parents: 358
diff changeset
    94
    <import file="${sf.common.config.dir}/build.postbuild.xml"/>
1110
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
    95
    
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
    96
    <!-- Import test functionality distributed into other file(s) -->
381
ad45f298ad85 Test targets seperated from "build.postbuild.xml" and put into "build.test.xml"
royt <tathagatar@symbian.org>
parents: 377
diff changeset
    97
    <import file="${sf.common.config.dir}/build.test.xml"/>
389
ea20e8722576 Default BuildEnv.xml file can now be overridden by one delivered in FBF project. Check can also be skipped by setting sf.suppress.buildenv.check property.
Shabe Razvi <shaber@symbian.org>
parents: 381
diff changeset
    98
    
914
e4c5389160b3 Fix scan_antlogs.pl execution plus fix ConE calls to use PDT_HOME env variable
Shabe Razvi <shaber@symbian.org>
parents: 913
diff changeset
    99
    <!-- helium 7+ compatability. needs to be defined -->
899
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
   100
    <if>
914
e4c5389160b3 Fix scan_antlogs.pl execution plus fix ConE calls to use PDT_HOME env variable
Shabe Razvi <shaber@symbian.org>
parents: 913
diff changeset
   101
      <not><or>
e4c5389160b3 Fix scan_antlogs.pl execution plus fix ConE calls to use PDT_HOME env variable
Shabe Razvi <shaber@symbian.org>
parents: 913
diff changeset
   102
        <equals arg1="${helium.version}" arg2="5.0"/>
e4c5389160b3 Fix scan_antlogs.pl execution plus fix ConE calls to use PDT_HOME env variable
Shabe Razvi <shaber@symbian.org>
parents: 913
diff changeset
   103
        <equals arg1="${last.major.helium.version}" arg2="5.0"/>
e4c5389160b3 Fix scan_antlogs.pl execution plus fix ConE calls to use PDT_HOME env variable
Shabe Razvi <shaber@symbian.org>
parents: 913
diff changeset
   104
      </or></not>
899
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
   105
      <then>
927
a15a7e841752 Turn off zipContentMacro failure for empty zip targets in Helium 7
Shabe Razvi <shaber@symbian.org>
parents: 926
diff changeset
   106
          <property name="sf.using.newer.than.helium5" value="true"/>
899
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
   107
          <property name="schema.new" value="true"/>
913
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents: 901
diff changeset
   108
          <property name="skip.sbs.parser.exception" value="true"/>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents: 901
diff changeset
   109
          
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents: 901
diff changeset
   110
          <!-- Never fail on sbs compile errors -->
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents: 901
diff changeset
   111
          <hlm:signalInput id="compileSignalInput" failbuild="never">
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents: 901
diff changeset
   112
            <hlm:notifierListRef refid="defaultFailNotifier" />
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents: 901
diff changeset
   113
          </hlm:signalInput>
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents: 901
diff changeset
   114
          
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents: 901
diff changeset
   115
          <hlm:signalInput id="raptorErrorSignalInput" failbuild="never">
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents: 901
diff changeset
   116
            <hlm:notifierListRef refid="defaultFailNotifier" />
eeffe74cd1b2 Add initial support for Helium7 for the platform.
Shabe Razvi <shaber@symbian.org>
parents: 901
diff changeset
   117
          </hlm:signalInput>
972
608adae327af Prevent qmake from failing build by suppressing 'signalRunQMakeInput' signal
Shabe Razvi <shaber@symbian.org>
parents: 971
diff changeset
   118
608adae327af Prevent qmake from failing build by suppressing 'signalRunQMakeInput' signal
Shabe Razvi <shaber@symbian.org>
parents: 971
diff changeset
   119
          <hlm:signalInput id="signalRunQMakeInput" failbuild="never">
608adae327af Prevent qmake from failing build by suppressing 'signalRunQMakeInput' signal
Shabe Razvi <shaber@symbian.org>
parents: 971
diff changeset
   120
            <hlm:notifierListRef refid="defaultFailNotifier" />
608adae327af Prevent qmake from failing build by suppressing 'signalRunQMakeInput' signal
Shabe Razvi <shaber@symbian.org>
parents: 971
diff changeset
   121
          </hlm:signalInput>
1100
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   122
          
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   123
           <!-- allow use of a release_metadata.xml without all referenced files being present -->
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   124
          <hlm:signalInput id="getenvSignalInput" failbuild="never">
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   125
              <hlm:notifierListRef refid="defaultFailNotifier" />
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   126
          </hlm:signalInput>
1127
67268c5a3e6d Configure stages correctly for prep, compile and postbuild.
Shabe Razvi <shaber@symbian.org>
parents: 1117
diff changeset
   127
67268c5a3e6d Configure stages correctly for prep, compile and postbuild.
Shabe Razvi <shaber@symbian.org>
parents: 1117
diff changeset
   128
          <!-- configure stages -->
1128
14c8058c3fa1 Configure preparation stage correctly
Shabe Razvi <shaber@symbian.org>
parents: 1127
diff changeset
   129
          <hlm:stage id="preparation" starttarget="sf-prebuild" endtarget="sf-prebuild"/>
1127
67268c5a3e6d Configure stages correctly for prep, compile and postbuild.
Shabe Razvi <shaber@symbian.org>
parents: 1117
diff changeset
   130
          <hlm:stage id="compilation" starttarget="sf-compile" endtarget="sf-compile"/>
67268c5a3e6d Configure stages correctly for prep, compile and postbuild.
Shabe Razvi <shaber@symbian.org>
parents: 1117
diff changeset
   131
          <hlm:stage id="postbuild" starttarget="sf-postbuild" endtarget="sf-postbuild"/>
67268c5a3e6d Configure stages correctly for prep, compile and postbuild.
Shabe Razvi <shaber@symbian.org>
parents: 1117
diff changeset
   132
899
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
   133
      </then>
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
   134
    </if>
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
   135
    
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
   136
    <!--
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
   137
      - END OF PROPERTY DEFINITIONS, TARGETS START HERE
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
   138
      -->
d80a65072ed8 Add Helium 7 support for package builds.
Shabe Razvi <shaber@symbian.org>
parents: 874
diff changeset
   139
    
1055
d3c5525768c5 Take envinfo.pl from the utilities repo
Dario Sestito <darios@symbian.org>
parents: 1045
diff changeset
   140
    <target name="sf-prep" depends="sf-prep-announce,prep-drive,init-build-area,create-bom,log-build-env,sf-get-utils">
367
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   141
        <!-- Test for the disk space we would like for this build -->
1110
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   142
        <fail>
367
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   143
            <condition>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   144
                <not>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   145
                    <or>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   146
                        <isset property="sf.suppress.drive.space.check"/>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   147
                        <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
   148
                    </or>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   149
                </not>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   150
            </condition>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   151
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
   152
        </fail>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   153
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   154
        <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
   155
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
   156
        <runtarget target="sf-check-env"/>
1100
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   157
        
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   158
        <!-- create zips folder for use later -->
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   159
        <mkdir dir="${build.drive}/output/zips"/>
861
caa0601f50c5 Added stopwatch tasks through most of the code hit during a platform build.
Simon Howkins <simonh@symbian.org>
parents: 860
diff changeset
   160
        <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
   161
    </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
   162
caa0601f50c5 Added stopwatch tasks through most of the code hit during a platform build.
Simon Howkins <simonh@symbian.org>
parents: 860
diff changeset
   163
    <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
   164
        <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
   165
        <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
   166
    </target>
caa0601f50c5 Added stopwatch tasks through most of the code hit during a platform build.
Simon Howkins <simonh@symbian.org>
parents: 860
diff changeset
   167
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
   168
    <target name="sf-check-env">
1057
1302574aca03 Use new tools to publish and compare environment information
Dario Sestito <darios@symbian.org>
parents: 1055
diff changeset
   169
        <echo message="Create report on environment info"/>
1302574aca03 Use new tools to publish and compare environment information
Dario Sestito <darios@symbian.org>
parents: 1055
diff changeset
   170
        <!-- Dario's environment dumper -->
1100
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   171
        <if>
1057
1302574aca03 Use new tools to publish and compare environment information
Dario Sestito <darios@symbian.org>
parents: 1055
diff changeset
   172
            <isset property="sf.spec.baseline.location"/>
1302574aca03 Use new tools to publish and compare environment information
Dario Sestito <darios@symbian.org>
parents: 1055
diff changeset
   173
            <then>
1302574aca03 Use new tools to publish and compare environment information
Dario Sestito <darios@symbian.org>
parents: 1055
diff changeset
   174
                <exec executable="perl" dir="${build.drive}/utilities/envinfo">
1302574aca03 Use new tools to publish and compare environment information
Dario Sestito <darios@symbian.org>
parents: 1055
diff changeset
   175
                    <arg value="envinfo.pl"/>
1302574aca03 Use new tools to publish and compare environment information
Dario Sestito <darios@symbian.org>
parents: 1055
diff changeset
   176
                    <arg value="-r"/>
1302574aca03 Use new tools to publish and compare environment information
Dario Sestito <darios@symbian.org>
parents: 1055
diff changeset
   177
                    <arg value="-c"/>
1302574aca03 Use new tools to publish and compare environment information
Dario Sestito <darios@symbian.org>
parents: 1055
diff changeset
   178
                    <arg value="${sf.spec.baseline.location}"/>
1302574aca03 Use new tools to publish and compare environment information
Dario Sestito <darios@symbian.org>
parents: 1055
diff changeset
   179
                </exec>
1302574aca03 Use new tools to publish and compare environment information
Dario Sestito <darios@symbian.org>
parents: 1055
diff changeset
   180
            </then>
1302574aca03 Use new tools to publish and compare environment information
Dario Sestito <darios@symbian.org>
parents: 1055
diff changeset
   181
            <else>
1302574aca03 Use new tools to publish and compare environment information
Dario Sestito <darios@symbian.org>
parents: 1055
diff changeset
   182
                <exec executable="perl" dir="${build.drive}/utilities/envinfo">
1302574aca03 Use new tools to publish and compare environment information
Dario Sestito <darios@symbian.org>
parents: 1055
diff changeset
   183
                    <arg value="envinfo.pl"/>
1302574aca03 Use new tools to publish and compare environment information
Dario Sestito <darios@symbian.org>
parents: 1055
diff changeset
   184
                    <arg value="-r"/>
1302574aca03 Use new tools to publish and compare environment information
Dario Sestito <darios@symbian.org>
parents: 1055
diff changeset
   185
                </exec>
1302574aca03 Use new tools to publish and compare environment information
Dario Sestito <darios@symbian.org>
parents: 1055
diff changeset
   186
            </else>
1302574aca03 Use new tools to publish and compare environment information
Dario Sestito <darios@symbian.org>
parents: 1055
diff changeset
   187
      </if>
1302574aca03 Use new tools to publish and compare environment information
Dario Sestito <darios@symbian.org>
parents: 1055
diff changeset
   188
      <echo message="Translate \output\logs\envinfo.txt into a Diamonds file"/>
1302574aca03 Use new tools to publish and compare environment information
Dario Sestito <darios@symbian.org>
parents: 1055
diff changeset
   189
      <exec executable="perl" dir="${build.drive}">
1302574aca03 Use new tools to publish and compare environment information
Dario Sestito <darios@symbian.org>
parents: 1055
diff changeset
   190
          <arg value="${sf.common.config.dir}/tools/envinfo2diamonds.pl"/>
1302574aca03 Use new tools to publish and compare environment information
Dario Sestito <darios@symbian.org>
parents: 1055
diff changeset
   191
      </exec>
1110
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   192
        
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
   193
        <!-- 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
   194
        <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
   195
            <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
   196
                <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
   197
            </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
   198
            <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
   199
                <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
   200
            </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
   201
        </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
   202
        
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
   203
        <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
   204
        <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
   205
            <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
   206
            <arg value="--xml=${sf.buildenv.location}/BuildEnv.xml"/>
358
61571c10c5d0 Added Build environment check feature
ThomasE
parents: 356
diff changeset
   207
            <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
   208
            <arg value="--sbs='${sf.spec.sbs.config}'"/>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   209
            <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
   210
            <arg value="Common"/>
bed8f6bc974b Added disk space check for all builds.
Simon Howkins <simonh@symbian.org>
parents: 366
diff changeset
   211
        </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
   212
        <!-- 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
   213
            <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
   214
            <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
   215
            <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
   216
            <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
   217
        </antcall -->
604
aa36fa431e3d Added processing of the BuildEnvironmentCheck for BRAG purposes.
Simon Howkins <simonh@symbian.org>
parents: 603
diff changeset
   218
        <fail>
aa36fa431e3d Added processing of the BuildEnvironmentCheck for BRAG purposes.
Simon Howkins <simonh@symbian.org>
parents: 603
diff changeset
   219
            <condition>
aa36fa431e3d Added processing of the BuildEnvironmentCheck for BRAG purposes.
Simon Howkins <simonh@symbian.org>
parents: 603
diff changeset
   220
                <not>
aa36fa431e3d Added processing of the BuildEnvironmentCheck for BRAG purposes.
Simon Howkins <simonh@symbian.org>
parents: 603
diff changeset
   221
                    <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
   222
                        <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
   223
                        <isset property="sf.suppress.buildenv.check"/>
aa36fa431e3d Added processing of the BuildEnvironmentCheck for BRAG purposes.
Simon Howkins <simonh@symbian.org>
parents: 603
diff changeset
   224
                    </or>
aa36fa431e3d Added processing of the BuildEnvironmentCheck for BRAG purposes.
Simon Howkins <simonh@symbian.org>
parents: 603
diff changeset
   225
                </not>
aa36fa431e3d Added processing of the BuildEnvironmentCheck for BRAG purposes.
Simon Howkins <simonh@symbian.org>
parents: 603
diff changeset
   226
            </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
   227
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
   228
        </fail>
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   229
    </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
   230
1113
488afbbbaebd Only load public properties if available, and restore generate-layers override to maintain Helium 5 compatibility.
Shabe Razvi <shaber@symbian.org>
parents: 1110
diff changeset
   231
    <!-- Note: Not used from Helium 7 onwards -->
488afbbbaebd Only load public properties if available, and restore generate-layers override to maintain Helium 5 compatibility.
Shabe Razvi <shaber@symbian.org>
parents: 1110
diff changeset
   232
    <target name="generate-layers">
488afbbbaebd Only load public properties if available, and restore generate-layers override to maintain Helium 5 compatibility.
Shabe Razvi <shaber@symbian.org>
parents: 1110
diff changeset
   233
       <echo message="canno-file:${canonical.sysdef.file}"/>
488afbbbaebd Only load public properties if available, and restore generate-layers override to maintain Helium 5 compatibility.
Shabe Razvi <shaber@symbian.org>
parents: 1110
diff changeset
   234
       <echo message="raptor-filters:raptor_${sysdef.configuration}"/>
488afbbbaebd Only load public properties if available, and restore generate-layers override to maintain Helium 5 compatibility.
Shabe Razvi <shaber@symbian.org>
parents: 1110
diff changeset
   235
488afbbbaebd Only load public properties if available, and restore generate-layers override to maintain Helium 5 compatibility.
Shabe Razvi <shaber@symbian.org>
parents: 1110
diff changeset
   236
       <!-- All we want is a sysdef with the config name appended, so just copy it -->
488afbbbaebd Only load public properties if available, and restore generate-layers override to maintain Helium 5 compatibility.
Shabe Razvi <shaber@symbian.org>
parents: 1110
diff changeset
   237
       <echo message="INFO: Skip GenXML and copy sysdef to sysdef+config name"/>
488afbbbaebd Only load public properties if available, and restore generate-layers override to maintain Helium 5 compatibility.
Shabe Razvi <shaber@symbian.org>
parents: 1110
diff changeset
   238
       <copy file="${canonical.sysdef.file}" tofile="${build.drive}/output/build/canonical_system_definition_${sysdef.configuration}_temp.xml"/>
488afbbbaebd Only load public properties if available, and restore generate-layers override to maintain Helium 5 compatibility.
Shabe Razvi <shaber@symbian.org>
parents: 1110
diff changeset
   239
488afbbbaebd Only load public properties if available, and restore generate-layers override to maintain Helium 5 compatibility.
Shabe Razvi <shaber@symbian.org>
parents: 1110
diff changeset
   240
        <copy file="${build.drive}/output/build/canonical_system_definition_${sysdef.configuration}_temp.xml" tofile="${build.drive}/output/build/canonical_system_definition_${sysdef.configuration}.xml">
488afbbbaebd Only load public properties if available, and restore generate-layers override to maintain Helium 5 compatibility.
Shabe Razvi <shaber@symbian.org>
parents: 1110
diff changeset
   241
        <filterchain>
488afbbbaebd Only load public properties if available, and restore generate-layers override to maintain Helium 5 compatibility.
Shabe Razvi <shaber@symbian.org>
parents: 1110
diff changeset
   242
            <linecontainsregexp negate="true">
488afbbbaebd Only load public properties if available, and restore generate-layers override to maintain Helium 5 compatibility.
Shabe Razvi <shaber@symbian.org>
parents: 1110
diff changeset
   243
                <regexp pattern="^\s*$"/>
488afbbbaebd Only load public properties if available, and restore generate-layers override to maintain Helium 5 compatibility.
Shabe Razvi <shaber@symbian.org>
parents: 1110
diff changeset
   244
            </linecontainsregexp>
488afbbbaebd Only load public properties if available, and restore generate-layers override to maintain Helium 5 compatibility.
Shabe Razvi <shaber@symbian.org>
parents: 1110
diff changeset
   245
        </filterchain>
488afbbbaebd Only load public properties if available, and restore generate-layers override to maintain Helium 5 compatibility.
Shabe Razvi <shaber@symbian.org>
parents: 1110
diff changeset
   246
        </copy>
488afbbbaebd Only load public properties if available, and restore generate-layers override to maintain Helium 5 compatibility.
Shabe Razvi <shaber@symbian.org>
parents: 1110
diff changeset
   247
        <copy file="${build.drive}/output/build/canonical_system_definition_${sysdef.configuration}.xml" todir="${build.log.dir}/BOM/"/>
488afbbbaebd Only load public properties if available, and restore generate-layers override to maintain Helium 5 compatibility.
Shabe Razvi <shaber@symbian.org>
parents: 1110
diff changeset
   248
        <delete file="${build.drive}/output/build/canonical_system_definition_${sysdef.configuration}_temp.xml"/>
488afbbbaebd Only load public properties if available, and restore generate-layers override to maintain Helium 5 compatibility.
Shabe Razvi <shaber@symbian.org>
parents: 1110
diff changeset
   249
    </target>
488afbbbaebd Only load public properties if available, and restore generate-layers override to maintain Helium 5 compatibility.
Shabe Razvi <shaber@symbian.org>
parents: 1110
diff changeset
   250
366
cde2244c8ea6 First drop of script to generate build summary
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
   251
    <target name="sf-summary" depends="">
cde2244c8ea6 First drop of script to generate build summary
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
   252
        <echo>[SF-SUMMARY]</echo>
cde2244c8ea6 First drop of script to generate build summary
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
   253
        <echo message="Generating build summary"/>
cde2244c8ea6 First drop of script to generate build summary
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
   254
        <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
   255
          <arg value="brag_script.pl"/>
cde2244c8ea6 First drop of script to generate build summary
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
   256
          <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
   257
          <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
   258
        </exec>
cde2244c8ea6 First drop of script to generate build summary
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
   259
    </target>
cde2244c8ea6 First drop of script to generate build summary
Dario Sestito <darios@symbian.org>
parents: 365
diff changeset
   260
    
415
cc2965329dd1 Removed unnecessary target.
Simon Howkins <simonh@symbian.org>
parents: 414
diff changeset
   261
    <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
   262
        <echo>[SF-BUILD-ALL]</echo>
cc2965329dd1 Removed unnecessary target.
Simon Howkins <simonh@symbian.org>
parents: 414
diff changeset
   263
    </target>
cc2965329dd1 Removed unnecessary target.
Simon Howkins <simonh@symbian.org>
parents: 414
diff changeset
   264
    
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
   265
    <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
   266
        <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
   267
    </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
   268
414
40b07ed8f169 Restructure sf-prebuild to ensure that sf-build-all doesnt invoke sf-prep.
Shabe Razvi <shaber@symbian.org>
parents: 397
diff changeset
   269
    <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
   270
        <echo>[SF-BUILD]</echo>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   271
    </target>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   272
    
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
   273
    <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
   274
        <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
   275
            <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
   276
            <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
   277
                <!-- 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
   278
                <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
   279
            </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
   280
        </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
   281
        <!-- 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
   282
        <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
   283
    </target>
123
5b2818c52aae Add optiona BC checking to build process
Louis Henry Nayegon <louisn@symbian.org>
parents: 114
diff changeset
   284
414
40b07ed8f169 Restructure sf-prebuild to ensure that sf-build-all doesnt invoke sf-prep.
Shabe Razvi <shaber@symbian.org>
parents: 397
diff changeset
   285
    <target name="sf-prebuild" depends="sf-prep,sf-prebuild-noprep"/>
1055
d3c5525768c5 Take envinfo.pl from the utilities repo
Dario Sestito <darios@symbian.org>
parents: 1045
diff changeset
   286
    <target name="sf-prebuild-noprep" depends="sf-prebuild-announce,sf-diamonds-connect,sf-diamonds-envinfo,sf-diamonds-tag-build,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
   287
        <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
   288
    </target>
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   289
    
395
1f4867b1e0c1 Updated the mechanism for the conditional execution of sf-diamods-tag-build
Simon Howkins <simonh@symbian.org>
parents: 393
diff changeset
   290
    <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
   291
        <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
   292
        <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
   293
    </target>
601
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents: 596
diff changeset
   294
    
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents: 596
diff changeset
   295
    <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
   296
      <if>
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents: 596
diff changeset
   297
        <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
   298
        <then>
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents: 596
diff changeset
   299
          <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
   300
          <runtarget target="diamonds"/>
602
Dario Sestito <darios@symbian.org>
parents: 599 601
diff changeset
   301
          <echo message="Save Diamonds build id value (${diamonds.build.id}) in a file"/>
Dario Sestito <darios@symbian.org>
parents: 599 601
diff changeset
   302
          <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
   303
        </then>
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents: 596
diff changeset
   304
      </if>
1158
739036c00f80 Add bitops.pl. Dump start info and envinfo to bitinfo.txt
Dario Sestito <darios@symbian.org>
parents: 1128
diff changeset
   305
      
739036c00f80 Add bitops.pl. Dump start info and envinfo to bitinfo.txt
Dario Sestito <darios@symbian.org>
parents: 1128
diff changeset
   306
      <tstamp>
739036c00f80 Add bitops.pl. Dump start info and envinfo to bitinfo.txt
Dario Sestito <darios@symbian.org>
parents: 1128
diff changeset
   307
        <format property="time.now" pattern="yyyy-MM-dd HH:mm:ss" locale="en,UK"/>
739036c00f80 Add bitops.pl. Dump start info and envinfo to bitinfo.txt
Dario Sestito <darios@symbian.org>
parents: 1128
diff changeset
   308
      </tstamp>
739036c00f80 Add bitops.pl. Dump start info and envinfo to bitinfo.txt
Dario Sestito <darios@symbian.org>
parents: 1128
diff changeset
   309
739036c00f80 Add bitops.pl. Dump start info and envinfo to bitinfo.txt
Dario Sestito <darios@symbian.org>
parents: 1128
diff changeset
   310
      <echo message="build_id_string	${sf.spec.job.name}_${sf.spec.job.codeline}.${sf.spec.job.number}" file="${build.log.dir}/bitinfo.txt" append="true"/>
739036c00f80 Add bitops.pl. Dump start info and envinfo to bitinfo.txt
Dario Sestito <darios@symbian.org>
parents: 1128
diff changeset
   311
      <echo message="package	${sf.spec.job.name}" file="${build.log.dir}/bitinfo.txt" append="true"/>
739036c00f80 Add bitops.pl. Dump start info and envinfo to bitinfo.txt
Dario Sestito <darios@symbian.org>
parents: 1128
diff changeset
   312
      <echo message="platform	${sf.spec.job.codeline}" file="${build.log.dir}/bitinfo.txt" append="true"/>
739036c00f80 Add bitops.pl. Dump start info and envinfo to bitinfo.txt
Dario Sestito <darios@symbian.org>
parents: 1128
diff changeset
   313
      <echo message="started	${time.now}" file="${build.log.dir}/bitinfo.txt" append="true"/>
739036c00f80 Add bitops.pl. Dump start info and envinfo to bitinfo.txt
Dario Sestito <darios@symbian.org>
parents: 1128
diff changeset
   314
      <echo message="creator	${env.USERNAME}" file="${build.log.dir}/bitinfo.txt" append="true"/>
739036c00f80 Add bitops.pl. Dump start info and envinfo to bitinfo.txt
Dario Sestito <darios@symbian.org>
parents: 1128
diff changeset
   315
      <echo message="machine	${env.COMPUTERNAME}" file="${build.log.dir}/bitinfo.txt" append="true"/>
601
3489a650c6fa Upload codeline and sf.spec.diamonds.tag as Diamonds tags
Dario Sestito <darios@symbian.org>
parents: 596
diff changeset
   316
    </target>
884
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   317
    
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   318
    <target name="sf-diamonds-envinfo">
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   319
      <if>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   320
        <istrue value="${sf.spec.publish.enable}"/>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   321
        <then>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   322
          <echo>[SF-DIAMONDS-ENVINFO]</echo>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   323
          <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
   324
          <exec executable="python">
1110
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   325
            <arg value="${sf.common.config.dir}/tools/brag/send_xml_to_diamonds.py"/>
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   326
            <arg value="-u"/>
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   327
            <arg value="http://${diamonds.host}${diamonds.build.id}"/>
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   328
            <arg value="-f"/>
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   329
            <arg value="${build.log.dir}/diamonds_envinfo.xml"/>
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   330
          </exec>
884
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   331
        </then>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   332
      </if>
18fc0e69c5b8 Dump environment info to Diamonds
Dario Sestito <darios@symbian.org>
parents: 880
diff changeset
   333
    </target>
395
1f4867b1e0c1 Updated the mechanism for the conditional execution of sf-diamods-tag-build
Simon Howkins <simonh@symbian.org>
parents: 393
diff changeset
   334
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
   335
    <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
   336
      <if>
1f4867b1e0c1 Updated the mechanism for the conditional execution of sf-diamods-tag-build
Simon Howkins <simonh@symbian.org>
parents: 393
diff changeset
   337
        <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
   338
        <then>
1f4867b1e0c1 Updated the mechanism for the conditional execution of sf-diamods-tag-build
Simon Howkins <simonh@symbian.org>
parents: 393
diff changeset
   339
          <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
   340
          <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
   341
          <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
   342
            <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
   343
            <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
   344
            <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
   345
          </exec>
395
1f4867b1e0c1 Updated the mechanism for the conditional execution of sf-diamods-tag-build
Simon Howkins <simonh@symbian.org>
parents: 393
diff changeset
   346
        </then>
1f4867b1e0c1 Updated the mechanism for the conditional execution of sf-diamods-tag-build
Simon Howkins <simonh@symbian.org>
parents: 393
diff changeset
   347
      </if>
321
55c062276b22 Enable build tagging on Diamonds (default: 'test')
Dario Sestito <darios@symbian.org>
parents: 320
diff changeset
   348
    </target>
55c062276b22 Enable build tagging on Diamonds (default: 'test')
Dario Sestito <darios@symbian.org>
parents: 320
diff changeset
   349
    
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
   350
    <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
   351
        <!-- 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
   352
        <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
   353
        
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
   354
        <!-- 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
   355
        <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
   356
            <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
   357
            <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
   358
        </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
   359
        <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
   360
        <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
   361
            <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
   362
            <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
   363
        </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
   364
        <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
   365
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
   366
        <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
   367
            <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
   368
            <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
   369
        </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
   370
        <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
   371
        <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
   372
            <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
   373
            <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
   374
        </exec>
1100
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   375
        <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
   376
    </target>
906
5239d4d0bed1 Take the UH parser from the utilities repo
Dario Sestito <darios@symbian.org>
parents: 901
diff changeset
   377
    
5239d4d0bed1 Take the UH parser from the utilities repo
Dario Sestito <darios@symbian.org>
parents: 901
diff changeset
   378
    <target name="sf-get-utils">
1100
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   379
      <stopwatch name="sf-get-utils"/>
1008
5600a84475d7 Rationalised indentation
Simon Howkins <simonh@symbian.org>
parents: 996
diff changeset
   380
        <echo message="Cloning utilities repository to ${build.drive}/utilities"/>
5600a84475d7 Rationalised indentation
Simon Howkins <simonh@symbian.org>
parents: 996
diff changeset
   381
        <exec executable="hg">
5600a84475d7 Rationalised indentation
Simon Howkins <simonh@symbian.org>
parents: 996
diff changeset
   382
            <arg value="clone"/>
1045
d822afc3c044 Tweaked so that all revs are cloned from the utilities web repo, but it's still synced to the head of the default branch.
Simon Howkins <simonh@symbian.org>
parents: 1008
diff changeset
   383
            <arg value="--updaterev"/>
d822afc3c044 Tweaked so that all revs are cloned from the utilities web repo, but it's still synced to the head of the default branch.
Simon Howkins <simonh@symbian.org>
parents: 1008
diff changeset
   384
            <arg value="default"/>
1008
5600a84475d7 Rationalised indentation
Simon Howkins <simonh@symbian.org>
parents: 996
diff changeset
   385
            <arg value="http://developer.symbian.org/oss/MCL/sftools/fbf/utilities"/>
5600a84475d7 Rationalised indentation
Simon Howkins <simonh@symbian.org>
parents: 996
diff changeset
   386
            <arg value="${build.drive}/utilities"/>
5600a84475d7 Rationalised indentation
Simon Howkins <simonh@symbian.org>
parents: 996
diff changeset
   387
        </exec>
1100
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   388
      <stopwatch name="sf-get-utils" action="elapsed"/>
906
5239d4d0bed1 Take the UH parser from the utilities repo
Dario Sestito <darios@symbian.org>
parents: 901
diff changeset
   389
    </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
   390
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
   391
    <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
   392
        <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
   393
        <!-- create BOM dir -->
555e9b4085ea Removed unnecessary dependencies, to untangle the dependency graph a little.
Simon Howkins <simonh@symbian.org>
parents: 698
diff changeset
   394
        <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
   395
        
397
3a9cb357ea5d Separated download of baselines, syncing of source and "diamondizing" the BOM into completely separate targets.
Simon Howkins <simonh@symbian.org>
parents: 396
diff changeset
   396
        <!-- 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
   397
        <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
   398
        <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
   399
            <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
   400
            <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
   401
                <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
   402
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
   403
                <!-- 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
   404
                <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
   405
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
   406
                <!-- 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
   407
                <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
   408
                
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
   409
                <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
   410
                <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
   411
                    <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
   412
                    <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
   413
                </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
   414
                <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
   415
            </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
   416
        </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
   417
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
   418
        <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
   419
        <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
   420
            <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
   421
            <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
   422
                <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
   423
                <!-- 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
   424
                <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
   425
                
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
   426
                <!-- run internal target preparation-getenv -->
1100
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   427
                <delete file="${build.drive}/currentRelease.xml"/>        
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
   428
                <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
   429
                <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
   430
            </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
   431
        </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
   432
        <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
   433
    </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
   434
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
   435
    <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
   436
        <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
   437
            <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
   438
            <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
   439
        </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
   440
    </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
   441
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
   442
    <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
   443
        <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
   444
        <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
   445
        <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
   446
        <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
   447
            <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
   448
            <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
   449
                <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
   450
                <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
   451
            </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
   452
        </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
   453
        <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
   454
    </target>
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   455
    
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
   456
    <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
   457
        <stopwatch name="sf-get-source"/>
939
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 927
diff changeset
   458
        <!-- Get test manifest, and move resolved csv so that it doesnt conflict with source-spec.ant.xml -->
1100
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   459
        <if>
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   460
            <istrue value="${sf.spec.smoketest.enable}"/>
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   461
            <then>
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   462
                <ant antfile="${temp.build.dir}/source-test-spec.ant.xml" />
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   463
                <move file="${build.drive}/output/logs/BOM/sources.csv" tofile="${build.drive}/output/logs/BOM/sources_test.csv"/>
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   464
            </then>
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   465
        </if>
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   466
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   467
1110
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   468
        <if><available file="${temp.build.dir}/source-rnd-spec.ant.xml"/>
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   469
          <then>
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   470
              <ant antfile="${temp.build.dir}/source-rnd-spec.ant.xml" />
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   471
              <move file="${build.drive}/output/logs/BOM/sources.csv" tofile="${build.drive}/output/logs/BOM/sources_rnd.csv"/>
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   472
          </then>
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   473
        </if>
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   474
        
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
   475
        <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
   476
        <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
   477
    </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
   478
    
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   479
    <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
   480
        <!-- 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
   481
        <if>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   482
            <and>    
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   483
                <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
   484
                <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
   485
            </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
   486
            <then>
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   487
                <!-- 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
   488
                <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
   489
                    <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
   490
                    <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
   491
                </exec>
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   492
                <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
   493
                    <sequential>
895
5b76b79b6713 Add missing /
Simon Howkins <simonh@symbian.org>
parents: 892
diff changeset
   494
                        <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
   495
                    </sequential>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   496
                </for>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   497
                <if>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   498
                    <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
   499
                    <then>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   500
                        <!-- 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
   501
                        <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
   502
                            <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
   503
                            <arg value="-capacity"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   504
                        </exec>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   505
                        <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
   506
                        <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
   507
                    </then>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   508
                </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
   509
            </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
   510
        </if>
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 891
diff changeset
   511
        
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
   512
        <!-- 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
   513
        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
   514
        <!-- 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
   515
        <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
   516
        
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   517
        <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
   518
        
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
   519
        <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
   520
            <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
   521
            <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
   522
                <property name="sf.source.csv.file" value="${sf.spec.sourcesync.sourcespecdir}/${sf.spec.sourcesync.sourcespecfile}"/>
1100
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   523
                <property name="sf.source_rnd.csv.file" value="${sf.spec.sourcesync.sourcespecdir}/${sf.spec.sourcesync.sourcespecfile.rnd}"/>
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
   524
            </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
   525
        </if>
1100
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   526
        <property name="sf.source.csv.file"     value="nul:"/>
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   527
        <property name="sf.source_rnd.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
   528
d33d458149b9 Move targets round so that those related to syncing the source are all together.
Simon Howkins <simonh@symbian.org>
parents: 864
diff changeset
   529
        <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
   530
              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
   531
              <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
   532
                    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
   533
                    data: [
939
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 927
diff changeset
   534
                        csv(${sf.source.csv.file}, {separator:','})
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 927
diff changeset
   535
                    ]
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 927
diff changeset
   536
              </data>
4dd6f1dde1fe 1) Add support for parallel makefile generation by spliting compile into two-step operation. export first, followed by compile.
Shabe Razvi <shaber@symbian.org>
parents: 927
diff changeset
   537
        </fmpp>
1110
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   538
		
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   539
        <if><available file="${sf.spec.sourcesync.sourcespecdir}/${sf.spec.sourcesync.sourcespecfile.rnd}"/>
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   540
          <then>
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   541
            <fmpp sourceFile="${sf.common.config.dir}/templates/source-spec.ant.xml.ftl"
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   542
                  outputFile="${temp.build.dir}/source-rnd-spec.ant.xml">
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   543
                  <data expandProperties="yes">
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   544
                        ant: antProperties()
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   545
                        data: [
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   546
                            csv(${sf.source_rnd.csv.file}, {separator:','})
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   547
                        ]
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   548
                  </data>
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   549
            </fmpp>
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   550
          </then>
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   551
        </if>
1100
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   552
        <if>
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   553
            <istrue value="${sf.spec.smoketest.enable}"/>
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   554
            <then>
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   555
            <fmpp sourceFile="${sf.common.config.dir}/templates/source-spec.ant.xml.ftl"
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   556
                  outputFile="${temp.build.dir}/source-test-spec.ant.xml">
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   557
                  <data expandProperties="yes">
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   558
                        ant: antProperties()
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   559
                        data: [
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   560
                            csv(${sf.test.csv.file}, {separator:','})
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   561
                        ]
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   562
                  </data>
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   563
            </fmpp>
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   564
            </then>
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   565
        </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
   566
    </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
   567
    
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
   568
    <!-- 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
   569
    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
   570
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
   571
    <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
   572
        <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
   573
        <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
   574
        <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
   575
    
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
   576
        <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
   577
            <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
   578
            <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
   579
                <echo message="Dirlist name: ${sf.currentlist.name} requested for ${sf.dir.location} excluding ${sf.dir.exclude}"/>
996
64899060ea4d Improve exclusion list generation for tools build
Shabe Razvi <shaber@symbian.org>
parents: 972
diff changeset
   580
                <exec executable="python" dir="${build.drive}/" failonerror="true" output="${build.log.dir}/listdir_${build.id}_${sf.currentlist.name}.log">
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
   581
                    <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
   582
                    <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
   583
                    <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
   584
                </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
   585
            </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
   586
        </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
   587
    </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
   588
    
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
   589
    <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
   590
        <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
   591
        <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
   592
        <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
   593
        
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
   594
        <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
   595
            <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
   596
            <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
   597
                <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
   598
                <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
   599
                    <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
   600
                    <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
   601
                    <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
   602
                </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
   603
            </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
   604
        </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
   605
    </target>
62
2771e394c9bd Catchup from main repo
DarioS@UK-DarioS.symbian.int
parents: 61 40
diff changeset
   606
  
65
0099c046d4f3 Add intersection target to FBF
ShabeR@UK-SHABER
parents: 63
diff changeset
   607
    <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
   608
        <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
   609
        <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
   610
        <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
   611
    
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
   612
        <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
   613
            <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
   614
            <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
   615
                <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
   616
                <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
   617
                    <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
   618
                    <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
   619
                    <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
   620
                    <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
   621
                </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
   622
            </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
   623
        </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
   624
    </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
   625
721
555e9b4085ea Removed unnecessary dependencies, to untangle the dependency graph a little.
Simon Howkins <simonh@symbian.org>
parents: 698
diff changeset
   626
    <!-- 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
   627
    <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
   628
        <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
   629
    </target>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   630
    
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   631
    <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
   632
      <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
   633
    </target>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   634
    
240
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   635
  <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
   636
    <stopwatch name="sf-truclean"/>
240
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   637
    <if>
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   638
      <istrue value="${sf.spec.build.clean.enable}"/>
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   639
      <then>
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   640
        <echo message="Executing truclean step."/>
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   641
        <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
   642
            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
   643
          <data expandProperties="yes">
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   644
              ant: antProperties()
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   645
              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
   646
          </data>
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   647
        </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
   648
        <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
   649
      </then>
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   650
      <else>
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   651
        <echo message="Skipping truclean step."/>
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   652
      </else>
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   653
    </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
   654
    <stopwatch name="sf-truclean" action="elapsed"/>
240
5705f5c8f10d Adding truclean step to the package build
Dario Sestito <darios@symbian.org>
parents: 224
diff changeset
   655
  </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
   656
  
779cc88ed845 Allow subprojects within a project repo and model file relative to the subproject dir
Dario Sestito <darios@symbian.org>
parents: 321
diff changeset
   657
  <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
   658
    <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
   659
    <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
   660
      <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
   661
      <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
   662
        <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
   663
        <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
   664
        <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
   665
      </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
   666
      <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
   667
        <!-- 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
   668
        <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
   669
        <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
   670
          <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
   671
          <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
   672
          <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
   673
        </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
   674
      </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
   675
    </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
   676
    <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
   677
  </target>
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   678
    
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
   679
    <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
   680
        <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
   681
              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
   682
            <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
   683
                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
   684
                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
   685
                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
   686
                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
   687
                toolsbaseline: slicedText(${build.drive}/output/logs/BOM/toolsbaseline.txt,{trim})
1100
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   688
                sources: csv(${build.drive}/output/logs/BOM/sources.csv, {separator:',',headers:[loc,dst,type,rev,sysdef]})
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
   689
            </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
   690
        </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
   691
        <!-- 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
   692
        <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
   693
    </target>
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   694
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
   695
    <target name="sf-preprocess-package-config">
1117
0006ed4e0b6d Fix rnd packaging and deployment
Shabe Razvi <shaber@symbian.org>
parents: 1113
diff changeset
   696
	<!-- preprocess by stripping the header of the rnd source and concat with sources.csv -->
0006ed4e0b6d Fix rnd packaging and deployment
Shabe Razvi <shaber@symbian.org>
parents: 1113
diff changeset
   697
    <loadfile srcfile="${sf.spec.sourcesync.sourcespecdir}/${sf.spec.sourcesync.sourcespecfile.rnd}" property="rnd.source.no.header" failonerror="false">
0006ed4e0b6d Fix rnd packaging and deployment
Shabe Razvi <shaber@symbian.org>
parents: 1113
diff changeset
   698
    <filterchain>
0006ed4e0b6d Fix rnd packaging and deployment
Shabe Razvi <shaber@symbian.org>
parents: 1113
diff changeset
   699
      <headfilter skip="1"/>
0006ed4e0b6d Fix rnd packaging and deployment
Shabe Razvi <shaber@symbian.org>
parents: 1113
diff changeset
   700
    </filterchain>
0006ed4e0b6d Fix rnd packaging and deployment
Shabe Razvi <shaber@symbian.org>
parents: 1113
diff changeset
   701
    </loadfile>
0006ed4e0b6d Fix rnd packaging and deployment
Shabe Razvi <shaber@symbian.org>
parents: 1113
diff changeset
   702
    <echo message="${rnd.source.no.header}" file="${temp.build.dir}/sources_rnd_no_header.csv"/>
0006ed4e0b6d Fix rnd packaging and deployment
Shabe Razvi <shaber@symbian.org>
parents: 1113
diff changeset
   703
    
0006ed4e0b6d Fix rnd packaging and deployment
Shabe Razvi <shaber@symbian.org>
parents: 1113
diff changeset
   704
    <!-- order is important as the rnd source now has no header -->
0006ed4e0b6d Fix rnd packaging and deployment
Shabe Razvi <shaber@symbian.org>
parents: 1113
diff changeset
   705
    <concat destfile="${temp.build.dir}/sources.csv" force="yes">
0006ed4e0b6d Fix rnd packaging and deployment
Shabe Razvi <shaber@symbian.org>
parents: 1113
diff changeset
   706
       <file file="${sf.spec.sourcesync.sourcespecdir}/${sf.spec.sourcesync.sourcespecfile}"/>
0006ed4e0b6d Fix rnd packaging and deployment
Shabe Razvi <shaber@symbian.org>
parents: 1113
diff changeset
   707
       <file file="${temp.build.dir}/sources_rnd_no_header.csv"/>
0006ed4e0b6d Fix rnd packaging and deployment
Shabe Razvi <shaber@symbian.org>
parents: 1113
diff changeset
   708
    </concat>
0006ed4e0b6d Fix rnd packaging and deployment
Shabe Razvi <shaber@symbian.org>
parents: 1113
diff changeset
   709
1110
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   710
    <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
   711
        <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
   712
            <arg value="${sf.common.config.dir}/tools/populateziptemplate.pl"/>
1117
0006ed4e0b6d Fix rnd packaging and deployment
Shabe Razvi <shaber@symbian.org>
parents: 1113
diff changeset
   713
            <arg value="${temp.build.dir}/sources.csv"/>
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
   714
            <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
   715
            <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
   716
            <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
   717
        </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
   718
        <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
   719
            <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
   720
            <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
   721
            <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
   722
            <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
   723
        </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
   724
    </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
   725
    
679
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   726
    <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
   727
        <!-- 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
   728
        <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
   729
          <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
   730
            <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
   731
            <not>
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   732
              <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
   733
                <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
   734
                  <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
   735
                    <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
   736
                    <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
   737
                  </srcfiles>
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   738
                </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
   739
                <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
   740
                  <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
   741
                    <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
   742
                  </srcfiles>
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   743
                </uptodate>
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   744
              </and>
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   745
            </not>
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   746
          </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
   747
          <then>
679
7e493c0264f3 Replaced <available> check with an <uptodate> check, to greatly help people working
Simon Howkins <simonh@symbian.org>
parents: 677
diff changeset
   748
            <!-- (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
   749
            <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
   750
          </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
   751
        </if>
864
2b0f08dedb30 Intelligent way of getting timings for ALL uses of sf-zip-content
Simon Howkins <simonh@symbian.org>
parents: 861
diff changeset
   752
        <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
   753
        <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
   754
          <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
   755
            <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
   756
            <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
   757
            <property name="zips.${zip.target.name}.spec.name" value="${zip.target.name}" />
927
a15a7e841752 Turn off zipContentMacro failure for empty zip targets in Helium 7
Shabe Razvi <shaber@symbian.org>
parents: 926
diff changeset
   758
            <if><isset property="sf.using.newer.than.helium5"/>
a15a7e841752 Turn off zipContentMacro failure for empty zip targets in Helium 7
Shabe Razvi <shaber@symbian.org>
parents: 926
diff changeset
   759
            <then>
a15a7e841752 Turn off zipContentMacro failure for empty zip targets in Helium 7
Shabe Razvi <shaber@symbian.org>
parents: 926
diff changeset
   760
                <hlm:zipContentMacro type="${zip.target.name}" file="${zip.config.file}" failonemptyconfig="false"/>
a15a7e841752 Turn off zipContentMacro failure for empty zip targets in Helium 7
Shabe Razvi <shaber@symbian.org>
parents: 926
diff changeset
   761
            </then>
a15a7e841752 Turn off zipContentMacro failure for empty zip targets in Helium 7
Shabe Razvi <shaber@symbian.org>
parents: 926
diff changeset
   762
            <else>
a15a7e841752 Turn off zipContentMacro failure for empty zip targets in Helium 7
Shabe Razvi <shaber@symbian.org>
parents: 926
diff changeset
   763
                <hlm:zipContentMacro type="${zip.target.name}" file="${zip.config.file}" />
a15a7e841752 Turn off zipContentMacro failure for empty zip targets in Helium 7
Shabe Razvi <shaber@symbian.org>
parents: 926
diff changeset
   764
            </else>
a15a7e841752 Turn off zipContentMacro failure for empty zip targets in Helium 7
Shabe Razvi <shaber@symbian.org>
parents: 926
diff changeset
   765
            </if>
677
dd6b7decdca2 Major packaging change to work around parallel calls - stopped zipping targets from having direct dependency on 'sf-preprocess-package-config', and instead have 'sf-zip-content' call 'sf-preprocess-package-config' if needed. Changed 'sf-prep' to call a target that wipes out the 'generated' directory. It's not perfect but it gets us going again.
MattD <mattd@symbian.org>
parents: 658
diff changeset
   766
          </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
   767
          <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
   768
            <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
   769
          </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
   770
        </if>
864
2b0f08dedb30 Intelligent way of getting timings for ALL uses of sf-zip-content
Simon Howkins <simonh@symbian.org>
parents: 861
diff changeset
   771
        <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
   772
    </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
   773
    
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
   774
    <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
   775
        <!-- 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
   776
        <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
   777
            <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
   778
            <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
   779
        </antcall>
1ba3c86ebec0 Bug 350 RnD binary zips missing all content outside epoc32 tree
Simon Howkins <simonh@symbian.org>
parents: 441
diff changeset
   780
        <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
   781
            <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
   782
            <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
   783
        </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
   784
        <if>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   785
            <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
   786
            <then>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   787
                <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
   788
                <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
   789
                    <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
   790
                    <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
   791
                </antcall>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   792
                <!-- 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
   793
                <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
   794
                    <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
   795
                    <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
   796
                </antcall>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   797
            </then>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   798
        </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
   799
    </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
   800
    
461
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   801
    <!-- 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
   802
    <target name="sf-unpack-rnd">
1106
232bce64d370 Build Qmake only if Qt package is being built
Shabe Razvi <shaber@symbian.org>
parents: 1100
diff changeset
   803
        <echo message="INFO 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
   804
        <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
   805
            <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
   806
                <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
   807
                <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
   808
            </fileset>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   809
            <sequential>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   810
                <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
   811
                    <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
   812
                    <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
   813
                    <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
   814
                    <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
   815
                </exec>
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   816
            </sequential>
1100
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   817
        </for>
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   818
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   819
        <if><istrue value="${sf.spec.baseline.enable}"/>
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   820
        <then>
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   821
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   822
        <!-- also unpack any rnd bins from baseline location. may collide with package build getenv -->
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   823
        <delete file="${build.drive}/currentRelease.xml"/>        
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   824
        <antcall target="preparation-getenv" inheritAll="false">
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   825
            <param name="base_release.path"           value="${sf.spec.baseline.location}"/>
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   826
            <param name="base_release.getenv_options" value="-i rnd -k"/>
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   827
        </antcall>
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   828
        </then>
561033b10e0f Major rework to enable rebuilds of the platform from single sf-build call
Shabe Razvi <shaber@symbian.org>
parents: 1057
diff changeset
   829
        </if>
461
874d24067366 Fixed the initial population of the epoc32 tree with rnd bins to deal
Simon Howkins <simonh@symbian.org>
parents: 456
diff changeset
   830
    </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
   831
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
   832
  <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
   833
    <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
   834
    <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
   835
  </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
   836
    
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
   837
    <!-- 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
   838
    <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
   839
        <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
   840
        <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
   841
        <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
   842
            <arg value="${sf.common.config.dir}/tools/brag/logToBRAG.pl"/>
1110
4b2c741f781a Only use sources_rnd.csv if its available
Shabe Razvi <shaber@symbian.org>
parents: 1109
diff changeset
   843
        <arg value="--phase=${sf.brag.phase}"/>
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
   844
            <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
   845
            <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
   846
            <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
   847
        </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
   848
        <!-- 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
   849
        <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
   850
    </target>
698
382728cd25d2 Add sf-rombuild target to build ROMs. Backout ARM license check suppression.
Shabe Razvi <shaber@symbian.org>
parents: 681
diff changeset
   851
       
41
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   852
</project>
f137ddbb714d Added tagging of source code used in the build
dariosestito@L063522.prod.ad.symbian.intra
parents: 30
diff changeset
   853