buildframework/helium/tools/compile/sbs/sbs.ant.xml
author wbernard
Thu, 22 Jul 2010 17:08:43 +0300
branchhelium-9.0
changeset 618 df88fead2976
parent 587 85df38eb4012
permissions -rw-r--r--
helium_9.0.5-4399343f4f50
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
     1
<?xml version="1.0" encoding="UTF-8"?>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
     2
<!-- 
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
     3
============================================================================ 
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
     4
Name        : sbs.ant.xml 
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
     5
Part of     : Helium 
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
     6
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
     7
Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
     8
All rights reserved.
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
     9
This component and the accompanying materials are made available
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    10
under the terms of the License "Eclipse Public License v1.0"
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    11
which accompanies this distribution, and is available
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    12
at the URL "http://www.eclipse.org/legal/epl-v10.html".
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    13
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    14
Initial Contributors:
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    15
Nokia Corporation - initial contribution.
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    16
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    17
Contributors:
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    18
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    19
Description:
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    20
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    21
============================================================================
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    22
-->
217
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
    23
<!--* @package compile -->
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    24
<project name="compile.sbs" xmlns:hlm="http://www.nokia.com/helium">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    25
    <description>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    26
    Executes compilation of a System Model of System Definition file using Symbian SBS (Raptor) tools. 
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    27
    </description>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    28
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    29
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    30
587
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
    31
    <!--
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
    32
        Executes compilation  of a System Model of System Definition file using Symbian SBS (Raptor) tools. 
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
    33
        Should not be called directly but through compile-main by setting ${build.system.sbs} property.
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    34
    -->
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    35
587
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
    36
    <!--* @property sbs.build.ctc
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
    37
     This property enables Raptor compilation using ctc. 
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
    38
     @type boolean
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
    39
     @scope public
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
    40
     -->
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
    41
    
217
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
    42
    <!-- skip sbs layer filtering (true) for new schema and false for schema 1.4.0
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
    43
    @type boolean
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
    44
    -->
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    45
    <property name="skip.sbs.layer.generation" value="false" />
618
df88fead2976 helium_9.0.5-4399343f4f50
wbernard
parents: 587
diff changeset
    46
df88fead2976 helium_9.0.5-4399343f4f50
wbernard
parents: 587
diff changeset
    47
    <!-- Default CTC command line option, override it to customize it. -->
df88fead2976 helium_9.0.5-4399343f4f50
wbernard
parents: 587
diff changeset
    48
    <hlm:argSet id="ctc.build.options" />
df88fead2976 helium_9.0.5-4399343f4f50
wbernard
parents: 587
diff changeset
    49
df88fead2976 helium_9.0.5-4399343f4f50
wbernard
parents: 587
diff changeset
    50
    <!-- This property define what instrumentation CTC should create.
df88fead2976 helium_9.0.5-4399343f4f50
wbernard
parents: 587
diff changeset
    51
    @type string
df88fead2976 helium_9.0.5-4399343f4f50
wbernard
parents: 587
diff changeset
    52
    -->
df88fead2976 helium_9.0.5-4399343f4f50
wbernard
parents: 587
diff changeset
    53
    <property name="ctc.instrument.type" value="m" />
