# HG changeset patch # User Jon Chatten # Date 1282826461 -3600 # Node ID 31ef8a13d4f43f3d26120a77d1dd876e5e6dd34c # Parent 541af5ee3ed9ebf24b529b8bc28fb8445950f1ad sbs version 2.15.1 diff -r 541af5ee3ed9 -r 31ef8a13d4f4 sbsv2/raptor/RELEASE-NOTES.html --- a/sbsv2/raptor/RELEASE-NOTES.html Wed Aug 18 17:23:33 2010 +0300 +++ b/sbsv2/raptor/RELEASE-NOTES.html Thu Aug 26 13:41:01 2010 +0100 @@ -6,6 +6,15 @@

Release Notes for Symbian Build System v2

+

version 2.15.1

+ +

Defect Fixes

+ +

version 2.15.0

New Features

diff -r 541af5ee3ed9 -r 31ef8a13d4f4 sbsv2/raptor/lib/config/default.xml --- a/sbsv2/raptor/lib/config/default.xml Wed Aug 18 17:23:33 2010 +0300 +++ b/sbsv2/raptor/lib/config/default.xml Thu Aug 26 13:41:01 2010 +0100 @@ -27,6 +27,7 @@ + diff -r 541af5ee3ed9 -r 31ef8a13d4f4 sbsv2/raptor/lib/config/gcc_x86.xml --- a/sbsv2/raptor/lib/config/gcc_x86.xml Wed Aug 18 17:23:33 2010 +0300 +++ b/sbsv2/raptor/lib/config/gcc_x86.xml Thu Aug 26 13:41:01 2010 +0100 @@ -3,9 +3,9 @@ - + - + @@ -39,7 +39,7 @@ - + @@ -57,7 +57,7 @@ - + diff -r 541af5ee3ed9 -r 31ef8a13d4f4 sbsv2/raptor/lib/config/locations.xml --- a/sbsv2/raptor/lib/config/locations.xml Wed Aug 18 17:23:33 2010 +0300 +++ b/sbsv2/raptor/lib/config/locations.xml Thu Aug 26 13:41:01 2010 +0100 @@ -103,9 +103,9 @@ - - - + + + diff -r 541af5ee3ed9 -r 31ef8a13d4f4 sbsv2/raptor/lib/config/x86.xml --- a/sbsv2/raptor/lib/config/x86.xml Wed Aug 18 17:23:33 2010 +0300 +++ b/sbsv2/raptor/lib/config/x86.xml Thu Aug 26 13:41:01 2010 +0100 @@ -37,13 +37,13 @@ - + - + diff -r 541af5ee3ed9 -r 31ef8a13d4f4 sbsv2/raptor/lib/flm/e32abiv2.flm --- a/sbsv2/raptor/lib/flm/e32abiv2.flm Wed Aug 18 17:23:33 2010 +0300 +++ b/sbsv2/raptor/lib/flm/e32abiv2.flm Thu Aug 26 13:41:01 2010 +0100 @@ -262,19 +262,25 @@ include $(FLMHOME)/e32importlib.mk endif -ifneq ($(IMPORTLIBRARYREQUIRED),) -ifneq ($(or $(DEFFILE),$(EXPORTUNFROZEN)),) -# Both ABIv2 .dso and ABIv1 .lib import library generation require a processed .def file, -# unless EXPORTUNFROZEN is being used -PREPPEDDEFFILE:= -ifneq ($(DEFFILE),) - ifeq ($(EXPORTUNFROZEN),) - PREPPEDDEFFILE:=$(INTERMEDIATEPATH)/$(TARGET).prep - CLEANTARGETS:=$(CLEANTARGETS) $(PREPPEDDEFFILE) - $(eval $(importlibtarget_prepfile_$(BASE_ARCH))) +# A processed .def file is required for: +# 1: ABIv2 .dso and ABIv1 .lib import library generation +# 2: linking where the build fixes exports using a .exp file +# That is, in both cases, unless EXPORTUNFROZEN is being used +ifneq ($(or $(IMPORTLIBRARYREQUIRED),$(FIX_EXPORTS_USING_EXP_FILE)),) + ifneq ($(or $(DEFFILE),$(EXPORTUNFROZEN)),) + PREPPEDDEFFILE:= + ifneq ($(DEFFILE),) + ifeq ($(EXPORTUNFROZEN),) + PREPPEDDEFFILE:=$(INTERMEDIATEPATH)/$(TARGET).prep + CLEANTARGETS:=$(CLEANTARGETS) $(PREPPEDDEFFILE) + $(eval $(importlibtarget_prepfile_$(BASE_ARCH))) + endif + endif endif endif +ifneq ($(IMPORTLIBRARYREQUIRED),) +ifneq ($(or $(DEFFILE),$(EXPORTUNFROZEN)),) # ABIv2 .dso ifneq ($(IMPORTLIBTARGET_DSO),) # check that we haven't tried to specify this target already @@ -478,8 +484,6 @@ CIA_CPPFILES:= ifeq ($(TRANSFORM_CIA),1) CIA_CPPFILES:=$(call relocatefiles,$(INTERMEDIATEPATH),$(call extractandmap,$(CIAFILEEXTENSIONS),_.cpp,$(CIAFILES))) -else - endif ## LINK ###################################################################### @@ -559,8 +563,12 @@ # Runtime libraries which has no deps. define artarget_func + +# Ensure that, when generating .via files, that they do not start with a blank line - some versions of GCC's AR reject +# any further content in the file if the first line is empty + $(ARTARGET): $(if $(MULTIFILE_ENABLED),$(MULTIFILEOBJECT),$(LINKOBJECTS)) $(STDCPPTAGFILE) - $(if $(MULTIFILE_ENABLED),,@echo "$(STDCPPTAGFILE)" > $(VIAFILE); + $(if $(MULTIFILE_ENABLED),,@echo $(if $(STDCPPTAGFILE),"$(STDCPPTAGFILE)",-n "") > $(VIAFILE); $(call groupin10,$(LINKOBJECTS)) ;) $(call startrule,ar,FORCESUCCESS) \ $$(call dblquote,$(AR)) $(ARCHIVER_CREATE_OPTION) $$@ $(if $(MULTIFILE_ENABLED),$(MULTIFILEOBJECT),$(COMMANDFILE_OPTION)$(VIAFILE)) \ @@ -829,7 +837,7 @@ $(if $(MULTIFILE_ENABLED),$(eval $(call e32abiv2_compile,$(MULTIFILEOBJECT),$(CPPFILES),$(CFILES),$(CPP_LANG_OPTION))),$(foreach F,$(CPPFILES),$(eval $(call e32abiv2_compile,$(call mapcpp2object,$(F)),$(F),$(CPP_LANG_OPTION))))) $(if $(MULTIFILE_ENABLED),,$(foreach F,$(CFILES),$(eval $(call e32abiv2_compile,$(call mapc2object,$(F)),$(F),$(C_LANG_OPTION))))) ifneq ($(TRANSFORM_CIA),1) - $(if $(MULTIFILE_ENABLED),,$(foreach F,$(CIAFILES),$(eval $(call e32abiv2_compile,$(call mapcia2object,$(F)),$(F),$(CPP_LANG_OPTION) $(COMPILER_CIA_FLAGS))))) + $(if $(MULTIFILE_ENABLED),,$(foreach F,$(CIAFILES),$(eval $(call e32abiv2_compile,$(call mapcia2object,$(F)),$(F),$(CPP_LANG_OPTION) $(COMPILER_CIA_FLAGS) $(call makemacrodef,-D,$(CIADEFS)))))) endif CLEANTARGETS:=$(CLEANTARGETS) $(if $(MULTIFILE_ENABLED),$(MULTIFILE_VIAFILE) $(MULTIFILEOBJECT),$(CPPFILES_LINKOBJECTS) $(CFILES_LINKOBJECTS) $(CIAFILES_LINKOBJECTS)) $(if $(GENERATELINKERFEEDBACK),$(FEEDBACKFILE)) diff -r 541af5ee3ed9 -r 31ef8a13d4f4 sbsv2/raptor/lib/flm/e32abiv2defaults.mk --- a/sbsv2/raptor/lib/flm/e32abiv2defaults.mk Wed Aug 18 17:23:33 2010 +0300 +++ b/sbsv2/raptor/lib/flm/e32abiv2defaults.mk Thu Aug 26 13:41:01 2010 +0100 @@ -38,17 +38,17 @@ # Reset these variables as they change for every single target type -# LINKER_ENTRYPOINT_ADORNMENT will be blank for GCCE; for RVCT it will look like "(uc_exe_.o)" -# LINKER_ENTRYPOINT_DECORATION will be blank for RVCT; for GCCE it will look like "-u _E32Startup" -# LINKER_SEPARATOR is a comma for GCCE as g++ is used for linking; for RVCT is should be a space, but +# LINKER_ENTRYPOINT_ADORNMENT will be blank for GCC; for RVCT it will look like "(uc_exe_.o)" +# LINKER_ENTRYPOINT_DECORATION will be blank for RVCT; for GCC it will look like "-u _E32Startup" +# LINKER_SEPARATOR is a comma for GCC as g++ is used for linking; for RVCT is should be a space, but # as make strips trailing spaces, we use the CHAR_SPACE variable. LINKER_ENTRYPOINT_ADORNMENT:= LINKER_ENTRYPOINT_DECORATION:= LINKER_SEPARATOR:= -# For GCCE -ifeq ($(TOOLCHAIN),GCCE) +# For GCC +ifneq ($(findstring GCC,$(TOOLCHAIN)),) LINKER_ENTRYPOINT_DECORATION:=$(if $(call isoneof,$(TARGETTYPE),exexp exe),-Wl$(CHAR_COMMA)-u$(CHAR_COMMA)$(LINKER_ENTRYPOINT_PREFIX)$(ENTRYPOINT),-Wl$(CHAR_COMMA)-u$(CHAR_COMMA)$(LINKER_ENTRYPOINT_PREFIX)$(ENTRYPOINT)) LINKER_SEPARATOR:=$(CHAR_COMMA) endif @@ -96,7 +96,7 @@ endif # "ARMFPU" overrides for 'fpu-ness' in compiler and postlinker calls in .mmp files are currently only -# supported for RVCT-based builds, GCCE builds always make use of the interface defined defaults. -ifeq ($(TOOLCHAIN),GCCE) +# supported for RVCT-based builds, other builds always make use of the interface defined defaults. +ifneq ($(TOOLCHAIN),RVCT) ARMFPU:= endif diff -r 541af5ee3ed9 -r 31ef8a13d4f4 sbsv2/raptor/lib/flm/e32abiv2exexp.flm --- a/sbsv2/raptor/lib/flm/e32abiv2exexp.flm Wed Aug 18 17:23:33 2010 +0300 +++ b/sbsv2/raptor/lib/flm/e32abiv2exexp.flm Thu Aug 26 13:41:01 2010 +0100 @@ -54,7 +54,7 @@ ifeq ("$(TOOLCHAIN)","RVCT") LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRYPOINT_PREFIX)$(ENTRYPOINT) $(call dblquote,$(STATIC_RUNTIME_DIR)/$(FIRSTLIB)($(FIRSTLIB_OBJECTFILE))) else -# GCCE +# GCC LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRYPOINT_PREFIX)$(ENTRYPOINT) -Wl,-u$(LINKER_SEPARATOR)$(LINKER_ENTRYPOINT_PREFIX)$(ENTRYPOINT)$(LINKER_SEPARATOR)$(call dblquote,$(STATIC_RUNTIME_DIR)/$(FIRSTLIB)) endif diff -r 541af5ee3ed9 -r 31ef8a13d4f4 sbsv2/raptor/lib/flm/e32link.mk --- a/sbsv2/raptor/lib/flm/e32link.mk Wed Aug 18 17:23:33 2010 +0300 +++ b/sbsv2/raptor/lib/flm/e32link.mk Thu Aug 26 13:41:01 2010 +0100 @@ -22,12 +22,12 @@ # 'exports' generation involves taking a list of the known exports, passing them to # gendef.pl to create a temporary .def file, prepdef-ing this .def file and then # passing this along to the import library generation tool to create the .lib.exp. - # This is invoked for components with knowN interfaces that aren't making use of a .mmp + # This is invoked for components with known interfaces that aren't making use of a .mmp # listed .def file # # 'deffile' generation takes the .def file used in the component build, for components # that either require a .def file or where a .def file is used to override default behaviour. - # The .def file will already have been predef-ed during import library processing, so it's + # The .def file will already have been prepdef-ed during initial .def file processing, so it's # just a matter of running the import library generation tool on the temporary .def file to # create the .lib.exp # diff -r 541af5ee3ed9 -r 31ef8a13d4f4 sbsv2/raptor/lib/flm/gnumakefile.flm --- a/sbsv2/raptor/lib/flm/gnumakefile.flm Wed Aug 18 17:23:33 2010 +0300 +++ b/sbsv2/raptor/lib/flm/gnumakefile.flm Thu Aug 26 13:41:01 2010 +0100 @@ -1,4 +1,4 @@ -# Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). +# Copyright (c) 2008-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" @@ -172,15 +172,17 @@ endef DO_NOTHING:: $(UNIQ)_DO_NOTHING -$(UNIQ)_DO_NOTHING: ; +$(UNIQ)_DO_NOTHING: $(foreach EXTTRG,$(EXTMAKETARGETS),$(eval $(call callgnumake,$(EXTTRG)))) ## Do ROMFILE target in romstuff.mke -ifeq ($(ROMFILE_$(call sanitise,$(EXTMAKEFILENAME))),) -ROMFILE_$(call sanitise,$(EXTMAKEFILENAME)):=1 +ROMFILEUNIQ:=$(call sanitise,$(DIRECTORY)$(EXTMAKEFILENAME)$(TO_ROOT)$(EPOCBLD)$(TO_BLDINF)$(PLATFORM)) -ROMDIR:=$(subst $(OLD_EPOCROOT),$(OLD_EPOCROOT)epoc32/rom/,$(TO_BLDINF)) +ifeq ($(ROMFILE_$(ROMFILEUNIQ)),) +ROMFILE_$(ROMFILEUNIQ):=1 +TOBLDINF:=$(dir $(subst :,,$(subst $(OLD_EPOCROOT),,$(COMPONENT_META)))) +ROMDIR:=$(OLD_EPOCROOT)epoc32/rom/$(TOBLDINF) define RomfileRomstuff ROMFILE:: diff -r 541af5ee3ed9 -r 31ef8a13d4f4 sbsv2/raptor/lib/flm/resource.mk --- a/sbsv2/raptor/lib/flm/resource.mk Wed Aug 18 17:23:33 2010 +0300 +++ b/sbsv2/raptor/lib/flm/resource.mk Thu Aug 26 13:41:01 2010 +0100 @@ -31,7 +31,7 @@ $3: $(SOURCE) $(call startrule,resourcedependencies,FORCESUCCESS) \ - $(GNUCPP) -DLANGUAGE_$(3) -DLANGUAGE_$(subst sc,SC,$2) $(call makemacrodef,-D,$(MMPDEFS))\ + $(GNUCPP) -DLANGUAGE_$(2) -DLANGUAGE_$(subst sc,SC,$2) $(call makemacrodef,-D,$(MMPDEFS))\ $(CPPOPT) $(SOURCE) -M -MG -MT"$1" | \ $$(DEPENDENCY_CORRECTOR) >$3 \ $(call endrule,resourcedependencies) @@ -43,33 +43,15 @@ endef # resource.deps # ############################################################################### -# $1 is the name of the intermediate RESOURCEFILE -# $2 is the LANGUAGE (eg. sc or 01 or 02 ...) -# Uses $(RESOURCEHEADER),$(SOURCE),$(HEADLANG),$(MMPDEFS) apart from some tools -define resource.build - $(if $(FLMDEBUG),$$(info resource.build: $1 LANG:$2 )) +# Must be a separate macro since we +define resource.decideheader DOHEADER:= ifeq ($(HEADLANG),$2) ifneq ($(RESOURCEHEADER),) RESOURCE:: $(RESOURCEHEADER) DOHEADER:=-h$(RESOURCEHEADER) - # strictly speaking if $1 is made then the header file should be there too - # but suppose someone adds a header statement to their MMP after doing a build? - # so here we recreate the resource header if its missing even if the intermediate resource - # has actually been built. The problem is: what if the rpp file is not there (oops)? - # So this is not perfect but I think that the situation is fairly unlikely. - # We can afford to put in an if statement for the rsg file - it's not a race condition because - # $1 is done and the build engine guarantees that it's there so no resource header - # can be attempted while we're trying to test. - $(RESOURCEHEADER) : $1 - $(call startrule,resourcecompile.headerfill,FORCESUCCESS) \ - if [ ! -f "$(RESOURCEHEADER)" ]; then $(GNUCPP) -DLANGUAGE_$2 \ - -DLANGUAGE_$(subst sc,SC,$(2)) $(call makemacrodef,-D,$(MMPDEFS))\ - $(CPPOPT) $(SOURCE) -o $1.rpp; fi && \ - if [ ! -f "$(RESOURCEHEADER)" ]; then $(RCOMP) -m045,046,047 -u -h$$@ -s$1.rpp; fi \ - $(call endrule,resourcecompile.headerfill) # we will add the resourceheader to RELEASABLES globally endif @@ -79,16 +61,44 @@ # "leader" for this resource $1: $(PRIMARYFILE) endif +endef + +# $1 is the name of the intermediate RESOURCEFILE +# $2 is the LANGUAGE (eg. sc or 01 or 02 ...) +# Uses $(RESOURCEHEADER),$(SOURCE),$(HEADLANG),$(MMPDEFS) apart from some tools +define resource.build + $(if $(FLMDEBUG),$$(info resource.build: $1 LANG:$2 )) + + $(eval $(resource.decideheader)) + + ifneq ($(DOHEADER),) + # Strictly speaking if $1 is made then the header file should be there too + # but suppose someone adds a header statement to their MMP after doing a build? + # so here we recreate the resource header if its missing even if the intermediate resource + # has actually been built. The problem is: what if the rpp file is not there (oops)? + # So this is not perfect but I think that the situation is fairly unlikely. + # We can afford to put in an if statement for the rsg file - it's not a race condition because + # $1 is done and the build engine guarantees that it's there so no resource header + # can be attempted while we're trying to test. + $(RESOURCEHEADER) : $1 + $(call startrule,resourcecompile.headerfill,FORCESUCCESS) \ + if [ ! -f "$(RESOURCEHEADER)" ]; then $(GNUCPP) -DLANGUAGE_$2 \ + -DLANGUAGE_$(subst sc,SC,$(2)) $(call makemacrodef,-D,$(MMPDEFS))\ + $(CPPOPT) $(SOURCE) -o $1.rpp; fi && \ + if [ ! -f "$(RESOURCEHEADER)" ]; then $(RCOMP) -m045,046,047 -u -h$$@ -s$1.rpp; fi \ + $(call endrule,resourcecompile.headerfill) + endif - RESOURCE:: $1 - $1: $(SOURCE) - $(call startrule,resourcecompile,FORCESUCCESS) \ - $(GNUCPP) -DLANGUAGE_$2 -DLANGUAGE_$(subst sc,SC,$(2)) $(call makemacrodef,-D,$(MMPDEFS))\ - $(CPPOPT) $(SOURCE) -o $1.rpp && \ - $(RCOMP) -m045,046,047 -u $$(DOHEADER) -o$$@ -s$1.rpp \ - $(call endrule,resourcecompile) + RESOURCE:: $1 + + $1: $(SOURCE) + $(call startrule,resourcecompile,FORCESUCCESS) \ + $(GNUCPP) -DLANGUAGE_$2 -DLANGUAGE_$(subst sc,SC,$(2)) $(call makemacrodef,-D,$(MMPDEFS))\ + $(CPPOPT) $(SOURCE) -o $1.rpp && \ + $(RCOMP) -m045,046,047 -u $(DOHEADER) -o$$@ -s$1.rpp \ + $(call endrule,resourcecompile) SOURCETARGET_$(call sanitise,$(SOURCE)): $1 CLEANTARGETS:=$$(CLEANTARGETS) $1 $1.rpp diff -r 541af5ee3ed9 -r 31ef8a13d4f4 sbsv2/raptor/notes/x86_initial.txt --- a/sbsv2/raptor/notes/x86_initial.txt Wed Aug 18 17:23:33 2010 +0300 +++ b/sbsv2/raptor/notes/x86_initial.txt Thu Aug 26 13:41:01 2010 +0100 @@ -22,11 +22,9 @@ sbs -c x86_urel sbs -c x86_udeb -If a component supports a build for X86GCC or ARMV5 then it will support a -build using Raptor's x86 support if requested i.e. if one of the above build -configurations is used and, for example, the component's bld.inf file has an -empty PRJ_PLATFORMS section or PRJ_PLATFORMS is populated with X86GCC, ARMV5, -DEFAULT, BASEDEFAULT etc. +A component supports a build using the above x86 configurations if its +bld.inf file has an empty or missing PRJ_PLATFORMS section or PRJ_PLATFORMS is +populated specifically with X86, DEFAULT, BASEDEFAULT or BASEUSERDEFAULT. The above x86 group and aliases check that the GCC installation is version 3.4.5 but, other than that, it is the end user's responsibility to provide a toolchain diff -r 541af5ee3ed9 -r 31ef8a13d4f4 sbsv2/raptor/python/raptor_meta.py --- a/sbsv2/raptor/python/raptor_meta.py Wed Aug 18 17:23:33 2010 +0300 +++ b/sbsv2/raptor/python/raptor_meta.py Thu Aug 26 13:41:01 2010 +0100 @@ -38,7 +38,7 @@ import generic_path -PiggyBackedBuildPlatforms = {'ARMV5':['GCCXML', 'X86GCC']} +PiggyBackedBuildPlatforms = {'ARMV5':['GCCXML']} PlatformDefaultDefFileDir = {'WINSCW':'bwins', 'ARMV5' :'eabi', @@ -47,7 +47,7 @@ 'ARMV6':'eabi', 'ARMV7' : 'eabi', 'ARMV7SMP' : 'eabi', - 'X86GCC' : ['bx86gcc', 'eabi']} + 'X86' : ['bx86gcc', 'eabi']} def getVariantCfgDetail(aEPOCROOT, aVariantCfgFile): """Obtain pertinent build related detail from the Symbian variant.cfg file. @@ -2484,12 +2484,13 @@ # We therefore check exisitance of the primary located file if a secondary location is available, and use the # secondary location if required (recording the fact that the secondary file has been used, as this can influence # downstream processing). + # Secondary locations are found as follows : resolvedPrimaryLocation/../secondaryLocation/resolvedDefFileName if secondaryDefaultDefFileDir: primaryFileCheck = raptor_utilities.resolveSymbianPath(self.__defFileRoot, resolvedDefFile, 'DEFFILE', "", str(aBuildPlatform['EPOCROOT'])) if not os.path.exists(primaryFileCheck): isSecondaryDefaultDefFile = True - resolvedDefFile = '../'+secondaryDefaultDefFileDir+'/'+os.path.basename(resolvedDefFile) + resolvedDefFile = "{0}/../{1}/{2}".format(os.path.dirname(resolvedDefFile), secondaryDefaultDefFileDir, os.path.basename(resolvedDefFile)) resolvedDefFile = raptor_utilities.resolveSymbianPath(self.__defFileRoot, resolvedDefFile, 'DEFFILE', "", str(aBuildPlatform['EPOCROOT'])) diff -r 541af5ee3ed9 -r 31ef8a13d4f4 sbsv2/raptor/python/raptor_version.py --- a/sbsv2/raptor/python/raptor_version.py Wed Aug 18 17:23:33 2010 +0300 +++ b/sbsv2/raptor/python/raptor_version.py Thu Aug 26 13:41:01 2010 +0100 @@ -19,7 +19,7 @@ # # both of these are done automatically by the installer builder. -version=(2,15,0,"ISODATE","symbian build system","CHANGESET") +version=(2,15,1,"ISODATE","symbian build system","CHANGESET") def numericversion(): """Raptor version string""" diff -r 541af5ee3ed9 -r 31ef8a13d4f4 sbsv2/raptor/test/metadata/project/bld.infs/multiple_plats.inf --- a/sbsv2/raptor/test/metadata/project/bld.infs/multiple_plats.inf Wed Aug 18 17:23:33 2010 +0300 +++ b/sbsv2/raptor/test/metadata/project/bld.infs/multiple_plats.inf Thu Aug 26 13:41:01 2010 +0100 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2006-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" @@ -17,5 +17,5 @@ PRJ_PLATFORMS -ARMV5 WINSCW TOOLS +ARMV5 WINSCW TOOLS X86 diff -r 541af5ee3ed9 -r 31ef8a13d4f4 sbsv2/raptor/test/smoke_suite/resource_once.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sbsv2/raptor/test/smoke_suite/resource_once.py Thu Aug 26 13:41:01 2010 +0100 @@ -0,0 +1,48 @@ +# +# 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 + +def run(): + t = SmokeTest() + t.name = "resource_once" + t.description = "Ensure we only generate the resource header once even when there are many languages. Make sure that the right language (96) is used for the headerfile." + t.command = "sbs -b smoke_suite/test_resources/resource/group/simple.inf -c winscw_udeb -m ${SBSMAKEFILE} -f ${SBSLOGFILE}; XX=$?; cat ${SBSLOGFILE}; exit $XX" + t.usebash = True + t.targets = [ + "$(EPOCROOT)/epoc32/include/testresource.hrh", + "$(EPOCROOT)/epoc32/include/testresource_badef.rh", + "$(EPOCROOT)/epoc32/data/z/resource/testresource/testresource.rsc", + "$(EPOCROOT)/epoc32/release/winscw/udeb/z/resource/testresource/testresource.rsc", + "$(EPOCROOT)/epoc32/release/winscw/urel/z/resource/testresource/testresource.rsc", + "$(EPOCROOT)/epoc32/data/z/resource/testresource/testresource.r37", + "$(EPOCROOT)/epoc32/release/winscw/udeb/z/resource/testresource/testresource.r37", + "$(EPOCROOT)/epoc32/release/winscw/urel/z/resource/testresource/testresource.r37", + "$(EPOCROOT)/epoc32/data/z/resource/testresource/testresource.r94", + "$(EPOCROOT)/epoc32/release/winscw/udeb/z/resource/testresource/testresource.r94", + "$(EPOCROOT)/epoc32/release/winscw/urel/z/resource/testresource/testresource.r94", + "$(EPOCROOT)/epoc32/data/z/resource/testresource/testresource.r96", + "$(EPOCROOT)/epoc32/release/winscw/udeb/z/resource/testresource/testresource.r96", + "$(EPOCROOT)/epoc32/release/winscw/urel/z/resource/testresource/testresource.r96", + "$(EPOCROOT)/epoc32/include/testresource.rsg", + "$(EPOCROOT)/epoc32/release/winscw/udeb/testresource.exe" + ] + t.countmatch = [["rcomp.*-h.*rsg.*r96",1], # must see r96 once + ["rcomp.*-h.*rsg",1]] # must not see any other language + t.run() + + t.print_result() + return t diff -r 541af5ee3ed9 -r 31ef8a13d4f4 sbsv2/raptor/test/smoke_suite/test_resources/resource/group/simple.inf --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sbsv2/raptor/test/smoke_suite/test_resources/resource/group/simple.inf Thu Aug 26 13:41:01 2010 +0100 @@ -0,0 +1,25 @@ +/* +* Copyright (c) 2007-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: +* +*/ + + +PRJ_EXPORTS +../inc/testresource.hrh /epoc32/include/testresource.hrh +testresource_badef.rh /epoc32/include/testresource_badef.rh + + +PRJ_MMPFILES +simpleresource.mmp diff -r 541af5ee3ed9 -r 31ef8a13d4f4 sbsv2/raptor/test/smoke_suite/test_resources/resource/group/simpleresource.mmp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sbsv2/raptor/test/smoke_suite/test_resources/resource/group/simpleresource.mmp Thu Aug 26 13:41:01 2010 +0100 @@ -0,0 +1,46 @@ +/* +* Copyright (c) 2009-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: +* +*/ +TARGET testresource +TARGETTYPE EXE +LIBRARY euser.lib +SECUREID 0x10003a5c +SYSTEMINCLUDE /epoc32/include +SOURCEPATH ../ +SOURCE test.cpp +EPOCSTACKSIZE 8192 +EPOCHEAPSIZE 0x5000 65535 +EPOCPROCESSPRIORITY low +capability TCB ProtServ DiskAdmin AllFiles PowerMgmt CommDD + +UID 0x1000008d 0x10005342 +VENDORID 0x70000001 +USERINCLUDE ../inc +SYSTEMINCLUDE /epoc32/include + +MACRO SHOULD_BE_DEFINED + + +START RESOURCE simpleresource.rss +TARGET testresource +// Test backslash to forward slash conversion here: +TARGETPATH resource\testresource +HEADER +LANG sc 37 94 96 +END + + + diff -r 541af5ee3ed9 -r 31ef8a13d4f4 sbsv2/raptor/test/smoke_suite/test_resources/resource/simpleresource.rss --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/sbsv2/raptor/test/smoke_suite/test_resources/resource/simpleresource.rss Thu Aug 26 13:41:01 2010 +0100 @@ -0,0 +1,330 @@ +/* +* 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: +* LOGWRAP.RSS +* +*/ + + +#include +#include + +#include "../inc/testresource.rh" +#include "../inc/testresource.hrh" +#include "testresource.rls" + + +// MACRO statements in .mmp files should be reflected in resource preprocessing +#ifndef SHOULD_BE_DEFINED +#error "mmp MACRO SHOULD_BE_DEFINED is not defined!" +#endif + +// Initial configuration +RESOURCE CONFIG r_log_initial_config + { + size = 1000; // Maximum number of events + recent = 20; // Maximum size of recent lists + age = 2592000; // 30 days + } + + RESOURCE ARRAY r_log_initial_events + { + items = + { + ETYPE { uid = KLogCallEventType; description = LOG_CALL_EVENT_TYPE; }, + ETYPE { uid = KLogDataEventType; description = LOG_DATA_EVENT_TYPE; }, + ETYPE { uid = KLogFaxEventType; description = LOG_FAX_EVENT_TYPE; }, + ETYPE { uid = KLogShortMessageEventType; description = LOG_SHORT_MESSAGE_EVENT_TYPE; }, + ETYPE { uid = KLogTaskSchedulerEventType; description = LOG_TASK_SCHEDULER_EVENT_TYPE; }, + ETYPE { uid = KLogPacketDataEventType; description = LOG_PACKET_DATA_EVENT_TYPE; }, + + + ETYPE { uid = KLogLbsSelfLocateEventType; description = LOG_LBS_SELF_LOCATE_EVENT_TYPE; }, + ETYPE { uid = KLogLbsExternalLocateEventType; description = LOG_LBS_EXTERNAL_LOCATE_EVENT_TYPE; }, + ETYPE { uid = KLogLbsTransmitLocationEventType; description = LOG_LBS_TRANSMIT_LOCATION_EVENT_TYPE; }, + ETYPE { uid = KLogLbsNetworkLocateEventType; description = LOG_LBS_NETWORK_LOCATE_EVENT_TYPE; }, + ETYPE { uid = KLogLbsAssistanceDataEventType; description = LOG_LBS_ASSISTANCE_DATA_EVENT_TYPE; } + + }; + } + + + +RESOURCE ARRAY r_log_security +// +// [See logwrap.rh for the definitions of SECURITY and CAPABILITY.] +// +// This structure defines settings for platform security in the Log engine. +// All event types defined above in 'r_log_initial_events' need to be policed. +// The server must always determine whether a client thread has the required +// capability to read/write a log event(s) of a built-in type. Each operation +// may have from one to seven capabilities defined for it. All operations on +// built in types _MUST_ have an associated security policy defined here. If no +// security is required, then use 'cap=ECapability_None'. The CAPABILITY values +// defined here will provide constructor arguments for TSecurityPolicy objects. +// The maximum number of CAPABILITY(s) for each read or write operation is 7. +// ( a read_caps or a write_caps { contains <= 7 CAPABILITY{} statements } ) +// Note that SID-based security isn't supported in the Log Engine. +// + { + items = + { + SECURITY + { + uid = KLogCallEventType; + read_caps= + { + CAPABILITY { cap=ECapabilityReadUserData; } + }; + write_caps= + { + CAPABILITY { cap=ECapabilityWriteUserData; } + }; + }, + SECURITY + { + uid=KLogDataEventType; + read_caps= + { + CAPABILITY { cap=ECapabilityReadUserData; } + }; + write_caps= + { + CAPABILITY { cap=ECapabilityWriteUserData; } + }; + }, + SECURITY + { + uid=KLogFaxEventType; + read_caps= + { + CAPABILITY { cap=ECapabilityReadUserData; } + }; + write_caps= + { + CAPABILITY { cap=ECapabilityWriteUserData; } + }; + }, + SECURITY + { + uid=KLogShortMessageEventType; + read_caps= + { + CAPABILITY { cap=ECapabilityReadUserData; } + }; + write_caps= + { + CAPABILITY { cap=ECapabilityWriteUserData; } + }; + }, + SECURITY + { + uid=KLogTaskSchedulerEventType; + read_caps= + { + CAPABILITY { cap=ECapabilityReadUserData; } + }; + write_caps= + { + CAPABILITY { cap=ECapability_None; } + }; + }, + SECURITY + { + uid=KLogPacketDataEventType; + read_caps= + { + CAPABILITY { cap=ECapabilityReadUserData; } + }; + write_caps= + { + CAPABILITY { cap=ECapabilityWriteUserData; } + }; + }, + SECURITY + { + uid=KLogLbsSelfLocateEventType; + read_caps= + { + CAPABILITY { cap=ECapabilityReadDeviceData; } + }; + write_caps= + { + CAPABILITY { cap=ECapabilityWriteDeviceData; } + }; + }, + SECURITY + { + uid=KLogLbsExternalLocateEventType; + read_caps= + { + CAPABILITY { cap=ECapabilityReadDeviceData; } + }; + write_caps= + { + CAPABILITY { cap=ECapabilityWriteDeviceData; } + }; + }, + SECURITY + { + uid=KLogLbsTransmitLocationEventType; + read_caps= + { + CAPABILITY { cap=ECapabilityReadDeviceData; } + }; + write_caps= + { + CAPABILITY { cap=ECapabilityWriteDeviceData; } + }; + }, + SECURITY + { + uid=KLogLbsNetworkLocateEventType; + read_caps= + { + CAPABILITY { cap=ECapabilityReadDeviceData; } + }; + write_caps= + { + CAPABILITY { cap=ECapabilityWriteDeviceData; } + }; + }, + SECURITY + { + uid=KLogLbsAssistanceDataEventType; + read_caps= + { + CAPABILITY { cap=ECapabilityReadDeviceData; } + }; + write_caps= + { + CAPABILITY { cap=ECapabilityWriteDeviceData; } + }; + } + }; + } + + +// Index entries +RESOURCE ARRAY r_log_indexes + { + items = + { + INDEX + { + name = "Index1"; // do not translate + table = "Event"; // do not translate + keys = + { + KEY { col = "Id"; } // do not translate + }; + }, + INDEX + { + name = "Index2"; // do not translate + table = "Event"; // do not translate + keys = + { + KEY { col = "ETime"; } // do not translate + }; + }, + INDEX + { + name = "Index3"; // do not translate + table = "String"; // do not translate + keys = + { + KEY { col = "Id"; } // do not translate + }; + } + }; + } + +// Recent list setup +RESOURCE ARRAY r_log_recent + { + items = + { + RECENT + { + id = KLogRecentIncomingCalls; + duplicate = ELogRemotePartyField|ELogContactField|ELogNumberField; + conditions = + { + MATCH { field = ELogEventTypeField; value = KLogCallEventType; }, + MATCH { field = ELogDirectionField; string = LOG_DIR_IN; }, + MATCH { field = ELogDirectionField; string = LOG_DIR_IN_ALT; } + }; + }, + RECENT + { + id = KLogRecentOutgoingCalls; + duplicate = ELogRemotePartyField|ELogContactField|ELogNumberField; + conditions = + { + MATCH { field = ELogEventTypeField; value = KLogCallEventType; }, + MATCH { field = ELogDirectionField; string = LOG_DIR_OUT; }, + MATCH { field = ELogDirectionField; string = LOG_DIR_OUT_ALT; } + }; + }, + RECENT + { + id = KLogRecentMissedCalls; + duplicate = ELogRemotePartyField|ELogContactField|ELogNumberField; + conditions = + { + MATCH { field = ELogEventTypeField; value = KLogCallEventType; }, + MATCH { field = ELogDirectionField; string = LOG_DIR_MISSED; }, + MATCH { field = ELogDirectionField; string = LOG_DIR_MISSED_ALT; } + }; + } + }; + } + + +// Direction +RESOURCE LBUF r_log_dir_in { txt = LOG_DIR_IN; } +RESOURCE LBUF r_log_dir_out { txt = LOG_DIR_OUT; } +RESOURCE LBUF r_log_dir_in_alt { txt = LOG_DIR_IN_ALT; } +RESOURCE LBUF r_log_dir_out_alt { txt = LOG_DIR_OUT_ALT; } +RESOURCE LBUF r_log_dir_fetched { txt = LOG_DIR_FETCHED; } +RESOURCE LBUF r_log_dir_missed { txt = LOG_DIR_MISSED; } +RESOURCE LBUF r_log_dir_missed_alt { txt = LOG_DIR_MISSED_ALT; } + + +// Delivery +RESOURCE LBUF r_log_del_pending { txt = LOG_DEL_PENDING; } +RESOURCE LBUF r_log_del_sent { txt = LOG_DEL_SENT; } +RESOURCE LBUF r_log_del_failed { txt = LOG_DEL_FAILED; } +RESOURCE LBUF r_log_del_none { txt = LOG_DEL_NONE; } +RESOURCE LBUF r_log_del_done { txt = LOG_DEL_DONE; } +RESOURCE LBUF r_log_del_not_sent { txt = LOG_DEL_NOT_SENT; } +RESOURCE LBUF r_log_del_scheduled { txt = LOG_DEL_SCHEDULED; } + +// Other +RESOURCE LBUF r_log_remote_unknown { txt = LOG_REMOTE_UNKNOWN; } +RESOURCE LBUF r_log_remote_multiple { txt = LOG_REMOTE_MULTIPLE; } +RESOURCE LBUF r_log_subject_none { txt = LOG_SUBJECT_NONE; } +RESOURCE LBUF r_log_subject_data_message { txt = LOG_SUBJECT_DATA_MESSAGE; } + +// Connection +RESOURCE LBUF r_log_con_connected { txt = LOG_CON_CONNECTED; } +RESOURCE LBUF r_log_con_connecting { txt = LOG_CON_CONNECTING; } +RESOURCE LBUF r_log_con_disconnecting { txt = LOG_CON_DISCONNECTING; } +RESOURCE LBUF r_log_con_disconnected{ txt = LOG_CON_DISCONNECTED; } +RESOURCE LBUF r_log_con_suspended{ txt = LOG_CON_SUSPENDED; } + +// Delivery +RESOURCE LBUF r_log_del_notified { txt = LOG_DEL_NOTIFIED; } +RESOURCE LBUF r_log_del_expired { txt = LOG_DEL_EXPIRED; } diff -r 541af5ee3ed9 -r 31ef8a13d4f4 sbsv2/raptor/test/smoke_suite/test_resources/simple/bld.inf --- a/sbsv2/raptor/test/smoke_suite/test_resources/simple/bld.inf Wed Aug 18 17:23:33 2010 +0300 +++ b/sbsv2/raptor/test/smoke_suite/test_resources/simple/bld.inf Thu Aug 26 13:41:01 2010 +0100 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2009-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" @@ -16,7 +16,7 @@ */ PRJ_PLATFORMS -ARMV5 ARMV7 WINSCW ARMV5SMP +ARMV5 ARMV7 WINSCW ARMV5SMP X86 PRJ_MMPFILES simple.mmp diff -r 541af5ee3ed9 -r 31ef8a13d4f4 sbsv2/raptor/test/smoke_suite/test_resources/simple_dll/bld.inf --- a/sbsv2/raptor/test/smoke_suite/test_resources/simple_dll/bld.inf Wed Aug 18 17:23:33 2010 +0300 +++ b/sbsv2/raptor/test/smoke_suite/test_resources/simple_dll/bld.inf Thu Aug 26 13:41:01 2010 +0100 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2000-2009 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2000-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" @@ -18,7 +18,7 @@ PRJ_PLATFORMS -ARMV5 ARMV6 ARMV7 WINSCW ARMV5SMP +ARMV5 ARMV6 ARMV7 WINSCW ARMV5SMP X86 PRJ_MMPFILES diff -r 541af5ee3ed9 -r 31ef8a13d4f4 sbsv2/raptor/test/smoke_suite/test_resources/simple_implib/bld.inf --- a/sbsv2/raptor/test/smoke_suite/test_resources/simple_implib/bld.inf Wed Aug 18 17:23:33 2010 +0300 +++ b/sbsv2/raptor/test/smoke_suite/test_resources/simple_implib/bld.inf Thu Aug 26 13:41:01 2010 +0100 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2007-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" @@ -17,7 +17,7 @@ PRJ_PLATFORMS -WINSCW ARMV5 ARMV5SMP +WINSCW ARMV5 ARMV5SMP X86 PRJ_MMPFILES simple_implib.mmp diff -r 541af5ee3ed9 -r 31ef8a13d4f4 sbsv2/raptor/test/smoke_suite/test_resources/simple_lib/bld.inf --- a/sbsv2/raptor/test/smoke_suite/test_resources/simple_lib/bld.inf Wed Aug 18 17:23:33 2010 +0300 +++ b/sbsv2/raptor/test/smoke_suite/test_resources/simple_lib/bld.inf Thu Aug 26 13:41:01 2010 +0100 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2009-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" @@ -16,7 +16,7 @@ */ PRJ_PLATFORMS -ARMV5 ARMV7 WINSCW +ARMV5 ARMV7 WINSCW X86 PRJ_MMPFILES simple.mmp diff -r 541af5ee3ed9 -r 31ef8a13d4f4 sbsv2/raptor/test/unit_suite/raptor_meta_unit.py --- a/sbsv2/raptor/test/unit_suite/raptor_meta_unit.py Wed Aug 18 17:23:33 2010 +0300 +++ b/sbsv2/raptor/test/unit_suite/raptor_meta_unit.py Thu Aug 26 13:41:01 2010 +0100 @@ -138,7 +138,7 @@ 'METADEPS' : [] } - self.X86GCC = { 'PLATFORM': 'X86GCC', + self.X86GCC = { 'PLATFORM': 'X86', 'EPOCROOT': self.__epocroot, 'VARIANT_HRH': self.variant_hrh, 'SYSTEMINCLUDE' : '', @@ -221,9 +221,9 @@ self.assertEquals(bp, aExpectedBldInfPlatforms) buildableBldInfBuildPlatforms = raptor_meta.getBuildableBldInfBuildPlatforms(bp, - 'ARMV5 ARMV7 WINSCW', - 'ARMV5 ARMV5SMP ARMV7 WINSCW', - 'ARMV5 ARMV7 WINSCW') + 'ARMV5 ARMV7 WINSCW X86', + 'ARMV5 ARMV5SMP ARMV7 WINSCW X86', + 'ARMV5 ARMV7 WINSCW X86') for expectedBuildablePlatform in aExpectedBuildablePlatforms: self.assertTrue(expectedBuildablePlatform in buildableBldInfBuildPlatforms) @@ -236,17 +236,17 @@ bldInfTestRoot = self.__testRoot.Append('metadata/project/bld.infs') self.__testBuildPlatforms(bldInfTestRoot, 'no_prj_platforms.inf', - [], ['ARMV7', 'ARMV5', 'WINSCW', 'GCCXML', 'X86GCC']) + [], ['ARMV7', 'ARMV5', 'WINSCW', 'GCCXML', 'X86']) self.__testBuildPlatforms(bldInfTestRoot, 'no_plats.inf', - [], ['ARMV7', 'ARMV5', 'WINSCW', 'GCCXML', 'X86GCC']) + [], ['ARMV7', 'ARMV5', 'WINSCW', 'GCCXML', 'X86']) self.__testBuildPlatforms(bldInfTestRoot, 'default_plats.inf', - ['DEFAULT'], ['ARMV7', 'ARMV5', 'WINSCW', 'GCCXML', 'X86GCC']) + ['DEFAULT'], ['ARMV7', 'ARMV5', 'WINSCW', 'GCCXML', 'X86']) self.__testBuildPlatforms(bldInfTestRoot, 'default_plats_minus_plat.inf', - ['DEFAULT', '-WINSCW'], ['ARMV7', 'ARMV5', 'GCCXML', 'X86GCC']) + ['DEFAULT', '-WINSCW'], ['ARMV7', 'ARMV5', 'GCCXML', 'X86']) self.__testBuildPlatforms(bldInfTestRoot, 'single_plat.inf', - ['ARMV5'], ['ARMV5', 'GCCXML', 'X86GCC']) + ['ARMV5'], ['ARMV5', 'GCCXML']) self.__testBuildPlatforms(bldInfTestRoot, 'multiple_plats.inf', - ['ARMV5', 'WINSCW', 'TOOLS'], ['ARMV5', 'WINSCW', 'TOOLS', 'GCCXML', 'X86GCC']) + ['ARMV5', 'WINSCW', 'TOOLS', 'X86'], ['ARMV5', 'WINSCW', 'TOOLS', 'GCCXML', 'X86']) return def __testBldInfTestCode(self, aTestRoot, aBldInf, aActual, aExpected): @@ -730,17 +730,17 @@ # Some configurations support both a primary location and a secondary location for .def files # In these cases, if the primary location .def file doesn't exist the secondary is used. primaryDefFileDir = "eabi" - secondaryDefFileLoc = "" + secondaryDefFileDir = "" if testPlat['PLATFORM'] == "WINSCW": primaryDefFileDir = "bwins" - elif testPlat['PLATFORM'] == "X86GCC": + elif testPlat['PLATFORM'] == "X86": primaryDefFileDir = "bx86gcc" - secondaryDefFileLoc = self.__OSRoot+'/test/eabi' + secondaryDefFileDir = "eabi" defFileTests.extend([ DefFileTest( self.__OSRoot+'/test/'+primaryDefFileDir+'/targetu.def', - secondaryDefFileLoc+'/targetu.def', + self.__OSRoot+'/test/'+secondaryDefFileDir+'/targetu.def', '/test/component/mmpfile.mmp', '', 'target.exe', @@ -748,7 +748,7 @@ testPlat), DefFileTest( self.__OSRoot+'/test/'+primaryDefFileDir+'/target.def', - secondaryDefFileLoc+'/target.def', + self.__OSRoot+'/test/'+secondaryDefFileDir+'/target.def', '/test/component/mmpfile.mmp', '', 'target.exe', @@ -756,7 +756,7 @@ testPlat), DefFileTest( self.__OSRoot+'/test/'+primaryDefFileDir+'/targetu.DEF', - secondaryDefFileLoc+'/targetu.DEF', + self.__OSRoot+'/test/'+secondaryDefFileDir+'/targetu.DEF', '/test/component/mmpfile.mmp', 'target.DEF', 'target.exe', @@ -764,7 +764,7 @@ testPlat), DefFileTest( self.__OSRoot+'/test/'+primaryDefFileDir+'/target2.DEF', - secondaryDefFileLoc+'/target2.DEF', + self.__OSRoot+'/test/'+secondaryDefFileDir+'/target2.DEF', '/test/component/mmpfile.mmp', 'target2.DEF', 'target.exe', @@ -772,7 +772,7 @@ testPlat), DefFileTest( self.__OSRoot+'/test/component/target2u.DEF', - secondaryDefFileLoc+'/target2u.DEF', + self.__OSRoot+'/test/'+secondaryDefFileDir+'/target2u.DEF', '/test/component/mmpfile.mmp', './target2.DEF', 'target.exe', @@ -780,7 +780,7 @@ testPlat), DefFileTest( self.__OSRoot+'/test/component/target2.DEF', - secondaryDefFileLoc+'/target2.DEF', + self.__OSRoot+'/test/'+secondaryDefFileDir+'/target2.DEF', '/test/component/mmpfile.mmp', './target2.DEF', 'target.exe', @@ -788,7 +788,7 @@ testPlat), DefFileTest( self.__OSRoot+'/test/component/'+primaryDefFileDir+'/target3u.DEF', - secondaryDefFileLoc+'/target3u.DEF', + self.__OSRoot+'/test/component/'+secondaryDefFileDir+'/target3u.DEF', '/test/component/mmpfile.mmp', './~/target3.DEF', 'target.exe', @@ -796,7 +796,7 @@ testPlat), DefFileTest( epocroot+'/epoc32/include/def/'+primaryDefFileDir+'/targetu.def', - secondaryDefFileLoc+'/targetu.def', + epocroot+'/epoc32/include/def/'+secondaryDefFileDir+'/targetu.def', '/test/component/mmpfile.mmp', '/epoc32/include/def/~/target.def', 'target.exe', @@ -804,7 +804,7 @@ testPlat), DefFileTest( epocroot+'/epoc32/release/'+releaseDir+'/target.def', - secondaryDefFileLoc+'/target.def', + epocroot+'/epoc32/release/'+secondaryDefFileDir+'/target.def', '/test/component/mmpfile.mmp', '/epoc32/release/'+releaseDir+'/target.def', 'target.exe', @@ -812,7 +812,7 @@ testPlat), DefFileTest( self.__OSRoot+'/deffiles/targetu.def', - secondaryDefFileLoc+'/targetu.def', + self.__OSRoot+'/'+secondaryDefFileDir+'/targetu.def', '/test/component/mmpfile.mmp', '/deffiles/target.def', 'target.exe',