Make sure abld commands use proper platform name, dependent on whether or not it's a Symbian Binary Variation.
authortimkelly
Tue, 19 May 2009 15:50:55 -0500
changeset 166 db95bb765b25
parent 165 cffbaf033837
child 167 260432b65ee7
Make sure abld commands use proper platform name, dependent on whether or not it's a Symbian Binary Variation.
builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideSBSv1Builder.java
--- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideSBSv1Builder.java	Tue May 19 15:41:05 2009 -0500
+++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideSBSv1Builder.java	Tue May 19 15:50:55 2009 -0500
@@ -155,7 +155,14 @@
 		}
 		
 		String componentName = componentPath.removeFileExtension().lastSegment();
-
+		String buildPlatform = "";
+		if ( buildConfig.getPlatformString().startsWith(ISymbianBuildContext.ARMV5_PLATFORM) &&
+				 EpocEngineHelper.hasFeatureVariantKeyword(buildConfig.getCarbideProject(), componentPath)){
+			buildPlatform = buildConfig.getPlatformString().toLowerCase();
+		} else {
+			buildPlatform = buildConfig.getBasePlatformForVariation().toLowerCase();
+		}
+		
 		// need to run individual build steps when managing makefiles or doing concurrent builds
 		if (areWeManagingTheMakeFiles || buildConfig.getCarbideProject().isConcurrentBuildingEnabled()) {
 			
@@ -202,7 +209,7 @@
 				args.add(TEST_CMD);
 			}
 			args.add(LIBRARY_CMD);
-			args.add(buildConfig.getPlatformString().toLowerCase());
+			args.add(buildPlatform);
 			args.add(componentName);
 			
 			for (String arg : buildConfig.getBuildArgumentsInfo().getAbldLibraryArgs().split(" ")) {
@@ -225,7 +232,7 @@
 				args.add(TEST_CMD);
 			}
 			args.add(RESOURCE_CMD);
-			args.add(buildConfig.getPlatformString().toLowerCase());
+			args.add(buildPlatform);
 			args.add(buildConfig.getTargetString().toLowerCase());
 			args.add(componentName);
 			
@@ -249,7 +256,7 @@
 				args.add(TEST_CMD);
 			}
 			args.add(TARGET_CMD);
-			args.add(buildConfig.getPlatformString().toLowerCase());
+			args.add(buildPlatform);
 			args.add(buildConfig.getTargetString().toLowerCase());
 			args.add(componentName);
 
@@ -272,7 +279,7 @@
 				args.add(TEST_CMD);
 			}
 			args.add(FINAL_CMD);
-			args.add(buildConfig.getPlatformString().toLowerCase());
+			args.add(buildPlatform);
 			args.add(buildConfig.getTargetString().toLowerCase());
 			args.add(componentName);
 			
@@ -298,7 +305,7 @@
 				argsList.add(TEST_CMD);
 			}
 			argsList.add(BUILD_CMD);
-			argsList.add(buildConfig.getPlatformString().toLowerCase());
+			argsList.add(buildPlatform);
 			argsList.add(buildConfig.getTargetString().toLowerCase());
 			argsList.add(componentName);
 			
@@ -330,6 +337,13 @@
 		}
 
 		String componentName = componentPath.removeFileExtension().lastSegment();
+		String buildPlatform = "";
+		if ( buildConfig.getPlatformString().startsWith(ISymbianBuildContext.ARMV5_PLATFORM) &&
+				 EpocEngineHelper.hasFeatureVariantKeyword(buildConfig.getCarbideProject(), componentPath)){
+			buildPlatform = buildConfig.getPlatformString().toLowerCase();
+		} else {
+			buildPlatform = buildConfig.getBasePlatformForVariation().toLowerCase();
+		}
 		
 		SubMonitor progress = SubMonitor.convert(monitor, 2);
 		progress.setTaskName("Cleaning " + componentName);
@@ -355,7 +369,7 @@
 			argsList.add(TEST_CMD);
 		}
 		argsList.add(abldCleanCmd);
-		argsList.add(buildConfig.getPlatformString().toLowerCase());
+		argsList.add(buildPlatform);
 		argsList.add(buildConfig.getTargetString().toLowerCase());
 		argsList.add(componentName);
 		
@@ -386,6 +400,13 @@
 		}
 
 		String componentName = componentPath.removeFileExtension().lastSegment();
