common/templates/source-spec.ant.xml.ftl
author Simon Howkins <simonh@symbian.org>
Fri, 12 Feb 2010 11:57:01 +0000
changeset 896 e7f07235b184
parent 893 f4d702959f07
child 897 53bb02c83036
permissions -rw-r--r--
Stopped cache being located/created in a stupid place, relative to the CWD on the cache drive. Work around limitation of ant-contrib regular expressions, so they're not thwarted by \s in the cache location property.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
7
389e1e1f1583 Rename and move of generated source sync xml and also tidy up
shaberazvi@LON-ENGBUILD88.prod.ad.symbian.intra
parents:
diff changeset
     1
<?xml version="1.0"?>
17
c677077df18c Fix FMPP template to allow multiple repositories
shaberazvi@LON-ENGBUILD88.prod.ad.symbian.intra
parents: 7
diff changeset
     2
<project name="SF-SOURCESPEC" default="all" xmlns:hlm="http://www.nokia.com/helium">
7
389e1e1f1583 Rename and move of generated source sync xml and also tidy up
shaberazvi@LON-ENGBUILD88.prod.ad.symbian.intra
parents:
diff changeset
     3
896
e7f07235b184 Stopped cache being located/created in a stupid place, relative to the CWD on the cache drive.
Simon Howkins <simonh@symbian.org>
parents: 893
diff changeset
     4
    <!-- Convert \s in cache location, because otherwise they disappear entirely when used in a regex replacement! -->
e7f07235b184 Stopped cache being located/created in a stupid place, relative to the CWD on the cache drive.
Simon Howkins <simonh@symbian.org>
parents: 893
diff changeset
     5
    <propertyregex property="sf.spec.sourcesync.cachelocation.for.regex" input="${dollar}{sf.spec.sourcesync.cachelocation}" regexp="\\" replace="/" global="true" defaultValue="${dollar}{sf.spec.sourcesync.cachelocation}"/>
e7f07235b184 Stopped cache being located/created in a stupid place, relative to the CWD on the cache drive.
Simon Howkins <simonh@symbian.org>
parents: 893
diff changeset
     6
    
7
389e1e1f1583 Rename and move of generated source sync xml and also tidy up
shaberazvi@LON-ENGBUILD88.prod.ad.symbian.intra
parents:
diff changeset
     7
<#assign fileset = "" />
34
c10840c6fcbb Update Platform Config to build tools2 before tools - which must be run in single thread. Also update sync template to sync in parallel.
shaberazvi@LON-ENGBUILD88.prod.ad.symbian.intra
parents: 17
diff changeset
     8
<#assign sync_list = "" />
68
c86f60d45216 Make BOM identify thread safe
BuildAdmin@LON-ENGBUILD87
parents: 62
diff changeset
     9
<#assign bom_list  = "" />
615
6f70bcc536bb source-spec.ant.xml.ftl - Added change info for the BOM that lists submitted changesets between the baseline ('sf.previous.pdk.tag') and the synced changeset and writes to a changes.txt file in the BOM dir.
MattD <mattd@symbian.org>
parents: 584
diff changeset
    10
<#assign change_list  = "" />
7
389e1e1f1583 Rename and move of generated source sync xml and also tidy up
shaberazvi@LON-ENGBUILD88.prod.ad.symbian.intra
parents:
diff changeset
    11
<#assign dollar = "$"/>
389e1e1f1583 Rename and move of generated source sync xml and also tidy up
shaberazvi@LON-ENGBUILD88.prod.ad.symbian.intra
parents:
diff changeset
    12
<#assign count = 0 />
584
920441a385c6 Bug 419 source sync workaround - Added new variable 'sf.spec.sourcesync.bug419' that can be used during source sync that just performs the sync manually without using Maven.
MattD <mattd@symbian.org>
parents: 312
diff changeset
    13
