refactor out ABLD-style platform constants into ISBSv1BuildContext from ISymbianBuildContext C3_BUILDER_WORK
authortimkelly
Wed, 16 Jun 2010 15:43:22 -0500
branchC3_BUILDER_WORK
changeset 1479 a654857ddb87
parent 1478 69015f2143b2
child 1480 c26f1a4c14aa
refactor out ABLD-style platform constants into ISBSv1BuildContext from ISymbianBuildContext
builder/com.nokia.carbide.cdt.builder.test/src/com/nokia/carbide/cdt/builder/test/errorParsers/ErrorParserRegressionGenerator.java
builder/com.nokia.carbide.cdt.builder.test/src/com/nokia/carbide/cdt/builder/test/errorParsers/TestGcceErrorParser.java
builder/com.nokia.carbide.cdt.builder.test/src/com/nokia/carbide/cdt/builder/test/errorParsers/TestMakeErrorParser.java
builder/com.nokia.carbide.cdt.builder.test/src/com/nokia/carbide/cdt/builder/test/errorParsers/TestMakmakeErrorParser.java
builder/com.nokia.carbide.cdt.builder.test/src/com/nokia/carbide/cdt/builder/test/errorParsers/TestRVCTErrorParser.java
builder/com.nokia.carbide.cdt.builder.test/src/com/nokia/carbide/cdt/builder/test/errorParsers/TestSBSv2ErrorParser.java
builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/builder/DefaultMMPViewConfiguration.java
builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/builder/EpocEngineHelper.java
builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/builder/builder/CarbideCPPBuilder.java
builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideBuildConfiguration.java
builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideSBSv1Builder.java
builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/EnvironmentVarsInfo.java
builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/EnvironmentVarsInfo2.java
core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/api/sdk/BuildContextSBSv1.java
core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/api/sdk/BuildContextSBSv2.java
core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/api/sdk/SymbianBuildContextDataCache.java
core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/sdk/core/model/SBSv1BuildInfo.java
core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/sdk/core/ISBSv1BuildContext.java
core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/sdk/core/ISBSv2BuildContext.java
core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/sdk/core/ISymbianBuildContext.java
qt/com.nokia.carbide.cpp.qt.core/src/com/nokia/carbide/cpp/internal/qt/core/QtFilter.java
qt/com.nokia.carbide.cpp.qt.ui/src/com/nokia/carbide/cpp/internal/qt/ui/QtUIPlugin.java
--- a/builder/com.nokia.carbide.cdt.builder.test/src/com/nokia/carbide/cdt/builder/test/errorParsers/ErrorParserRegressionGenerator.java	Wed Jun 16 13:27:31 2010 -0500
+++ b/builder/com.nokia.carbide.cdt.builder.test/src/com/nokia/carbide/cdt/builder/test/errorParsers/ErrorParserRegressionGenerator.java	Wed Jun 16 15:43:22 2010 -0500
@@ -32,10 +32,10 @@
 import com.nokia.carbide.cdt.builder.project.ICarbideProjectInfo;
 import com.nokia.carbide.cdt.builder.test.TestPlugin;
 import com.nokia.carbide.cpp.project.core.ProjectCorePlugin;
+import com.nokia.carbide.cpp.sdk.core.ISBSv1BuildContext;
 import com.nokia.carbide.cpp.sdk.core.ISymbianBuildContext;
 import com.nokia.carbide.cpp.sdk.core.ISymbianBuilderID;
 import com.nokia.carbide.cpp.sdk.core.ISymbianSDK;
-import com.nokia.carbide.cpp.sdk.core.ISymbianSDKFeatures;
 import com.nokia.carbide.cpp.sdk.core.SDKCorePlugin;
 import com.nokia.cpp.internal.api.utils.core.FileUtils;
 
@@ -47,7 +47,7 @@
 	private static final String PROJECT_NAME = "TestErrorParser";
 
 	// Platform matters, set this before you build
-	private static final String PLATFORM_STRING = ISymbianBuildContext.ARMV5_PLATFORM;
+	private static final String PLATFORM_STRING = ISBSv1BuildContext.ARMV5_PLATFORM;
 
 	CarbideErrorParserTestHarness harness;
 	private IProject project;
--- a/builder/com.nokia.carbide.cdt.builder.test/src/com/nokia/carbide/cdt/builder/test/errorParsers/TestGcceErrorParser.java	Wed Jun 16 13:27:31 2010 -0500
+++ b/builder/com.nokia.carbide.cdt.builder.test/src/com/nokia/carbide/cdt/builder/test/errorParsers/TestGcceErrorParser.java	Wed Jun 16 15:43:22 2010 -0500
@@ -31,6 +31,7 @@
 import com.nokia.carbide.cdt.builder.project.ICarbideProjectInfo;
 import com.nokia.carbide.cdt.builder.test.TestPlugin;
 import com.nokia.carbide.cpp.project.core.ProjectCorePlugin;
+import com.nokia.carbide.cpp.sdk.core.ISBSv1BuildContext;
 import com.nokia.carbide.cpp.sdk.core.ISymbianBuildContext;
 import com.nokia.carbide.cpp.sdk.core.ISymbianBuilderID;
 import com.nokia.carbide.cpp.sdk.core.ISymbianSDK;