+		String buildPlatform = "";
+		if ( buildConfig.getPlatformString().startsWith(ISymbianBuildContext.ARMV5_PLATFORM) &&
+				 EpocEngineHelper.hasFeatureVariantKeyword(buildConfig.getCarbideProject(), componentPath)){
+			buildPlatform = buildConfig.getPlatformString().toLowerCase();
+		} else {
+			buildPlatform = buildConfig.getBasePlatformForVariation().toLowerCase();
+		}
 		
 		// run abld makefile platform for each component to be built if needed
 		if (!generateAbldMakefileIfNecessary(buildConfig, launcher, componentPath, isTest, monitor)) {
@@ -402,7 +423,7 @@
 			argsList.add(TEST_CMD);
 		}
 		argsList.add(FREEZE_CMD);
-		argsList.add(buildConfig.getPlatformString().toLowerCase());
+		argsList.add(buildPlatform);
 		argsList.add(componentName);
 		
 		for (String arg : buildConfig.getBuildArgumentsInfo().getAbldFreezeArgs().split(" ")) {
@@ -1270,15 +1291,26 @@
 		if (progress.isCanceled()) {
 			return false;
 		}
-
+		
 		// build the normal components if there are any. do each abld step for all components.
 		if (normalMakMakePaths.size() > 0) {
 
 			// run abld library platform for each component
 			for (IPath path : normalMakMakePaths) {
+				
+				String buildPlatform = "";
+				if ( buildConfig.getPlatformString().startsWith(ISymbianBuildContext.ARMV5_PLATFORM) &&
+					 EpocEngineHelper.hasFeatureVariantKeyword(buildConfig.getCarbideProject(), path)) {
+					
+					buildPlatform = buildConfig.getPlatformString().toLowerCase();
+					
+				} else {
+					buildPlatform = buildConfig.getBasePlatformForVariation().toLowerCase();
+				}
+				
 				argsList.clear();
 				argsList.add(LIBRARY_CMD);
-				argsList.add(buildConfig.getPlatformString().toLowerCase());
+				argsList.add(buildPlatform);
 				argsList.add(path.removeFileExtension().lastSegment());
 				
 				for (String arg : buildConfig.getBuildArgumentsInfo().getAbldLibraryArgs().split(" ")) {
@@ -1297,9 +1329,20 @@
 
 			// run abld resource platform target for each component
 			for (IPath path : normalMakMakePaths) {
+				
+				String buildPlatform = "";
+				if ( buildConfig.getPlatformString().startsWith(ISymbianBuildContext.ARMV5_PLATFORM) &&
+					 EpocEngineHelper.hasFeatureVariantKeyword(buildConfig.getCarbideProject(), path)) {
+					
+					buildPlatform = buildConfig.getPlatformString().toLowerCase();
+					
+				} else {
+					buildPlatform = buildConfig.getBasePlatformForVariation().toLowerCase();
+				}
+				
 				argsList.clear();
 				argsList.add(RESOURCE_CMD);
-				argsList.add(buildConfig.getPlatformString().toLowerCase());
+				argsList.add(buildPlatform);
 				argsList.add(buildConfig.getTargetString().toLowerCase());
 				argsList.add(path.removeFileExtension().lastSegment());
 				
@@ -1319,9 +1362,20 @@
 
 			// run abld target platform target for each component
 			for (IPath path : normalMakMakePaths) {
+				
+				String buildPlatform = "";
+				if ( buildConfig.getPlatformString().startsWith(ISymbianBuildContext.ARMV5_PLATFORM) &&
+					 EpocEngineHelper.hasFeatureVariantKeyword(buildConfig.getCarbideProject(), path)) {
+					
+					buildPlatform = buildConfig.getPlatformString().toLowerCase();
+					
+				} else {
+					buildPlatform = buildConfig.getBasePlatformForVariation().toLowerCase();
+				}
+				
 				argsList.clear();
 				argsList.add(TARGET_CMD);
-				argsList.add(buildConfig.getPlatformString().toLowerCase());
+				argsList.add(buildPlatform);
 				argsList.add(buildConfig.getTargetString().toLowerCase());
 				argsList.add(path.removeFileExtension().lastSegment());
 				
@@ -1340,9 +1394,19 @@
 			
 			// run abld final platform target for each component
 			for (IPath path : normalMakMakePaths) {
+				String buildPlatform = "";
+				if ( buildConfig.getPlatformString().startsWith(ISymbianBuildContext.ARMV5_PLATFORM) &&
+					 EpocEngineHelper.hasFeatureVariantKeyword(buildConfig.getCarbideProject(), path)) {
+					
+					buildPlatform = buildConfig.getPlatformString().toLowerCase();
+					
+				} else {
+					buildPlatform = buildConfig.getBasePlatformForVariation().toLowerCase();
+				}
+				
 				argsList.clear();
 				argsList.add(FINAL_CMD);
-				argsList.add(buildConfig.getPlatformString().toLowerCase());
+				argsList.add(buildPlatform);
 				argsList.add(buildConfig.getTargetString().toLowerCase());
 				argsList.add(path.removeFileExtension().lastSegment());
 				
@@ -1383,10 +1447,21 @@
 
 			// run abld library platform for each component
 			for (IPath path : testMakMakePaths) {
+				
+				String buildPlatform = "";
+				if ( buildConfig.getPlatformString().startsWith(ISymbianBuildContext.ARMV5_PLATFORM) &&
+					 EpocEngineHelper.hasFeatureVariantKeyword(buildConfig.getCarbideProject(), path)) {
+					
+					buildPlatform = buildConfig.getPlatformString().toLowerCase();
+					
+				} else {
+					buildPlatform = buildConfig.getBasePlatformForVariation().toLowerCase();
+				}
+				
 				argsList.clear();
 				argsList.add(TEST_CMD);
 				argsList.add(LIBRARY_CMD);
-				argsList.add(buildConfig.getPlatformString().toLowerCase());
+				argsList.add(buildPlatform);
 				argsList.add(path.removeFileExtension().lastSegment());
 				
 				for (String arg : buildConfig.getBuildArgumentsInfo().getAbldLibraryArgs().split(" ")) {
@@ -1405,10 +1480,21 @@
 
 			// run abld resource platform target for each component
 			for (IPath path : testMakMakePaths) {
+				
+				String buildPlatform = "";
+				if ( buildConfig.getPlatformString().startsWith(ISymbianBuildContext.ARMV5_PLATFORM) &&
+					 EpocEngineHelper.hasFeatureVariantKeyword(buildConfig.getCarbideProject(), path)) {
+					
+					buildPlatform = buildConfig.getPlatformString().toLowerCase();
+					
+				} else {
+					buildPlatform = buildConfig.getBasePlatformForVariation().toLowerCase();
+				}
+				
 				argsList.clear();
 				argsList.add(TEST_CMD);
 				argsList.add(RESOURCE_CMD);
-				argsList.add(buildConfig.getPlatformString().toLowerCase());
+				argsList.add(buildPlatform);
 				argsList.add(buildConfig.getTargetString().toLowerCase());
 				argsList.add(path.removeFileExtension().lastSegment());
 				
@@ -1428,10 +1514,21 @@
 
 			// run abld target platform target for each component
 			for (IPath path : testMakMakePaths) {
+				
+				String buildPlatform = "";
+				if ( buildConfig.getPlatformString().startsWith(ISymbianBuildContext.ARMV5_PLATFORM) &&
+					 EpocEngineHelper.hasFeatureVariantKeyword(buildConfig.getCarbideProject(), path)) {
+					
+					buildPlatform = buildConfig.getPlatformString().toLowerCase();
+					
+				} else {
+					buildPlatform = buildConfig.getBasePlatformForVariation().toLowerCase();
+				}
+				
 				argsList.clear();
 				argsList.add(TEST_CMD);
 				argsList.add(TARGET_CMD);
-				argsList.add(buildConfig.getPlatformString().toLowerCase());
+				argsList.add(buildPlatform);
 				argsList.add(buildConfig.getTargetString().toLowerCase());
 				argsList.add(path.removeFileExtension().lastSegment());
 				
@@ -1450,10 +1547,21 @@
 
 			// run abld final platform target for each component
 			for (IPath path : testMakMakePaths) {
+				
+				String buildPlatform = "";
+				if ( buildConfig.getPlatformString().startsWith(ISymbianBuildContext.ARMV5_PLATFORM) &&
+					 EpocEngineHelper.hasFeatureVariantKeyword(buildConfig.getCarbideProject(), path)) {
+					
+					buildPlatform = buildConfig.getPlatformString().toLowerCase();
+					
+				} else {
+					buildPlatform = buildConfig.getBasePlatformForVariation().toLowerCase();
+				}
+				
 				argsList.clear();
 				argsList.add(TEST_CMD);
 				argsList.add(FINAL_CMD);
-				argsList.add(buildConfig.getPlatformString().toLowerCase());
+				argsList.add(buildPlatform);
 				argsList.add(buildConfig.getTargetString().toLowerCase());
 				argsList.add(path.removeFileExtension().lastSegment());
 				
@@ -1504,10 +1612,10 @@
 		if (0 == cleanLevel) {
 			abldCleanCmd = CLEAN_CMD;
 		}
-
+		
 		// clean the normal components if there are any
 		if (normalMakMakePaths.size() > 0) {
-
+			
 			List<String> argsList = new ArrayList<String>();
 			argsList.add(abldCleanCmd);
 			argsList.add(buildConfig.getPlatformString().toLowerCase());