856
0e553fdaa218 Added framework for specifying a "sources.csv" for test repos (separate from both the FBF and the sources repos).
Simon Howkins <simonh@symbian.org>
parents: 799
diff changeset
    14
<#list data as csv_file>
0e553fdaa218 Added framework for specifying a "sources.csv" for test repos (separate from both the FBF and the sources repos).
Simon Howkins <simonh@symbian.org>
parents: 799
diff changeset
    15
  <#list csv_file as pkg_detail>
7
389e1e1f1583 Rename and move of generated source sync xml and also tidy up
shaberazvi@LON-ENGBUILD88.prod.ad.symbian.intra
parents:
diff changeset
    16
    <target name="sf-prebuild-${count}">
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    17
        
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    18
        <!-- Create sf\layer dir on build dir -->
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    19
        <mkdir dir="${ant['build.drive']}${pkg_detail.dst}"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    20
        <delete dir="${ant['build.drive']}${pkg_detail.dst}" failonerror="true" />
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    21
        
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    22
        <if>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    23
            <istrue value="${dollar}{sf.spec.sourcesync.usecache}"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    24
            <then>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    25
                <!-- Work out cache location from source location -->
896
e7f07235b184 Stopped cache being located/created in a stupid place, relative to the CWD on the cache drive.
Simon Howkins <simonh@symbian.org>
parents: 893
diff changeset
    26
                <propertyregex property="sf.spec.sourcesync.cachelocation.${count}" input="${pkg_detail.source}" regexp="^http://developer.symbian.org/" casesensitive="false" replace="${dollar}{sf.spec.sourcesync.cachelocation.for.regex}/Live/"/>
e7f07235b184 Stopped cache being located/created in a stupid place, relative to the CWD on the cache drive.
Simon Howkins <simonh@symbian.org>
parents: 893
diff changeset
    27
                <propertyregex property="sf.spec.sourcesync.cachelocation.${count}" input="${pkg_detail.source}" regexp="^${ant['sf.spec.sourcesync.local.development.area']}/" casesensitive="false" replace="${dollar}{sf.spec.sourcesync.cachelocation.for.regex}/LocalDev/"/>
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    28
            </then>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    29
        </if>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    30
	
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    31
        <if>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    32
            <and>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    33
                <isset property="sf.spec.sourcesync.cachelocation.${count}"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    34
                <available file="${dollar}{sf.spec.sourcesync.cachelocation.${count}}" type="dir"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    35
            </and>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    36
            <then>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    37
                <!-- Package in cache already -->
893
f4d702959f07 Bug 1661: Simplified the sequence of pulls/clones via the cache, so the changes simply go from source -> cache -> destination.
Simon Howkins <simonh@symbian.org>
parents: 892
diff changeset
    38
                <echo message="Pull from ${pkg_detail.source} to ${dollar}{sf.spec.sourcesync.cachelocation.${count}}"/>
f4d702959f07 Bug 1661: Simplified the sequence of pulls/clones via the cache, so the changes simply go from source -> cache -> destination.
Simon Howkins <simonh@symbian.org>
parents: 892
diff changeset
    39
                <exec executable="hg" dir="${dollar}{sf.spec.sourcesync.cachelocation.${count}}" failonerror="true">
f4d702959f07 Bug 1661: Simplified the sequence of pulls/clones via the cache, so the changes simply go from source -> cache -> destination.
Simon Howkins <simonh@symbian.org>
parents: 892
diff changeset
    40
                    <arg value="pull"/>
f4d702959f07 Bug 1661: Simplified the sequence of pulls/clones via the cache, so the changes simply go from source -> cache -> destination.
Simon Howkins <simonh@symbian.org>
parents: 892
diff changeset
    41
                    <arg value="${pkg_detail.source}"/>
f4d702959f07 Bug 1661: Simplified the sequence of pulls/clones via the cache, so the changes simply go from source -> cache -> destination.
Simon Howkins <simonh@symbian.org>
parents: 892
diff changeset
    42
                </exec>
