Professional Documents
Culture Documents
Demo Lab 2 Dan Jacobs Raptor (SBSv2) - Aps
Demo Lab 2 Dan Jacobs Raptor (SBSv2) - Aps
Demo Lab 2 Dan Jacobs Raptor (SBSv2) - Aps
Daniel Jacobs
Software Engineer
Nokia
1
Why a new build system?
2
Features 1
3
Features 2
4
Eclipse Public License 1
5
Eclipse Public License 2
6
Using Raptor with Carbide 1
7
Using Raptor with Carbide 2
8
Command line usage 1
sbs
Look in current directory for a bld.inf and build for default
configurations
sbs clean
Perform a clean on the current directory’s bld.inf (remove
released files)
Also can do sbs CLEAN (case-insensitive)
9
Command line usage 2
10
Using Raptor in the Foundation
Andrew Simpson
Senior Integration Engineer
Symbian Foundation
11
Historical Structure
ex SymbianOS Model
Developers & <SystemDefinition> Platform built
Teams <layer> from xml
<logicalset> system model
build using Module <component>
individual Module <component>
bld.inf or lists component <logicalset>
of bld.inf <component>
component
ex S60 Model
<SystemDefinition>
Module <layer>
Module <logicalset>
component <component>
<component>
component <logicalset>
<component>
12
Package Based Foundation Structure
Source
Clean - Raptor Clean or True Clean
sbs -s sf/mw/serviceapi/package_definition.xml -k -c winscw CLEAN -f clean_log.txt
perl utilities/truclean.pl --packageexpr=mw/serviceapi --releasablesdir=\releaseables
Clean
Build
sbs -s sf/mw/serviceapi/package_definition.xml -k -c winscw.whatlog -f build_log.txt
14
Raptor Logs
Context Information
See help within Carbide for format of log files
Type of action
Most items are in “recipe” statements layer / package / phase
<recipe name='msvctoolscompile' target='M:/epoc32/build/uitools/c_28e6bf596feae056/fontcomp_exe/tools/rel/
fontcomp.obj' host='c100726' layer='mw' component='uitools_build' bldinf='M:/sf/mw/uitools/group/bld.inf' mmp='M:/sf/mw/
uitools/gfxtools/gditools/group/fontcomp.mmp' config='tools_rel.whatlog' platform='tools' phase='ALL' source='M:/sf/mw/uitools/
gfxtools/gditools/fontcomp/fontcomp.cpp'>
<![CDATA[
+ cl.exe -MT -c -nologo -Zp4 -GF -O1 -Op -W4 -D __SYMBIAN32__ -D __VC32__ -D __TOOLS__ -D __MSVC6__ -D __MSVC600__ -D WIN32 -D WINDOWS -D
__SUPPORT_CPP_EXCEPTIONS__ -D NDEBUG -D __EXE__ -FI bldvariant.hrh -I M:/sf/mw/uitools/gfxtools/gditools/inc -I M:/sf/mw/uitools/inc -I M:/sf/mw/uitools/
gfxtools/inc -I M:/epoc32/include -I M:/epoc32/include -I M:/epoc32/include/mw -I M:/epoc32/include/platform/mw -I M:/epoc32/include/platform -I M:/epoc32/
include/platform/loc -I M:/epoc32/include/platform/mw/loc -I M:/epoc32/include/platform/loc/sc -I M:/epoc32/include/platform/mw/loc/sc '-FRM:\epoc32\build
\uitools\c_28e6bf596feae056\fontcomp_exe\tools\rel\fontcomp.sbr' '-FoM:\epoc32\build\uitools\c_28e6bf596feae056\fontcomp_exe\tools\rel\fontcomp.obj' M:/sf/
mw/uitools/gfxtools/gditools/fontcomp/fontcomp.cpp
fontcomp.cpp
]]><time start='1254941308.746203000' elapsed='0.171' />
+ RV=0
+ set +x
Full command line
<status exit='ok' attempt='1' />
</recipe>
and response
Also check for <error> and <warning> tags and a few items outside of tags
</clean>
make.exe: Nothing to be done for `EXPORT'.
<info>Making M:/output/logs/symbian2_FCL.27.108__tools_rel.whatlog_single_thread_GT_tb91sf_Makefile.bitmap</info>
15
Raptor Logs
16
Final Thoughts
Using multiple threads
Typically choose value for –j of about 2x physical
CPUs
Remember order of execution may vary
Incremental builds
Take advantage of the full system dependency
information
Build only what has changed
17
Build & Test Tools in Symbian
18