# HG changeset patch # User timothy.murphy@nokia.com # Date 1264011764 0 # Node ID 4afe202ba8fa16508cd6dc3361d340c550339d50 # Parent d4605037b3b2674a0c460194e33646d449d8d2bd# Parent 62d9f099315d367928eefce36b715a17a5a1bf1c Merge diff -r d4605037b3b2 -r 4afe202ba8fa sbsv2/raptor/RELEASE-NOTES.txt --- a/sbsv2/raptor/RELEASE-NOTES.txt Wed Jan 20 00:12:00 2010 +0000 +++ b/sbsv2/raptor/RELEASE-NOTES.txt Wed Jan 20 18:22:44 2010 +0000 @@ -3,37 +3,59 @@ Next version -- Default to using Python 2.6.4 on windows (no change in compatibility with - older versions of Python). -- SF bug 1570: Adding then removing a capability can produce incorrect - result: e.g. ALL TCB -TCB becomes ALL -TCB but it should be just ALL -- Combine Linking and Postlinking into a single step + +New Features: - New 'Patchable Constants' target type: TARGETTYPE pdll +- Combine Linking and Postlinking into a single step - performance improvement. - Support exit codes from next version of the trace compiler which will issue them - New sbs_filter script and batchfile to ease the use of sbs_filter.py. - Allows filters to be executed over a log after a build has been done. + Allows filters to be executed over a log after a build has been done. e.g. + sbs_filter --filters=FilterWhat < logfile.log + (This runs a "--what" without regenerating any makefiles or reparsing the matadata.) - New (beta) FilterWhatComp filter. Simulates abld log output for - use with parse_what.pl for packing up zips by component. Whatcomp output - uses the incoming epocroot value. i.e. if epocroot is relative then so is - the what output. e.g. if EPOCROOT=\ then the output will be of the form - "\epoc32\release\armv5\...." If it's "..\myepocroot" then the output will - be "..\myepocroot\epoc32\release\armv5". If it's absolute then the what - output will also be absolute. + use with parse_what.pl for packing up zips by component. Whatcomp output + uses the incoming epocroot value. i.e. if epocroot is relative then so is + the what output. e.g. if EPOCROOT=\ then the output will be of the form: + + "\epoc32\release\armv5\...." + + If it's "..\myepocroot" then the output will be: + + "..\myepocroot\epoc32\release\armv5". + + If it's absolute then the what output will also be absolute. - New FilterCheck filter. This can be used with sbs_filter to perform the - equivalent of --check using the log output from a build. It is more - efficient than --check because the metadata is not parsed and no makefiles - are generated. e.g. - sbs_filter --filters=FilterCheck < logfile.log -- New (beta) graphical build visualisation tool (bin/timelines.py). Requires pygame - and PyOpenGL. e.g. python timelines.py < filename.log -- New (beta) log analyser (recipestats.py) for recording the total time spent in - each type of recipe in the build. e.g. python recipestats.py < filename.log > stats.csv - The output is in CSV format. + equivalent of --check using the log output from a build. It is more + efficient than --check because the metadata is not parsed and no makefiles + are generated. e.g. + + sbs_filter --filters=FilterCheck < logfile.log + +- New (beta) graphical build visualisation tool (bin/timelines.py). + Requires pygame and PyOpenGL. e.g. + + python timelines.py < filename.log + +- New (beta) log analyser (recipestats.py) for recording the total time spent + in each type of recipe in the build. e.g. + + python recipestats.py < filename.log > stats.csv + + The output is in CSV format. + +Defect Fixes: +- SF bug 1570: Adding then removing a capability can produce incorrect + result: e.g. ALL TCB -TCB becomes ALL -TCB but it should be just ALL + +Other Changes: +- Default to using Python 2.6.4 on windows (no change in compatibility with + older versions of Python). + diff -r d4605037b3b2 -r 4afe202ba8fa sbsv2/raptor/python/raptor_meta.py --- a/sbsv2/raptor/python/raptor_meta.py Wed Jan 20 00:12:00 2010 +0000 +++ b/sbsv2/raptor/python/raptor_meta.py Wed Jan 20 18:22:44 2010 +0000 @@ -1453,7 +1453,7 @@ for cap in toks[1]: cap = cap.lower() self.__debug("Setting "+toks[0]+": " + cap) - if cap.lower() != "all": + if cap != "all": if not cap.startswith("-"): if not cap.startswith("+"): cap = "+" + cap diff -r d4605037b3b2 -r 4afe202ba8fa sbsv2/raptor/test/smoke_suite/capability.py --- a/sbsv2/raptor/test/smoke_suite/capability.py Wed Jan 20 00:12:00 2010 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,77 +0,0 @@ -# -# Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -# All rights reserved. -# This component and the accompanying materials are made available -# under the terms of the License "Eclipse Public License v1.0" -# which accompanies this distribution, and is available -# at the URL "http://www.eclipse.org/legal/epl-v10.html". -# -# Initial Contributors: -# Nokia Corporation - initial contribution. -# -# Contributors: -# -# Description: -# - -from raptor_tests import SmokeTest -import sys - -def run(): - t = SmokeTest() - t.usebash = True - result = SmokeTest.PASS - - - if sys.platform.startswith("win"): - elf2e32 = "$(EPOCROOT)/epoc32/tools/elf2e32.exe" - else: - elf2e32 = "$(EPOCROOT)/epoc32/tools/elf2e32" - - description = """This test attempts to check that an exe gets the capabilities that we requested. It's ARM specific since it uses elf2e32. Tries to demonstrate capabilties being turned off then on in the mmp.""" - command = "sbs -b smoke_suite/test_resources/simple/capability.inf -c %s -m ${SBSMAKEFILE} -f ${SBSLOGFILE} && " + \ - elf2e32 + " --dump=s --e32input=$(EPOCROOT)/epoc32/release/armv5/urel/test_capability.exe" - targets = [ - "$(EPOCROOT)/epoc32/release/armv5/urel/test_capability.exe", - "$(EPOCROOT)/epoc32/release/armv5/urel/test_capability.exe.map" - ] - buildtargets = [ - ] - mustmatch = [ - "\s*Secure ID: 10003a5c$", - "\s*Vendor ID: 00000000$", - "\s*Capabilities: 00000000 000fffbf$", - "\s*CommDD$", - "\s*PowerMgmt$", - "\s*MultimediaDD$", - "\s*ReadDeviceData$", - "\s*WriteDeviceData$", - "\s*TrustedUI$", - "\s*DiskAdmin$", - "\s*NetworkControl$", - "\s*AllFiles$", - "\s*SwEvent$", - "\s*NetworkServices$", - "\s*LocalServices$", - "\s*ReadUserData$", - "\s*WriteUserData$", - "\s*Location$", - "\s*SurroundingsDD$", - "\s*UserEnvironment$", - "\s*TCB$" - ] - mustnotmatch = [ - "DRM" - ] - warnings = 0 - - t.id = "0107" - t.name = "capability" - t.description = description - t.command = command % "arm.v5.urel.gcce4_4_1" - t.targets = targets - t.mustmatch = mustmatch - t.mustnotmatch = mustnotmatch - t.warnings = warnings - t.run() - return t diff -r d4605037b3b2 -r 4afe202ba8fa sbsv2/raptor/test/smoke_suite/capability_arm.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sbsv2/raptor/test/smoke_suite/capability_arm.py Wed Jan 20 18:22:44 2010 +0000 @@ -0,0 +1,76 @@ +# +# Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). +# All rights reserved. +# This component and the accompanying materials are made available +# under the terms of the License "Eclipse Public License v1.0" +# which accompanies this distribution, and is available +# at the URL "http://www.eclipse.org/legal/epl-v10.html". +# +# Initial Contributors: +# Nokia Corporation - initial contribution. +# +# Contributors: +# +# Description: +# + +from raptor_tests import SmokeTest +import sys + +def run(): + t = SmokeTest() + t.usebash = True + + + if sys.platform.startswith("win"): + elf2e32 = "$(EPOCROOT)/epoc32/tools/elf2e32.exe" + else: + elf2e32 = "$(EPOCROOT)/epoc32/tools/elf2e32" + + description = """This test attempts to check that an exe gets the capabilities that we requested. It's ARM specific since it uses elf2e32. Tries to demonstrate capabilties being turned off then on in the mmp.""" + command = "sbs -b smoke_suite/test_resources/simple/capability.inf -c %s -m ${SBSMAKEFILE} -f ${SBSLOGFILE} && " + \ + elf2e32 + " --dump=s --e32input=$(EPOCROOT)/epoc32/release/armv5/urel/test_capability.exe" + targets = [ + "$(EPOCROOT)/epoc32/release/armv5/urel/test_capability.exe", + "$(EPOCROOT)/epoc32/release/armv5/urel/test_capability.exe.map" + ] + buildtargets = [ + ] + mustmatch = [ + "\s*Secure ID: 10003a5c$", + "\s*Vendor ID: 00000000$", + "\s*Capabilities: 00000000 000fffbf$", + "\s*CommDD$", + "\s*PowerMgmt$", + "\s*MultimediaDD$", + "\s*ReadDeviceData$", + "\s*WriteDeviceData$", + "\s*TrustedUI$", + "\s*DiskAdmin$", + "\s*NetworkControl$", + "\s*AllFiles$", + "\s*SwEvent$", + "\s*NetworkServices$", + "\s*LocalServices$", + "\s*ReadUserData$", + "\s*WriteUserData$", + "\s*Location$", + "\s*SurroundingsDD$", + "\s*UserEnvironment$", + "\s*TCB$" + ] + mustnotmatch = [ + "DRM" + ] + warnings = 0 + + t.id = "0107" + t.name = "capability_arm" + t.description = description + t.command = command % "arm.v5.urel.gcce4_4_1" + t.targets = targets + t.mustmatch = mustmatch + t.mustnotmatch = mustnotmatch + t.warnings = warnings + t.run() + return t diff -r d4605037b3b2 -r 4afe202ba8fa sbsv2/raptor/test/smoke_suite/test_resources/simple/capability.inf --- a/sbsv2/raptor/test/smoke_suite/test_resources/simple/capability.inf Wed Jan 20 00:12:00 2010 +0000 +++ b/sbsv2/raptor/test/smoke_suite/test_resources/simple/capability.inf Wed Jan 20 18:22:44 2010 +0000 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). * All rights reserved. * This component and the accompanying materials are made available * under the terms of the License "Eclipse Public License v1.0" diff -r d4605037b3b2 -r 4afe202ba8fa sbsv2/raptor/test/smoke_suite/test_resources/simple/capability.mmp --- a/sbsv2/raptor/test/smoke_suite/test_resources/simple/capability.mmp Wed Jan 20 00:12:00 2010 +0000 +++ b/sbsv2/raptor/test/smoke_suite/test_resources/simple/capability.mmp Wed Jan 20 18:22:44 2010 +0000 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). * All rights reserved. * This component and the accompanying materials are made available * under the terms of the License "Eclipse Public License v1.0"