f4d702959f07 Bug 1661: Simplified the sequence of pulls/clones via the cache, so the changes simply go from source -> cache -> destination.
Simon Howkins <simonh@symbian.org>
parents: 892
diff changeset
    43
                <echo message="Clone from ${dollar}{sf.spec.sourcesync.cachelocation.${count}} to ${ant['build.drive']}${pkg_detail.dst}"/>
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    44
                <exec executable="hg" dir="${ant['build.drive']}/" failonerror="true">
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    45
                    <arg value="clone"/>
893
f4d702959f07 Bug 1661: Simplified the sequence of pulls/clones via the cache, so the changes simply go from source -> cache -> destination.
Simon Howkins <simonh@symbian.org>
parents: 892
diff changeset
    46
                    <arg value="-U"/>
f4d702959f07 Bug 1661: Simplified the sequence of pulls/clones via the cache, so the changes simply go from source -> cache -> destination.
Simon Howkins <simonh@symbian.org>
parents: 892
diff changeset
    47
                    <arg value="--uncompressed"/>
f4d702959f07 Bug 1661: Simplified the sequence of pulls/clones via the cache, so the changes simply go from source -> cache -> destination.
Simon Howkins <simonh@symbian.org>
parents: 892
diff changeset
    48
                    <arg value="${dollar}{sf.spec.sourcesync.cachelocation.${count}}"/>
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    49
                    <arg value="${ant['build.drive']}${pkg_detail.dst}"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    50
                </exec>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    51
                <!-- Update to required revision -->
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    52
                <exec executable="hg" dir="${ant['build.drive']}${pkg_detail.dst}" failonerror="true">
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    53
                    <arg value="update"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    54
                    <arg value="-r"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    55
                    <arg value="${pkg_detail.pattern}"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    56
                </exec>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    57
                <!-- Record the changeset selected, for the BOM -->
312
97c01977a87b source syncing ftl - Added 'sf.spec.sourcesync.archive' preference to do 'hg archive' instead of 'hg sync'. If set and the repo sync is s'posed to be synced by tag it still does the slower clone+update behaviour.
MattD <mattd@symbian.org>
parents: 261
diff changeset
    58
                <exec executable="hg" dir="${ant['build.drive']}${pkg_detail.dst}" outputproperty="sf.sourcesync.${count}.checksum">
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    59
                    <arg value="identify"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    60
                    <arg value="-i"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    61
                </exec>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    62
            </then>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    63
            <else>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    64
                <echo message="Clone from ${pkg_detail.source} to ${ant['build.drive']}${pkg_detail.dst}"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    65
                <exec executable="hg" dir="${ant['build.drive']}/" failonerror="true">
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    66
                    <arg value="clone"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    67
                    <arg value="-U"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    68
                    <arg value="${pkg_detail.source}"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    69
                    <arg value="${ant['build.drive']}${pkg_detail.dst}"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    70
                </exec>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    71
                <!-- Update to required version -->
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    72
                <exec executable="hg" dir="${ant['build.drive']}${pkg_detail.dst}" failonerror="true">
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    73
                    <arg value="update"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    74
                    <arg value="-r"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    75
                    <arg value="${pkg_detail.pattern}"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    76
                </exec>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    77
                <!-- Record the changeset selected, for the BOM -->
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    78
                <exec executable="hg" dir="${ant['build.drive']}${pkg_detail.dst}" outputproperty="sf.sourcesync.${count}.checksum">
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    79
                    <arg value="identify"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    80
                    <arg value="-i"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    81
                </exec>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    82
                <if>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    83
                    <isset property="sf.spec.sourcesync.cachelocation.${count}"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    84
                    <then>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    85
                        <forget>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    86
                            <nice newpriority="1"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    87
                            <!-- Init cache -->
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    88
                            <mkdir dir="${dollar}{sf.spec.sourcesync.cachelocation.${count}}"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    89
                            <delete dir="${dollar}{sf.spec.sourcesync.cachelocation.${count}}" failonerror="true" />
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    90
                            <echo message="Initialise cache at ${dollar}{sf.spec.sourcesync.cachelocation.${count}}"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    91
                            <!-- Clone source to get the right default repo -->
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    92
                            <exec executable="hg" dir="${ant['build.drive']}/" failonerror="false">
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    93
                                <arg value="clone"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    94
                                <arg value="-r"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    95
                                <arg value="null"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    96
                                <arg value="${pkg_detail.source}"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    97
                                <arg value="${dollar}{sf.spec.sourcesync.cachelocation.${count}}"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
    98
                            </exec>