df88fead2976 helium_9.0.5-4399343f4f50
wbernard
parents: 587
diff changeset
    54
    
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    55
    
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    56
    <!-- This target filters the canonical system definition file compare to the "raptor_${sysdef.configuration}" filter. -->
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    57
    <macrodef name="generate-layers" uri="http://www.nokia.com/helium">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    58
        <sequential>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    59
            <echo message="canno-file:${canonical.sysdef.file}" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    60
            <echo message="raptor-filters:raptor_${sysdef.configuration}" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    61
            <if>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    62
                <istrue value="${skip.sbs.layer.generation}" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    63
                <then>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    64
                    <copy file="${canonical.sysdef.file}" tofile="${build.drive}/output/build/canonical_system_definition_${sysdef.configuration}_temp.xml"/>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    65
                </then>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    66
                <else>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    67
                    <hlm:compileGenxmlFilterMacro input="${canonical.sysdef.file}" filter="raptor_${sysdef.configuration}"
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    68
                        output="${build.output.dir}/build/canonical_system_definition_${sysdef.configuration}_temp.xml"/>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    69
                </else>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    70
            </if>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    71
            <copy file="${build.drive}/output/build/canonical_system_definition_${sysdef.configuration}_temp.xml"
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    72
                    tofile="${build.drive}/output/build/canonical_system_definition_${sysdef.configuration}.xml">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    73
                <filterchain>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    74
                    <linecontainsregexp negate="true">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    75
                        <regexp pattern="^\s*$"/>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    76
                    </linecontainsregexp>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    77
                </filterchain>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    78
            </copy>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    79
            <delete file="${build.drive}/output/build/canonical_system_definition_${sysdef.configuration}_temp.xml"/>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    80
        </sequential>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    81
    </macrodef>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    82
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    83
    <!-- SBS build with gmake as engine type. Default is using sbs macro, to use old implementation to
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    84
    use using exec task, then sbs.using.exec needs to be set. -->
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    85
    <target name="compile-sbs" description="This is the main build that gets built for ARMV5 and WINSCW platforms">
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
    86
        <!-- only temporary once config file option starts to work, then no 
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
    87
        need to copy the plugin file -->
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
    88
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    89
        <if>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    90
            <or>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    91
                <equals arg1="${build.system}" arg2="sbs" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    92
                <equals arg1="${build.system}" arg2="sbs-ec" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    93
            </or>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    94
            <then>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    95
                <echo message="Copying helium filter plugin to sbs home" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    96
                <copy file="${helium.dir}/tools/common/python/scripts/filter_metadatalog.py" todir="${env.SBS_HOME}/python/plugins/" failonerror="true" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
    97
                <copy file="${helium.dir}/tools/common/python/scripts/sbsscanlogmetadata.py" todir="${env.SBS_HOME}/python/plugins/" failonerror="true" />
217
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
    98
                <var name="sbs.internal.inputs.list" value="" unset="true"/>
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
    99
                <if>
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   100
                    <istrue value="${schema.new}" />
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   101
                    <then>
587
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
   102
                        <hlm:downgradeSysdef epocroot="${build.drive}/" srcfile="${canonical.sysdef.file}" 
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
   103
                            destfile="${build.drive}/output/build/canonical_system_definition_${sysdef.configuration}.xml"/>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
   104
                        <var name="sbs.patternset" unset="true"/>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
   105
                        <if>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
   106
                            <isreference refid="sysdef.filters.${sysdef.configuration}" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
   107
                            <then>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
   108
                                <property name="sbs.patternset" value="sysdef.filters.${sysdef.configuration}" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
   109
                                <echo message="sbs.patternset: ${sbs.patternset}" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
   110
                            </then>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
   111
                            <else>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
   112
                                <echo message="The sysdef.${sysdef.configuration} patternset is not defined." />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
   113
                            </else>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
   114
                        </if>
217
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   115
                    </then>
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   116
                    <else>
587
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
   117
                        <hlm:generate-layers />
217
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   118
                    </else>
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   119
                </if>
587
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
   120
                <var name="sbs.internal.inputs.list" value="" unset="true"/>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
   121
                <hlm:getsbsinputs config="sbs.${sysdef.configuration}" outputProperty="sbs.internal.inputs.list"/>
217
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   122
                <for list="${sbs.internal.inputs.list}" delimiter="," param="sbs.input">
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   123
                    <sequential>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   124
                        <echo message="building raptor input: @{sbs.input}" />
587
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
   125
                        <var name="sbs.log.file" unset="true" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
   126
                        <property name="sbs.log.file" location="${compile.log.dir}/${build.id}_${sysdef.configuration}_@{sbs.input}_compile.log" />
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   127
                        <!-- run arm license checking / setting arm version only for arm config -->
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   128
                        <hlm:getVariableValue name="-c" property="compilevalue.var" failOnerror="false">
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   129
                            <hlm:sbsinput refid="@{sbs.input}" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   130
                        </hlm:getVariableValue>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   131
                        <echo message="config parameter -c : ${compilevalue.var}" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   132
                        <if>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   133
                            <and>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   134
                                <isset property="compilevalue.var"/>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   135
                                <matches string="${compilevalue.var}" pattern="arm.*"/>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   136
                            </and>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   137
                            <then>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   138
                                <runtarget target="set-arm-version"/>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   139
                            </then>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   140
                        </if>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   141
                        <!-- Generate the filtered layers -->
217
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   142
                        <if>
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   143
                            <isset property="run.coverity"/>
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   144
                            <then>
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   145
                                <hlm:coveritybuild  sbsinput="@{sbs.input}" 
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   146
                                                    sysdeffile="${build.drive}/output/build/canonical_system_definition_${sysdef.configuration}.xml"
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   147
                                                    layerpatternsetref="${sbs.patternset}" 
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   148
                                                    workingdir="${build.drive}/" 
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   149
                                                    execute="true"
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   150
                                                    failonerror="false"
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   151
                                                    outputlog="${sbs.log.file}" 
