buildframework/helium/sf/java/sbs/sbs.rst
author Bob Rosenberg <bob.rosenberg@nokia.com>
Wed, 28 Jul 2010 13:20:46 +0100
changeset 624 f70b728ea30c
parent 587 85df38eb4012
permissions -rw-r--r--
Move sysdeftools from buildtools package into build package
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
587
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
     1
.. index::
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
     2
  module: Configuring Raptor (SBS)
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
     3
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
     4
========================
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
     5
Configuring Raptor (SBS)
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
     6
========================
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
     7
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
     8
.. contents::
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
     9
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    10
This document describes requirements and how to run sbs builds using helium. Now it is 
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    11
possible to pass directly pass all the raptor input directly and there are no mapping of
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    12
raptor parameter specific to helium.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    13
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    14
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    15
SBS Requirements
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    16
-----------------
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    17
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    18
Before starting the build, SBS needs to be updated for s60 related changes, please follow the instructions from the link below,
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    19
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    20
`How to Build Raptor <http://s60wiki.nokia.com/S60Wiki/How_To_Build_With_Raptor>`_
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    21
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    22
1. SBS_HOME environment variable needs to be set
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    23
2. PATH environment variable needs to be updated with SBS related exe::
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    24
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    25
    path(SBS_HOME\\BIN;SBS_HOME\\win32\\mingw\\bin;SBS_HOME\\win32\\msys\\bin)
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    26
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    27
3. RVCT requirement for raptor is 22_686 or higher, in IDO config / product config batch file the env variable needs to be set to `HLM_RVCT_VERSION=22_686`
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    28
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    29
For Example: ::
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    30
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    31
 set HELIUM_HOME=E:\Build_E\ec_test\helium-trunk\helium
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    32
 set PATH=e:\svn\bin;E:\sbs\bin;c:\apps\actpython;%PATH%
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    33
 set SBS_HOME=E:\sbs
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    34
 set MWSym2Libraries=%MWSym2Libraries%;C:\APPS\carbide\x86Build\Symbian_Support\Runtime\Runtime_x86\Runtime_Win32\Libs
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    35
 set TEAM=site_name
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    36
   
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    37
(Note: For IDOs, these environment variables are set automatically, for S60 option is proposed).
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    38
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    39
Required SBS input for Helium
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    40
------------------------------
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    41
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    42
SBS Input consists of SBSInput and SBSBuild types:
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    43
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    44
1. SBSInput - SBS Input stores the list of raptor arguments both the sbs options and
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    45
sbs make options. Nested sbs input option is also possible, for details please see the 
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    46
antdoclet information for sbsInput.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    47
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    48
2. SBSBuild - SBS Build is the collection of SBSInput. Each SBSInput refering within
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    49
SBSBuild corresponds to a single invocation of raptor with the corresponding sbs arguments
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    50
refered within the sbsInput. Each sbsInput refered within SBSBuild roughly corresponds to
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    51
the abld commands associated with corresponding abld configurations. <configuration> </configuration>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    52
is corresponds ot SBSBuild. This is there only for backward compatibility and will be removed
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    53
once the mighration is completed for schema 3.0, in which case, abld mapping of configuration
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    54
is not required and sbsInput could be directly used. Example is as below,
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    55
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    56
.. code-block:: xml
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    57
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    58
    <hlm:sbsbuild id="sbs.dfs_build_export">
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    59
        <sbsInput refid="dfs_build_export_input" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    60
    </hlm:sbsbuild> 
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    61
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    62
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    63
1. To run using SBS mode (schema 1.4.0)
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    64
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    65
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    66
List of SBSInput one to one mapping with corresponding abld commands mapped for a configuration.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    67
    
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    68
example is below,
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    69
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    70
.. code-block:: xml
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    71
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    72
    <!-- tools common sbs options -->
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    73
    <hlm:sbsoptions id="commonSBS">
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    74
        <arg line="-k" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    75
        <arg name="--filters" value="FilterMetadataLog"/>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    76
    </hlm:sbsoptions>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    77
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    78
    <hlm:sbsoptions id="exportSBS">
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    79
        <argset refid="commonSBS" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    80
        <arg line="--export-only" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    81
    </hlm:sbsoptions>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    82
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    83
    <!-- sbs input for export -->
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    84
    <hlm:sbsinput id="export-sbs">
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    85
        <sbsoptions refid="exportSBS" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    86
    </hlm:sbsinput>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    87
    
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    88
    <hlm:sbsbuild id="sbs.dfs_build_export">
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    89
        <sbsInput refid="dfs_build_export_input" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    90
    </hlm:sbsbuild> 
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    91
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    92
Assuming there is a dfs_build_export schema configuration 1.4.0 system definition file.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    93
Then there should be a corresponding <hlm:sbsbuild> type defined prefixing with sbs
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    94
as sbs.dfs_build_export as above which contains a reference to sbsinput. The sbsInput
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    95
contains actual raptor commands equivalent to abld commands to be executed for that
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    96
configuration, in this case it is referring exportSBS, which in turn referring to commonsbs
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    97
so finally the command generated would be 
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    98
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    99
.. code-block:: xml
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   100
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   101
    sbs -k --filters=FilterMetadataLog --export-only
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   102
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   103
This command is executed for all the componentes specified in the dfs_build_export
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   104
configuration.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   105
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   106
No change from the configuration is required, except the new raptor input needs to be imported.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   107
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   108
2. To run using SBS mode (schema 3.0.0) - partial support
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   109
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   110
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   111
For schema 3.0, required inputs are,
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   112
 a. sbs arguments
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   113
 b. package definition files
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   114
 c. filters to filter the component
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   115
 d. patternset - specifying specific set of layers to be executed.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   116
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   117
Note: Filters are not supported yet.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   118
 
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   119
As raptor doesn't support schema 3.0 directly, the schema 3.0 is downgraded to
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   120
2.0 schema, then it is joined / merged with symbian / nokia system definition.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   121
Finally calling raptor commands with the raptor input.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   122
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   123
The minimum required input for schema 3.0 is, sbsinput.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   124
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   125
.. code-block:: xml
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   126
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   127
    <!-- sbs input for export -->
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   128
    <hlm:sbsinput id="export-sbs">
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   129
        <sbsoptions refid="exportSBS" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   130
    </hlm:sbsinput>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   131
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   132
When building for raptor just the export-sbs needs to be passed as the argument to 
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   133
compile-main target as below,
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   134
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   135
.. code-block:: xml
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   136
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   137
    <antcall target="compile-main" inheritRefs="true">
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   138
        <param name="sbs.inputs.list" value="export-sbs,armv5-build"/>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   139
    </antcall>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   140
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   141
Which will execute each sbs input from the list as a separate sbs call and execute it. Schema 3.0
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   142
is very basic and is only intended for internal testing / validation.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   143
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   144
Customizing raptor input
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   145
------------------------
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   146
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   147
Different scenario the user might need to provide the raptor inputs, (required to map raptor 
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   148
commands for abld configuration which is not there in the default raptor input xml file, 
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   149
want to override the default raptor input to pass additional parameters), below section covers
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   150
how these can be customized.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   151
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   152
Mapping raptor commands for new configuration from system definition file (1.4.0)
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   153
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   154
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   155
First step is to identify the abld commands executed by the new configuration. Correspondingly the
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   156
raptor commands need to be identified for that. Then need to check from the common raptor input 
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   157
is there any input which can be reused. If any raptor input could be re-usable, the just refering
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   158
that input and adding additional arguments would provide the exact raptor command arguments to be
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   159
executed.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   160
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   161
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   162
For example, if the new configuration for which the raptor command input is to be created is,
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   163
os, which is not there in the default raptor input, then abld commands executed are 
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   164
(to be simpoer - bldmake, export, tools_rel, winscw, armv5). The corresponding raptor input would
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   165
be
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   166
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   167
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   168
.. code-block:: xml
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   169
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   170
    <hlm:sbsinput id="build_input_os_export">
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   171
        <sbsInput refid="export-${build.system}" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   172
        <sbsOptions>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   173
            <arg name="--logfile" value="${compile.log.dir}/${build.id}_export_os_build.log" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   174
            <arg name="--makefile" value="${temp.build.dir}/${build.id}_export_os_build" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   175
        </sbsOptions>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   176
    </hlm:sbsinput>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   177
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   178
    <hlm:sbsinput id="build_input_os_tools">
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   179
        <sbsInput refid="tools-${build.system}" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   180
        <sbsOptions>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   181
            <arg name="--logfile" value="${compile.log.dir}/${build.id}_tools_rel_os_build.log" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   182
            <arg name="--makefile" value="${temp.build.dir}/${build.id}_tools_rel_os_build" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   183
        </sbsOptions>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   184
    </hlm:sbsinput>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   185
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   186
    <hlm:sbsinput id="build_input_os_winscw">
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   187
        <sbsInput refid="winscw-${build.system}" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   188
        <sbsOptions>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   189
            <arg name="--logfile" value="${compile.log.dir}/${build.id}_winscw_os_build.log" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   190
            <arg name="--makefile" value="${temp.build.dir}/${build.id}_winscw_os_build" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   191
        </sbsOptions>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   192
    </hlm:sbsinput>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   193
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   194
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   195
    <hlm:sbsinput id="build_input_os_armv5">
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   196
        <sbsInput refid="armv5-${build.system}" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   197
        <sbsOptions>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   198
            <arg name="--logfile" value="${compile.log.dir}/${build.id}_armv5_os_build.log" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   199
            <arg name="--makefile" value="${temp.build.dir}/${build.id}_armv5_os_build" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   200
        </sbsOptions>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   201
    </hlm:sbsinput>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   202
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   203
The default raptor input for each build target (tools, winscw, armv5) are reused here and just the
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   204
log file names are changed.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   205
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   206
Next the sequence of command execution needs to be defined for the corresponding os confoguration as below.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   207
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   208
.. code-block:: xml
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   209
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   210
    <hlm:sbsbuild id="sbs.os">
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   211
        <sbsInput refid="build_input_os_export" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   212
        <sbsInput refid="build_input_os_tools" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   213
        <sbsInput refid="build_input_os_winscw" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   214
        <sbsInput refid="build_input_os_armv5" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   215
    </hlm:sbsbuild>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   216
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   217
For configuration name os in the system definition file, it will take the list of raptor input
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   218
as defined with sbs.os, then it will execute each sbsinput as separate sbs calls with the arguments
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   219
extracted from the corresponding reference id.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   220
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   221
Overriding default raptor arguments
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   222
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   223
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   224
In case the default argument is not enough for the user requirements, this could be overriden by
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   225
redefining the reference of a particular sbsoptions will provide the user to change the arguments.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   226
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   227
For example, if the user just wants to pass debug flag for armv5 raptor inputs, the raptor input 
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   228
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   229
.. code-block:: xml
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   230
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   231
    <!-- Mainbuild common sbs options -->
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   232
    <hlm:sbsoptions id="armv5CommonSBS">
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   233
        <argset refid="commonSBS" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   234
        <arg line="-c armv5" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   235
    </hlm:sbsoptions>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   236
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   237
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   238
could be redefined as below in the user configuration,
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   239
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   240
.. code-block:: xml
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   241
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   242
    <!-- Mainbuild common sbs options -->
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   243
    <hlm:sbsoptions id="armv5CommonSBS">
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   244
        <argset refid="commonSBS" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   245
        <arg line="-c armv5" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   246
        <arg line="-d" />
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   247
    </hlm:sbsoptions>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   248
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   249
This would add the debug flag in all the raptor configuration which is using armv5CommonSBS.