893
f4d702959f07 Bug 1661: Simplified the sequence of pulls/clones via the cache, so the changes simply go from source -> cache -> destination.
Simon Howkins <simonh@symbian.org>
parents: 892
diff changeset
    99
                            <!-- Set the speed-up flag on the cache repo -->
f4d702959f07 Bug 1661: Simplified the sequence of pulls/clones via the cache, so the changes simply go from source -> cache -> destination.
Simon Howkins <simonh@symbian.org>
parents: 892
diff changeset
   100
                            <echo file="${dollar}{sf.spec.sourcesync.cachelocation.${count}}/.hg/hgrc" append="true" message="${dollar}{line.separator}"/>
f4d702959f07 Bug 1661: Simplified the sequence of pulls/clones via the cache, so the changes simply go from source -> cache -> destination.
Simon Howkins <simonh@symbian.org>
parents: 892
diff changeset
   101
                            <echo file="${dollar}{sf.spec.sourcesync.cachelocation.${count}}/.hg/hgrc" append="true" message="[server]${dollar}{line.separator}"/>
f4d702959f07 Bug 1661: Simplified the sequence of pulls/clones via the cache, so the changes simply go from source -> cache -> destination.
Simon Howkins <simonh@symbian.org>
parents: 892
diff changeset
   102
                            <echo file="${dollar}{sf.spec.sourcesync.cachelocation.${count}}/.hg/hgrc" append="true" message="uncompressed=True${dollar}{line.separator}"/>
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
   103
                            <echo message="Push from ${ant['build.drive']}${pkg_detail.dst} to ${dollar}{sf.spec.sourcesync.cachelocation.${count}} in background"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
   104
                            <exec executable="hg" dir="${ant['build.drive']}${pkg_detail.dst}" failonerror="false">
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
   105
                                <arg value="push"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
   106
                                <arg value="-f"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
   107
                                <arg value="${dollar}{sf.spec.sourcesync.cachelocation.${count}}"/>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
   108
                            </exec>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
   109
                        </forget>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
   110
                    </then>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
   111
                </if>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
   112
            </else>
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
   113
        </if>
68
c86f60d45216 Make BOM identify thread safe
BuildAdmin@LON-ENGBUILD87
parents: 62
diff changeset
   114
    </target>
890
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   115
    
68
c86f60d45216 Make BOM identify thread safe
BuildAdmin@LON-ENGBUILD87
parents: 62
diff changeset
   116
    <target name="sf-bom-info-${count}">
890
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   117
        <!-- record info on source code repo/rev in BOM file  -->
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   118
        <echo file="${ant['build.drive']}/output/logs/BOM/sources.csv" append="true" message="${pkg_detail.source},${pkg_detail.dst},changeset,${dollar}{sf.sourcesync.${count}.checksum},${pkg_detail.sysdef}${dollar}{line.separator}"/>
7
389e1e1f1583 Rename and move of generated source sync xml and also tidy up
shaberazvi@LON-ENGBUILD88.prod.ad.symbian.intra
parents:
diff changeset
   119
    </target>
890
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   120
    