587
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
   152
                                                    erroroutput="${sbs.log.file}.sbs_error.log">
217
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   153
                                    <hlm:coverityoptions refid="coverity.build.options"/>
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   154
                                </hlm:coveritybuild>
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   155
                            </then>
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   156
                            <elseif>
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   157
                                <istrue value="${sbs.build.ctc}"/>
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   158
                                <then>
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   159
                                    <hlm:ctctask sbsinput="@{sbs.input}" 
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   160
                                                    sysdefFile="${build.drive}/output/build/canonical_system_definition_${sysdef.configuration}.xml" 
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   161
                                                    layerPatternSetRef="${sbs.patternset}" 
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   162
                                                    errorOutput="${sbs.log.file}.sbs_error.log" 
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   163
                                                    workingDir="${build.drive}/" 
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   164
                                                    failOnError="false" 
618
df88fead2976 helium_9.0.5-4399343f4f50
wbernard
parents: 587
diff changeset
   165
                                                    outputLog="${sbs.log.file}"
df88fead2976 helium_9.0.5-4399343f4f50
wbernard
parents: 587
diff changeset
   166
                                                    instrumentType="${ctc.instrument.type}">
df88fead2976 helium_9.0.5-4399343f4f50
wbernard
parents: 587
diff changeset
   167
                                        <hlm:CTCOptions refid="ctc.build.options" />
df88fead2976 helium_9.0.5-4399343f4f50
wbernard
parents: 587
diff changeset
   168
                                    </hlm:ctctask>
217
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   169
                                </then>
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   170
                            </elseif>
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   171
                            <else>
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   172
                                <hlm:sbstask sbsinput="@{sbs.input}" 
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   173
                                                sysdefFile="${build.drive}/output/build/canonical_system_definition_${sysdef.configuration}.xml" 
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   174
                                                layerPatternSetRef="${sbs.patternset}" 
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   175
                                                errorOutput="${sbs.log.file}.sbs_error.log" 
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   176
                                                workingDir="${build.drive}/" 
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   177
                                                failOnError="false" 
587
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
   178
                                                outputLog="${sbs.log.file}" />
217
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   179
                            </else>
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   180
                        </if>
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   181
                        <hlm:assertFileExists file="${sbs.log.file}"/>
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   182
                        <hlm:assertFileExists file="${sbs.log.file}.sbs_error.log"/>
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   183
                        <!-- run arm license checking / setting arm version only for arm config --> 
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   184
                        <echo message="sbs.log.file: ${sbs.log.file}" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   185
                        <hlm:sbsProcessOutputMacro sbs.log.file="${sbs.log.file}"
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   186
                            sbs.ant.output.file="${sbs.log.file}" sbs.error.output.file="${sbs.log.file}.sbs_error.log"/>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   187
                    </sequential>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   188
                </for>
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   189
            </then>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   190
        </if>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   191
    </target>
217
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   192
    
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   193
    
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   194
    <macrodef name="sbsProcessOutputMacro" uri="http://www.nokia.com/helium">
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   195
        <attribute name="sbs.log.file" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   196
        <attribute name="sbs.error.output.file" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   197
        <attribute name="sbs.ant.output.file" />
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   198
        <sequential>
217
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   199
            <var name="sbs.scan2.template" value="scan2_orm.html.ftl" />
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   200
            <var name="base.sbs.log" value="" unset="true"/>
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   201
            <basename property="base.sbs.log" file="@{sbs.log.file}" />
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   202
            <echo message="base.sbs.log: ${base.sbs.log}" />
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   203
            <hlm:metadatarecord database="${metadata.dbfile}">
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   204
                <hlm:textmetadatainput>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   205
                    <fileset casesensitive="false" file="@{sbs.error.output.file}"/>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   206
                    <metadatafilterset refid="filterset.sbs" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   207
                </hlm:textmetadatainput>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   208
            </hlm:metadatarecord>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   209
            <basename property="base.sbs.ant.output.log" file="@{sbs.ant.output.file}" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   210
            <hlm:signalMacro logfile="@{sbs.error.output.file}" 
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   211
                signal.input="raptorErrorSignalInput" phase="compile"/>
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   212
            <!-- update the resultes to database -->
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   213
            <echo message="Metadata enabled, storing build status in database" />
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   214
            <echo message="sbs log file :@{sbs.log.file}" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   215
            <trycatch property="hlm-sbs.parser.thrown">
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   216
                <try>
217
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   217
                    <hlm:metadatarecord  database="${metadata.dbfile}">