@@ -59,7 +60,7 @@
 		for (ISymbianSDK currSDK : sdkList){
 			List<ISymbianBuildContext> contexts = currSDK.getBuildInfo(ISymbianBuilderID.SBSV1_BUILDER).getAllBuildConfigurations();
 			for (ISymbianBuildContext context : contexts) {
-				if (context.getPlatformString().equals(ISymbianBuildContext.GCCE_PLATFORM)) {
+				if (context.getPlatformString().equals(ISBSv1BuildContext.GCCE_PLATFORM)) {
 					contextList.add(context);
 					break;
 				}
--- a/builder/com.nokia.carbide.cdt.builder.test/src/com/nokia/carbide/cdt/builder/test/errorParsers/TestMakeErrorParser.java	Wed Jun 16 13:27:31 2010 -0500
+++ b/builder/com.nokia.carbide.cdt.builder.test/src/com/nokia/carbide/cdt/builder/test/errorParsers/TestMakeErrorParser.java	Wed Jun 16 15:43:22 2010 -0500
@@ -31,6 +31,7 @@
 import com.nokia.carbide.cdt.builder.project.ICarbideProjectInfo;
 import com.nokia.carbide.cdt.builder.test.TestPlugin;
 import com.nokia.carbide.cpp.project.core.ProjectCorePlugin;
+import com.nokia.carbide.cpp.sdk.core.ISBSv1BuildContext;
 import com.nokia.carbide.cpp.sdk.core.ISymbianBuildContext;
 import com.nokia.carbide.cpp.sdk.core.ISymbianBuilderID;
 import com.nokia.carbide.cpp.sdk.core.ISymbianSDK;
@@ -60,7 +61,7 @@
 		for (ISymbianSDK currSDK : sdkList){
 			List<ISymbianBuildContext> contexts = currSDK.getBuildInfo(ISymbianBuilderID.SBSV1_BUILDER).getAllBuildConfigurations();
 			for (ISymbianBuildContext context : contexts) {
-				if (context.getPlatformString().equals(ISymbianBuildContext.EMULATOR_PLATFORM)) {
+				if (context.getPlatformString().equals(ISBSv1BuildContext.EMULATOR_PLATFORM)) {
 					contextList.add(context);
 					break;
 				}
--- a/builder/com.nokia.carbide.cdt.builder.test/src/com/nokia/carbide/cdt/builder/test/errorParsers/TestMakmakeErrorParser.java	Wed Jun 16 13:27:31 2010 -0500
+++ b/builder/com.nokia.carbide.cdt.builder.test/src/com/nokia/carbide/cdt/builder/test/errorParsers/TestMakmakeErrorParser.java	Wed Jun 16 15:43:22 2010 -0500
@@ -32,6 +32,7 @@
 import com.nokia.carbide.cdt.builder.project.ICarbideProjectInfo;
 import com.nokia.carbide.cdt.builder.test.TestPlugin;
 import com.nokia.carbide.cpp.project.core.ProjectCorePlugin;
+import com.nokia.carbide.cpp.sdk.core.ISBSv1BuildContext;
 import com.nokia.carbide.cpp.sdk.core.ISymbianBuildContext;
 import com.nokia.carbide.cpp.sdk.core.ISymbianBuilderID;
 import com.nokia.carbide.cpp.sdk.core.ISymbianSDK;
@@ -57,7 +58,7 @@
 		for (ISymbianSDK currSDK : sdkList){
 			List<ISymbianBuildContext> contexts = currSDK.getBuildInfo(ISymbianBuilderID.SBSV1_BUILDER).getAllBuildConfigurations();
 			for (ISymbianBuildContext context : contexts) {
-				if (context.getPlatformString().equals(ISymbianBuildContext.ARMV5_PLATFORM)) {
+				if (context.getPlatformString().equals(ISBSv1BuildContext.ARMV5_PLATFORM)) {
 					contextList.add(context);
 					break;
 				}
--- a/builder/com.nokia.carbide.cdt.builder.test/src/com/nokia/carbide/cdt/builder/test/errorParsers/TestRVCTErrorParser.java	Wed Jun 16 13:27:31 2010 -0500
+++ b/builder/com.nokia.carbide.cdt.builder.test/src/com/nokia/carbide/cdt/builder/test/errorParsers/TestRVCTErrorParser.java	Wed Jun 16 15:43:22 2010 -0500
@@ -32,6 +32,7 @@
 import com.nokia.carbide.cdt.builder.project.ICarbideProjectInfo;
 import com.nokia.carbide.cdt.builder.test.TestPlugin;
 import com.nokia.carbide.cpp.project.core.ProjectCorePlugin;
+import com.nokia.carbide.cpp.sdk.core.ISBSv1BuildContext;
 import com.nokia.carbide.cpp.sdk.core.ISymbianBuildContext;
 import com.nokia.carbide.cpp.sdk.core.ISymbianBuilderID;
 import com.nokia.carbide.cpp.sdk.core.ISymbianSDK;
@@ -57,7 +58,7 @@
 		for (ISymbianSDK currSDK : sdkList){
 			List<ISymbianBuildContext> contexts = currSDK.getBuildInfo(ISymbianBuilderID.SBSV1_BUILDER).getAllBuildConfigurations();
 			for (ISymbianBuildContext context : contexts) {
-				if (context.getPlatformString().equals(ISymbianBuildContext.ARMV5_PLATFORM)) {
+				if (context.getPlatformString().equals(ISBSv1BuildContext.ARMV5_PLATFORM)) {
 					contextList.add(context);
 					break;
 				}
--- a/builder/com.nokia.carbide.cdt.builder.test/src/com/nokia/carbide/cdt/builder/test/errorParsers/TestSBSv2ErrorParser.java	Wed Jun 16 13:27:31 2010 -0500
+++ b/builder/com.nokia.carbide.cdt.builder.test/src/com/nokia/carbide/cdt/builder/test/errorParsers/TestSBSv2ErrorParser.java	Wed Jun 16 15:43:22 2010 -0500
@@ -32,6 +32,7 @@
 import com.nokia.carbide.cdt.builder.project.ICarbideProjectInfo;
 import com.nokia.carbide.cdt.builder.test.TestPlugin;
 import com.nokia.carbide.cpp.project.core.ProjectCorePlugin;
+import com.nokia.carbide.cpp.sdk.core.ISBSv1BuildContext;
 import com.nokia.carbide.cpp.sdk.core.ISymbianBuildContext;
 import com.nokia.carbide.cpp.sdk.core.ISymbianBuilderID;
 import com.nokia.carbide.cpp.sdk.core.ISymbianSDK;
@@ -57,7 +58,7 @@
 		for (ISymbianSDK currSDK : sdkList){
 			List<ISymbianBuildContext> contexts = currSDK.getBuildInfo(ISymbianBuilderID.SBSV1_BUILDER).getAllBuildConfigurations();
 			for (ISymbianBuildContext context : contexts) {
-				if (context.getPlatformString().equals(ISymbianBuildContext.ARMV5_PLATFORM)) {
+				if (context.getPlatformString().equals(ISBSv1BuildContext.ARMV5_PLATFORM)) {
 					contextList.add(context);
 					break;
 				}
--- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/builder/DefaultMMPViewConfiguration.java	Wed Jun 16 13:27:31 2010 -0500
+++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/builder/DefaultMMPViewConfiguration.java	Wed Jun 16 15:43:22 2010 -0500
@@ -23,7 +23,9 @@
 import com.nokia.carbide.cdt.builder.project.ICarbideProjectInfo;
 import com.nokia.carbide.cpp.epoc.engine.model.mmp.EMMPStatement;
 import com.nokia.carbide.cpp.epoc.engine.model.mmp.IMMPViewConfiguration;
-import com.nokia.carbide.cpp.epoc.engine.preprocessor.*;
+import com.nokia.carbide.cpp.epoc.engine.preprocessor.IViewFilter;
+import com.nokia.carbide.cpp.sdk.core.ISBSv1BuildContext;
+import com.nokia.carbide.cpp.sdk.core.ISBSv2BuildContext;
 import com.nokia.carbide.cpp.sdk.core.ISymbianBuildContext;
 
 public class DefaultMMPViewConfiguration extends DefaultViewConfiguration implements IMMPViewConfiguration {
@@ -71,8 +73,13 @@
 	}
 	
 	public boolean isEmulatorBuild() {
-		if (context != null)
-			return context.getPlatformString().equals(ISymbianBuildContext.EMULATOR_PLATFORM);
-		return true;
+		if (context != null){
+			if (context instanceof ISBSv1BuildContext){
+				return context.getPlatformString().equals(ISBSv1BuildContext.EMULATOR_PLATFORM);
+			} else if (context instanceof ISBSv2BuildContext){
+				return ((ISBSv2BuildContext)context).getSBSv2Alias().toUpperCase().contains(ISBSv2BuildContext.TOOLCHAIN_WINSCW);
+			}
+		}
+		return false;
 	}
 }
--- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/builder/EpocEngineHelper.java	Wed Jun 16 13:27:31 2010 -0500
+++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/builder/EpocEngineHelper.java	Wed Jun 16 15:43:22 2010 -0500
@@ -767,7 +767,7 @@
 										}
 
 										// if targetpath is non-null and this is an EKA1 emulator config then add it
-										if (buildConfig.getPlatformString().equals(ISymbianBuildContext.EMULATOR_PLATFORM)) {
+										if (buildConfig.getPlatformString().toUpperCase().equals(ISBSv1BuildContext.EMULATOR_PLATFORM)) {
 											if (buildConfig.getSDK().getOSVersion().getMajor() < 9) {
 												String targetPath = mmpData.getSingleArgumentSettings().get(EMMPStatement.TARGETPATH);
 												if (targetPath != null) {
@@ -923,7 +923,7 @@
 					IPath path = buildConfig.getTargetOutputDirectory();
 					
 					// if targetpath is non-null and this is an EKA1 emulator config then add it
-					if (buildConfig.getPlatformString().equals(ISymbianBuildContext.EMULATOR_PLATFORM)) {
+					if (buildConfig.getPlatformString().toUpperCase().equals(ISBSv1BuildContext.EMULATOR_PLATFORM)) {
 						if (buildConfig.getSDK().getOSVersion().getMajor() < 9) {
 							String targetPath = mmpData.getSingleArgumentSettings().get(EMMPStatement.TARGETPATH);
 							if (targetPath != null) {
@@ -1797,9 +1797,23 @@
 		String platformString = buildContext.getPlatformString();
 		boolean isDebug = ISymbianBuildContext.DEBUG_TARGET.equals(buildContext.getTargetString());
 		// TODO is this correct, what about ARMv6?
-		boolean isARMv5 = ISymbianBuildContext.ARMV5_PLATFORM.equals(platformString) ||
-		ISymbianBuildContext.ARMV5_ABIV2_PLATFORM.equals(platformString);
-		boolean isGCCE = ISymbianBuildContext.GCCE_PLATFORM.equals(platformString);
+		boolean isARMv5 = false;
+		boolean isGCCE = false;
+		
+		if (buildContext instanceof ISBSv1BuildContext) {
+			isARMv5 = ISBSv1BuildContext.ARMV5_PLATFORM.equals(platformString) ||
+			ISBSv1BuildContext.ARMV5_ABIV2_PLATFORM.equals(platformString);
+			isGCCE = ISBSv1BuildContext.GCCE_PLATFORM.equals(platformString);
+		} else if (buildContext instanceof ISBSv2BuildContext){
+			String alias = ((ISBSv2BuildContext)buildContext).getSBSv2Alias();
+			if (alias.toUpperCase().contains(ISBSv2BuildContext.TOOLCHAIN_ARM)){
+				isARMv5 = true;
+			}
+			if (alias.toUpperCase().contains(ISBSv2BuildContext.TOOLCHAIN_GCCE)){
+				isGCCE = true;
+			}
+		}
+		
 		if (isARMv5 || isGCCE) {
 			if (isDebug) {
 				dirList.add(releaseRoot.append("armv5/udeb/")); //$NON-NLS-1$
--- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/builder/builder/CarbideCPPBuilder.java	Wed Jun 16 13:27:31 2010 -0500
+++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/builder/builder/CarbideCPPBuilder.java	Wed Jun 16 15:43:22 2010 -0500
@@ -719,7 +719,7 @@
 	}
 
 	protected static void runPreBuildChecks(ICarbideBuildConfiguration buildConfig, CarbideCommandLauncher launcher) {
-		if (buildConfig.getPlatformString().equals(ISymbianBuildContext.EMULATOR_PLATFORM) && BuilderPreferencePage.useBuiltInX86Vars()) {
+		if (buildConfig.getPlatformString().toUpperCase().equals(ISBSv1BuildContext.EMULATOR_PLATFORM) && BuilderPreferencePage.useBuiltInX86Vars()) {
 			X86BuildPlugin.checkForUpdates();
 		}
 	}
--- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideBuildConfiguration.java	Wed Jun 16 13:27:31 2010 -0500
+++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideBuildConfiguration.java	Wed Jun 16 15:43:22 2010 -0500
@@ -323,18 +323,25 @@
 		String plat = this.getPlatformString();
 		
 		if (context instanceof ISBSv2BuildContext){
-			if (((ISBSv2BuildContext)context).getSBSv2Alias().toUpperCase().contains(ISymbianBuildContext.GCCE_PLATFORM)){
+			// TODO: Getting the tool chain can actually come from the SBSv2 build context.
+			// The metadata macros will tell what toolchain is being used (e.g. ARMCC, CW32, GCCE)
+			if (((ISBSv2BuildContext)context).getSBSv2Alias().toUpperCase().contains(ISBSv2BuildContext.TOOLCHAIN_GCCE)){
+				return ERROR_PARSERS_GCCE;
+			} else if (((ISBSv2BuildContext)context).getSBSv2Alias().toUpperCase().contains(ISBSv2BuildContext.TOOLCHAIN_WINSCW)){
+				return ERROR_PARSERS_WINSCW;
+			} else if (((ISBSv2BuildContext)context).getSBSv2Alias().toUpperCase().contains(ISBSv2BuildContext.TOOLCHAIN_ARM)){
+				return ERROR_PARSERS_ARMVx;
+			}
+		} else {
+			// SBSV1
+			if (plat.equals(ISBSv1BuildContext.EMULATOR_PLATFORM)){
+				return ERROR_PARSERS_WINSCW;
+			} else if (plat.startsWith("ARMV")){
+				return ERROR_PARSERS_ARMVx;
+			} else if (plat.equals(ISBSv1BuildContext.GCCE_PLATFORM)){
 				return ERROR_PARSERS_GCCE;
 			}
 		}
-		
-		if (plat.equals(ISymbianBuildContext.EMULATOR_PLATFORM)){
-			return ERROR_PARSERS_WINSCW;
-		} else if (plat.startsWith("ARMV")){
-			return ERROR_PARSERS_ARMVx;
-		} else if (plat.equals(ISymbianBuildContext.GCCE_PLATFORM)){
-			return ERROR_PARSERS_GCCE;
-		}
 	
 		return ERROR_PARSERS_ALL;  
 	}
--- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideSBSv1Builder.java	Wed Jun 16 13:27:31 2010 -0500
+++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideSBSv1Builder.java	Wed Jun 16 15:43:22 2010 -0500
@@ -168,7 +168,7 @@
 		
 		String componentName = componentPath.removeFileExtension().lastSegment();
 		String buildPlatform = "";
-		if ( buildConfig.getPlatformString().startsWith(ISymbianBuildContext.ARMV5_PLATFORM) &&
+		if ( buildConfig.getPlatformString().startsWith(ISBSv1BuildContext.ARMV5_PLATFORM) &&
 				 EpocEngineHelper.hasFeatureVariantKeyword(buildConfig.getCarbideProject(), componentPath)){
 			buildPlatform = buildConfig.getPlatformString().toLowerCase();
 		} else if (buildConfig.getBuildContext() instanceof ISBSv1BuildContext) {
@@ -350,7 +350,7 @@
 
 		String componentName = componentPath.removeFileExtension().lastSegment();
 		String buildPlatform = "";
-		if ( buildConfig.getPlatformString().startsWith(ISymbianBuildContext.ARMV5_PLATFORM) &&
+		if ( buildConfig.getPlatformString().startsWith(ISBSv1BuildContext.ARMV5_PLATFORM) &&
 				 EpocEngineHelper.hasFeatureVariantKeyword(buildConfig.getCarbideProject(), componentPath)){
 			buildPlatform = buildConfig.getPlatformString().toLowerCase();
 		} else if (buildConfig.getBuildContext() instanceof ISBSv1BuildContext) {
@@ -413,7 +413,7 @@
 
 		String componentName = componentPath.removeFileExtension().lastSegment();
 		String buildPlatform = "";
-		if ( buildConfig.getPlatformString().startsWith(ISymbianBuildContext.ARMV5_PLATFORM) &&
+		if ( buildConfig.getPlatformString().startsWith(ISBSv1BuildContext.ARMV5_PLATFORM) &&
 				 EpocEngineHelper.hasFeatureVariantKeyword(buildConfig.getCarbideProject(), componentPath)){
 			buildPlatform = buildConfig.getPlatformString().toLowerCase();
 		} else if (buildConfig.getBuildContext() instanceof ISBSv1BuildContext) {
@@ -565,7 +565,7 @@
 			modelProvider.releaseSharedModel(model);
 
 			IPath objectDir = null;
-			if ( buildConfig.getPlatformString().startsWith(ISymbianBuildContext.ARMV5_PLATFORM) &&
+			if ( buildConfig.getPlatformString().startsWith(ISBSv1BuildContext.ARMV5_PLATFORM) &&
 				 EpocEngineHelper.hasFeatureVariantKeyword(cpi, fullMMPPath)){
 				// if symbian binary variation, then the object file dir will be in sub-directory with <md5>/udeb/<obj>
 				// The platform can only be a variant if the MMP file has FEATUREVARIANT keyword && The platform is ARMV5-based.
@@ -1169,7 +1169,7 @@
 			for (IPath path : normalMakMakePaths) {
 				
 				String buildPlatform = "";
-				if ( buildConfig.getPlatformString().startsWith(ISymbianBuildContext.ARMV5_PLATFORM) &&
+				if ( buildConfig.getPlatformString().startsWith(ISBSv1BuildContext.ARMV5_PLATFORM) &&
 					 EpocEngineHelper.hasFeatureVariantKeyword(buildConfig.getCarbideProject(), path)) {
 					
 					buildPlatform = buildConfig.getPlatformString().toLowerCase();
@@ -1201,7 +1201,7 @@
 			for (IPath path : testMakMakePaths) {
 				
 				String buildPlatform = "";
-				if ( buildConfig.getPlatformString().startsWith(ISymbianBuildContext.ARMV5_PLATFORM) &&
+				if ( buildConfig.getPlatformString().startsWith(ISBSv1BuildContext.ARMV5_PLATFORM) &&
 					 EpocEngineHelper.hasFeatureVariantKeyword(buildConfig.getCarbideProject(), path)) {
 					
 					buildPlatform = buildConfig.getPlatformString().toLowerCase();
@@ -1296,7 +1296,7 @@
 			for (IPath path : normalMakMakePaths) {
 				
 				String buildPlatform = "";
-				if ( buildConfig.getPlatformString().startsWith(ISymbianBuildContext.ARMV5_PLATFORM) &&
+				if ( buildConfig.getPlatformString().startsWith(ISBSv1BuildContext.ARMV5_PLATFORM) &&
 					 EpocEngineHelper.hasFeatureVariantKeyword(buildConfig.getCarbideProject(), path)) {
 					
 					buildPlatform = buildConfig.getPlatformString().toLowerCase();
@@ -1328,7 +1328,7 @@
 			for (IPath path : normalMakMakePaths) {
 				
 				String buildPlatform = "";
-				if ( buildConfig.getPlatformString().startsWith(ISymbianBuildContext.ARMV5_PLATFORM) &&
+				if ( buildConfig.getPlatformString().startsWith(ISBSv1BuildContext.ARMV5_PLATFORM) &&
 					 EpocEngineHelper.hasFeatureVariantKeyword(buildConfig.getCarbideProject(), path)) {
 					
 					buildPlatform = buildConfig.getPlatformString().toLowerCase();
@@ -1361,7 +1361,7 @@
 			for (IPath path : normalMakMakePaths) {
 				
 				String buildPlatform = "";
-				if ( buildConfig.getPlatformString().startsWith(ISymbianBuildContext.ARMV5_PLATFORM) &&
+				if ( buildConfig.getPlatformString().startsWith(ISBSv1BuildContext.ARMV5_PLATFORM) &&
 					 EpocEngineHelper.hasFeatureVariantKeyword(buildConfig.getCarbideProject(), path)) {
 					
 					buildPlatform = buildConfig.getPlatformString().toLowerCase();
@@ -1392,7 +1392,7 @@
 			// run abld final platform target for each component
 			for (IPath path : normalMakMakePaths) {
 				String buildPlatform = "";
-				if ( buildConfig.getPlatformString().startsWith(ISymbianBuildContext.ARMV5_PLATFORM) &&
+				if ( buildConfig.getPlatformString().startsWith(ISBSv1BuildContext.ARMV5_PLATFORM) &&
 					 EpocEngineHelper.hasFeatureVariantKeyword(buildConfig.getCarbideProject(), path)) {
 					
 					buildPlatform = buildConfig.getPlatformString().toLowerCase();
@@ -1446,7 +1446,7 @@
 			for (IPath path : testMakMakePaths) {
 				
 				String buildPlatform = "";
-				if ( buildConfig.getPlatformString().startsWith(ISymbianBuildContext.ARMV5_PLATFORM) &&
+				if ( buildConfig.getPlatformString().startsWith(ISBSv1BuildContext.ARMV5_PLATFORM) &&
 					 EpocEngineHelper.hasFeatureVariantKeyword(buildConfig.getCarbideProject(), path)) {
 					
 					buildPlatform = buildConfig.getPlatformString().toLowerCase();
@@ -1479,7 +1479,7 @@
 			for (IPath path : testMakMakePaths) {
 				
 				String buildPlatform = "";
-				if ( buildConfig.getPlatformString().startsWith(ISymbianBuildContext.ARMV5_PLATFORM) &&
+				if ( buildConfig.getPlatformString().startsWith(ISBSv1BuildContext.ARMV5_PLATFORM) &&
 					 EpocEngineHelper.hasFeatureVariantKeyword(buildConfig.getCarbideProject(), path)) {
 					
 					buildPlatform = buildConfig.getPlatformString().toLowerCase();
@@ -1513,7 +1513,7 @@
 			for (IPath path : testMakMakePaths) {
 				
 				String buildPlatform = "";
-				if ( buildConfig.getPlatformString().startsWith(ISymbianBuildContext.ARMV5_PLATFORM) &&
+				if ( buildConfig.getPlatformString().startsWith(ISBSv1BuildContext.ARMV5_PLATFORM) &&
 					 EpocEngineHelper.hasFeatureVariantKeyword(buildConfig.getCarbideProject(), path)) {
 					
 					buildPlatform = buildConfig.getPlatformString().toLowerCase();
@@ -1546,7 +1546,7 @@
 			for (IPath path : testMakMakePaths) {
 				
 				String buildPlatform = "";
-				if ( buildConfig.getPlatformString().startsWith(ISymbianBuildContext.ARMV5_PLATFORM) &&
+				if ( buildConfig.getPlatformString().startsWith(ISBSv1BuildContext.ARMV5_PLATFORM) &&
 					 EpocEngineHelper.hasFeatureVariantKeyword(buildConfig.getCarbideProject(), path)) {
 					
 					buildPlatform = buildConfig.getPlatformString().toLowerCase();
@@ -1715,7 +1715,7 @@
 			for (IPath path : normalMakMakePaths) {
 				
 				String buildPlatform = "";
-				if ( buildConfig.getPlatformString().startsWith(ISymbianBuildContext.ARMV5_PLATFORM) &&
+				if ( buildConfig.getPlatformString().startsWith(ISBSv1BuildContext.ARMV5_PLATFORM) &&
 					 EpocEngineHelper.hasFeatureVariantKeyword(buildConfig.getCarbideProject(), path)) {
 					
 					buildPlatform = buildConfig.getPlatformString().toLowerCase();
@@ -1890,7 +1890,7 @@
 			for (IPath path : normalMakMakePaths) {
 				
 				String buildPlatform = "";
-				if ( buildConfig.getPlatformString().startsWith(ISymbianBuildContext.ARMV5_PLATFORM) &&
+				if ( buildConfig.getPlatformString().startsWith(ISBSv1BuildContext.ARMV5_PLATFORM) &&
 					 EpocEngineHelper.hasFeatureVariantKeyword(buildConfig.getCarbideProject(), path)) {
 					
 					buildPlatform = buildConfig.getPlatformString().toLowerCase();
@@ -2354,7 +2354,7 @@
 
 			// delete the *.uid.cpp file if it exists so it gets regenerated.  makmake won't regenerate it if only an mmp include
 			// file has changed.  see bug #4590 for details.
-			if (config.getPlatformString().equals(ISymbianBuildContext.EMULATOR_PLATFORM)) {
+			if (config.getPlatformString().equals(ISBSv1BuildContext.EMULATOR_PLATFORM)) {
 				File uidFile = new Path(getMakefileForMMP(config, componentPath).getAbsolutePath()).removeFileExtension().addFileExtension("UID.CPP").toFile();
 				if (uidFile.exists()) {
 					uidFile.delete();
@@ -2371,7 +2371,7 @@
 			}
 			
 			String buildPlatform = "";
-			if ( config.getPlatformString().startsWith(ISymbianBuildContext.ARMV5_PLATFORM) &&
+			if ( config.getPlatformString().startsWith(ISBSv1BuildContext.ARMV5_PLATFORM) &&
 					 EpocEngineHelper.hasFeatureVariantKeyword(config.getCarbideProject(), componentPath)){
 				buildPlatform = config.getPlatformString().toLowerCase();
 			} else if (config.getBuildContext() instanceof ISBSv1BuildContext) {
@@ -2653,7 +2653,7 @@
 
 		// .d for everything but WINSCW
 		String dependencyFileExt = "d";
-		if (config.getPlatformString().equals(ISymbianBuildContext.EMULATOR_PLATFORM)) {
+		if (config.getPlatformString().equals(ISBSv1BuildContext.EMULATOR_PLATFORM)) {
 			dependencyFileExt = "dep";
 		}
 
@@ -2670,7 +2670,7 @@
 
 		// now add the -MD switch to the compiler args
 		final String platform = config.getPlatformString();
-		if (platform.equals(ISymbianBuildContext.EMULATOR_PLATFORM)) {
+		if (platform.equals(ISBSv1BuildContext.EMULATOR_PLATFORM)) {
 			// append the -MD and -gccdep switches to the CWFLAGS macro
 			IMacroDefinition[] macros = view.getAllMacroDefinitions("CWFLAGS");
 			if (macros.length < 1) {
@@ -2685,7 +2685,7 @@
 			macroText = macroText + " -MD -gccdep" + view.getEOL();
 			view.replaceDirective(macro, macroText);
 			
-		} else if (platform.equals(ISymbianBuildContext.GCCE_PLATFORM)) {
+		} else if (platform.equals(ISBSv1BuildContext.GCCE_PLATFORM)) {
 			// append the -MD switch to the CCFLAGS macro.  there may be more than one so take the last one
 			IMacroDefinition[] macros = view.getAllMacroDefinitions("CCFLAGS");
 			if (macros.length < 1) {
@@ -2824,7 +2824,7 @@
 				// find the macros we need to pass, and replace the -u switch with them
 				String macros = null;
 
-				if (platform.equals(ISymbianBuildContext.EMULATOR_PLATFORM)) {
+				if (platform.equals(ISBSv1BuildContext.EMULATOR_PLATFORM)) {
 					// the macros are listed in the CWDEFS macro
 					IMacroDefinition[] defs = view.getAllMacroDefinitions("CWDEFS");
 					if (defs.length != 1) {
@@ -2839,7 +2839,7 @@
 					macros = macros.replaceAll("\"", "");
 					macros = macros.replaceAll("-d ", "-D");
 
-				} else if (platform.equals(ISymbianBuildContext.GCCE_PLATFORM)) {
+				} else if (platform.equals(ISBSv1BuildContext.GCCE_PLATFORM)) {
 					// the macros are listed in the CCDEFS macro
 					IMacroDefinition[] defs = view.getAllMacroDefinitions("CCDEFS");
 					if (defs.length != 1) {
@@ -2955,8 +2955,8 @@
 					}
 					
 					boolean moveDepFile = false;
-					if (!platform.equals(ISymbianBuildContext.EMULATOR_PLATFORM) &&
-							!platform.equals(ISymbianBuildContext.GCCE_PLATFORM)) {
+					if (!platform.equals(ISBSv1BuildContext.EMULATOR_PLATFORM) &&
+							!platform.equals(ISBSv1BuildContext.GCCE_PLATFORM)) {
 
 							// some form of ARMV5|6
 							moveDepFile = true;
@@ -2968,9 +2968,9 @@
 					}
 					
 					String plat = "";
-					if (platform.equals(ISymbianBuildContext.EMULATOR_PLATFORM)) {
+					if (platform.equals(ISBSv1BuildContext.EMULATOR_PLATFORM)) {
 						plat = "winscw";
-					} else if (platform.equals(ISymbianBuildContext.GCCE_PLATFORM)) {
+					} else if (platform.equals(ISBSv1BuildContext.GCCE_PLATFORM)) {
 						plat = "gcce";
 					}
 					
@@ -2987,7 +2987,7 @@
 					
 					// fix for bug #7748.  we may need to update the listing rule as well since it could generate
 					// a dependency file
-					if (!platform.equals(ISymbianBuildContext.EMULATOR_PLATFORM)) {
+					if (!platform.equals(ISBSv1BuildContext.EMULATOR_PLATFORM)) {
 						// only non-WINSCW platforms are affected
 						rule = view.findRuleForTarget(new Path(rule.getTarget().toString()).removeFileExtension().addFileExtension("lis").toOSString(), true);
 						if (rule != null) {
--- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/EnvironmentVarsInfo.java	Wed Jun 16 13:27:31 2010 -0500
+++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/EnvironmentVarsInfo.java	Wed Jun 16 15:43:22 2010 -0500
@@ -16,15 +16,12 @@
 */
 package com.nokia.carbide.cdt.internal.builder;
 
-import com.nokia.carbide.cdt.builder.CarbideBuilderPlugin;
-import com.nokia.carbide.cdt.builder.project.*;
-import com.nokia.carbide.cdt.internal.api.builder.CarbideConfigurationDataProvider;
-import com.nokia.carbide.cdt.internal.builder.gen.CarbideBuildConfig.*;
-import com.nokia.carbide.cdt.internal.builder.ui.BuilderPreferencePage;
-import com.nokia.carbide.cdt.internal.builder.xml.CarbideBuildConfigurationLoader;
-import com.nokia.carbide.cpp.internal.x86build.X86BuildPlugin;
-import com.nokia.carbide.cpp.sdk.core.ISymbianBuildContext;
-import com.nokia.carbide.cpp.sdk.core.ISymbianSDK;
+import java.io.File;
+import java.io.IOException;
+import java.net.URISyntaxException;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
 
 import org.eclipse.cdt.utils.spawner.EnvironmentReader;
 import org.eclipse.core.resources.IProject;
@@ -32,10 +29,24 @@
 import org.eclipse.core.runtime.Path;
 import org.eclipse.emf.common.util.EList;
 
-import java.io.File;
-import java.io.IOException;
-import java.net.URISyntaxException;
-import java.util.*;
+import com.nokia.carbide.cdt.builder.CarbideBuilderPlugin;
+import com.nokia.carbide.cdt.builder.project.ICarbideBuildConfiguration;
+import com.nokia.carbide.cdt.builder.project.ICarbideProjectInfo;
+import com.nokia.carbide.cdt.builder.project.IEnvironmentVariable;
+import com.nokia.carbide.cdt.builder.project.IEnvironmentVarsInfo;
+import com.nokia.carbide.cdt.internal.api.builder.CarbideConfigurationDataProvider;
+import com.nokia.carbide.cdt.internal.builder.gen.CarbideBuildConfig.CarbideBuildConfigFactory;
+import com.nokia.carbide.cdt.internal.builder.gen.CarbideBuildConfig.CarbideBuilderConfigInfoType;
+import com.nokia.carbide.cdt.internal.builder.gen.CarbideBuildConfig.ConfigurationType;
+import com.nokia.carbide.cdt.internal.builder.gen.CarbideBuildConfig.EnvVarsType;
+import com.nokia.carbide.cdt.internal.builder.gen.CarbideBuildConfig.UseType;
+import com.nokia.carbide.cdt.internal.builder.gen.CarbideBuildConfig.VarType;
+import com.nokia.carbide.cdt.internal.builder.ui.BuilderPreferencePage;
+import com.nokia.carbide.cdt.internal.builder.xml.CarbideBuildConfigurationLoader;
+import com.nokia.carbide.cpp.internal.x86build.X86BuildPlugin;
+import com.nokia.carbide.cpp.sdk.core.ISBSv1BuildContext;
+import com.nokia.carbide.cpp.sdk.core.ISymbianBuildContext;
+import com.nokia.carbide.cpp.sdk.core.ISymbianSDK;
 
 /**
  * @deprecated use {@link EnvironmentVarsInfo2} instead
@@ -206,7 +217,7 @@
 		
 		// Now check for specific variables relating to the Nokia x86 environment
 		// and update the environment that we just updated, if at all.
-		if (context.getPlatformString().equals(ISymbianBuildContext.EMULATOR_PLATFORM) &&
+		if (context.getPlatformString().toUpperCase().equals(ISBSv1BuildContext.EMULATOR_PLATFORM) &&
 			BuilderPreferencePage.useBuiltInX86Vars()){
 			
 			int i = 0;
--- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/EnvironmentVarsInfo2.java	Wed Jun 16 13:27:31 2010 -0500
+++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/EnvironmentVarsInfo2.java	Wed Jun 16 15:43:22 2010 -0500
@@ -16,17 +16,11 @@
 */
 package com.nokia.carbide.cdt.internal.builder;
 
-import com.nokia.carbide.cdt.builder.CarbideBuilderPlugin;
-import com.nokia.carbide.cdt.builder.extension.IEnvironmentModifier;
-import com.nokia.carbide.cdt.builder.project.*;
-import com.nokia.carbide.cdt.internal.builder.ui.BuilderPreferencePage;
-import com.nokia.carbide.cpp.internal.api.sdk.SBSv2Utils;
-import com.nokia.carbide.cpp.internal.x86build.X86BuildPlugin;
-import com.nokia.carbide.cpp.sdk.core.ISymbianBuildContext;
-import com.nokia.carbide.cpp.sdk.core.ISymbianSDK;
-import com.nokia.cpp.internal.api.utils.core.HostOS;
-import com.nokia.cpp.internal.api.utils.core.PathUtils;
-import com.nokia.cpp.internal.api.utils.core.TrackedResource;
+import java.io.File;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
 
 import org.eclipse.cdt.core.settings.model.ICStorageElement;
 import org.eclipse.cdt.utils.spawner.EnvironmentReader;
@@ -34,8 +28,21 @@
 import org.eclipse.core.runtime.IPath;
 import org.eclipse.core.runtime.Path;
 
-import java.io.File;
-import java.util.*;
+import com.nokia.carbide.cdt.builder.CarbideBuilderPlugin;
+import com.nokia.carbide.cdt.builder.extension.IEnvironmentModifier;
+import com.nokia.carbide.cdt.builder.project.ICarbideBuildConfiguration;
+import com.nokia.carbide.cdt.builder.project.ICarbideProjectInfo;
+import com.nokia.carbide.cdt.builder.project.IEnvironmentVariable;
+import com.nokia.carbide.cdt.builder.project.IEnvironmentVarsInfo;
+import com.nokia.carbide.cdt.internal.builder.ui.BuilderPreferencePage;
+import com.nokia.carbide.cpp.internal.api.sdk.SBSv2Utils;
+import com.nokia.carbide.cpp.internal.x86build.X86BuildPlugin;
+import com.nokia.carbide.cpp.sdk.core.ISBSv1BuildContext;
+import com.nokia.carbide.cpp.sdk.core.ISymbianBuildContext;
+import com.nokia.carbide.cpp.sdk.core.ISymbianSDK;
+import com.nokia.cpp.internal.api.utils.core.HostOS;
+import com.nokia.cpp.internal.api.utils.core.PathUtils;
+import com.nokia.cpp.internal.api.utils.core.TrackedResource;
 
 public class EnvironmentVarsInfo2 implements IEnvironmentVarsInfo {
 
@@ -195,7 +202,7 @@
 		
 		// Now check for specific variables relating to the Nokia x86 environment
 		// and update the environment that we just updated, if at all.
-		if (context.getPlatformString().equals(ISymbianBuildContext.EMULATOR_PLATFORM) &&
+		if (context.getPlatformString().toUpperCase().equals(ISBSv1BuildContext.EMULATOR_PLATFORM) &&
 			BuilderPreferencePage.useBuiltInX86Vars()) {
 			
 			int i = 0;
--- a/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/api/sdk/BuildContextSBSv1.java	Wed Jun 16 13:27:31 2010 -0500
+++ b/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/api/sdk/BuildContextSBSv1.java	Wed Jun 16 15:43:22 2010 -0500
@@ -38,7 +38,7 @@
 	private String platform;
 	private String target;
 	private String displayString = null;
-	
+		
 	private static String EMULATOR_DISPLAY_TEXT = "Emulator"; //$NON-NLS-1$
 	private static String PHONE_DISPLAY_TEXT = "Phone"; //$NON-NLS-1$
 	private static String DEBUG_DISPLAY_TEXT = "Debug"; //$NON-NLS-1$
@@ -120,7 +120,7 @@
 		if (displayString == null) {
 			// in the form Emulation Debug (WINSCW) [S60_3rd_MR] or
 			// Phone Release (GCCE) [S60_3rd_MR]
-			if (platform.compareTo(ISymbianBuildContext.EMULATOR_PLATFORM) == 0) {
+			if (platform.compareTo(EMULATOR_PLATFORM) == 0) {
 				displayString = EMULATOR_DISPLAY_TEXT;
 			} else {
 				displayString = PHONE_DISPLAY_TEXT;
--- a/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/api/sdk/BuildContextSBSv2.java	Wed Jun 16 13:27:31 2010 -0500
+++ b/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/api/sdk/BuildContextSBSv2.java	Wed Jun 16 15:43:22 2010 -0500
@@ -42,11 +42,11 @@
 	private String configID;  // cconfiguration 'id' attribute from .cproject
 	
 	// Raptor config query data
-	String outputPathString;
-	List<String> metaDataMacros = new ArrayList<String>();  // macros to parse the INF/MMPs files (these do not contain values)
-	List<String> metaDataIncludes = new ArrayList<String>();
-	String metaDataVariantHRH;
-	String configParseErrorMessage = null;
+	private String outputPathString;
+	private List<String> metaDataMacros = new ArrayList<String>();  // macros to parse the INF/MMPs files (these do not contain values)
+	private List<String> metaDataIncludes = new ArrayList<String>();
+	private String metaDataVariantHRH;
+	private String configParseErrorMessage = null;
 	
 	public BuildContextSBSv2(ISymbianSDK theSDK, String thePlatform, String theTarget, String theSBSv2Alias, String displayName, String configID) {
 		this.sdk = theSDK;
@@ -69,7 +69,6 @@
 		} else {
 			this.displayString = getPlatformString().toUpperCase() + " " + getTargetString().toUpperCase(); 
 		}
-		
 	}
 
 	@Override
@@ -128,11 +127,8 @@
 
 	@Override
 	public String getDefaultDefFileDirectoryName() {
-		// TOOD: THIS IS ABLD STUFF. isASSP does not belong with Raptor
-		// TODO: How the ASSP option affects the path?
-
+	
 		String dirName = getDefFileDirectoryNameForPlatform(platform);
-		// TODO: Previously BSF's folder was EABI? What is it for SBSv2 variants?
 		
 		if (dirName == null) {
 			// fallback for unknown cases
@@ -143,14 +139,9 @@
 	}
 
 	private String getDefFileDirectoryNameForPlatform(String platform) {
-		// TODO: This is still ABLD stype stuff
-		if (platform.equals(EMULATOR_PLATFORM)) {
+		if (sbsv2Alias.toUpperCase().contains("WINSCW")) {
 			return "BWINS"; //$NON-NLS-1$
-		} else if (platform.equals(ARMV5_PLATFORM)
-					|| platform.equals(ARMV5_ABIV2_PLATFORM)
-					|| platform.equals(ARMV6_PLATFORM)
-					|| platform.equals(ARMV6_ABIV2_PLATFORM)
-					|| platform.equals(GCCE_PLATFORM)) {
+		} else if (sbsv2Alias.toUpperCase().contains("ARM")) {
 			return "EABI"; //$NON-NLS-1$
 		}
 		return null;
@@ -158,13 +149,10 @@
 	
 	@Override
 	public IPath getCompilerPrefixFile() {
-		// TODO: This is ABLD hard-code mechanism. Should be able to get from Raptor query mechanism
-		if (platform.equals(GCCE_PLATFORM)) {
+		
+		if (sbsv2Alias.toUpperCase().contains(TOOLCHAIN_GCCE)) {
 			return getGCCEPrefixFilePath();
-		} else if (platform.equals(ARMV5_PLATFORM)
-					|| platform.equals(ARMV5_ABIV2_PLATFORM)
-					|| platform.equals(ARMV6_PLATFORM)
-					|| platform.equals(ARMV6_ABIV2_PLATFORM)) {
+		} else if (sbsv2Alias.toUpperCase().contains((TOOLCHAIN_ARM))) {
 			return getRVCTPrefixFilePath();
 		} 
 
--- a/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/api/sdk/SymbianBuildContextDataCache.java	Wed Jun 16 13:27:31 2010 -0500
+++ b/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/api/sdk/SymbianBuildContextDataCache.java	Wed Jun 16 15:43:22 2010 -0500
@@ -408,7 +408,7 @@
 			}
 			else {
 				// legacy behavior 
-				if (platformString.equals(ISymbianBuildContext.EMULATOR_PLATFORM)) {
+				if (platformString.equals(ISBSv1BuildContext.EMULATOR_PLATFORM)) {
 					dir = new File(includeDir, "wins"); //$NON-NLS-1$
 					if (dir.exists() && dir.isDirectory()) {
 						systemIncludes.add(dir);
--- a/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/sdk/core/model/SBSv1BuildInfo.java	Wed Jun 16 13:27:31 2010 -0500
+++ b/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/sdk/core/model/SBSv1BuildInfo.java	Wed Jun 16 15:43:22 2010 -0500
@@ -35,6 +35,7 @@
 import com.nokia.carbide.cpp.internal.api.sdk.SBSv2Utils;
 import com.nokia.carbide.cpp.sdk.core.IBSFCatalog;
 import com.nokia.carbide.cpp.sdk.core.IBSFPlatform;
+import com.nokia.carbide.cpp.sdk.core.ISBSv1BuildContext;
 import com.nokia.carbide.cpp.sdk.core.ISBVCatalog;
 import com.nokia.carbide.cpp.sdk.core.ISBVPlatform;
 import com.nokia.carbide.cpp.sdk.core.ISDKManager;
@@ -83,15 +84,15 @@
 			return Collections.emptyList();
 		}
 		// TODO: Hard code build context hack
-		buildTargets.add(new BuildContextSBSv1(sdk, ISymbianBuildContext.EMULATOR_PLATFORM, ISymbianBuildContext.DEBUG_TARGET));
+		buildTargets.add(new BuildContextSBSv1(sdk, ISBSv1BuildContext.EMULATOR_PLATFORM, ISymbianBuildContext.DEBUG_TARGET));
 		
 		if (sdkFeatures.contains(ISymbianSDKFeatures.IS_WINSCW_UREL_SUPPORTED)){
 			// TODO: Hard code build context hack
-			buildTargets.add(new BuildContextSBSv1(sdk, ISymbianBuildContext.EMULATOR_PLATFORM, ISymbianBuildContext.RELEASE_TARGET));
+			buildTargets.add(new BuildContextSBSv1(sdk, ISBSv1BuildContext.EMULATOR_PLATFORM, ISymbianBuildContext.RELEASE_TARGET));
 		}
 		
 		for (String currPlat : buildPlats){
-			if (currPlat.equals(ISymbianBuildContext.EMULATOR_PLATFORM) ) { 
+			if (currPlat.equals(ISBSv1BuildContext.EMULATOR_PLATFORM) ) { 
 				// emulation targets already determined (some SDKs don't get WISNCW UREL
 				continue;
 			}
--- a/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/sdk/core/ISBSv1BuildContext.java	Wed Jun 16 13:27:31 2010 -0500
+++ b/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/sdk/core/ISBSv1BuildContext.java	Wed Jun 16 15:43:22 2010 -0500
@@ -3,6 +3,16 @@
 public interface ISBSv1BuildContext extends ISymbianBuildContext {
 
 	/**
+	 * Platform constants
+	 */
+	public static final String EMULATOR_PLATFORM = "WINSCW";
+	public static final String GCCE_PLATFORM = "GCCE";
+	public static final String ARMV5_PLATFORM = "ARMV5";
+	public static final String ARMV6_PLATFORM = "ARMV6";
+	public static final String ARMV5_ABIV2_PLATFORM = "ARMV5_ABIV2";
+	public static final String ARMV6_ABIV2_PLATFORM = "ARMV6_ABIV2";
+	
+	/**
 	 * For Symbian Bianry Variation, platforms will be names <plat>.<variation>
 	 * So in some cases you need to know only the platforms that the variant is based on.
 	 * For example, a build platform name of "armv5.myvariant" will return "armv5".
--- a/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/sdk/core/ISBSv2BuildContext.java	Wed Jun 16 13:27:31 2010 -0500
+++ b/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/sdk/core/ISBSv2BuildContext.java	Wed Jun 16 15:43:22 2010 -0500
@@ -4,6 +4,10 @@
 	
 	public static final String BUILDER_ID = "com.nokia.carbide.builder.raptor";
 	
+	public static final String TOOLCHAIN_WINSCW = "WINSCW";
+	public static final String TOOLCHAIN_GCCE = "GCCE";
+	public static final String TOOLCHAIN_ARM = "ARM";
+	
 	/**
 	 * Retrieve the build-able configuration; a valid command that cab be passed with Raptor's -c parameter.
 	 * This should not be used and should return null for abld-configurations.
--- a/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/sdk/core/ISymbianBuildContext.java	Wed Jun 16 13:27:31 2010 -0500
+++ b/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/sdk/core/ISymbianBuildContext.java	Wed Jun 16 15:43:22 2010 -0500
@@ -30,16 +30,6 @@
 public interface ISymbianBuildContext {
 	
 	/**
-	 * Platform constants
-	 */
-	public static final String EMULATOR_PLATFORM = "WINSCW";
-	public static final String GCCE_PLATFORM = "GCCE";
-	public static final String ARMV5_PLATFORM = "ARMV5";
-	public static final String ARMV6_PLATFORM = "ARMV6";
-	public static final String ARMV5_ABIV2_PLATFORM = "ARMV5_ABIV2";
-	public static final String ARMV6_ABIV2_PLATFORM = "ARMV6_ABIV2";
-	
-	/**
 	 * DEFAULT suffix to use for components that are specified as variant, but don't buid as variants. For example, plain ARMV5, when specified as
 	 * as a FEATUREVARIANT, will build as ARMV5.DEFAULT
 	 * @since 2.0
--- a/qt/com.nokia.carbide.cpp.qt.core/src/com/nokia/carbide/cpp/internal/qt/core/QtFilter.java	Wed Jun 16 13:27:31 2010 -0500
+++ b/qt/com.nokia.carbide.cpp.qt.core/src/com/nokia/carbide/cpp/internal/qt/core/QtFilter.java	Wed Jun 16 15:43:22 2010 -0500
@@ -21,13 +21,14 @@
 import org.eclipse.core.runtime.IPath;
 import org.eclipse.jface.viewers.IFilter;
 
+import com.nokia.carbide.cpp.sdk.core.ISBSv1BuildContext;
 import com.nokia.carbide.cpp.sdk.core.ISymbianBuildContext;
 
 public abstract class QtFilter implements IFilter {
 
 	protected File getLibFile(ISymbianBuildContext context) {
 		IPath releaseRoot = context.getSDK().getReleaseRoot();
-		if (context.getPlatformString().equals(ISymbianBuildContext.EMULATOR_PLATFORM)) {
+		if (context.getPlatformString().toUpperCase().equals(ISBSv1BuildContext.EMULATOR_PLATFORM)) {
 			return releaseRoot.append(context.getPlatformString()).
 			append(context.getTargetString()).append("QtCore.dll").toFile(); //$NON-NLS-1$
 		} else {
--- a/qt/com.nokia.carbide.cpp.qt.ui/src/com/nokia/carbide/cpp/internal/qt/ui/QtUIPlugin.java	Wed Jun 16 13:27:31 2010 -0500
+++ b/qt/com.nokia.carbide.cpp.qt.ui/src/com/nokia/carbide/cpp/internal/qt/ui/QtUIPlugin.java	Wed Jun 16 15:43:22 2010 -0500
@@ -46,7 +46,7 @@
 import com.nokia.carbide.cpp.internal.qt.core.QtCorePlugin;
 import com.nokia.carbide.cpp.internal.qt.core.QtSDKUtils;
 import com.nokia.carbide.cpp.internal.qt.ui.wizard.Messages;
-import com.nokia.carbide.cpp.sdk.core.ISymbianBuildContext;
+import com.nokia.carbide.cpp.sdk.core.ISBSv1BuildContext;
 import com.nokia.cpp.internal.api.utils.ui.WorkbenchUtils;
 
 public class QtUIPlugin extends AbstractUIPlugin implements ICarbideConfigurationChangedListener, ISDKManagerLoadedHook {
@@ -109,7 +109,7 @@
 				IFile file = project.getFile(project.getName() + underscore + config.getPlatformString().toLowerCase() +
 						underscore + config.getTargetString().toLowerCase() + ".pkg"); //$NON-NLS-1$
 				
-				if (file == null || !file.exists() && !config.getPlatformString().equals(ISymbianBuildContext.EMULATOR_PLATFORM)) {
+				if (file == null || !file.exists() && !config.getPlatformString().toUpperCase().equals(ISBSv1BuildContext.EMULATOR_PLATFORM)) {
 					// Qt 4.6 only creates one PKG file per project. Do not add for WINSCW
 					file = project.getFile(project.getName() + underscore + template + ".pkg"); //$NON-NLS-1$
 				}