615
6f70bcc536bb source-spec.ant.xml.ftl - Added change info for the BOM that lists submitted changesets between the baseline ('sf.previous.pdk.tag') and the synced changeset and writes to a changes.txt file in the BOM dir.
MattD <mattd@symbian.org>
parents: 584
diff changeset
   121
    <target name="sf-bom-change-info-${count}">
890
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   122
        <if><not><isset property="sf.sourcesync.${count}.checksum"/></not>
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   123
            <then>
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   124
                <exec executable="hg" dir="${ant['build.drive']}${pkg_detail.dst}" outputproperty="sf.sourcesync.${count}.checksum">
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   125
                    <arg value="identify"/>
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   126
                    <arg value="-i"/>
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   127
                </exec>
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   128
            </then>
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   129
        </if>
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   130
        <echo message="Writing BOM changes since ${dollar}{sf.previous.pdk.tag} for ${pkg_detail.dst}" />
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   131
        <echo file="${ant['build.drive']}/output/logs/BOM/changes.txt" append="true" message="${dollar}{line.separator}${pkg_detail.source}${dollar}{line.separator}${pkg_detail.dst}${dollar}{line.separator}${dollar}{line.separator}" />
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
   132
            <exec executable="hg" dir="${ant['build.drive']}${pkg_detail.dst}" output="${ant['build.drive']}/output/logs/BOM/changes.txt" append="true">
615
6f70bcc536bb source-spec.ant.xml.ftl - Added change info for the BOM that lists submitted changesets between the baseline ('sf.previous.pdk.tag') and the synced changeset and writes to a changes.txt file in the BOM dir.
MattD <mattd@symbian.org>
parents: 584
diff changeset
   133
                <arg value="log"/>
6f70bcc536bb source-spec.ant.xml.ftl - Added change info for the BOM that lists submitted changesets between the baseline ('sf.previous.pdk.tag') and the synced changeset and writes to a changes.txt file in the BOM dir.
MattD <mattd@symbian.org>
parents: 584
diff changeset
   134
                <arg value="-r"/>
6f70bcc536bb source-spec.ant.xml.ftl - Added change info for the BOM that lists submitted changesets between the baseline ('sf.previous.pdk.tag') and the synced changeset and writes to a changes.txt file in the BOM dir.
MattD <mattd@symbian.org>
parents: 584
diff changeset
   135
                <arg value="${dollar}{sf.sourcesync.${count}.checksum}:${dollar}{sf.previous.pdk.tag}"/>
703
ecf2c59629fc source sync template - Changed the BOM changes targets to limit the listed changes to the branch if the source was synced up using a branch, to make it easier to read.
MattD <mattd@symbian.org>
parents: 615
diff changeset
   136
                <#if "${pkg_detail.type}"=="branch">
ecf2c59629fc source sync template - Changed the BOM changes targets to limit the listed changes to the branch if the source was synced up using a branch, to make it easier to read.
MattD <mattd@symbian.org>
parents: 615
diff changeset
   137
                <arg value="-b"/>
ecf2c59629fc source sync template - Changed the BOM changes targets to limit the listed changes to the branch if the source was synced up using a branch, to make it easier to read.
MattD <mattd@symbian.org>
parents: 615
diff changeset
   138
                <arg value="${pkg_detail.pattern}"/>
ecf2c59629fc source sync template - Changed the BOM changes targets to limit the listed changes to the branch if the source was synced up using a branch, to make it easier to read.
MattD <mattd@symbian.org>
parents: 615
diff changeset
   139
                </#if>    
615
6f70bcc536bb source-spec.ant.xml.ftl - Added change info for the BOM that lists submitted changesets between the baseline ('sf.previous.pdk.tag') and the synced changeset and writes to a changes.txt file in the BOM dir.
MattD <mattd@symbian.org>
parents: 584
diff changeset
   140
            </exec>
6f70bcc536bb source-spec.ant.xml.ftl - Added change info for the BOM that lists submitted changesets between the baseline ('sf.previous.pdk.tag') and the synced changeset and writes to a changes.txt file in the BOM dir.
MattD <mattd@symbian.org>
parents: 584
diff changeset
   141
    </target>