587
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
   218
                        <hlm:sbsmetadatainput>
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   219
                            <fileset casesensitive="false" file="@{sbs.log.file}"/>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   220
                            <metadatafilterset refid="filterset.sbs" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   221
                        </hlm:sbsmetadatainput>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   222
                    </hlm:metadatarecord>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   223
                </try>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   224
                <catch>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   225
                    <if>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   226
                        <istrue value="${skip.sbs.parser.exception}" />
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   227
                        <then>
217
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   228
                            <var name="sbs.scan2.template" value="scan2_text_orm.html.ftl" />
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   229
                            <hlm:metadatadelete database="${metadata.dbfile}">
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   230
                                <fileset casesensitive="false" file="@{sbs.log.file}"/>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   231
                            </hlm:metadatadelete>
217
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   232
                            <hlm:metadatarecord database="${metadata.dbfile}" >
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   233
                                <hlm:textmetadatainput>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   234
                                    <fileset casesensitive="false" file="@{sbs.log.file}"/>
217
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   235
                                    <metadatafilterset refid="filterset.sbs" />
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   236
                                </hlm:textmetadatainput>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   237
                            </hlm:metadatarecord>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   238
                        </then>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   239
                        <else>
587
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
   240
                            <loadfile property="sbs.error.output" srcfile="@{sbs.error.output.file}" failonerror="false"/>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
   241
                            <fail message="failed during raptor log parsing: might be due to invalid xml output from raptor ${hlm-sbs.parser.thrown}. ${sbs.error.output}" />
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   242
                        </else>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   243
                    </if>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   244
                </catch>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   245
            </trycatch>
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   246
            <fmpp sourceFile="${helium.dir}/tools/common/templates/log/${sbs.scan2.template}"
217
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   247
                         outputfile="${build.log.dir}/${base.sbs.log}.scan2.html">
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   248
                <freemarkerLinks expandProperties="yes">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   249
                    macro: ${helium.dir}/tools/common/templates/macro
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   250
                </freemarkerLinks>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   251
                <data expandProperties="yes">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   252
                    dbPath: ${metadata.dbfile}
587
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents: 217
diff changeset
   253
                    logfilename: @{sbs.log.file}
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   254
                    ant: antProperties()
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   255
                </data>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   256
            </fmpp>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   257
            <echo message="generating signal" />
217
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   258
            <hlm:assertFileExists file="${build.log.dir}/${base.sbs.log}.scan2.html"/>
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   259
            <hlm:compileLogSignalMacro compile.summary.file="@{sbs.log.file}" 
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   260
                error.limit="${build.errors.limit}" phase="compile"/>
1
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   261
            <!-- Blocks packaging configuration generation. -->
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   262
            <if>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   263
                <istrue value="${blocks.enabled}" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   264
                <then>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   265
                    <mkdir dir="${blocks.config.dir}" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   266
                    <exec executable="python">
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   267
                        <arg value="-m"/>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   268
                        <arg value="packager.cli"/>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   269
                        <arg value="--epocroot=${build.drive}/" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   270
                        <arg value="--config=${blocks.config.dir}" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   271
                        <arg value="--datasource=sbs" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   272
                        <arg value="-Dsbslog=${sbs.log.file}" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   273
                        <arg value="-Dsysdef=${canonical.sysdef.file}" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   274
                        <arg value="-Dthreads=20" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   275
                        <arg value="--updateData" />
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   276
                    </exec>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   277
                </then>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   278
            </if>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   279
        </sequential>
be27ed110b50 Bringing in Helium, imaker and cmaker
Alex Gilkes <alex.gilkes@nokia.com>
parents:
diff changeset
   280
    </macrodef>
217
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   281
    
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   282
    <scriptdef language="jython" name="getSbsHome" uri="http://www.nokia.com/helium">
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   283
        <attribute name="property" />
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   284
if attributes.get("property") is None:
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   285
    raise Exception("property attribute has not been set.")
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   286
if project.getProperty(attributes.get("property")) is None:
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   287
    import symbian.raptor
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   288
    sbs_home = symbian.raptor.getSBSHome()
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   289
    if sbs_home is not None:
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   290
        #self.log("Found SBS_HOME as " + sbs_home)
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   291
        project.setNewProperty(attributes.get("property"), sbs_home)
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   292
    </scriptdef>
0f5e3a7fb6af helium_8.0-r15308
wbernard
parents: 179
diff changeset
   293
179
d8ac696cc51f helium_7.0-r14027
wbernard
parents: 1
diff changeset
   294
</project>