--- a/sbsv2/raptor/bin/sbs.bat Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/bin/sbs.bat Mon Nov 30 21:12:38 2009 +0000
@@ -31,6 +31,8 @@
@REM Use the python set by the environment if possible
@SET __PYTHON__=%SBS_PYTHON%
@IF "%__PYTHON__%"=="" SET __PYTHON__=%SBS_HOME%\win32\python252\python.exe
+@SET PYTHONPATH=%SBS_PYTHONPATH%
+@IF "%PYTHONPATH%"=="" SET PYTHONPATH=%SBS_HOME%\win32\python252
@REM Use the mingw set by the environment if possible
@SET __MINGW__=%SBS_MINGW%
--- a/sbsv2/raptor/lib/config/gcce.xml Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/lib/config/gcce.xml Mon Nov 30 21:12:38 2009 +0000
@@ -10,7 +10,7 @@
<set name="ASM" value="$(GCCEASM)"/>
<set name="AR" value="$(GCCEAR)"/>
<set name="GCCECC" value="$(GCCEBIN)/arm-none-symbianelf-g++$(DOTEXE)"/>
- <set name="GCCELD" value="$(GCCEBIN)/arm-none-symbianelf-ld$(DOTEXE)"/>
+ <set name="GCCELD" value="$(GCCEBIN)/arm-none-symbianelf-g++$(DOTEXE)"/>
<set name="GCCEASM" value="$(GCCEBIN)/arm-none-symbianelf-as$(DOTEXE)"/>
<set name="GCCEAR" value="$(GCCEBIN)/arm-none-symbianelf-ar$(DOTEXE)"/>
<set name="FROMELF" value="$(GCCEBIN)/arm-none-symbianelf-readelf$(DOTEXE)"/>
@@ -33,16 +33,17 @@
<set name="EXTRA_LD_OPTION" value=""/>
<set name="FPMODE_OPTION" value=""/>
<set name="LD_ERRORS_CONTROL_OPTION" value=""/>
- <set name="LD_WARNINGS_CONTROL_OPTION" value="--no-undefined"/>
+ <set name="LD_WARNINGS_CONTROL_OPTION" value="-Wl,--no-undefined"/>
<set name="LISTING_OPTION" value="-S"/>
<set name="EXCEPTIONS" value="-fexceptions"/>
<set name="NO_EXCEPTIONS" value="-fno-exceptions"/>
<set name="PREINCLUDE_OPTION" value="-include"/>
<set name="PREPROCESSOR_OPTION" value="-E"/>
<set name="REL_OPTIMISATION" value="-O2"/>
- <set name="STDLIB_OPTION" value="-nostdlib"/>
+ <set name="STDLIB_OPTION" value="-nodefaultlibs"/>
<set name="RUNTIME_SYMBOL_VISIBILITY_OPTION" value=""/>
- <set name="RW_BASE_OPTION" value="-Tdata"/>
+ <set name="RW_BASE_OPTION" value="-Wl,-Tdata,"/>
+ <set name="RW_BASE" value="$(RW_BASE_OPTION)0x400000"/>
<set name="CODE_SEGMENT_START" value="-Ttext"/>
<set name="PREINCLUDE" value="$(EPOCINCLUDE)/gcce/gcce.h"/>
<!-- From the GCC manual: "With this option, GCC uses features of DWARF version 3 when they are useful; ..." -->
@@ -72,24 +73,24 @@
<set name="LINKER_DEBUG_OPTION" value=""/>
<!-- Clearly the linker libs stuff following isn't right - need to use ARMLIBS (or reinvent this a bit) -->
<set name="LINKER_DEFAULT_LIBS" value="-lsupc++ -lgcc"/>
- <set name="LINKER_DEFAULT_LIB_PATHS" value="-L $(GCCEBIN)/../lib/gcc/arm-none-symbianelf/$(TOOLCHAINVERSION) -L $(GCCEBIN)/../lib/gcc/arm-none-symbianelf/$(TOOLCHAINVERSION)/../../../../arm-none-symbianelf/lib"/>
- <set name="LINKER_ENTRY_OPTION" value="--entry"/>
+ <set name="LINKER_DEFAULT_LIB_PATHS" value=""/>
+ <set name="LINKER_ENTRY_OPTION" value="-Wl,--entry"/>
<set name="LINKER_GROUP_START_OPTION" value="--start-group"/>
<set name="LINKER_GROUP_END_OPTION" value="--end-group"/>
- <set name="LINKER_MISC_FLAGS" value="$(CODE_SEGMENT_START) 0x8000"/>
- <set name="LINKER_NODEBUG_OPTION" value = "--strip-debug"/>
+ <set name="LINKER_MISC_FLAGS" value="-Wl,$(CODE_SEGMENT_START),0x8000"/>
+ <set name="LINKER_NODEBUG_OPTION" value = "-Wl,--strip-debug"/>
<set name="LINKER_SCRIPT_FILE_OPTION" value="-T"/>
- <set name="LINKER_SYMBOLS_OPTION" value="-Map"/>
- <set name="LINKER_SYMBOLS_FILE_OPTION" value=""/>
- <set name="SHARED_OBJECT_OPTION" value="-shared"/>
+ <set name="LINKER_SYMBOLS_OPTION" value=""/>
+ <set name="LINKER_SYMBOLS_FILE_OPTION" value="-Wl,-Map"/>
+ <set name="SHARED_OBJECT_OPTION" value="-Wl,-shared"/>
<set name="SID" value=""/>
- <set name="SO_NAME_OPTION" value="-soname"/>
+ <set name="SO_NAME_OPTION" value="-Wl,-soname"/>
<set name="STATIC_LIBS_PATH" value="" />
<set name="STDCPP_INCLUDE" value="$(EPOCINCLUDE)/stdapis"/>
<set name="SUPPORTS_ABIV1_IMPLIBS" value=""/>
<set name="SYMBIAN_LD_MESSAGE_OPTION" value="$(LD_WARNINGS_CONTROL_OPTION) $(LD_ERRORS_CONTROL_OPTION)"/>
<set name="TARGET_RELOCATION_OPTION" value="--target1-rel" />
- <set name="SYMVER_OPTION" value="--default-symver"/>
+ <set name="SYMVER_OPTION" value="-Wl,--default-symver"/>
<set name="TEMP_FILES_OPTION" value="-pipe"/>
<set name="THUMB_INSTRUCTION_SET" value="-mthumb"/>
<set name="TRANSFORM_CIA" value=""/>
--- a/sbsv2/raptor/lib/config/rvct.xml Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/lib/config/rvct.xml Mon Nov 30 21:12:38 2009 +0000
@@ -42,7 +42,8 @@
<set name="REL_OPTIMISATION" value="-O2"/>
<set name="STDLIB_OPTION" value="--no_scanlib"/>
<set name="RUNTIME_SYMBOL_VISIBILITY_OPTION" value="--dllimport_runtime"/>
- <set name="RW_BASE_OPTION" value="--rw-base"/>
+ <set name="RW_BASE_OPTION" value="--rw-base" />
+ <set name="RW_BASE" value="$(RW_BASE_OPTION) 0x400000"/>
<set name="CODE_SEGMENT_START" value=""/>
<set name="PREINCLUDE" value="$(RVCT_PRE_INCLUDE)"/>
<set name="CC.DWARF2" value="--dwarf2"/>
@@ -75,7 +76,7 @@
<set name="LINKER_MISC_FLAGS" value="$(LICENSERETRY_OPTION)"/>
<set name="LINKER_NODEBUG_OPTION" value=""/>
<set name="LINKER_SCRIPT_FILE_OPTION" value=""/>
- <set name="LINKER_SYMBOLS_OPTION" value="--symbols"/>
+ <set name="LINKER_SYMBOLS_OPTION" value="--symbols"/>
<set name="LINKER_SYMBOLS_FILE_OPTION" value="--list"/>
<set name="SHARED_OBJECT_OPTION" value="--dll"/>
<set name="SID" value=""/>
--- a/sbsv2/raptor/lib/config/variants.xml Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/lib/config/variants.xml Mon Nov 30 21:12:38 2009 +0000
@@ -79,16 +79,19 @@
</var>
<var name="gcce4_3_2" extends="gcce_base">
- <env name="GCCEBIN" type="path" />
- <env name="GCCEVERSION" default="$(TOOLCHAINVERSION)" />
- <set name="TOOLCHAINVERSION" value="4.3.2" />
+ <env name="SBS_GCCE432BIN" type="path" />
+ <set name="GCCEBIN" value="$(SBS_GCCE432BIN)" />
<set name="OWN_LIBRARY_OPTION" value=""/>
<set name="STATIC_LIBS_LIST" value=""/>
<set name="RUNTIME_LIBS_LIST" value="drtaeabi.dso dfpaeabi.dso dfprvct3_1.dso drtrvct3_1.dso"/>
<set name="ARMLIBS" value=""/>
<set name="CC.SOFTVFP_MAYBE_VFPV2" value="soft"/>
<set name="PL.SOFTVFP_MAYBE_VFPV2" value="softvfp"/>
+ <set name="CC.SOFTVFP_MAYBE_VFPV3" value="soft"/>
+ <set name="PL.SOFTVFP_MAYBE_VFPV3" value="softvfp"/>
<set name="CC.ARMV5" value="-march=armv5t"/>
+ <set name="CC.ARMV6" value="-march=armv6t2"/>
+ <set name="CC.ARMV7" value="-march=armv7"/>
<set name="RELOCATABLE_IMAGE_OPTION" value=""/>
<set name="RVCTLIB" value=""/>
<set name="CC.NO_UNALIGNED_ACCESS" value=""/>
@@ -99,15 +102,21 @@
<set name="USER_STATIC_RUNTIME_LIB" value="usrt3_1.lib"/>
<set name="KERNEL_STATIC_RUNTIME_LIB" value="ksrt3_1.lib"/>
<set name="NEED_ENTRYPOINT_LIBRARY" value="" />
+ <set name="PLATMACROS.VAR" value="GCCE_4 GCCE_4_3"/>
+ <set name="ARMMACROS.VAR" value="__GCCE_4__ __GCCE_4_3__"/>
</var>
<var name="gcce4_3_3" extends="gcce4_3_2">
- <set name="TOOLCHAINVERSION" value="4.3.3" />
+ <env name="SBS_GCCE433BIN" type="path" />
+ <set name="GCCEBIN" value="$(SBS_GCCE433BIN)" />
</var>
<var name="gcce4_4_1" extends="gcce4_3_3">
- <set name="TOOLCHAINVERSION" value="4.4.1" />
+ <env name="SBS_GCCE441BIN" type="path" />
+ <set name="GCCEBIN" value="$(SBS_GCCE441BIN)" />
<set name="RUNTIME_LIBS_LIST" value="drtaeabi.dso dfpaeabi.dso"/>
+ <set name="PLATMACROS.VAR" value="GCCE_4 GCCE_4_4"/>
+ <set name="ARMMACROS.VAR" value="__GCCE_4__ __GCCE_4_4__"/>
</var>
<var name="rvct2_2" extends="rvct">
@@ -244,5 +253,18 @@
<var name="mwccinc">
<set name='OPTION_CW' value='-cwd include'/>
</var>
-
+
+ <!-- Variant to allow GCCE-built binaries to be created in epoc32/release/gcce,
+ epoc32/release/gccev6 and epoc32/release/gccev7 -->
+ <var name="release_gcce">
+ <set name="VARIANTPLATFORM" value="gcce" />
+ <set name="STATIC_RUNTIME_DIR" value="$(EPOCROOT)/epoc32/release/armv5/$(VARIANTTYPE)"/>
+ <set name="STATIC_LIBRARY_DIR" value="$(EPOCROOT)/epoc32/release/armv5/$(VARIANTTYPE)"/>
+ </var>
+ <var name="release_gccev6" extends="release_gcce" >
+ <set name="VARIANTPLATFORM" value="gccev6" />
+ </var>
+ <var name="release_gccev7" extends="release_gcce" >
+ <set name="VARIANTPLATFORM" value="gccev7" />
+ </var>
</build>
--- a/sbsv2/raptor/lib/flm/build.flm Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/lib/flm/build.flm Mon Nov 30 21:12:38 2009 +0000
@@ -34,7 +34,7 @@
define doexports
PP_EXPORTS::
$(call startrule,makefile_generation_exports) \
- $(SBS) --pp=slave --toolcheck=off --export-only $(component_list) $(config_list) -f- -m $(MAKEFILE_PATH).exports $(cli_options) \
+ $(SBS) --toolcheck=off --export-only $(component_list) $(config_list) -f- -m $(MAKEFILE_PATH).exports $(CLI_OPTIONS) \
$(call endrule,makefile_generation_exports)
CLEANTARGETS:=$$(CLEANTARGETS) $(MAKEFILE_PATH).exports
@@ -46,9 +46,9 @@
ALL:: $(MAKEFILE_PATH)
-$(MAKEFILE_PATH): $(COMPONENT_PATHS) | PP_EXPORTS
+$(MAKEFILE_PATH): $(COMPONENT_PATHS) $(if $(DOEXPORT),| PP_EXPORTS )
$(call startrule,makefile_generation) \
- $(SBS) --pp=slave --toolcheck=off -n $(CLI_OPTIONS) $(component_list) $(config_list) -m $$@ -f- \
+ $(SBS) --noexport --toolcheck=off -n $(CLI_OPTIONS) $(component_list) $(config_list) -m $$@ -f- \
$(call endrule,makefile_generation)
CLEANTARGETS:=$$(CLEANTARGETS) $(MAKEFILE_PATH)
@@ -58,9 +58,13 @@
# Create config list for commands
config_list:=$(addprefix -c ,$(CONFIGS))
component_list:=$(addprefix -b ,$(COMPONENT_PATHS))
-$(info <debug>build.flm: configlist: $(config_list)</debug>)
+
+$(if $(FLMDEBUG),$(info <debug>build.flm: configlist: $(config_list)</debug>))
-$(eval $(doexports))
+# Do exports only if asked. This doesn't work brilliantly in emake
+# since exports are often duplicated in some components - leads to conflicts
+# and rebuilds. Better to export before trying to do parallel parsing at all.
+$(if $(DOEXPORT),$(eval $(doexports)),$(if $(FLMDEBUG),$(info <debug>build.flm: Exports off </debug>)))
# Create the Makefiles
$(eval $(call generate_makefiles))
--- a/sbsv2/raptor/lib/flm/build.xml Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/lib/flm/build.xml Mon Nov 30 21:12:38 2009 +0000
@@ -9,6 +9,7 @@
<param name='CONFIGS' default=''/>
<param name='CLI_OPTIONS' default=''/>
<param name='NO_BUILD' default='' />
+ <param name='DOEXPORT' default='1' />
</interface>
</build>
--- a/sbsv2/raptor/lib/flm/e32abiv2.flm Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/lib/flm/e32abiv2.flm Mon Nov 30 21:12:38 2009 +0000
@@ -601,14 +601,13 @@
$(LD) $(LINKER_MISC_FLAGS) $(LINKER_DEFAULT_LIB_PATHS) $(SYMBIAN_LINK_FLAGS) $(if $(DEBUG_INFO),$(LINKER_DEBUG_OPTION),$(LINKER_NODEBUG_OPTION)) \
$(if $(ARMLIBS),$(LD_WARNINGS_SUPPRESSION_ARMLIBS),) \
$(SHARED_OBJECT_OPTION) $(SPLIT_OPTION) \
- $(RW_BASE_OPTION) 0x400000 \
+ $(RW_BASE) \
$(LINKER_ARCH_OPTION) \
- $(SYMVER_OPTION) $(SO_NAME_OPTION) $(call dblquote,$(LINKASVERSIONED)) \
+ $(SYMVER_OPTION) $(SO_NAME_OPTION)=$(call dblquote,$(LINKASVERSIONED)) \
$(LINKER_ENTRYPOINT_SETTING) \
-o $$(call dblquote,$$@) \
$(if $(LTCG),$(LTCG_OPTION),) \
- $(LINKER_SYMBOLS_OPTION) $(LINKER_SYMBOLS_FILE_OPTION) \
- $(call dblquote,$(MAPFILE)) \
+ $(LINKER_SYMBOLS_OPTION) $(LINKER_SYMBOLS_FILE_OPTION)=$(call dblquote,$(MAPFILE)) \
$(LINKEROPTION) \
$(if $(MULTIFILE_ENABLED),$(call dblquote,$(MULTIFILEOBJECT) $(CIAFILES_LINKOBJECTS)),$(COMMANDFILE_OPTION)$(call dblquote,$(VIAFILE))) \
$(if $(GENERATELINKERFEEDBACK),$(FEEDBACK_OPTION)$(call dblquote,$(FEEDBACKFILE))) \
--- a/sbsv2/raptor/lib/flm/e32abiv2ani.flm Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/lib/flm/e32abiv2ani.flm Mon Nov 30 21:12:38 2009 +0000
@@ -29,7 +29,7 @@
# Determine what kind of entrypoint option to set
LINKER_ENTRYPOINT_LIBDEP:=$(STATIC_RUNTIME_DIR)/edll.lib
-LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION) _E32Dll $(LINKER_ENTRYPOINT_DECORATION) $(call dblquote,$(STATIC_RUNTIME_DIR)/edll.lib$(LINKER_ENTRYPOINT_ADORNMENT))
+LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION)=_E32Dll $(LINKER_ENTRYPOINT_DECORATION)$(LINKER_SEPARATOR)$(call dblquote,$(STATIC_RUNTIME_DIR)/edll.lib$(LINKER_ENTRYPOINT_ADORNMENT))
ifeq ("$(NEED_ENTRYPOINT_LIBRARY)","True")
LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRYPOINT_SETTING) $(LINKER_ENTRYPOINT_LIBDEP)
--- a/sbsv2/raptor/lib/flm/e32abiv2defaults.mk Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/lib/flm/e32abiv2defaults.mk Mon Nov 30 21:12:38 2009 +0000
@@ -40,13 +40,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
+# as make strips trailing spaces, we use the CHAR_SPACE variable.
LINKER_ENTRYPOINT_ADORNMENT:=
LINKER_ENTRYPOINT_DECORATION:=
+LINKER_SEPARATOR:=
# For GCCE
ifeq ($(TOOLCHAIN),GCCE)
-LINKER_ENTRYPOINT_DECORATION:=$(if $(call isoneof,$(TARGETTYPE),exexp exe),-u _E32Startup,-u _E32Dll)
+LINKER_ENTRYPOINT_DECORATION:=$(if $(call isoneof,$(TARGETTYPE),exexp exe),-Wl$(CHAR_COMMA)-u$(CHAR_COMMA)_E32Startup,-Wl$(CHAR_COMMA)-u$(CHAR_COMMA)_E32Dll)
+LINKER_SEPARATOR:=$(CHAR_COMMA)
endif
# For RVCT
@@ -74,6 +78,7 @@
ifeq ($(TARGETTYPE),kdll)
LINKER_ENTRYPOINT_ADORNMENT:=(L_ENTRY_.o)
endif
+LINKER_SEPARATOR:=$(CHAR_SPACE)
endif
# "OPTION" metadata from the front-end can potentially be supplied simultaneously for both GCCE and RVCT,
--- a/sbsv2/raptor/lib/flm/e32abiv2dll.flm Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/lib/flm/e32abiv2dll.flm Mon Nov 30 21:12:38 2009 +0000
@@ -28,7 +28,7 @@
# Default Linker settings for this target type
LINKER_ENTRYPOINT_LIBDEP:=$(STATIC_RUNTIME_DIR)/edll.lib
-LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION) _E32Dll $(LINKER_ENTRYPOINT_DECORATION) $(call dblquote,$(STATIC_RUNTIME_DIR)/edll.lib$(LINKER_ENTRYPOINT_ADORNMENT))
+LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION)=_E32Dll $(LINKER_ENTRYPOINT_DECORATION)$(LINKER_SEPARATOR)$(call dblquote,$(STATIC_RUNTIME_DIR)/edll.lib$(LINKER_ENTRYPOINT_ADORNMENT))
ifeq ("$(NEED_ENTRYPOINT_LIBRARY)","True")
LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRYPOINT_SETTING) $(LINKER_ENTRYPOINT_LIBDEP)
--- a/sbsv2/raptor/lib/flm/e32abiv2exe.flm Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/lib/flm/e32abiv2exe.flm Mon Nov 30 21:12:38 2009 +0000
@@ -28,7 +28,7 @@
LINKER_STUB_LIBRARY:=
LINKER_ENTRYPOINT_LIBDEP:=$(STATIC_RUNTIME_DIR)/$(if $(FIRSTLIB),$(FIRSTLIB),eexe.lib)
-LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION) _E32Startup $(LINKER_ENTRYPOINT_DECORATION) $(call dblquote,$(STATIC_RUNTIME_DIR)/$(if $(FIRSTLIB),$(FIRSTLIB),eexe.lib)$(LINKER_ENTRYPOINT_ADORNMENT))
+LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION)=_E32Startup $(LINKER_ENTRYPOINT_DECORATION)$(LINKER_SEPARATOR)$(call dblquote,$(STATIC_RUNTIME_DIR)/$(if $(FIRSTLIB),$(FIRSTLIB),eexe.lib)$(LINKER_ENTRYPOINT_ADORNMENT))
ifeq ("$(NEED_ENTRYPOINT_LIBRARY)","True")
LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRYPOINT_SETTING) $(LINKER_ENTRYPOINT_LIBDEP)
--- a/sbsv2/raptor/lib/flm/e32abiv2exexp.flm Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/lib/flm/e32abiv2exexp.flm Mon Nov 30 21:12:38 2009 +0000
@@ -52,10 +52,10 @@
LINKER_ENTRYPOINT_LIBDEP:=$(STATIC_RUNTIME_DIR)/$(FIRSTLIB)
ifeq ("$(TOOLCHAIN)","RVCT")
-LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION) _E32Startup $(call dblquote,$(STATIC_RUNTIME_DIR)/$(FIRSTLIB)($(FIRSTLIB_OBJECTFILE)))
+LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION)=_E32Startup $(call dblquote,$(STATIC_RUNTIME_DIR)/$(FIRSTLIB)($(FIRSTLIB_OBJECTFILE)))
else
# GCCE
-LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION) _E32Startup -u _E32Startup $(call dblquote,$(STATIC_RUNTIME_DIR)/$(FIRSTLIB))
+LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION)=_E32Startup -Wl,-u$(LINKER_SEPARATOR)_E32Startup$(LINKER_SEPARATOR)$(call dblquote,$(STATIC_RUNTIME_DIR)/$(FIRSTLIB))
endif
ifeq ("$(NEED_ENTRYPOINT_LIBRARY)","True")
--- a/sbsv2/raptor/lib/flm/e32abiv2fsy.flm Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/lib/flm/e32abiv2fsy.flm Mon Nov 30 21:12:38 2009 +0000
@@ -28,7 +28,7 @@
# Determine what kind of entrypoint option to set
AUTOEXPORTS:=CreateFileSystem,1;
LINKER_ENTRYPOINT_LIBDEP:=$(STATIC_RUNTIME_DIR)/edll.lib
-LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION) _E32Dll $(LINKER_ENTRYPOINT_DECORATION) $(call dblquote,$(STATIC_RUNTIME_DIR)/edll.lib$(LINKER_ENTRYPOINT_ADORNMENT))
+LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION)=_E32Dll $(LINKER_ENTRYPOINT_DECORATION)$(LINKER_SEPARATOR)$(call dblquote,$(STATIC_RUNTIME_DIR)/edll.lib$(LINKER_ENTRYPOINT_ADORNMENT))
ifeq ("$(NEED_ENTRYPOINT_LIBRARY)","True")
LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRYPOINT_SETTING) $(LINKER_ENTRYPOINT_LIBDEP)
--- a/sbsv2/raptor/lib/flm/e32abiv2kdll.flm Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/lib/flm/e32abiv2kdll.flm Mon Nov 30 21:12:38 2009 +0000
@@ -27,7 +27,7 @@
# Determine what kind of entrypoint option to set
LINKER_ENTRYPOINT_LIBDEP:=$(STATIC_RUNTIME_DIR)/ekll.lib
-LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION) _E32Dll $(LINKER_ENTRYPOINT_DECORATION) $(call dblquote,$(STATIC_RUNTIME_DIR)/ekll.lib$(LINKER_ENTRYPOINT_ADORNMENT))
+LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION)=_E32Dll $(LINKER_ENTRYPOINT_DECORATION)$(LINKER_SEPARATOR)$(call dblquote,$(STATIC_RUNTIME_DIR)/ekll.lib$(LINKER_ENTRYPOINT_ADORNMENT))
ifeq ("$(NEED_ENTRYPOINT_LIBRARY)","True")
LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRYPOINT_SETTING) $(LINKER_ENTRYPOINT_LIBDEP)
--- a/sbsv2/raptor/lib/flm/e32abiv2kext.flm Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/lib/flm/e32abiv2kext.flm Mon Nov 30 21:12:38 2009 +0000
@@ -34,7 +34,7 @@
# Default Linker settings for this target type
LINKER_ENTRYPOINT_LIBDEP:=$(STATIC_RUNTIME_DIR)/eext.lib
-LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION) _E32Dll $(LINKER_ENTRYPOINT_DECORATION) $(call dblquote,$(STATIC_RUNTIME_DIR)/eext.lib$(LINKER_ENTRYPOINT_ADORNMENT))
+LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION)=_E32Dll $(LINKER_ENTRYPOINT_DECORATION)$(LINKER_SEPARATOR)$(call dblquote,$(STATIC_RUNTIME_DIR)/eext.lib$(LINKER_ENTRYPOINT_ADORNMENT))
ifeq ("$(NEED_ENTRYPOINT_LIBRARY)","True")
LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRYPOINT_SETTING) $(LINKER_ENTRYPOINT_LIBDEP)
--- a/sbsv2/raptor/lib/flm/e32abiv2ldd.flm Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/lib/flm/e32abiv2ldd.flm Mon Nov 30 21:12:38 2009 +0000
@@ -29,7 +29,7 @@
# Determine what kind of entrypoint option to set
LINKER_ENTRYPOINT_LIBDEP:=$(STATIC_RUNTIME_DIR)/edev.lib
-LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION) _E32Dll $(LINKER_ENTRYPOINT_DECORATION) $(call dblquote,$(STATIC_RUNTIME_DIR)/edev.lib$(LINKER_ENTRYPOINT_ADORNMENT))
+LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION)=_E32Dll $(LINKER_ENTRYPOINT_DECORATION)$(LINKER_SEPARATOR)$(call dblquote,$(STATIC_RUNTIME_DIR)/edev.lib$(LINKER_ENTRYPOINT_ADORNMENT))
ifeq ("$(NEED_ENTRYPOINT_LIBRARY)","True")
LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRYPOINT_SETTING) $(LINKER_ENTRYPOINT_LIBDEP)
--- a/sbsv2/raptor/lib/flm/e32abiv2pdd.flm Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/lib/flm/e32abiv2pdd.flm Mon Nov 30 21:12:38 2009 +0000
@@ -28,7 +28,7 @@
# Determine what kind of entrypoint option to set
LINKER_ENTRYPOINT_LIBDEP:=$(STATIC_RUNTIME_DIR)/edev.lib
-LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION) _E32Dll $(LINKER_ENTRYPOINT_DECORATION) $(call dblquote,$(STATIC_RUNTIME_DIR)/edev.lib$(LINKER_ENTRYPOINT_ADORNMENT))
+LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION)=_E32Dll $(LINKER_ENTRYPOINT_DECORATION)$(LINKER_SEPARATOR)$(call dblquote,$(STATIC_RUNTIME_DIR)/edev.lib$(LINKER_ENTRYPOINT_ADORNMENT))
ifeq ("$(NEED_ENTRYPOINT_LIBRARY)","True")
LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRYPOINT_SETTING) $(LINKER_ENTRYPOINT_LIBDEP)
--- a/sbsv2/raptor/lib/flm/e32abiv2pdl.flm Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/lib/flm/e32abiv2pdl.flm Mon Nov 30 21:12:38 2009 +0000
@@ -28,7 +28,7 @@
# Determine what kind of entrypoint option to set
LINKER_ENTRYPOINT_LIBDEP:=$(STATIC_RUNTIME_DIR)/edll.lib
-LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION) _E32Dll $(LINKER_ENTRYPOINT_DECORATION) $(call dblquote,$(STATIC_RUNTIME_DIR)/edll.lib$(LINKER_ENTRYPOINT_ADORNMENT))
+LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION)=_E32Dll $(LINKER_ENTRYPOINT_DECORATION)$(LINKER_SEPARATOR)$(call dblquote,$(STATIC_RUNTIME_DIR)/edll.lib$(LINKER_ENTRYPOINT_ADORNMENT))
ifeq ("$(NEED_ENTRYPOINT_LIBRARY)","True")
LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRYPOINT_SETTING) $(LINKER_ENTRYPOINT_LIBDEP)
--- a/sbsv2/raptor/lib/flm/e32abiv2plugin.flm Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/lib/flm/e32abiv2plugin.flm Mon Nov 30 21:12:38 2009 +0000
@@ -31,7 +31,7 @@
# Default Linker settings for this target type
LINKER_ENTRYPOINT_LIBDEP:=$(STATIC_RUNTIME_DIR)/edll.lib
-LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION) _E32Dll $(LINKER_ENTRYPOINT_DECORATION) $(call dblquote,$(STATIC_RUNTIME_DIR)/edll.lib$(LINKER_ENTRYPOINT_ADORNMENT))
+LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION)=_E32Dll $(LINKER_ENTRYPOINT_DECORATION)$(LINKER_SEPARATOR)$(call dblquote,$(STATIC_RUNTIME_DIR)/edll.lib$(LINKER_ENTRYPOINT_ADORNMENT))
ifeq ("$(NEED_ENTRYPOINT_LIBRARY)","True")
LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRYPOINT_SETTING) $(LINKER_ENTRYPOINT_LIBDEP)
--- a/sbsv2/raptor/lib/flm/e32abiv2stddll.flm Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/lib/flm/e32abiv2stddll.flm Mon Nov 30 21:12:38 2009 +0000
@@ -29,7 +29,7 @@
# Default Linker settings for this target type
LINKER_ENTRYPOINT_LIBDEP:=$(STATIC_RUNTIME_DIR)/edll.lib
-LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION) _E32Dll $(LINKER_ENTRYPOINT_DECORATION) $(call dblquote,$(STATIC_RUNTIME_DIR)/edll.lib$(LINKER_ENTRYPOINT_ADORNMENT))
+LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION)=_E32Dll $(LINKER_ENTRYPOINT_DECORATION)$(LINKER_SEPARATOR)$(call dblquote,$(STATIC_RUNTIME_DIR)/edll.lib$(LINKER_ENTRYPOINT_ADORNMENT))
DEFAULT_NEWLIB:=$(DEFAULT_STDCPP_NEWLIB)
ifeq ("$(NEED_ENTRYPOINT_LIBRARY)","True")
--- a/sbsv2/raptor/lib/flm/e32abiv2stdexe.flm Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/lib/flm/e32abiv2stdexe.flm Mon Nov 30 21:12:38 2009 +0000
@@ -28,7 +28,7 @@
# Determine what kind of entrypoint option to set
LINKER_STUB_LIBRARY:=
LINKER_ENTRYPOINT_LIBDEP:=$(STATIC_RUNTIME_DIR)/eexe.lib
-LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION) _E32Startup $(LINKER_ENTRYPOINT_DECORATION) $(call dblquote,$(STATIC_RUNTIME_DIR)/eexe.lib$(LINKER_ENTRYPOINT_ADORNMENT))
+LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION)=_E32Startup $(LINKER_ENTRYPOINT_DECORATION)$(LINKER_SEPARATOR)$(call dblquote,$(STATIC_RUNTIME_DIR)/eexe.lib$(LINKER_ENTRYPOINT_ADORNMENT))
DEFAULT_NEWLIB:=$(DEFAULT_STDCPP_NEWLIB)
ifeq ("$(NEED_ENTRYPOINT_LIBRARY)","True")
--- a/sbsv2/raptor/lib/flm/e32abiv2textnotifier2.flm Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/lib/flm/e32abiv2textnotifier2.flm Mon Nov 30 21:12:38 2009 +0000
@@ -28,7 +28,7 @@
AUTOEXPORTS:=_Z13NotifierArrayv,1;
# Determine what kind of entrypoint option to set
LINKER_ENTRYPOINT_LIBDEP:=$(STATIC_RUNTIME_DIR)/edll.lib
-LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION) _E32Dll $(LINKER_ENTRYPOINT_DECORATION) $(call dblquote,$(STATIC_RUNTIME_DIR)/edll.lib$(LINKER_ENTRYPOINT_ADORNMENT))
+LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION)=_E32Dll $(LINKER_ENTRYPOINT_DECORATION))$(LINKER_SEPARATOR)$(call dblquote,$(STATIC_RUNTIME_DIR)/edll.lib$(LINKER_ENTRYPOINT_ADORNMENT))
ifeq ("$(NEED_ENTRYPOINT_LIBRARY)","True")
LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRYPOINT_SETTING) $(LINKER_ENTRYPOINT_LIBDEP)
--- a/sbsv2/raptor/lib/flm/e32abiv2var.flm Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/lib/flm/e32abiv2var.flm Mon Nov 30 21:12:38 2009 +0000
@@ -29,7 +29,7 @@
# Determine what kind of entrypoint option to set
LINKER_ENTRYPOINT_LIBDEP:=$(STATIC_RUNTIME_DIR)/evar.lib
-LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION) _E32Dll $(LINKER_ENTRYPOINT_DECORATION) $(call dblquote,$(STATIC_RUNTIME_DIR)/evar.lib$(LINKER_ENTRYPOINT_ADORNMENT))
+LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION)=_E32Dll $(LINKER_ENTRYPOINT_DECORATION)$(LINKER_SEPARATOR)$(call dblquote,$(STATIC_RUNTIME_DIR)/evar.lib$(LINKER_ENTRYPOINT_ADORNMENT))
ifeq ("$(NEED_ENTRYPOINT_LIBRARY)","True")
LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRYPOINT_SETTING) $(LINKER_ENTRYPOINT_LIBDEP)
--- a/sbsv2/raptor/lib/flm/e32abiv2var2.flm Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/lib/flm/e32abiv2var2.flm Mon Nov 30 21:12:38 2009 +0000
@@ -29,7 +29,7 @@
# Determine what kind of entrypoint option to set
LINKER_ENTRYPOINT_LIBDEP:=$(STATIC_RUNTIME_DIR)/evar.lib
-LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION) _E32Dll $(LINKER_ENTRYPOINT_DECORATION) $(call dblquote,$(STATIC_RUNTIME_DIR)/evar.lib$(LINKER_ENTRYPOINT_ADORNMENT))
+LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRY_OPTION)=_E32Dll $(LINKER_ENTRYPOINT_DECORATION)$(LINKER_SEPARATOR)$(call dblquote,$(STATIC_RUNTIME_DIR)/evar.lib$(LINKER_ENTRYPOINT_ADORNMENT))
ifeq ("$(NEED_ENTRYPOINT_LIBRARY)","True")
LINKER_ENTRYPOINT_SETTING:=$(LINKER_ENTRYPOINT_SETTING) $(LINKER_ENTRYPOINT_LIBDEP)
--- a/sbsv2/raptor/lib/flm/standard.xml Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/lib/flm/standard.xml Mon Nov 30 21:12:38 2009 +0000
@@ -73,7 +73,6 @@
<param name='CC.VAL.SOFTVFP_MAYBE_VFPV2' default=''/>
<param name='CODE_SEGMENT_START' default=''/>
<param name='TOOLCHAIN' default=''/>
- <param name='TOOLCHAINVERSION' default=''/>
</interface>
<interface name="Symbian.e32abiv2" extends="Symbian.mmp" flm="e32abiv2.flm">
<param name='SUPPORTS_STDCPP_NEWLIB' default='1'/>
@@ -163,6 +162,7 @@
<param name='RVCTBIN'/>
<param name='RVCTINC'/>
<param name='RVCTLIB'/>
+ <param name='RW_BASE'/>
<param name='RW_BASE_OPTION'/>
<param name='SBSV1MAKE'/>
<param name='NMAKE'/>
--- a/sbsv2/raptor/python/plugins/filter_checksource.py Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/python/plugins/filter_checksource.py Mon Nov 30 21:12:38 2009 +0000
@@ -221,14 +221,14 @@
# so we only check each one once
depset = set(deps)
deplistnodups = list(depset)
-
# Do the check for each file
+
for dep in deplistnodups:
- dep = os.path.normpath(dep).replace('\\', '/')
+ dep = os.path.abspath(dep).replace('\\', '/')
self.checksource(dep)
except Exception, e:
- sys.stderr.write("sbs: could not access temporary file for FilterClean\n")
+ sys.stderr.write("sbs: FilterCheckSource failed: %s\n" % str(e))
if self.errors == 0:
sys.stdout.write("No checksource errors found\n")
@@ -263,7 +263,7 @@
def checkcase(self, path):
"""Checks the path matches the file system"""
- path = os.path.normpath(path)
+ path = os.path.abspath(path)
path = path.replace('\\', '/')
if not os.path.exists(path):
@@ -277,7 +277,7 @@
for part in parts:
if not self.checkkeyignorecase(cacheItem, part):
-
+
dirItems = os.listdir(dirBeingChecked)
found = False
--- a/sbsv2/raptor/python/plugins/filter_clean.py Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/python/plugins/filter_clean.py Mon Nov 30 21:12:38 2009 +0000
@@ -93,8 +93,8 @@
dirs.add(directory)
self.tmp.close() # this also deletes the temporary file
- except:
- sys.stderr.write("sbs: could not access temporary file for FilterClean\n")
+ except Exception,e:
+ sys.stderr.write("sbs: problem reading temporary file for FilterClean: %s\n" % str(e))
self.ok = False
# finally remove (empty) directories
--- a/sbsv2/raptor/python/raptor.py Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/python/raptor.py Mon Nov 30 21:12:38 2009 +0000
@@ -274,7 +274,7 @@
# convert the list of bld.inf files into a specification
# hierarchy suitable for all the configurations we are using.
self.specs = list(build.generic_specs)
- self.specs.extend(metaReader.ReadBldInfFiles(self.children, build.doExportOnly))
+ self.specs.extend(metaReader.ReadBldInfFiles(self.children, doexport = build.doExport, dobuild = not build.doExportOnly))
except raptor_meta.MetaDataError, e:
build.Error(e.Text)
@@ -355,6 +355,14 @@
var.AddOperation(raptor_data.Set("MAKEFILE_PATH", makefile_path))
var.AddOperation(raptor_data.Set("CONFIGS", configList))
var.AddOperation(raptor_data.Set("CLI_OPTIONS", cli_options))
+
+
+ # Allow the flm to skip exports. Note: this parameter
+ doexport_str = '1'
+ if not build.doExport:
+ doexport_str = ''
+ var.AddOperation(raptor_data.Set("DOEXPORT", doexport_str ))
+
# Pass on '-n' (if specified) to the makefile-generating sbs calls
if build.noBuild:
var.AddOperation(raptor_data.Set("NO_BUILD", "1"))
@@ -467,6 +475,7 @@
self.maker = None
self.debugOutput = False
self.doExportOnly = False
+ self.doExport = True
self.noBuild = False
self.noDependInclude = False
self.projects = set()
@@ -566,6 +575,16 @@
def SetExportOnly(self, TrueOrFalse):
self.doExportOnly = TrueOrFalse
+ if not self.doExport:
+ self.Error("The --noexport and --export-only options are incompatible - won't to do anything useful")
+ return False
+ return True
+
+ def SetNoExport(self, TrueOrFalse):
+ self.doExport = not TrueOrFalse
+ if self.doExportOnly:
+ self.Error("The --noexport and --export-only options are incompatible - won't to do anything useful")
+ return False
return True
def SetNoBuild(self, TrueOrFalse):
@@ -634,8 +653,6 @@
type = type.lower()
if type == "on":
self.doParallelParsing = True
- elif type == "slave":
- self.isParallelParsingSlave = True
elif type == "off":
self.doParallelParsing = False
else:
--- a/sbsv2/raptor/python/raptor_cli.py Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/python/raptor_cli.py Mon Nov 30 21:12:38 2009 +0000
@@ -87,6 +87,9 @@
parser.add_option("--export-only",action="store_true",dest="doExportOnly",
help="Generate exports only and do not create any make files.")
+parser.add_option("--noexport",action="store_true",dest="doExport",
+ help="Don't export any files - useful in some builds when you know exports have already been done.")
+
parser.add_option("-f","--logfile",action="store",dest="logfile",
help="Name of the log file, or '-' for stdout.")
@@ -148,7 +151,6 @@
help="""Controls how metadata (e.g. bld.infs) are parsed in Parallel.
Possible values are:
"on" - Parse bld.infs in parallel (should be faster on clusters/multicore machines)
- "slave" - used internally by Raptor
"off" - Parse bld.infs serially
""")
@@ -261,6 +263,7 @@
'quiet' : Raptor.RunQuietly,
'debugoutput' : Raptor.SetDebugOutput,
'doExportOnly' : Raptor.SetExportOnly,
+ 'doExport' : Raptor.SetNoExport,
'keepgoing': Raptor.SetKeepGoing,
'nobuild' : Raptor.SetNoBuild,
'make_engine': Raptor.SetMakeEngine,
--- a/sbsv2/raptor/python/raptor_meta.py Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/python/raptor_meta.py Mon Nov 30 21:12:38 2009 +0000
@@ -2513,7 +2513,7 @@
self.defaultPlatform = self.ExportPlatforms[0]
- def ReadBldInfFiles(self, aComponentList, doExportOnly):
+ def ReadBldInfFiles(self, aComponentList, doexport, dobuild = True):
"""Take a list of bld.inf files and return a list of build specs.
The returned specification nodes will be suitable for all the build
@@ -2593,20 +2593,23 @@
# before we can do anything else (because raptor itself must do
# some exports before the MMP files that include them can be
# processed).
- for i,p in enumerate(exportNodes):
- exportPlatform = self.ExportPlatforms[i]
- for s in p.GetChildSpecs():
- try:
- self.ProcessExports(s, exportPlatform)
-
- except MetaDataError, e:
- self.__Raptor.Error("%s",e.Text)
- if not self.__Raptor.keepGoing:
- return []
+ if doexport:
+ for i,p in enumerate(exportNodes):
+ exportPlatform = self.ExportPlatforms[i]
+ for s in p.GetChildSpecs():
+ try:
+ self.ProcessExports(s, exportPlatform)
+
+ except MetaDataError, e:
+ self.__Raptor.Error("%s",e.Text)
+ if not self.__Raptor.keepGoing:
+ return []
+ else:
+ self.__Raptor.Info("Not Processing Exports (--noexport enabled)")
# this is a switch to return the function at this point if export
# only option is specified in the run
- if (self.__Raptor.doExportOnly):
+ if dobuild is not True:
self.__Raptor.Info("Processing Exports only")
return[]
--- a/sbsv2/raptor/test/common/raptor_tests.py Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/test/common/raptor_tests.py Mon Nov 30 21:12:38 2009 +0000
@@ -100,8 +100,14 @@
except OSError, error:
pass
else:
- (comIn, comOut) = os.popen4("which " + input_file)
- output = comOut.read()
+ whichproc = subprocess.Popen(args=["which", input_file],
+ stdout=subprocess.PIPE,
+ stderr=subprocess.STDOUT,
+ shell=False,
+ universal_newlines=True)
+ output = whichproc.stdout.readlines()
+ whichproc.wait()
+
if len(output) > 0:
locations.append(output[0:(len(output) - 1)])
@@ -115,36 +121,42 @@
This method walks through epocroot and cleans every file and folder that is
not present in the manifest file
"""
- print "Cleaning Epocroot..."
+ epocroot = os.path.abspath(os.environ['EPOCROOT']).replace('\\','/')
+ print "Cleaning Epocroot: %s" % epocroot
all_files = {} # dictionary to hold all files
folders = [] # holds all unique folders in manifest
host_platform = os.environ["HOSTPLATFORM_DIR"]
try:
- mani = "./epocroot/manifest"
+ mani = "$(EPOCROOT)/manifest"
manifest = open(ReplaceEnvs(mani), "r")
+ le = len(epocroot)
for line in manifest:
line = line.replace("$(HOSTPLATFORM_DIR)", host_platform)
+ line = line.replace("./", epocroot+"/").rstrip("\n")
# Get rid of newline char and add to dictionary
- all_files[line.rstrip("\n")] = True
+ all_files[line] = True
# This bit makes a record of unique folders into a list
- end = 0
- while end != -1: # Look through the parent folders
- end = line.rfind("/")
- line = line[:end]
- if line not in folders:
- folders.append(line)
+ pos = line.rfind("/", le)
+ while pos > le: # Look through the parent folders
+ f = line[:pos]
+ if f not in folders:
+ folders.append(f)
+ pos = line.rfind("/", le, pos)
+
+
# This algorithm walks through epocroot and handles files and folders
- walkpath = "./epocroot"
+ walkpath = "$(EPOCROOT)"
for (root, dirs, files) in os.walk(ReplaceEnvs(walkpath), topdown =
False):
+ if root.find(".hg") != -1:
+ continue
+
# This loop handles all files
for name in files:
name = os.path.join(root, name).replace("\\", "/")
- name = name.replace("./epocroot/", "./")
if name not in all_files:
try:
- name = ReplaceEnvs(name.replace("./", "./epocroot/"))
os.remove(name)
except:
# chmod to rw and try again
@@ -160,11 +172,10 @@
# This loop handles folders
for name in dirs:
name = os.path.join(root, name).replace("\\", "/")
- name = name.replace("./epocroot/", "./")
if name not in all_files and name not in folders:
# Remove the folder fully with no errors if full
try:
- rmtree(ReplaceEnvs(name.replace("./", "./epocroot/")))
+ rmtree(ReplaceEnvs(name))
except:
print "\nEPOCROOT-CLEAN ERROR:"
print (sys.exc_type.__name__ + ":"), \
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/config/apply_test_variants.xml Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<build xmlns="http://symbian.com/xml/build"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://symbian.com/xml/build build/2_0.xsd">
+
+ <!-- These variants are used to test the APPLY keyword -->
+
+ <var name="apply_test_append_cdefs">
+ <append name="CDEFS" value="APPLYTESTAPPENDCDEFS" />
+ </var>
+
+</build>
--- a/sbsv2/raptor/test/smoke_suite/dll_armv6.py Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/test/smoke_suite/dll_armv6.py Mon Nov 30 21:12:38 2009 +0000
@@ -18,10 +18,9 @@
def run():
t = AntiTargetSmokeTest()
- t.id = "97"
- t.name = "dll_armv6"
- t.command = "sbs -b smoke_suite/test_resources/simple_dll/bld.inf -c armv6"
- t.targets = [
+
+ rootcommand = "sbs -b smoke_suite/test_resources/simple_dll/bld.inf"
+ targets = [
"$(EPOCROOT)/epoc32/release/armv6/udeb/createstaticdll.dll.sym",
"$(EPOCROOT)/epoc32/release/armv6/urel/createstaticdll.dll.sym",
"$(EPOCROOT)/epoc32/release/armv5/lib/createstaticdll.dso",
@@ -29,15 +28,41 @@
"$(EPOCROOT)/epoc32/release/armv6/udeb/createstaticdll.dll",
"$(EPOCROOT)/epoc32/release/armv6/urel/createstaticdll.dll"
]
- t.antitargets = [
+ antitargets = [
"$(EPOCROOT)/epoc32/release/armv5/lib/createstaticdll.lib",
"$(EPOCROOT)/epoc32/release/armv5/lib/createstaticdll{000a0000}.lib"
]
- t.addbuildtargets('smoke_suite/test_resources/simple_dll/bld.inf', [
+ buildtargets = [
"createstaticdll_dll/armv6/udeb/CreateStaticDLL.o",
"createstaticdll_dll/armv6/urel/CreateStaticDLL.o",
"createstaticdll_dll/armv6/udeb/armv6_specific.o",
"createstaticdll_dll/armv6/urel/armv6_specific.o"
- ])
+ ]
+
+ t.id = "0097a"
+ t.name = "dll_armv6_rvct"
+ t.command = rootcommand + " -c armv6"
+ t.targets = targets
+ t.antitargets = antitargets
+ t.addbuildtargets("smoke_suite/test_resources/simple_dll/bld.inf", buildtargets)
t.run()
+
+ t.id = "0097b"
+ t.name = "dll_armv6_clean"
+ t.command = rootcommand + " -c armv6 clean"
+ t.targets = []
+ t.antitargets = []
+ t.run()
+
+ t.id = "0097c"
+ t.name = "dll_armv6_gcce"
+ t.command = rootcommand + " -c arm.v6.udeb.gcce4_3_2 -c arm.v6.urel.gcce4_3_2"
+ t.targets = targets
+ t.antitargets = antitargets
+ t.addbuildtargets("smoke_suite/test_resources/simple_dll/bld.inf", buildtargets)
+ t.run()
+
+ t.id = "97"
+ t.name = "dll_armv6"
+ t.print_result()
return t
--- a/sbsv2/raptor/test/smoke_suite/dll_armv7.py Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/test/smoke_suite/dll_armv7.py Mon Nov 30 21:12:38 2009 +0000
@@ -18,10 +18,9 @@
def run():
t = SmokeTest()
- t.id = "11"
- t.name = "dll_armv7"
- t.command = "sbs -b smoke_suite/test_resources/simple_dll/bld.inf -c armv7"
- t.targets = [
+
+ rootcommand = "sbs -b smoke_suite/test_resources/simple_dll/bld.inf"
+ targets = [
"$(EPOCROOT)/epoc32/release/armv7/udeb/createstaticdll.dll.sym",
"$(EPOCROOT)/epoc32/release/armv7/urel/createstaticdll.dll.sym",
"$(EPOCROOT)/epoc32/release/armv5/lib/createstaticdll.dso",
@@ -29,11 +28,34 @@
"$(EPOCROOT)/epoc32/release/armv7/udeb/createstaticdll.dll",
"$(EPOCROOT)/epoc32/release/armv7/urel/createstaticdll.dll"
]
- t.addbuildtargets('smoke_suite/test_resources/simple_dll/bld.inf', [
+ buildtargets = [
"createstaticdll_dll/armv7/udeb/CreateStaticDLL.o",
"createstaticdll_dll/armv7/urel/CreateStaticDLL.o",
"createstaticdll_dll/armv7/udeb/armv7_specific.o",
"createstaticdll_dll/armv7/urel/armv7_specific.o"
- ])
+ ]
+
+ t.id = "0011a"
+ t.name = "dll_armv7_rvct"
+ t.command = rootcommand + " -c armv7"
+ t.targets = targets
+ t.addbuildtargets("smoke_suite/test_resources/simple_dll/bld.inf", buildtargets)
t.run()
+
+ t.id = "0011b"
+ t.name = "dll_armv7_clean"
+ t.command = rootcommand + " -c armv7 clean"
+ t.targets = []
+ t.run()
+
+ t.id = "0011c"
+ t.name = "dll_armv7_gcce"
+ t.command = rootcommand + " -c arm.v7.udeb.gcce4_3_2 -c arm.v7.urel.gcce4_3_2"
+ t.targets = targets
+ t.addbuildtargets("smoke_suite/test_resources/simple_dll/bld.inf", buildtargets)
+ t.run()
+
+ t.id = "11"
+ t.name = "dll_armv7"
+ t.print_result()
return t
--- a/sbsv2/raptor/test/smoke_suite/exe_checksource.py Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/test/smoke_suite/exe_checksource.py Mon Nov 30 21:12:38 2009 +0000
@@ -14,6 +14,10 @@
# Description:
#
+# NB - the checksource filter can find the same problem twice
+# So the count of 5 errors here is not actually accurate (AFAIK there are only 4)
+
+
from raptor_tests import SmokeTest
def run():
@@ -30,7 +34,7 @@
t.command = cmd1 + " && " + cmd2 + " && " + cmd3
t.mustmatch = [
- ".* 6 checksource errors found.*"
+ ".* 5 checksource errors found.*"
]
t.returncode = 1
t.run("windows")
--- a/sbsv2/raptor/test/smoke_suite/export.py Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/test/smoke_suite/export.py Mon Nov 30 21:12:38 2009 +0000
@@ -21,8 +21,9 @@
result = SmokeTest.PASS
# This .inf file is created for clean_simple_export and
- # reallyclean_simple_export tests to use, because of $$USER problem occuring
- # at the front end.
+ # reallyclean_simple_export tests to use so that we can put the
+ # username into the output filenames - which helps a lot when
+ # several people run tests on the same computer (e.g. linux machines)
bld = open('smoke_suite/test_resources/simple_export/expbld.inf', 'w')
bld.write("PRJ_PLATFORMS\n"
"ARMV5 WINSCW\n\n"
@@ -69,7 +70,7 @@
t.id = "0023b"
t.name = "export_clean"
t.command = "sbs -b smoke_suite/test_resources/simple_export/expbld.inf " \
- + "-c armv5 CLEAN"
+ + "-c armv5 clean"
t.targets = [
"$(EPOCROOT)/epoc32/include/exported_1.h",
"$(EPOCROOT)/epoc32/include/exported_2.h",
@@ -89,7 +90,28 @@
t.id = "0023c"
t.name = "export_reallyclean"
t.command = "sbs -b smoke_suite/test_resources/simple_export/expbld.inf " \
- + "-c armv5 REALLYCLEAN"
+ + "-c armv5 reallyclean"
+ t.antitargets = [
+ '$(EPOCROOT)/epoc32/include/exported_1.h',
+ '$(EPOCROOT)/epoc32/include/exported_2.h',
+ '$(EPOCROOT)/epoc32/include/exported_3.h',
+ '$(EPOCROOT)/epoc32/include/exportedfilewithspacesremoved.doc',
+ '$(EPOCROOT)/epoc32/include/exported file with a space.doc',
+ '/tmp/$(USER)/simple_exp1.h',
+ '/tmp/$(USER)/simple_exp2.h',
+ '/tmp/$(USER)/simple_exp3.h',
+ '$(EPOCROOT)/epoc32/include/simple_exp4.h'
+ ]
+ t.run()
+ if t.result == SmokeTest.FAIL:
+ result = SmokeTest.FAIL
+
+ # Check that the --noexport feature really does prevent exports from happening
+ t = AntiTargetSmokeTest()
+ t.id = "0023d"
+ t.name = "export_noexport"
+ t.command = "sbs -b smoke_suite/test_resources/simple_export/expbld.inf " \
+ + "-c armv5 --noexport -n"
t.antitargets = [
'$(EPOCROOT)/epoc32/include/exported_1.h',
'$(EPOCROOT)/epoc32/include/exported_2.h',
--- a/sbsv2/raptor/test/smoke_suite/featurevariants.py Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/test/smoke_suite/featurevariants.py Mon Nov 30 21:12:38 2009 +0000
@@ -231,7 +231,7 @@
vmap = " -o " + vmapfile
if 'SBS_BVCPP' in os.environ:
- bvcpp = " -c " + os.environ['SBS_BVCPP']
+ bvcpp = " -c " + os.environ['SBS_BVCPP'].replace('\\','/')
else:
bvcpp = " -c $(SBS_HOME)/$(HOSTPLATFORM_DIR)/bv/bin/cpp"
if t.onWindows:
--- a/sbsv2/raptor/test/smoke_suite/gnumakefile.py Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/test/smoke_suite/gnumakefile.py Mon Nov 30 21:12:38 2009 +0000
@@ -25,7 +25,7 @@
"$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/master_bld_ARMV5_UDEB.txt",
"$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/master_bld_ARMV5_UREL.txt",
"$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/master_bld_WINSCW_UDEB.txt",
- "$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/master_bld_WINSCW_UREL.txt",
+ "$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/master_bld_WINSCW_UREL.txt",
"$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/master_final_ARMV5_UDEB.txt",
"$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/master_final_ARMV5_UREL.txt",
"$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/master_final_WINSCW_UDEB.txt",
@@ -41,7 +41,27 @@
"$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/master_resource_ARMV5_UDEB.txt",
"$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/master_resource_ARMV5_UREL.txt",
"$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/master_resource_WINSCW_UDEB.txt",
- "$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/master_resource_WINSCW_UREL.txt"
+ "$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/master_resource_WINSCW_UREL.txt",
+ "$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/slave_bld_ARMV5_UDEB.txt",
+ "$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/slave_bld_ARMV5_UREL.txt",
+ "$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/slave_bld_WINSCW_UDEB.txt",
+ "$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/slave_bld_WINSCW_UREL.txt",
+ "$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/slave_final_ARMV5_UDEB.txt",
+ "$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/slave_final_ARMV5_UREL.txt",
+ "$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/slave_final_WINSCW_UDEB.txt",
+ "$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/slave_final_WINSCW_UREL.txt",
+ "$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/slave_lib_ARMV5_UDEB.txt",
+ "$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/slave_lib_ARMV5_UREL.txt",
+ "$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/slave_lib_WINSCW_UDEB.txt",
+ "$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/slave_lib_WINSCW_UREL.txt",
+ "$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/slave_makmake_ARMV5_UDEB.txt",
+ "$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/slave_makmake_ARMV5_UREL.txt",
+ "$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/slave_makmake_WINSCW_UDEB.txt",
+ "$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/slave_makmake_WINSCW_UREL.txt",
+ "$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/slave_resource_ARMV5_UDEB.txt",
+ "$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/slave_resource_ARMV5_UREL.txt",
+ "$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/slave_resource_WINSCW_UDEB.txt",
+ "$(SBS_HOME)/test/smoke_suite/test_resources/gnumakefile/slave_resource_WINSCW_UREL.txt"
]
t.run("windows") # we don't have make 3.79 on Linux
return t
--- a/sbsv2/raptor/test/smoke_suite/gnumakefile_what.py Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/test/smoke_suite/gnumakefile_what.py Mon Nov 30 21:12:38 2009 +0000
@@ -45,7 +45,27 @@
componentpath+"/master_resource_ARMV5_UDEB.txt",
componentpath+"/master_resource_ARMV5_UREL.txt",
componentpath+"/master_resource_WINSCW_UDEB.txt",
- componentpath+"/master_resource_WINSCW_UREL.txt"
+ componentpath+"/master_resource_WINSCW_UREL.txt",
+ componentpath+"/slave_bld_ARMV5_UDEB.txt",
+ componentpath+"/slave_bld_ARMV5_UREL.txt",
+ componentpath+"/slave_bld_WINSCW_UDEB.txt",
+ componentpath+"/slave_bld_WINSCW_UREL.txt",
+ componentpath+"/slave_final_ARMV5_UDEB.txt",
+ componentpath+"/slave_final_ARMV5_UREL.txt",
+ componentpath+"/slave_final_WINSCW_UDEB.txt",
+ componentpath+"/slave_final_WINSCW_UREL.txt",
+ componentpath+"/slave_lib_ARMV5_UDEB.txt",
+ componentpath+"/slave_lib_ARMV5_UREL.txt",
+ componentpath+"/slave_lib_WINSCW_UDEB.txt",
+ componentpath+"/slave_lib_WINSCW_UREL.txt",
+ componentpath+"/slave_makmake_ARMV5_UDEB.txt",
+ componentpath+"/slave_makmake_ARMV5_UREL.txt",
+ componentpath+"/slave_makmake_WINSCW_UDEB.txt",
+ componentpath+"/slave_makmake_WINSCW_UREL.txt",
+ componentpath+"/slave_resource_ARMV5_UDEB.txt",
+ componentpath+"/slave_resource_ARMV5_UREL.txt",
+ componentpath+"/slave_resource_WINSCW_UDEB.txt",
+ componentpath+"/slave_resource_WINSCW_UREL.txt"
]
t.run("windows") # we don't have make 3.79 on Linux
return t
--- a/sbsv2/raptor/test/smoke_suite/gnumakefile_whatlog.py Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/test/smoke_suite/gnumakefile_whatlog.py Mon Nov 30 21:12:38 2009 +0000
@@ -47,7 +47,27 @@
componentpath+"/master_resource_ARMV5_UDEB.txt",
componentpath+"/master_resource_ARMV5_UREL.txt",
componentpath+"/master_resource_WINSCW_UDEB.txt",
- componentpath+"/master_resource_WINSCW_UREL.txt"
+ componentpath+"/master_resource_WINSCW_UREL.txt",
+ componentpath+"/slave_bld_ARMV5_UDEB.txt",
+ componentpath+"/slave_bld_ARMV5_UREL.txt",
+ componentpath+"/slave_bld_WINSCW_UDEB.txt",
+ componentpath+"/slave_bld_WINSCW_UREL.txt",
+ componentpath+"/slave_final_ARMV5_UDEB.txt",
+ componentpath+"/slave_final_ARMV5_UREL.txt",
+ componentpath+"/slave_final_WINSCW_UDEB.txt",
+ componentpath+"/slave_final_WINSCW_UREL.txt",
+ componentpath+"/slave_lib_ARMV5_UDEB.txt",
+ componentpath+"/slave_lib_ARMV5_UREL.txt",
+ componentpath+"/slave_lib_WINSCW_UDEB.txt",
+ componentpath+"/slave_lib_WINSCW_UREL.txt",
+ componentpath+"/slave_makmake_ARMV5_UDEB.txt",
+ componentpath+"/slave_makmake_ARMV5_UREL.txt",
+ componentpath+"/slave_makmake_WINSCW_UDEB.txt",
+ componentpath+"/slave_makmake_WINSCW_UREL.txt",
+ componentpath+"/slave_resource_ARMV5_UDEB.txt",
+ componentpath+"/slave_resource_ARMV5_UREL.txt",
+ componentpath+"/slave_resource_WINSCW_UDEB.txt",
+ componentpath+"/slave_resource_WINSCW_UREL.txt"
]
t.stdout = [
"<whatlog bldinf='"+componentpath+"/bld.inf' mmp='' config='armv5_udeb.whatlog'>",
@@ -73,7 +93,31 @@
"<build>"+componentpath+"/master_final_WINSCW_UDEB.txt</build>",
"<build>"+componentpath+"/master_lib_WINSCW_UDEB.txt</build>",
"<build>"+componentpath+"/master_makmake_WINSCW_UDEB.txt</build>",
- "<build>"+componentpath+"/master_resource_WINSCW_UDEB.txt</build>"
+ "<build>"+componentpath+"/master_resource_WINSCW_UDEB.txt</build>",
+ "<whatlog bldinf='"+componentpath+"/bld.inf' mmp='' config='armv5_udeb.whatlog'>",
+ "<build>"+componentpath+"/slave_bld_ARMV5_UDEB.txt</build>",
+ "<build>"+componentpath+"/slave_final_ARMV5_UDEB.txt</build>",
+ "<build>"+componentpath+"/slave_lib_ARMV5_UDEB.txt</build>",
+ "<build>"+componentpath+"/slave_makmake_ARMV5_UDEB.txt</build>",
+ "<build>"+componentpath+"/slave_resource_ARMV5_UDEB.txt</build>",
+ "<whatlog bldinf='"+componentpath+"/bld.inf' mmp='' config='armv5_urel.whatlog'>",
+ "<build>"+componentpath+"/slave_bld_ARMV5_UREL.txt</build>",
+ "<build>"+componentpath+"/slave_final_ARMV5_UREL.txt</build>",
+ "<build>"+componentpath+"/slave_lib_ARMV5_UREL.txt</build>",
+ "<build>"+componentpath+"/slave_makmake_ARMV5_UREL.txt</build>",
+ "<build>"+componentpath+"/slave_resource_ARMV5_UREL.txt</build>",
+ "<whatlog bldinf='"+componentpath+"/bld.inf' mmp='' config='winscw_urel.whatlog'>",
+ "<build>"+componentpath+"/slave_bld_WINSCW_UREL.txt</build>",
+ "<build>"+componentpath+"/slave_final_WINSCW_UREL.txt</build>",
+ "<build>"+componentpath+"/slave_lib_WINSCW_UREL.txt</build>",
+ "<build>"+componentpath+"/slave_makmake_WINSCW_UREL.txt</build>",
+ "<build>"+componentpath+"/slave_resource_WINSCW_UREL.txt</build>",
+ "<whatlog bldinf='"+componentpath+"/bld.inf' mmp='' config='winscw_udeb.whatlog'>",
+ "<build>"+componentpath+"/slave_bld_WINSCW_UDEB.txt</build>",
+ "<build>"+componentpath+"/slave_final_WINSCW_UDEB.txt</build>",
+ "<build>"+componentpath+"/slave_lib_WINSCW_UDEB.txt</build>",
+ "<build>"+componentpath+"/slave_makmake_WINSCW_UDEB.txt</build>",
+ "<build>"+componentpath+"/slave_resource_WINSCW_UDEB.txt</build>"
]
t.run("windows") # we don't have make 3.79 on Linux
return t
--- a/sbsv2/raptor/test/smoke_suite/longpath.py Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/test/smoke_suite/longpath.py Mon Nov 30 21:12:38 2009 +0000
@@ -74,14 +74,12 @@
e32def = dirname + 'e32def.h'
deftestu = dirname + 'deftestu.def'
- distpol = dirname + 'distribution.policy.s60'
dst_cpp = sbsHome + path + 'test.cpp'
dst_bld = sbsHome + path + 'bld.inf'
dst_deftest = sbsHome + path + 'deftest.mmp'
dst_e32def = sbsHome + path + 'e32def.h'
dst_deftestu = sbsHome + path_eabi + 'deftestu.def'
- dst_distpol = sbsHome + path_eabi + 'distribution.policy.s60'
if os.path.exists(dst_cpp):
@@ -92,7 +90,6 @@
shutil.copy(deftest, dst_deftest)
shutil.copy(e32def, dst_e32def)
shutil.copy(deftestu , dst_deftestu)
- shutil.copy(distpol , dst_distpol)
dirname = sbsHome + path
t = SmokeTest()
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/parallel_parsing.py Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,65 @@
+#
+# 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
+
+def run():
+ t = SmokeTest()
+ t.usebash = True
+ result = SmokeTest.PASS
+
+ description = """This test covers parallel parsing."""
+ command = "cd $(SBS_HOME)/test/smoke_suite/test_resources/pp/ && sbs --command=$(SBS_HOME)/test/smoke_suite/test_resources/pp/ppbldinf_commandfile -c armv5 -c winscw --pp=on --noexport -m ${SBSMAKEFILE} -f - | grep recipe "
+
+ mmpcount = 10 # how many mmps in this parallel parsing test
+
+
+ target_templ = [
+ "$(EPOCROOT)/epoc32/release/armv5/udeb/test_pp#.exe",
+ "$(EPOCROOT)/epoc32/release/armv5/udeb/test_pp#.exe.map",
+ "$(EPOCROOT)/epoc32/release/armv5/urel/test_pp#.exe",
+ "$(EPOCROOT)/epoc32/release/armv5/urel/test_pp#.exe.map",
+ "$(EPOCROOT)/epoc32/release/armv5/udeb/test_pp#.exe.sym",
+ "$(EPOCROOT)/epoc32/release/armv5/urel/test_pp#.exe.sym"
+ ]
+
+ targets = []
+
+ # Build up target list for 10 similar executables
+ for num in range(1,mmpcount):
+ for atarget in target_templ:
+ targets.append(atarget.replace('pp#','pp'+ str(num)))
+
+ mustmatch = [
+ ".*<recipe .*name='makefile_generation.*",
+ ]
+ mustnotmatch = [
+ ".*<recipe .*name='makefile_generation_export.*",
+ ".*<error[^><]*>.*"
+ ]
+
+ warnings = 0
+
+ t.id = "104"
+ t.name = "parallelparsing"
+ t.description = description
+ t.command = command
+ t.targets = targets
+ t.mustmatch = mustmatch
+ t.mustnotmatch = mustnotmatch
+ t.warnings = warnings
+ t.run()
+ return t
--- a/sbsv2/raptor/test/smoke_suite/test_resources/gnumakefile/slave.mak Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/gnumakefile/slave.mak Mon Nov 30 21:12:38 2009 +0000
@@ -9,34 +9,34 @@
MAKMAKE :
- echo SLAVE.MAK MAKMAKE >> master_makmake_$(PLATFORM)_$(CFG).txt
+ echo SLAVE.MAK MAKMAKE > slave_makmake_$(PLATFORM)_$(CFG).txt
RESOURCE :
- echo SLAVE.MAK RESOURCE >> master_resource_$(PLATFORM)_$(CFG).txt
+ echo SLAVE.MAK RESOURCE > slave_resource_$(PLATFORM)_$(CFG).txt
SAVESPACE : BLD
BLD :
- echo SLAVE.MAK BLD >> master_bld_$(PLATFORM)_$(CFG).txt
+ echo SLAVE.MAK BLD > slave_bld_$(PLATFORM)_$(CFG).txt
FREEZE :
- echo SLAVE.MAK FREEZE >> master_freeze_$(PLATFORM)_$(CFG).txt
+ echo SLAVE.MAK FREEZE > slave_freeze_$(PLATFORM)_$(CFG).txt
LIB :
- echo SLAVE.MAK LIB >> master_lib_$(PLATFORM)_$(CFG).txt
+ echo SLAVE.MAK LIB > slave_lib_$(PLATFORM)_$(CFG).txt
CLEANLIB : do_nothing
FINAL :
- echo SLAVE.MAK FINAL >> master_final_$(PLATFORM)_$(CFG).txt
+ echo SLAVE.MAK FINAL >> slave_final_$(PLATFORM)_$(CFG).txt
CLEAN :
rm -f *.txt
RELEASABLES :
- @echo $(DIRECTORY)/master_makmake_$(PLATFORM)_$(CFG).txt
- @echo $(DIRECTORY)/master_resource_$(PLATFORM)_$(CFG).txt
- @echo $(DIRECTORY)/master_bld_$(PLATFORM)_$(CFG).txt
- @echo $(DIRECTORY)/master_lib_$(PLATFORM)_$(CFG).txt
- @echo $(DIRECTORY)/master_final_$(PLATFORM)_$(CFG).txt
+ @echo $(DIRECTORY)/slave_makmake_$(PLATFORM)_$(CFG).txt
+ @echo $(DIRECTORY)/slave_resource_$(PLATFORM)_$(CFG).txt
+ @echo $(DIRECTORY)/slave_bld_$(PLATFORM)_$(CFG).txt
+ @echo $(DIRECTORY)/slave_lib_$(PLATFORM)_$(CFG).txt
+ @echo $(DIRECTORY)/slave_final_$(PLATFORM)_$(CFG).txt
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/pp1.inf Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,22 @@
+/*
+* 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:
+*
+*/
+
+PRJ_PLATFORMS
+ARMV5 ARMV7 WINSCW ARMV5SMP
+
+PRJ_MMPFILES
+pp1.mmp
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/pp1.mmp Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,18 @@
+/*
+* 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:
+*
+*/
+TARGET test_pp1
+#include "pp_common.mmh"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/pp10.inf Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,22 @@
+/*
+* 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:
+*
+*/
+
+PRJ_PLATFORMS
+ARMV5 ARMV7 WINSCW ARMV5SMP
+
+PRJ_MMPFILES
+pp10.mmp
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/pp10.mmp Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,18 @@
+/*
+* 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:
+*
+*/
+TARGET test_pp10
+#include "pp_common.mmh"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/pp2.inf Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,22 @@
+/*
+* 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:
+*
+*/
+
+PRJ_PLATFORMS
+ARMV5 ARMV7 WINSCW ARMV5SMP
+
+PRJ_MMPFILES
+pp2.mmp
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/pp2.mmp Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,18 @@
+/*
+* 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:
+*
+*/
+TARGET test_pp2
+#include "pp_common.mmh"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/pp3.inf Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,22 @@
+/*
+* 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:
+*
+*/
+
+PRJ_PLATFORMS
+ARMV5 ARMV7 WINSCW ARMV5SMP
+
+PRJ_MMPFILES
+pp3.mmp
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/pp3.mmp Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,18 @@
+/*
+* 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:
+*
+*/
+TARGET test_pp3
+#include "pp_common.mmh"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/pp4.inf Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,22 @@
+/*
+* 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:
+*
+*/
+
+PRJ_PLATFORMS
+ARMV5 ARMV7 WINSCW ARMV5SMP
+
+PRJ_MMPFILES
+pp4.mmp
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/pp4.mmp Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,18 @@
+/*
+* 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:
+*
+*/
+TARGET test_pp4
+#include "pp_common.mmh"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/pp5.inf Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,22 @@
+/*
+* 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:
+*
+*/
+
+PRJ_PLATFORMS
+ARMV5 ARMV7 WINSCW ARMV5SMP
+
+PRJ_MMPFILES
+pp5.mmp
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/pp5.mmp Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,18 @@
+/*
+* 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:
+*
+*/
+TARGET test_pp5
+#include "pp_common.mmh"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/pp6.inf Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,22 @@
+/*
+* 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:
+*
+*/
+
+PRJ_PLATFORMS
+ARMV5 ARMV7 WINSCW ARMV5SMP
+
+PRJ_MMPFILES
+pp6.mmp
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/pp6.mmp Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,18 @@
+/*
+* 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:
+*
+*/
+TARGET test_pp6
+#include "pp_common.mmh"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/pp7.inf Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,22 @@
+/*
+* 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:
+*
+*/
+
+PRJ_PLATFORMS
+ARMV5 ARMV7 WINSCW ARMV5SMP
+
+PRJ_MMPFILES
+pp7.mmp
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/pp7.mmp Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,18 @@
+/*
+* 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:
+*
+*/
+TARGET test_pp7
+#include "pp_common.mmh"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/pp8.inf Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,22 @@
+/*
+* 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:
+*
+*/
+
+PRJ_PLATFORMS
+ARMV5 ARMV7 WINSCW ARMV5SMP
+
+PRJ_MMPFILES
+pp8.mmp
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/pp8.mmp Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,18 @@
+/*
+* 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:
+*
+*/
+TARGET test_pp8
+#include "pp_common.mmh"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/pp9.inf Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,22 @@
+/*
+* 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:
+*
+*/
+
+PRJ_PLATFORMS
+ARMV5 ARMV7 WINSCW ARMV5SMP
+
+PRJ_MMPFILES
+pp9.mmp
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/pp9.mmp Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,18 @@
+/*
+* 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:
+*
+*/
+TARGET test_pp9
+#include "pp_common.mmh"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/pp_common.mmh Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,35 @@
+/*
+* 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:
+*
+*/
+TARGETTYPE EXE
+
+// Test backslash to / here:
+TARGETPATH \sys\bin
+
+UID 0x100039ce 0x00000001
+LIBRARY euser.lib
+SECUREID 0x10003a5c
+SYSTEMINCLUDE /epoc32/include
+SOURCE test.cpp test.cia test1.c++ test2.cxx test3.Cpp test4.cc test5.CC test6.C++
+MACRO TEST_MACRO_THAT_DOES_NOTHING
+OPTION GCCE -O2
+PAGED
+DEBUGGABLE
+EPOCCALLDLLENTRYPOINTS
+EPOCSTACKSIZE 8192
+EPOCHEAPSIZE 0x5000 65535
+EPOCPROCESSPRIORITY low
+capability TCB ProtServ DiskAdmin AllFiles PowerMgmt CommDD
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/ppbldinf_commandfile Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,1 @@
+-b pp1.inf -b pp2.inf -b pp3.inf -b pp4.inf -b pp5.inf -b pp6.inf -b pp7.inf -b pp8.inf -b pp9.inf -b pp10.inf
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/readme Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,1 @@
+Parallel Parsing test resources
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/test.cia Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,30 @@
+/*
+* 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:
+*
+*/
+// Some random assembler or a "straight" dummy function
+
+#ifndef __WINSCW__
+EXPORT_C __NAKED__ void dummy()
+ {
+ asm("stmia r0, {r4-r11, sp, lr} ");
+ asm("mov r0, #0");
+ }
+#else
+int fred(int i)
+ {
+ return 1;
+ }
+#endif
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/test.cpp Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,38 @@
+/*
+* 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:
+*
+*/
+#include "e32def.h" // intentional include
+#include "test.h"
+
+char test[]="Simple test";
+
+TInt test1();
+TInt test2();
+TInt test3();
+TInt test4();
+TInt test5();
+TInt test6();
+
+TInt E32Main()
+{
+ test1();
+ test2();
+ test3();
+ test4();
+ test5();
+ test6();
+ return 0;
+}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/test.h Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,17 @@
+/*
+* 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:
+*
+*/
+// Blank header file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/test1.c++ Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,7 @@
+#include "e32def.h" // intentional include
+
+
+TInt test1()
+{
+ return 0;
+}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/test2.cxx Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,7 @@
+#include "e32def.h" // intentional include
+
+
+TInt test2()
+{
+ return 0;
+}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/test3.Cpp Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,23 @@
+/*
+* 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:
+*
+*/
+#include "e32def.h" // intentional include
+
+
+TInt test3()
+{
+ return 0;
+}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/test4.cc Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,7 @@
+#include "e32def.h" // intentional include
+
+
+TInt test4()
+{
+ return 0;
+}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/test5.CC Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,7 @@
+#include "e32def.h" // intentional include
+
+
+TInt test5()
+{
+ return 0;
+}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/pp/test6.C++ Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,7 @@
+#include "e32def.h" // intentional include
+
+
+TInt test6()
+{
+ return 0;
+}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/toolchain_macros/bld.inf Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,22 @@
+/*
+* 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:
+*
+*/
+
+PRJ_PLATFORMS
+ARMV5 WINSCW
+
+PRJ_MMPFILES
+macros.mmp
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/toolchain_macros/macros.cpp Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,71 @@
+/*
+* 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:
+*
+*/
+
+
+#include "e32def.h"
+
+TInt E32Main()
+ {
+
+// Confirm macro presence in processing through warnings
+
+#ifdef __ARMCC__
+#warning __ARMCC__
+#endif
+
+#ifdef __ARMCC_2__
+#warning __ARMCC_2__
+#endif
+
+#ifdef __ARMCC_2_2__
+#warning __ARMCC_2_2__
+#endif
+
+#ifdef __ARMCC_3__
+#warning __ARMCC_3__
+#endif
+
+#ifdef __ARMCC_3_1__
+#warning __ARMCC_3_1__
+#endif
+
+#ifdef __ARMCC_4__
+#warning __ARMCC_4__
+#endif
+
+#ifdef __ARMCC_4_0__
+#warning __ARMCC_4_0__
+#endif
+
+#ifdef __GCCE__
+#warning __GCCE__
+#endif
+
+#ifdef __GCCE_4__
+#warning __GCCE_4__
+#endif
+
+#ifdef __GCCE_4_3__
+#warning __GCCE_4_3__
+#endif
+
+#ifdef __GCCE_4_4__
+#warning __GCCE_4_4__
+#endif
+
+ return 0;
+ }
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/test_resources/toolchain_macros/macros.mmp Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,70 @@
+/*
+* 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:
+*
+*/
+
+
+TARGET macros
+TARGETTYPE EXE
+UID 0x100039ce 0x00000001
+LIBRARY euser.lib
+SYSTEMINCLUDE /epoc32/include
+SOURCE macros.cpp
+
+// Confirm macro presence in processing through warnings
+
+#ifdef ARMCC
+#warning ARMCC
+#endif
+
+#ifdef ARMCC_2
+#warning ARMCC_2
+#endif
+
+#ifdef ARMCC_2_2
+#warning ARMCC_2_2
+#endif
+
+#ifdef ARMCC_3
+#warning ARMCC_3
+#endif
+
+#ifdef ARMCC_3_1
+#warning ARMCC_3_1
+#endif
+
+#ifdef ARMCC_4
+#warning ARMCC_4
+#endif
+
+#ifdef ARMCC_4_0
+#warning ARMCC_4_0
+#endif
+
+#ifdef GCCE
+#warning GCCE
+#endif
+
+#ifdef GCCE_4
+#warning GCCE_4
+#endif
+
+#ifdef GCCE_4_3
+#warning GCCE_4_3
+#endif
+
+#ifdef GCCE_4_4
+#warning GCCE_4_4
+#endif
--- a/sbsv2/raptor/test/smoke_suite/test_resources/tracecompiler/TC_featurevariant/traces/HelloWorldTraces.h Mon Nov 30 21:06:03 2009 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-// Created by TraceCompiler 1.3.0
-// DO NOT EDIT, CHANGES WILL BE LOST
-
-#ifndef __HELLOWORLDTRACES_H__
-#define __HELLOWORLDTRACES_H__
-
-#define KOstTraceComponentID 0xe78a5aa3
-
-#define _DOSTARTL 0x30001
-
-
-#endif
-
-// End of file
-
--- a/sbsv2/raptor/test/smoke_suite/test_resources/tracecompiler/TC_featurevariant/traces/OstTraceDefinitions.h Mon Nov 30 21:06:03 2009 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,7 +0,0 @@
-#ifndef __OSTTRACEDEFINITIONS_H__
-#define __OSTTRACEDEFINITIONS_H__
-// OST_TRACE_COMPILER_IN_USE flag has been added by Trace Compiler
-// REMOVE BEFORE CHECK-IN TO VERSION CONTROL
-// #define OST_TRACE_COMPILER_IN_USE
-#include <OpenSystemTrace.h>
-#endif
--- a/sbsv2/raptor/test/smoke_suite/test_resources/tracecompiler/TC_featurevariant/traces/fixed_id.definitions Mon Nov 30 21:06:03 2009 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,3 +0,0 @@
-#Fixed group and trace id definitions. If this file is removed, the identifiers are rebuilt.
-[GROUP]TRACE_NORMAL=0x3
-[TRACE]TRACE_NORMAL[0x3]__DOSTARTL=0x1
--- a/sbsv2/raptor/test/smoke_suite/test_resources/tracecompiler/multiple_variants/traces/OstTraceDefinitions.h Mon Nov 30 21:06:03 2009 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,7 +0,0 @@
-#ifndef __OSTTRACEDEFINITIONS_H__
-#define __OSTTRACEDEFINITIONS_H__
-// OST_TRACE_COMPILER_IN_USE flag has been added by Trace Compiler
-// REMOVE BEFORE CHECK-IN TO VERSION CONTROL
-// #define OST_TRACE_COMPILER_IN_USE
-#include <OpenSystemTrace.h>
-#endif
--- a/sbsv2/raptor/test/smoke_suite/test_resources/tracecompiler/mum_children_mmps/traces_child1_exe/OstTraceDefinitions.h Mon Nov 30 21:06:03 2009 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,7 +0,0 @@
-#ifndef __OSTTRACEDEFINITIONS_H__
-#define __OSTTRACEDEFINITIONS_H__
-// OST_TRACE_COMPILER_IN_USE flag has been added by Trace Compiler
-// REMOVE BEFORE CHECK-IN TO VERSION CONTROL
-// #define OST_TRACE_COMPILER_IN_USE
-#include <OpenSystemTrace.h>
-#endif
--- a/sbsv2/raptor/test/smoke_suite/test_resources/tracecompiler/mum_children_mmps/traces_child2_exe/OstTraceDefinitions.h Mon Nov 30 21:06:03 2009 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,7 +0,0 @@
-#ifndef __OSTTRACEDEFINITIONS_H__
-#define __OSTTRACEDEFINITIONS_H__
-// OST_TRACE_COMPILER_IN_USE flag has been added by Trace Compiler
-// REMOVE BEFORE CHECK-IN TO VERSION CONTROL
-// #define OST_TRACE_COMPILER_IN_USE
-#include <OpenSystemTrace.h>
-#endif
--- a/sbsv2/raptor/test/smoke_suite/test_resources/tracecompiler/mum_children_mmps/traces_child3_exe/OstTraceDefinitions.h Mon Nov 30 21:06:03 2009 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,7 +0,0 @@
-#ifndef __OSTTRACEDEFINITIONS_H__
-#define __OSTTRACEDEFINITIONS_H__
-// OST_TRACE_COMPILER_IN_USE flag has been added by Trace Compiler
-// REMOVE BEFORE CHECK-IN TO VERSION CONTROL
-// #define OST_TRACE_COMPILER_IN_USE
-#include <OpenSystemTrace.h>
-#endif
--- a/sbsv2/raptor/test/smoke_suite/test_resources/tracecompiler/testTC/traces/OstTraceDefinitions.h Mon Nov 30 21:06:03 2009 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,7 +0,0 @@
-#ifndef __OSTTRACEDEFINITIONS_H__
-#define __OSTTRACEDEFINITIONS_H__
-// OST_TRACE_COMPILER_IN_USE flag has been added by Trace Compiler
-// REMOVE BEFORE CHECK-IN TO VERSION CONTROL
-// #define OST_TRACE_COMPILER_IN_USE
-#include <OpenSystemTrace.h>
-#endif
--- a/sbsv2/raptor/test/smoke_suite/test_resources/tracecompiler/variant_source/traces/OstTraceDefinitions.h Mon Nov 30 21:06:03 2009 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,7 +0,0 @@
-#ifndef __OSTTRACEDEFINITIONS_H__
-#define __OSTTRACEDEFINITIONS_H__
-// OST_TRACE_COMPILER_IN_USE flag has been added by Trace Compiler
-// REMOVE BEFORE CHECK-IN TO VERSION CONTROL
-// #define OST_TRACE_COMPILER_IN_USE
-#include <OpenSystemTrace.h>
-#endif
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sbsv2/raptor/test/smoke_suite/toolchain_macros.py Mon Nov 30 21:12:38 2009 +0000
@@ -0,0 +1,60 @@
+#
+# 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 string
+
+def run():
+ t = SmokeTest()
+ t.description = "Check that ARM toolchain specific macros are used in both metadata and source processing."
+ t.warnings = -1
+
+ toolchains = {
+ 'rvct2_2': ['ARMCC', 'ARMCC_2', 'ARMCC_2_2', '__ARMCC__', '__ARMCC_2__', '__ARMCC_2_2__'],
+ 'rvct3_1': ['ARMCC', 'ARMCC_3', 'ARMCC_3_1', '__ARMCC__', '__ARMCC_3__' , '__ARMCC_3_1__'],
+ 'rvct4_0': ['ARMCC', 'ARMCC_4', 'ARMCC_4_0', '__ARMCC__', '__ARMCC_4__' , '__ARMCC_4_0__'],
+ 'gcce4_3_2': ['GCCE', 'GCCE_4', 'GCCE_4_3', '__GCCE__', '__GCCE_4__' , '__GCCE_4_3__'],
+ 'gcce4_3_3': ['GCCE', 'GCCE_4', 'GCCE_4_3', '__GCCE__', '__GCCE_4__' , '__GCCE_4_3__'],
+ 'gcce4_4_1': ['GCCE', 'GCCE_4', 'GCCE_4_4', '__GCCE__', '__GCCE_4__' , '__GCCE_4_4__']
+ }
+
+ rootname = "toolchain_macros_armv5_%s_%s"
+ rootcommand = "sbs -b smoke_suite/test_resources/toolchain_macros/bld.inf -c arm.v5.urel."
+ macromatch = ": #warning( directive:)? %s(</warning>)?$"
+
+ count = 0
+ for toolchain in sorted(toolchains.keys()):
+ t.id = "0103" + string.ascii_lowercase[count]
+ t.name = rootname % (toolchain, "clean")
+ t.command = rootcommand + toolchain + " clean"
+ t.mustmatch_singleline = []
+ t.run()
+ count += 1
+
+ t.id = "0103" + string.ascii_lowercase[count]
+ t.name = rootname % (toolchain, "build")
+ t.command = rootcommand + toolchain
+ mustmatch = []
+ for macro in toolchains[toolchain]:
+ mustmatch.append(macromatch % macro)
+ t.mustmatch_singleline = mustmatch
+ t.run()
+ count += 1
+
+ t.id = "103"
+ t.name = "toolchain_macros"
+ t.print_result()
+ return t
--- a/sbsv2/raptor/util/talon/Makefile Mon Nov 30 21:06:03 2009 +0000
+++ b/sbsv2/raptor/util/talon/Makefile Mon Nov 30 21:12:38 2009 +0000
@@ -23,8 +23,12 @@
ifeq ($(filter win,$(HOSTPLATFORM)),win)
PROCESS_C:=process_win.c
CFLAGS:=-DHOST_WIN
+ifeq ($(SBS_MINGW),)
LDFLAGS:=$(subst \,/,$(SBS_HOME:\=/)\win32\mingw\lib\libiberty.a)
else
+LDFLAGS:=$(subst \,/,$(SBS_MINGW:\=/)\lib\libiberty.a)
+endif
+else
PROCESS_C:=process.c
CFLAGS:=-g
linux_PTHREADLIBS:=-lpthread
Binary file sbsv2/raptor/win32/bin/ransleep.exe has changed
Binary file sbsv2/raptor/win32/bin/talon.exe has changed
Binary file sbsv2/raptor/win32/bin/talonctl.exe has changed