890
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   142
    
799
49167a0e38cf Small changes to make the output file more regular, and therefor easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 746
diff changeset
   143
    <#assign fileset = "${fileset}" + "<fileset dir=\"${ant['build.drive']}${pkg_detail.dst}\" includes=\"${pkg_detail.sysdef}\"/>\r\n        " />       
890
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   144
    <#assign sync_list = "${sync_list}" + "<runtarget target=\"sf-prebuild-${count}\"/>\r\n            "/>
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   145
    <#assign bom_list = "${bom_list}" + "<runtarget target=\"sf-bom-info-${count}\"/>\r\n        "/>
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   146
    <#assign change_list = "${change_list}" + "<runtarget target=\"sf-bom-change-info-${count}\"/>\r\n        "/>
17
c677077df18c Fix FMPP template to allow multiple repositories
shaberazvi@LON-ENGBUILD88.prod.ad.symbian.intra
parents: 7
diff changeset
   147
    <#assign count = count + 1 />
856
0e553fdaa218 Added framework for specifying a "sources.csv" for test repos (separate from both the FBF and the sources repos).
Simon Howkins <simonh@symbian.org>
parents: 799
diff changeset
   148
  </#list>
7
389e1e1f1583 Rename and move of generated source sync xml and also tidy up
shaberazvi@LON-ENGBUILD88.prod.ad.symbian.intra
parents:
diff changeset
   149
</#list>
890
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   150
    
7
389e1e1f1583 Rename and move of generated source sync xml and also tidy up
shaberazvi@LON-ENGBUILD88.prod.ad.symbian.intra
parents:
diff changeset
   151
    <path id="system.definition.files">
389e1e1f1583 Rename and move of generated source sync xml and also tidy up
shaberazvi@LON-ENGBUILD88.prod.ad.symbian.intra
parents:
diff changeset
   152
        <fileset dir="${dollar}{sf.common.config.dir}/sysdefs" includes="*.sysdef.xml"/>
389e1e1f1583 Rename and move of generated source sync xml and also tidy up
shaberazvi@LON-ENGBUILD88.prod.ad.symbian.intra
parents:
diff changeset
   153
        ${fileset}
389e1e1f1583 Rename and move of generated source sync xml and also tidy up
shaberazvi@LON-ENGBUILD88.prod.ad.symbian.intra
parents:
diff changeset
   154
    </path>
890
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   155
    
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   156
    <target name="all">
892
24ecf67cba71 Bug 1661: Improve build speed with better caching strategy
Simon Howkins <simonh@symbian.org>
parents: 890
diff changeset
   157
        <parallel threadsPerProcessor="1" failonany="true">
890
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   158
            ${sync_list}
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   159
        </parallel>
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   160
        
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   161
        <echo message="Adding BOM header"/>
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   162
        <mkdir dir="${ant['build.drive']}/output/logs/BOM/"/>
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   163
        <echo file="${ant['build.drive']}/output/logs/BOM/sources.csv" message="source,dst,type,pattern,sysdef${dollar}{line.separator}"/>
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   164
        
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   165
        ${bom_list}
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   166
        
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   167
        <delete file="${ant['build.drive']}/output/logs/BOM/changes.txt" quiet="true"/>
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   168
        
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   169
        ${change_list}
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   170
    </target>
41f3579ef67e Indentation and other minor changes to make the file easier to read and understand.
Simon Howkins <simonh@symbian.org>
parents: 856
diff changeset
   171
    
615
6f70bcc536bb source-spec.ant.xml.ftl - Added change info for the BOM that lists submitted changesets between the baseline ('sf.previous.pdk.tag') and the synced changeset and writes to a changes.txt file in the BOM dir.
MattD <mattd@symbian.org>
parents: 584
diff changeset
   172
</project>