cleanup of build properties to fix index not being built RCL_2_4
authorfturovic <frank.turovich@nokia.com>
Thu, 01 Apr 2010 13:05:44 -0500
branchRCL_2_4
changeset 1150 a30849a92e2d
parent 1146 77fe575a3528
child 1151 bd764b5a6548
cleanup of build properties to fix index not being built
builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/builder/project/ICarbideProjectInfo.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/CarbideProjectInfo.java
builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideProjectModifier.java
builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideSBSv2Builder.java
builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/ui/BuildSettingsUI.java
builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/ui/CarbideCPPProjectSettingsPage.java
builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/ui/messages.properties
connectivity/com.nokia.carbide.remoteConnections.discovery.pccs/src/com/nokia/carbide/remoteconnections/discovery/pccs/pccsnative/PCCSConnection.java
core/com.nokia.carbide.cpp.doc.user/build.properties
core/com.nokia.carbide.cpp.doc.user/html/images/utf.png
core/com.nokia.carbide.cpp.doc.user/html/index.xml
core/com.nokia.carbide.cpp.doc.user/plugin.xml
core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/api/sdk/SBSv2Utils.java
core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/api/sdk/SymbianBuildContext.java
core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/sdk/core/model/SymbianSDK.java
core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/sdk/core/ISymbianBuildContext.java
core/com.nokia.carbide.cpp.sdk.ui/src/com/nokia/carbide/cpp/internal/api/sdk/ui/SBSv2PlatformFilterComposite.java
core/com.nokia.carbide.cpp/carbide_ide.target
--- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/builder/project/ICarbideProjectInfo.java	Wed Mar 31 13:19:37 2010 -0500
+++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/builder/project/ICarbideProjectInfo.java	Thu Apr 01 13:05:44 2010 -0500
@@ -298,5 +298,12 @@
 	 */
 	public String extraSBSv2Args();
 	
-	
+	/**
+	 * Appends arbitrary text to a default Carbide/Raptor configuration (the -c parameter). The default name is always given, e.g. armv5_urel, but users can 
+	 * append whatever they want to change the behavior of the build. 
+	 * @return the string to append the text to for the Raptor -c parameter
+	 * 
+	 * @since 2.6
+	 */
+	public String buildConfigAppender();
 }
--- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideBuildConfiguration.java	Wed Mar 31 13:19:37 2010 -0500
+++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideBuildConfiguration.java	Thu Apr 01 13:05:44 2010 -0500
@@ -69,7 +69,7 @@
 	
 
 	public CarbideBuildConfiguration(IProject project, ISymbianBuildContext context) {
-		super(context.getSDK(), context.getPlatformString(), context.getTargetString());
+		super(context.getSDK(), context.getPlatformString(), context.getTargetString(), context.getSBSv2Alias());
 		projectTracker = new TrackedResource(project);
 		sisBuilderInfoList = new ArrayList<ISISBuilderInfo>(0);
 		envVarsInfo = new EnvironmentVarsInfo2(project, context);
@@ -287,6 +287,10 @@
 	public int getErrorParserId(){
 		String plat = this.getPlatformString();
 		
+		if (this.getSBSv2Alias() != null && this.getSBSv2Alias().toUpperCase().contains(ISymbianBuildContext.GCCE_PLATFORM)){
+			return ERROR_PARSERS_GCCE;
+		}
+		
 		if (plat.equals(ISymbianBuildContext.EMULATOR_PLATFORM)){
 			return ERROR_PARSERS_WINSCW;
 		} else if (plat.startsWith("ARMV")){
--- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideProjectInfo.java	Wed Mar 31 13:19:37 2010 -0500
+++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideProjectInfo.java	Thu Apr 01 13:05:44 2010 -0500
@@ -61,7 +61,8 @@
 	protected boolean overrideMakeEngine;
 	protected String makeEngineToUse;
 	protected String extraSBSv2Args;
-
+	protected String buildAliasAppender;
+	
 	// for internal plugin use
 	public static final String OVERRIDE_WORKSPACE_SETTINGS_KEY = "overrideWorkspaceSettings"; //$NON-NLS-1$
 	public static final String CLEAN_LEVEL = "cleanLevel"; //$NON-NLS-1$
@@ -79,7 +80,7 @@
 	public static final String OVERRIDE_MAKE_ENGINE = "overrideMakeEngine"; //$NON-NLS-1$
 	public static final String MAKE_ENGINE_TO_USE = "makeEngineToUse"; //$NON-NLS-1$
 	public static final String EXTRA_SBSV2_ARGS = "extraSBSv2Args"; //$NON-NLS-1$
-
+	public static final String BUILD_ALIAS_APPENDER = "buildAliasAppendText"; //$NON-NLS-1$
 	
 	public CarbideProjectInfo(IProject project) {
 		this.projectTracker = new TrackedResource(project);
@@ -229,6 +230,10 @@
 					if (orig != null){
 						extraSBSv2Args = orig;
 					}
+					orig = storage.getAttribute(BUILD_ALIAS_APPENDER);
+					if (orig != null){
+						buildAliasAppender = orig;
+					}
 					 
 				}
 			}
@@ -262,6 +267,7 @@
 		overrideMakeEngine = BuilderPreferencePage.overrideDefaultMakeEngine();
 		makeEngineToUse = BuilderPreferencePage.makeEngine();
 		extraSBSv2Args = BuilderPreferencePage.extraSBSv2ArgsTextStore();
+		buildAliasAppender = ""; // project setting only
 	}
 
 	public List<ICarbideBuildConfiguration> getBuildConfigurations() {
@@ -527,6 +533,11 @@
 		return BuilderPreferencePage.extraSBSv2ArgsTextStore();
 	}
 	
+	public String buildConfigAppender() {
+		// This is a project setting only, i.e. no workspace setting to override
+		return buildAliasAppender;
+	}
+	
 	/*
 	 * The following methods are non-API
 	 */
@@ -585,4 +596,8 @@
 	public String extraSBSv2ArgsProjectValue() {
 		return extraSBSv2Args;
 	}
+	
+	public String buildAliasAppendTextValue() {
+		return buildAliasAppender;
+	}
 }
--- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideProjectModifier.java	Wed Mar 31 13:19:37 2010 -0500
+++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideProjectModifier.java	Thu Apr 01 13:05:44 2010 -0500
@@ -219,6 +219,8 @@
 						makeEngineToUse = settingValue;
 					} else if (settingName.equals(EXTRA_SBSV2_ARGS)) {
 						extraSBSv2Args = settingValue;
+					} else if (settingName.equals(BUILD_ALIAS_APPENDER)) {
+						buildAliasAppender = settingValue;
 					}
 					
 					// now write it to the file
@@ -308,6 +310,7 @@
 					storage.setAttribute(OVERRIDE_MAKE_ENGINE, overrideMakeEngine ? "true" : "false");
 					storage.setAttribute(MAKE_ENGINE_TO_USE, makeEngineToUse);
 					storage.setAttribute(EXTRA_SBSV2_ARGS, extraSBSv2Args);
+					storage.setAttribute(BUILD_ALIAS_APPENDER, buildAliasAppender);
 				}
 			}
 		} catch (CoreException e) {
--- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideSBSv2Builder.java	Wed Mar 31 13:19:37 2010 -0500
+++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/CarbideSBSv2Builder.java	Thu Apr 01 13:05:44 2010 -0500
@@ -91,9 +91,9 @@
 		return true;
 	}
     
+    /** Get the build-able configuration from the command line (i.e. build alias). This is passed after the sbs -c parameter */ 
     protected String getConfigName(ICarbideBuildConfiguration buildConfig) {
-    	//TODO is this sufficient?
-    	return buildConfig.getPlatformString().toLowerCase() + "_" + buildConfig.getTargetString().toLowerCase(); //$NON-NLS-1$
+    	return buildConfig.getSBSv2Alias(); 
     }
     
 	public boolean buildComponent(ICarbideBuildConfiguration buildConfig, IPath componentPath, boolean isTest, CarbideCommandLauncher launcher, IProgressMonitor monitor) {
@@ -501,9 +501,17 @@
 		args.add(cpi.getAbsoluteBldInfPath().toOSString());
 		args.add("-c"); //$NON-NLS-1$
 		String configName = getConfigName(buildConfig);
+		if (configName == null){ 
+			configName = "error_retrieving_sbs_config"; 
+		}
 		if (isTest) {
 			configName = configName + ".test"; //$NON-NLS-1$
 		}
+		
+		if (cpi.buildConfigAppender() != null && cpi.buildConfigAppender().length() > 0){
+			configName = configName + cpi.buildConfigAppender();
+		}
+		
 		args.add(configName);
 		
 		//TODO this causes output to go to stdout, but only at the end of the build.  should we specify a logfile name and tail the file?
--- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/ui/BuildSettingsUI.java	Wed Mar 31 13:19:37 2010 -0500
+++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/ui/BuildSettingsUI.java	Thu Apr 01 13:05:44 2010 -0500
@@ -65,6 +65,8 @@
 	private Text makeEngineText;
 	private Label extraArgsLabel;
 	private Text  extraArgsText;
+	private Label buildAliasLabel;     // project setting only
+	private Text  buildAliasText; // project setting only
 	
 	public BuildSettingsUI(Shell shell, boolean wantsSBSv2, boolean projectSetting) {
 		this.shell = shell;
@@ -256,6 +258,17 @@
 		extraArgsText.setToolTipText(Messages.getString("BuildSettingsUI.ExtraArgsToolTipText")); //$NON-NLS-1$
 		extraArgsText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
 		
+		if (projectSetting){
+			buildAliasLabel = new Label(content, SWT.NONE);
+			buildAliasLabel.setText(Messages.getString("BuildSettingsUI.AlliasAppendLabel")); //$NON-NLS-1$
+			buildAliasLabel.setToolTipText(Messages.getString("BuildSettingsUI.AlliasAppendToolTipText"));  //$NON-NLS-1$
+			GridData buildAliasGridData = new GridData();
+			buildAliasLabel.setLayoutData(buildAliasGridData);
+			
+			buildAliasText = new Text(content, SWT.BORDER);
+			buildAliasText.setToolTipText(Messages.getString("BuildSettingsUI.AlliasAppendToolTipText")); //$NON-NLS-1$
+			buildAliasText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
+		}
 		overrideDefaultMakeEngineCheck = new Button(content, SWT.CHECK);
 		overrideDefaultMakeEngineCheck.setText(Messages.getString("BuildSettingsUI.OverrideMakeEngineLabel")); //$NON-NLS-1$
 		overrideDefaultMakeEngineCheck.setToolTipText(Messages.getString("BuildSettingsUI.OverrideMakeEngineToolTip")); //$NON-NLS-1$
@@ -457,6 +470,14 @@
 		extraArgsText.setText(args);
 	}
 	
+	public String getBuildAliasAppendText() {
+		return buildAliasText.getText();
+	}
+
+	public void setBuildAliasAppendText(String args) {
+		buildAliasText.setText(args);
+	}
+	
 	public boolean getDontPromtTrackDeps(){
 		if (!projectSetting){
 			return dontCheckForExternalDependencies.getSelection();
--- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/ui/CarbideCPPProjectSettingsPage.java	Wed Mar 31 13:19:37 2010 -0500
+++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/ui/CarbideCPPProjectSettingsPage.java	Thu Apr 01 13:05:44 2010 -0500
@@ -273,6 +273,8 @@
 				cpi.writeProjectSetting(CarbideProjectInfo.MAKE_ENGINE_TO_USE, buildSettingsUI.getMakeEngine());
 				
 				cpi.writeProjectSetting(CarbideProjectInfo.EXTRA_SBSV2_ARGS, buildSettingsUI.getExtraSBSv2Args());
+				
+				cpi.writeProjectSetting(CarbideProjectInfo.BUILD_ALIAS_APPENDER, buildSettingsUI.getBuildAliasAppendText());
 			}
 
 			List<String> checkedComponents = getCheckedComponentFilenames();
@@ -328,6 +330,7 @@
         		buildSettingsUI.setOverrideDefaultMakeEngine(cpi.overrideMakeEngineProjectValue());
         		buildSettingsUI.setMakeEngineText(cpi.makeEngineProjectValue());
         		buildSettingsUI.setExtraSBSv2Args(cpi.extraSBSv2ArgsProjectValue());
+        		buildSettingsUI.setBuildAliasAppendText(cpi.buildAliasAppendTextValue());
     		}
     		
     		initMMPSelectionUI(cpi);
--- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/ui/messages.properties	Wed Mar 31 13:19:37 2010 -0500
+++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/ui/messages.properties	Thu Apr 01 13:05:44 2010 -0500
@@ -98,6 +98,8 @@
 BuildSettingsUI.ExtraArgsLabelToolTip=Pass additional arguments to the sbs command-line.
 BuildSettingsUI.ExtraArgsText=Additional SBSv2 arguments
 BuildSettingsUI.ExtraArgsToolTipText=Add any extra arguments to be passed to sbs.bat here.
+BuildSettingsUI.AlliasAppendLabel=Append to Build Configuration
+BuildSettingsUI.AlliasAppendToolTipText=Appends the text to the default -c SBS parameter exactly as entered in the edit box.
 BuildSettingsUI.KeepGoingLabel=Keep going
 BuildSettingsUI.KeepGoingToolTip=Continue building, even if some build commands fail
 BuildSettingsUI.MakeEngineLabel=Make engine
--- a/connectivity/com.nokia.carbide.remoteConnections.discovery.pccs/src/com/nokia/carbide/remoteconnections/discovery/pccs/pccsnative/PCCSConnection.java	Wed Mar 31 13:19:37 2010 -0500
+++ b/connectivity/com.nokia.carbide.remoteConnections.discovery.pccs/src/com/nokia/carbide/remoteconnections/discovery/pccs/pccsnative/PCCSConnection.java	Thu Apr 01 13:05:44 2010 -0500
@@ -1047,6 +1047,8 @@
 				}
 		        if (DEBUG) System.out.println("getAllDeviceUSBPersonalities all devices read"); //$NON-NLS-1$
 				dwResult = library.UPAPI_FreeDeviceDescriptor(numUSBDevicesFound, pDeviceDescriptor);
+				if (DEBUG)
+					System.out.printf("UPAPI_FreeDeviceDescriptor dwResult = %x\n", dwResult); //$NON-NLS-1$
 			} else {
 				apiError = true;
 				if (DEBUG)
@@ -1077,12 +1079,14 @@
 
 			// get all the supported personalities for this device
 			apiError = getSupportedPersonalities(deviceInfo, pid, persDesc, numPers);
+			dwResult = library.UPAPI_FreePersonalityDescriptors(persDesc);
+			if (DEBUG)
+				System.out.printf("UPAPI_FreePersonalityDescriptors dwResult = %x\n", dwResult); //$NON-NLS-1$
 		} else {
 			apiError = true;
 			if (DEBUG)
 				System.out.printf("UPAPI_GetPersonalityDescriptors dwResult = %x\n", dwResult); //$NON-NLS-1$
 		}
-		dwResult = library.UPAPI_FreePersonalityDescriptors(persDesc);
 		if (apiError == false) {
 			if (DEBUG) System.out.println("getAllDeviceUSBPersonalities deviceInfo added"); //$NON-NLS-1$
 			p.add(deviceInfo);
--- a/core/com.nokia.carbide.cpp.doc.user/build.properties	Wed Mar 31 13:19:37 2010 -0500
+++ b/core/com.nokia.carbide.cpp.doc.user/build.properties	Thu Apr 01 13:05:44 2010 -0500
@@ -1,22 +1,12 @@
-bin.includes = plugin.xml,\
+bin.includes = book.css,\
                debuggerTOC.xml,\
                intro/,\
-               index.xml,\
                tocCarbide.xml,\
-               book.css,\
-               tocRelease.xml,\
-               src.includes = META-INF/,\
-               debuggerTOC.xml,\
+               plugin.xml,\
+               html/
+src.includes = tocCarbide.xml,\
                plugin.xml,\
-               index.xml,\
-               tocRelease.xml,\
-               tocCarbide.xml,\
-               book.css,\
-               META-INF/,\
-               html/
-src.includes = book.css,\
+               intro/,\
+               html/,\
                debuggerTOC.xml,\
-               html/,\
-               intro/,\
-               tocCarbide.xml,\
-               plugin.xml
+               book.css
Binary file core/com.nokia.carbide.cpp.doc.user/html/images/utf.png has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/core/com.nokia.carbide.cpp.doc.user/html/index.xml	Thu Apr 01 13:05:44 2010 -0500
@@ -0,0 +1,760 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?NLS TYPE="org.eclipse.help.index"?>
+<index>
+
+<!-- A -->
+
+    <entry keyword="Active Build Configuration">
+       <topic href="html/concepts/build_configurations.htm"/>
+    </entry>
+
+    <entry keyword="AIF">
+		<topic label="editor"	href="html/reference/AIFEditor.html"/>
+    	<topic label="file"		href="html/concepts/AIFDefWizard.html"/>
+	</entry>
+
+    <entry keyword="ARM registers">
+       <topic href="html/concepts/arm_registers.htm"/>
+	</entry>
+
+    <entry keyword="Attaching to a Symbian OS Process ">
+	   <topic href="html/tasks/processes/attach_debugger_to_process.htm" label="Attaching debugger to Symbian OS Process"/>
+	</entry>
+
+<!-- B -->
+
+	<entry keyword="Bitmaps (Importing)">
+	   <topic href="html/reference/wnd_import_bitmaps.htm"/>
+	</entry>
+
+	<entry keyword="Bluetooth setup">
+	   <topic href="html/tasks/trk/trk_connection_bluetooth.htm" label="TRK"/>
+	</entry>
+	
+    <entry keyword="Breakpoints">
+       <topic href="html/concepts/breakpoints.htm"/>
+    </entry>
+
+	<entry keyword="breakpoints">
+	   <topic href="html/debugger/breakpoints/breakpoints.htm"/>
+	   <topic href="html/debugger/breakpoints/conditional_breakpoints.htm"/>
+	   <topic href="html/debugger/breakpoints/exporting_breakpoints.htm"/>
+	   <topic href="html/debugger/breakpoints/importing_breakpoints.htm"/>
+	   <topic href="html/debugger/breakpoints/properties_breakpoints.htm"/>
+	   <topic href="html/debugger/breakpoints/resolving_breakpoints.htm"/>
+	   <topic href="html/debugger/breakpoints/temporary_breakpoints.htm"/>
+	   <topic href="html/debugger/breakpoints/toggling_breakpoints.htm"/>
+	   <topic href="html/debugger/breakpoints/viewing_breakpoints.htm"/>
+	</entry>
+
+	<!--
+    <entry keyword="Breakpoint templates">
+       <topic href="html/concepts/working_with_bp_templates.htm"/>
+    </entry>
+	-->
+	
+	<entry keyword="Breakpoints view">
+	   <topic href="html/reference/view_breakpoints.htm"/>
+	</entry>
+
+	<entry keyword="build">
+	   <topic href="html/projects/launch/wiz_new_launch_config.htm"/>
+	   <topic href="html/projects/launch/page_main.htm"/>
+	</entry>
+
+	<entry keyword="Build preference panel">
+	   <topic href="html/reference/wnd_build_prefs.htm"/>
+	</entry>
+
+	<entry keyword="Build preference panel">
+	   <topic href="html/reference/wnd_build_prefs.htm"/>
+	</entry>
+
+    <entry keyword="Build All Targets">
+       <topic href="html/reference/menus/build_all_targets.htm"/>
+    </entry>
+
+    <entry keyword="Build Target Only">
+		<topic href="html/reference/menus/build_target.htm" />
+    </entry>
+
+	<entry keyword="build configuration">
+	   <topic href="html/concepts/build_configurations.htm" />
+	   <topic href="html/tasks/projects/prj_new_build_config.htm" />
+	   <topic href="html/tasks/projects/prj_set_build_tgt.htm" />
+	</entry>
+
+    <entry keyword="Build PKG File">
+       <topic href="html/reference/menus/build_pkg_file.htm"/>
+    </entry>
+
+    <entry keyword="Build Symbian Component">
+       <topic href="html/reference/menus/build_symbian_comp.htm"/>
+    </entry>
+
+    <entry keyword="Build Targets">
+       <topic href="html/concepts/build_targets.htm"/>
+    </entry>
+
+	<entry keyword="Building Projects">
+	   <topic href="html/tasks/projects/prj_build.htm"/>
+	</entry>
+
+	<entry keyword="Build Options Selection">
+	   <topic href="html/projects/launch/wiz_new_launch_config.htm"/>
+	   <topic href="html/projects/launch/page_main.htm"/>
+	</entry>
+
+
+<!-- C -->
+
+	<entry keyword="Carbide.c++ News View">
+		<topic href="html/reference/view_carbide_news.htm" />
+		<topic href="html/reference/prefs_carbide_news.htm" />
+	</entry>
+
+	<entry keyword="C/C++ Projects View">
+	   <topic href="html/reference/view_cpp_projects.htm"/>
+	</entry>
+
+	<entry keyword="Carbide">
+       <topic label="build configurations"		href="html/reference/build_properties/pane_build_config.htm"/>
+       <topic label="project settings"			href="html/reference/build_properties/pane_project_settings.htm"/>
+	</entry>
+
+
+	<entry keyword="Carbide.c++ Debugger">
+	   <topic href="html/concepts/debugger_about.htm"/>
+	</entry>
+
+	<entry keyword="Carbide.c++ Perspective">
+	   <topic href="html/concepts/SymbianPerspective.html"/>
+	</entry>
+
+	<entry keyword="clean">
+	   <topic href="html/reference/wnd_build_prefs.htm"/>
+	   <topic href="html/tasks/projects/prj_clean.htm"/>
+       <topic href="html/reference/menus/clean_symbian_comp.htm"/>
+	</entry>
+
+
+	<entry keyword="Command-Line Tools">
+	   <topic href="html/tasks/projects/prj_build_cmd_line.htm"/>
+	</entry>
+
+	<entry keyword="Common Debugging Actions">
+	   <topic href="html/concepts/common_debug_actions.htm"/>
+	</entry>
+
+	<entry keyword="Compile Source">
+	   <topic href="html/reference/menus/compile_source.htm"/>
+	</entry>
+
+	<entry keyword="Concurrent Versions System">
+	   <topic href="html/concepts/cvs.htm"/>
+	</entry>
+
+	<entry keyword="Connection Pane">
+	   <topic href="html/reference/trk/panel_trk_connection.htm"/>
+	</entry>
+
+	<entry keyword="Console View">
+	   <topic href="html/reference/view_log.htm"/>
+	</entry>
+
+	<entry keyword="Context Menus">
+	   <topic href="html/concepts/contextual_menus.htm"/>
+	</entry>
+
+	<entry keyword="concurrent builds">
+	   <topic href="html/reference/wnd_build_prefs.htm"/>
+	</entry>
+
+	<entry keyword="Controlling Program Execution">
+	   <topic href="html/concepts/working_with_programs.htm"/>
+	</entry>
+
+	<entry keyword="creating">
+       <topic label="AIF files"		href="html/tasks/AppInfoFile.html" />
+       <topic label="MBM files"		href="html/tasks/Multi-BitmapFile.html" />
+	   <topic label="projects"		href="html/tasks/CreatingNewProjects.html"/>
+       <topic label="SIS files"		href="html/tasks/projects/prj_creating_sis_file.htm"/>
+       <topic href="html/qt_help/qt_creating_projs_01.htm"/>
+	</entry>
+
+
+<!-- D -->
+	
+	<!--
+	<entry keyword="Data Viewer Plug-ins">
+	   <topic href="html/concepts/data_viewer_plugins.htm"/>
+	</entry>
+	-->
+	
+	<entry keyword="Debug Preferences">
+	   <topic href="html/reference/wnd_debugger_prefs.htm"/>
+	</entry>
+
+	<entry keyword="debugger">
+	   <topic href="html/concepts/working_with_data.htm" label="Working with Debugger Data"/>
+	   <topic href="html/reference/projects/launch/emulation.htm" label="Emulator Launch Configuration" />
+	   <topic href="html/reference/projects/launch/run_mode.htm" label="Application TRK Launch Configuration" />
+	   <topic href="html/reference/projects/launch/stop_mode.htm" label="System TRK Launch Configuration" />
+	   <topic href="html/reference/debugger_settings.htm" label="Debugger Settings"/>
+	</entry>
+	
+	<entry keyword="debugging">
+	   <topic label="Debugging a Program" href="html/tasks/debugger/work_debug_act_debug.htm" />
+	   <topic label="Debugging Applications" href="html/tasks/projects/prj_debug_console.htm" />
+	   <topic href="html/tasks/projects/prj_debug_dlls.htm"/>
+	   <topic label="Debugging Multiple Projects" href="html/tasks/projects/prj_debug_multiple_projects.htm" />
+	   <topic href="html/tasks/start/carbide_debugging.htm" />
+	</entry>
+
+    <entry keyword="Debugging in ROM">
+       <topic href="html/tasks/projects/prj_debug_rom.htm"/>
+	</entry>
+
+	<entry keyword="debug agent">
+	   <topic href="html/concepts/trk.htm" label="On-device Debugging" />
+	   <topic href="html/tasks/trk/trk_overview.htm" label="TRK Overview" />
+	   <topic href="html/tasks/trk/trk_install_pcsuite.htm" label="PC Suite"/>
+	   <topic href="html/tasks/trk/trk_install_bluetooth.htm" label="Bluetooth"/>
+	   <topic href="html/tasks/trk/trk_install_usb.htm" label="USB"/>
+	</entry>
+
+	<entry keyword="Debug Perspective">
+	   <topic href="html/reference/perspective_debug.htm"/>
+	</entry>
+
+	<entry keyword="Debug view">
+	   <topic href="html/reference/view_debug.htm"/>
+	</entry>
+
+	<entry keyword="Debug window">
+	   <topic href="html/reference/wnd_debug_configuration.htm" label="Debug window" />
+	   <topic href="html/concepts/launch_configuration.htm" label="Launch Configurations" />
+	   <topic href="html/tasks/projects/wiz_new_launch_config.htm" label="New Launch Configuration" />
+	</entry>
+
+	<entry keyword="dependency tracking">
+	   <topic href="html/reference/wnd_build_prefs.htm"/>
+	</entry>
+
+	<entry keyword="Disassembly view">
+	   <topic href="html/reference/view_disassembly.htm"/>
+	</entry>
+
+	<entry keyword="DLL">
+	   <topic href="html/tasks/projects/prj_debug_dlls.htm"/>
+	   <topic href="html/concepts/SampleExampleProjectCreate.html"/>
+	   <topic label="example" 		href="html/concepts/SampleExampleProjectCreate.html"/>
+	</entry>	
+
+<!-- E -->
+
+	<entry keyword="emulator">
+	   <topic href="html/concepts/emulators.htm"/>
+	   <topic href="html/reference/wnd_build_prefs.htm"/>
+	</entry>	
+
+    <entry keyword="Environment variables">
+       <topic href="html/reference/build_properties/pane_build_config_env.htm"/>
+	</entry>
+
+	<entry keyword="Executables">
+	   <topic href="html/reference/trk/panel_trk_exes.htm"/>
+	</entry>
+
+	<entry keyword="External Build">
+	   <topic href="html/concepts/ext_build_support.htm"/>
+	</entry>
+
+	<entry keyword="Expressions">
+	   <topic href="html/debugger/variables/adding_expressions.htm" />
+	   <topic href="html/debugger/variables/editing_expressions.htm" />
+	   <topic href="html/debugger/variables/viewing_expressions.htm" />
+	</entry>
+
+	<entry keyword="Expressions view">
+	   <topic href="html/reference/view_expressions.htm"/>
+	</entry>
+
+	<entry keyword="Executables view">
+	   <topic href="html/reference/view_executables.htm"/>
+	</entry>
+
+
+<!-- F -->
+
+	<entry keyword="File Transfer Pane">
+	   <topic href="html/reference/trk/panel_trk_file_transfer.htm"/>
+	</entry>
+
+	<entry keyword="FPU Registers">
+	   <topic href="html/concepts/fpu_registers.htm"/>
+	</entry>
+
+	<entry keyword="Freezing DLL Projects">
+	   <topic href="html/tasks/projects/prj_freeze_def_file.htm"/>
+	</entry>
+
+<!-- G -->
+
+	<entry keyword="General Registers">
+	   <topic href="html/concepts/general_registers.htm"/>
+	</entry>
+
+	<entry keyword="Global Variables Window">
+	   <topic href="html/reference/view_global_variables.htm"  label="Global Variables Window" />
+	</entry>
+
+<!-- H -->
+
+	<entry keyword="HelloCarbide">
+	   <topic href="html/tasks/start/carbide_example.htm" label="First Application Example"/>
+	   <topic href="html/tasks/start/carbide_example_trk.htm" label="On-Device Run Mode Example"/>
+	</entry>
+
+	<entry keyword="Hints and Tips">
+	   <topic href="html/hints_tips.htm"/>
+	</entry>
+
+	<entry keyword="Host Registers">
+	   <topic href="html/concepts/host_registers.htm"/>
+	</entry>
+
+<!-- I -->
+
+	<entry keyword="Importing">
+	   <topic href="html/tasks/ImportingProjects.html"/>
+	   <topic href="html/tasks/projects/prj_import_exe.htm"/>
+       <topic href="html/qt_help/qt_importing_projs_01.htm"/>
+	</entry>
+
+	<entry keyword="INF Editor">
+	   <topic href="html/reference/INF_Editor.html" />
+	   <topic href="html/reference/INF_Editor_exports.html" />
+	   <topic href="html/reference/INF_Editor_file.html" />
+	   <topic href="html/reference/INF_Editor_addedit_make.html" />
+	   <topic href="html/reference/INF_Editor_addedit_mmp.html" />
+	</entry>
+
+	<entry keyword="installation">
+	   <topic href="html/tasks/trk/trk_install_pcsuite.htm" label="PC Suite"/>
+	   <topic href="html/tasks/trk/trk_install_bluetooth.htm" label="Bluetooth"/>
+	   <topic href="html/tasks/trk/trk_install_usb.htm" label="USB"/>
+	</entry>
+
+	<entry keyword="Installation Pane">
+	   <topic href="html/reference/trk/panel_trk_installation.htm"/>
+	</entry>
+
+	<entry keyword="Installing On-device Debug Agents">
+	   <topic href="html/tasks/trk/trk_installation_instr.htm" label="Overview"/>
+	   <topic href="html/tasks/trk/trk_install_bluetooth.htm" label="Bluetooth"/>
+	   <topic href="html/tasks/trk/trk_install_usb.htm" label="USB"/>
+	</entry>
+
+<!-- J -->
+<!-- K -->
+<!-- L -->
+
+	<entry keyword="Launch Configuration">
+	   <topic href="html/concepts/launch_configuration.htm" label="Overview"/>
+	   <topic href="html/tasks/trk/trk_carbide_setup.htm" label="TRK Setup"/>
+	   <topic href="html/tasks/projects/prj_debug_config.htm" label="Creating"/>
+	</entry>
+
+	<entry keyword="Launch Configuration Filter">
+	   <topic href="html/reference/trk/panel_filter.htm"/>
+	</entry>
+
+	<entry keyword="Leavescan">
+	   <topic href="html/reference/leavescan_pref.html"/>
+	</entry>
+
+	<entry keyword="Leavescan Menu Command">
+	   <topic href="html/reference/menus/run_leavescan.htm"/>
+	</entry>
+
+<!-- M -->
+
+	<entry keyword="Main pane">
+	   <topic href="html/projects/launch/page_main.htm"/>
+	</entry>
+
+	<entry keyword="MBM Editor">
+       <topic href="html/reference/MBMEditor.html"/>
+	</entry>
+
+	<entry keyword="MBM File">
+       <topic href="html/concepts/MBMDefWizard.html"/>
+	</entry>
+
+	<entry keyword="memory">
+	   <topic href="html/concepts/working_with_memory.htm" />
+	   <topic href="html/tasks/memory/memory_monitor_adding.htm" label="Adding memory monitor"/>
+	   <topic href="html/tasks/memory/memory_monitor_removing.htm" label="Removing memory monitor"/>
+	   <topic href="html/tasks/memory/memory_rendering_adding.htm" label="Adding memory rendering pane"/>
+	   <topic href="html/tasks/memory/view_memory_show.htm" label="Opening memory view"/>
+	</entry>
+
+	<entry keyword="Memory Rendering Options">
+	   <topic href="html/reference/memory_rendering_options.htm"/>
+	</entry>
+
+	<entry keyword="Memory view">
+	   <topic href="html/reference/view_memory_wnd.htm"/>
+	</entry>
+
+	<entry keyword="menus">
+	   <topic label="Symbian OS C++ Class" href="html/reference/menus/new_symbian_class.htm" />
+	   <topic label="Symbian OS C++ Project" href="html/reference/menus/new_symbian_project.htm" />
+	   <topic href="html/reference/menus/open_cmd_window.htm" />
+	   <topic href="html/reference/menus/open_explorer_window.htm" />
+	   <topic href="html/reference/menus/s60_ui_designer.htm"/>
+		<topic href="html/reference/menus/run_codescanner.htm" />
+
+		<topic href="html/tasks/projects/prj_preprocess.htm" />
+
+		<topic href="html/tasks/projects/prj_build.htm" />
+		<topic href="html/tasks/projects/prj_clean.htm" />
+	
+		<topic href="html/reference/menus/build_all_targets.htm" />
+		<topic href="html/reference/menus/compile_source.htm" />		
+	
+		<topic href="html/reference/menus/build_symbian_comp.htm" />
+		<topic href="html/reference/menus/clean_symbian_comp.htm" />
+		<topic href="html/reference/menus/freeze_symbian_comp.htm" />
+	
+		<topic href="html/reference/menus/build_pkg_file.htm" />
+		<topic href="html/reference/ROM_build_settings.html" />
+
+   		<topic href="html/reference/menus/freeze_exports.htm" />
+	</entry>
+
+
+	<entry keyword="MIF Editor">
+	   <topic href="html/reference/view_mifdef_editor.htm"/>
+	</entry>
+
+	<entry keyword="MMP Editor">
+	   <topic href="html/reference/MMP_Editor.html" label="MMP Editor" />
+	   <topic href="html/reference/MMP_Editor_sources.html" label="Sources tab"/>
+	   <topic href="html/reference/MMP_Editor_libraries.html" label="Libraries tab"/>
+	   <topic href="html/reference/MMP_Editor_options.html" label="Options tab"/>
+	   <topic href="html/reference/MMP_Editor_mmp_tab.html" label="MMP File tab"/>
+	   <topic href="html/reference/MMP_Editor_resource_block.html" label="Resource Block"/>
+	</entry>
+	
+	<entry keyword="MMP Files">
+	   <topic href="html/concepts/mmpfiles.htm"/>
+	</entry>
+
+	<entry keyword="MMP Wizard">
+	   <topic href="html/reference/NewMMP_wizard.html"/>
+	</entry>
+
+	<entry keyword="Modify">
+	   <topic href="html/concepts/Modify.html"/>
+	</entry>
+
+	<entry keyword="Modifying Resources">
+	   <topic href="html/tasks/ModifyingResources.html"/>
+	</entry>
+
+	<entry keyword="Modules View">
+	   <topic href="html/reference/view_module_wnd.htm"/>
+	</entry>
+
+	<entry keyword="Multi-core Debugging">
+	   <topic href="html/concepts/work_mcore_debug.htm"/>
+	</entry>
+
+<!-- N -->
+<!-- O -->
+
+   <entry keyword="On-device Connections">
+   		<topic href="html/reference/trk/wnd_new_connection_wizard.htm" />
+     	<topic href="html/reference/trk/view_remote_connection.htm" />
+		<topic href="html/reference/trk/wnd_new_conn_wiz_edit.htm"/>
+  		<topic href="html/reference/trk/exporting_remote_conns.htm" />
+	</entry>
+
+<!-- P -->
+
+	<entry keyword=".pkg file symbols">
+	   <topic href="html/concepts/symbols_pkg.htm"/>
+	</entry>
+
+	<entry keyword="PKG and SIS Files">
+	   <topic href="html/tasks/projects/working_with_sis_pkg_files.htm"/>
+	</entry>
+
+    <entry keyword="Platform Filtering Preferences">
+        <topic href="html/tasks/sdks/sdk_platform_filter.htm"/>
+    </entry>
+
+    <entry keyword="preferences">
+		<topic href="html/reference/wnd_build_prefs.htm" />
+		<topic href="html/reference/wnd_debugger_prefs.htm" />
+		<topic href="html/reference/prefs_carbide_news.htm" />
+		<topic href="html/reference/leavescan_pref.html" />
+		<topic href="html/tasks/sdks/sdk_platform_filter.htm" />
+		<topic href="html/reference/SDKPreferences.html" />
+    </entry>
+
+	<entry keyword="Processes">
+	   <topic href="html/tasks/processes/attach_debugger_to_process.htm" label="Attaching debugger to Symbian OS Process"/>
+	</entry>
+
+    <entry keyword="Projects">
+       <topic href="html/concepts/Projects.html" label="Projects" />
+       <topic href="html/qt_help/qt_creating_projs_01.htm"/>
+       <topic href="html/qt_help/qt_importing_projs_01.htm"/>
+	</entry>
+
+    <entry keyword="Project and File Properties">
+	   <topic href="html/reference/ProjectPreferences.html"/>
+	</entry>
+
+	<entry keyword="Project Dependencies">
+	   <topic href="html/tasks/projects/prj_build_multi_projects.htm"/>
+	</entry>
+
+    <entry keyword="Project Updater">
+	   <topic href="html/reference/olderproject_updater.html"/>
+	</entry>
+
+
+<!-- Q -->
+
+    <entry keyword="Qt">
+       <topic href="html/qt_help/qt_creating_projs_01.htm"/>
+       <topic href="html/qt_help/qt_importing_projs_01.htm"/>
+       <topic href="html/qt_help/qt_perspectives.htm"/>
+       <topic href="html/qt_help/qt_pref_panel.htm"/>
+       <topic href="html/qt_help/qt_project_properties.htm"/>
+	</entry>
+
+<!-- R -->
+
+	<entry keyword="register">
+	   <topic href="html/tasks/start/carbide_register.htm"/>
+	</entry>
+
+	<entry keyword="registers">
+	   <topic href="html/concepts/registers.htm" label="Overview"/>
+	   <topic href="html/tasks/registers/mem_reg_changing.htm" label="Changing Values"/>
+	   <topic href="html/tasks/registers/mem_reg_data_views.htm" label="Changing Data Views"/>
+	   <topic href="html/tasks/registers/mem_reg_open_wnd.htm" label="Opening Registers View"/>
+	   <topic href="html/tasks/registers/mem_reg_viewing.htm" label="Expanding Groups"/>
+	</entry>
+
+	<entry keyword="Registers View">
+	   <topic href="html/reference/view_registers.htm"/>
+	</entry>
+
+	<entry keyword="Restarting Debugger">
+	   <topic href="html/tasks/debugger/work_debug_act_restart.htm"/>
+	</entry>
+
+	<entry keyword="Resuming Program Execution">
+	   <topic href="html/tasks/debugger/work_debug_act_resume.htm"/>
+	</entry>
+
+	<entry keyword="Requirements">
+	   <topic href="html/tasks/start/carbide_requirements.htm"/>
+	</entry>
+
+	<entry keyword="ROM Build Settings">
+	   <topic href="html/reference/ROM_build_settings.html"/>
+	</entry>
+
+	<entry keyword="Running a Program">
+	   <topic href="html/debugger/debug/cmds_starting.htm"/>
+	</entry>
+
+<!-- S -->
+
+	<entry keyword="SDKs">
+	   <topic href="html/tasks/sdks/sdk_add.htm" />
+	   <topic href="html/tasks/sdks/sdk_add_custkits.htm" label="Adding Symbian Custom Kits"/>
+	   <topic href="html/tasks/sdks/sdk_search.htm" label="Searching"/>
+	   <topic href="html/tasks/sdks/sdk_view_properties.htm" label="Viewing Properties"/>
+       <topic href="html/qt_help/qt_pref_panel.htm"/>
+	</entry>
+
+	<entry keyword="SDK Preferences">
+	   <topic href="html/reference/SDKPreferences.html"/>
+       <topic href="html/qt_help/qt_pref_panel.htm"/>
+	</entry>
+
+	<entry keyword="SDK Support">
+	   <topic href="html/tasks/AddinganSDK.html" />
+	   <topic href="html/tasks/WorkingwithSDKs.html"/>
+	   <topic href="html/tasks/RmvngandVwngPropsosSDK.html" label="Viewing and Editing SDK Properties"/>
+	</entry>
+
+	<entry keyword="SIS File">
+	   <topic href="html/tasks/start/carbide_deploying.htm" label="Uploading"/>
+	</entry>
+
+	<entry keyword="Starting the Debugger">
+	   <topic href="html/tasks/debugger/work_debug_act_start.htm"/>
+	</entry>
+
+	<entry keyword="Step Into">
+	   <topic href="html/tasks/debugger/work_debug_act_stepinto.htm"/>
+	</entry>
+
+	<entry keyword="Step Over">
+	   <topic href="html/tasks/debugger/work_debug_act_stepover.htm"/>
+	</entry>
+
+	<entry keyword="Step Return">
+	   <topic href="html/tasks/debugger/work_debug_act_stepout.htm"/>
+	</entry>
+
+	<entry keyword="Stop Debug Session">
+	   <topic href="html/tasks/debugger/work_debug_act_stop.htm"/>
+	</entry>
+
+	<entry keyword="Stop Mode Debugging">
+	   <topic href="html/tasks/debugger/stop_mode_debug_precond.htm" label="Stop Mode Debugging"/>
+	</entry>
+
+	<entry keyword="Symbian OS Classes">
+	   <topic href="html/tasks/projects/prj_adding_symbian_class.htm" label="Adding"/>
+	</entry>
+
+	<entry keyword="Symbian OS Data View">
+	   <topic href="html/reference/view_symbian_kernel.htm"/>
+	   <topic href="html/tasks/debugger/view_symbian_kernel_set.htm" />
+	</entry>
+
+    <entry keyword="Symbian OS SDKs">
+	   <topic href="html/reference/ProjectTypeandSDK.html"/>
+	</entry>
+
+    <entry keyword="Symbian Project Navigator">
+       <topic href="html/reference/view_sym_proj_nav.htm"/>
+    </entry>
+   
+	<entry keyword="Symbol Hint">
+	   <topic href="html/concepts/symbol_hints.htm"/>
+	</entry>
+
+	<entry keyword="Symbolics Files">
+	   <topic href="html/concepts/symbolic_files_about.htm"/>
+	</entry>
+
+	<entry keyword="System Browser View">
+	   <topic href="html/reference/view_system_browser.htm" label="System Browser" />
+	</entry>
+
+<!-- T -->
+
+	<entry keyword="templates">
+	   <topic href="html/concepts/templates.htm"/>
+	</entry>
+
+	<entry keyword="Terminate Program">
+	   <topic href="html/tasks/debugger/work_debug_act_kill.htm"/>
+	</entry>
+
+	<entry keyword="test components">
+	   <topic href="html/reference/wnd_build_prefs.htm"/>
+	</entry>
+
+	<entry keyword="Thread Breakpoint">
+	   <topic href="html/concepts/thread_cond_breakpoints.htm"/>
+	</entry>
+
+	<entry keyword="Trace32">
+	   <topic href="html/projects/launch/trace32.htm"/>
+	</entry>
+
+	<entry keyword="TRK" >
+		<topic href="html/concepts/trk.htm" label="On-device Debugging" />
+		<topic href="html/tasks/trk/trk_overview.htm" label="TRK Overview" />
+		<topic href="html/tasks/trk/trk_carbide_setup.htm" />
+		<topic href="html/tasks/start/carbide_example_trk.htm" />
+		<topic href="html/tasks/debugger/stop_mode_debug.htm" />
+	</entry>
+	
+
+	<entry keyword="TRK Pane">
+	   <topic href="html/reference/trk/panel_trk_overview.htm"/>
+	</entry>
+
+<!-- U -->
+
+	<entry keyword="updating">
+	   <topic label="Carbide.c++"	href="html/tasks/start/carbide_updating.htm"/>
+	   <topic label="projects"		href="html/reference/olderproject_updater.html"/>
+	</entry>
+
+	<entry keyword="USB setup">
+	   <topic href="html/tasks/trk/trk_connection_usb.htm" label="TRK"/>
+	</entry>
+
+<!-- V -->
+
+	<entry keyword="variables">
+	   <topic href="html/concepts/working_with_variables.htm" label="Working with Variables" />
+	   <topic href="html/debugger/variables/adding_variables.htm" />
+	   <topic href="html/debugger/variables/viewing_variables.htm" />
+	   <topic href="html/debugger/variables/variables.htm" />
+	</entry>
+
+	<entry keyword="Variables view">
+	   <topic href="html/reference/view_variables.htm"/>
+	</entry>
+
+	<entry keyword="views">
+		<topic href="html/reference/view_breakpoints.htm" />
+		<topic href="html/reference/view_log.htm" />
+		<topic href="html/reference/view_carbide_news.htm" />
+		<topic href="html/reference/view_cpp_projects.htm" />
+		<topic href="html/debugger/debug/debug.htm" />
+		<topic href="html/reference/view_disassembly.htm" />
+		<topic href="html/reference/view_executables.htm" />
+		<topic href="html/reference/view_expressions.htm" />
+		<topic href="html/reference/view_global_variables.htm" label="Global Variables Window" />
+		<topic href="html/reference/view_memory_wnd.htm" />
+		<topic href="html/reference/view_mifdef_editor.htm" />
+		<topic href="html/reference/view_module_wnd.htm" />
+	    <topic href="html/concepts/registers.htm" />
+	    <topic href="html/reference/view_signals_wnd.htm" label="Symbols" />
+	    <topic href="html/reference/view_symbian_kernel.htm" />
+	    <topic href="html/reference/view_sym_proj_nav.htm" />
+	    <topic href="html/reference/view_symbian_kernel.htm" />
+	    <topic href="html/reference/view_system_browser.htm" label="System Browser" />
+	    <topic href="html/reference/view_variables.htm" />
+	</entry>
+
+
+<!-- W -->
+
+	<entry keyword="watchpoints">
+	   <topic href="html/debugger/watchpoints/watchpoints.htm" />
+	   <topic href="html/debugger/watchpoints/setting_watchpoints.htm" />
+	   <topic href="html/debugger/watchpoints/status_watchpoints.htm" />
+	   <topic href="html/debugger/watchpoints/toggling_watchpoints.htm" />
+	</entry>
+
+    <entry keyword="workspaces">
+	   <topic href="html/concepts/workspaces.htm"/>
+	</entry>
+
+<!-- X -->
+
+	<entry keyword="x86 Exceptions Pane">
+	   <topic href="html/reference/launch_config/emulator_exceptions.htm"/>
+	</entry>
+
+<!-- Y -->
+<!-- Z -->
+</index>
--- a/core/com.nokia.carbide.cpp.doc.user/plugin.xml	Wed Mar 31 13:19:37 2010 -0500
+++ b/core/com.nokia.carbide.cpp.doc.user/plugin.xml	Thu Apr 01 13:05:44 2010 -0500
@@ -14,11 +14,23 @@
             file="tocRelease.xml"
             primary="false"/> -->
 	   
+	 	<!-- Prebuilt Index -->
 		<index path="index" />
    </extension>
   
 	
-	<!-- Carbide.c++ cheatsheets extension -->
+<!-- =================================================================================== -->
+<!-- Manual Index                                                                        -->
+<!-- =================================================================================== -->
+	
+ <extension point="org.eclipse.help.index">
+    <index file="html/index.xml"/>
+ </extension>
+
+
+<!-- =================================================================================== -->
+<!-- Cheatsheets extension                                                               -->
+<!-- =================================================================================== -->
 	
    <extension
          point="org.eclipse.ui.cheatsheets.cheatSheetContent">
@@ -221,13 +233,6 @@
 	</extension>
 
 
-<!-- =================================================================================== -->
-<!-- Manual Index                                                                        -->
-<!-- =================================================================================== -->
-	
- <extension point="org.eclipse.help.index">
-    <index file="index.xml"/>
- </extension>
 
 <!-- =================================================================================== -->
 <!-- Universal intro extensions to show content in welcome pages                         -->
--- a/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/api/sdk/SBSv2Utils.java	Wed Mar 31 13:19:37 2010 -0500
+++ b/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/api/sdk/SBSv2Utils.java	Thu Apr 01 13:05:44 2010 -0500
@@ -17,7 +17,10 @@
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.Comparator;
+import java.util.HashMap;
+import java.util.Iterator;
 import java.util.List;
+import java.util.Map;
 
 import javax.xml.parsers.DocumentBuilder;
 import javax.xml.parsers.DocumentBuilderFactory;
@@ -55,9 +58,9 @@
 	private static boolean scannedSbsState = false; 
 	private static final String sbsScriptName = "sbs.bat"; 
 	protected static final String SBS_HOME = "SBS_HOME"; 
-	
-	private static List<String> unfilteredSBSv2ConfigNames;
 
+	/** Map of usable Raptor alias for -c parameter and base platform: <alias, base plat>  */
+	private static Map<String, String> unfilteredSBSv2ConfigNames; 
 	
 	/**
      * Get the path to the SBSv2 bin directory.  This is based on the SBS_HOME environment variable
@@ -75,12 +78,12 @@
     /**
      * Get the build configurations supported by SBSv2
      * @param refreshList whether or not to parse the configuration xml files again
-     * @return list of configuration names, never null
+     * @return A map of raptor aliases (key) to base build platform. Never null; 
      */
-    public static List<String> getUnfilteredSBSv2BuildConfigurations(boolean refreshList) {
+    public static Map<String, String> getUnfilteredSBSv2BuildConfigurations(boolean refreshList) { 
     	
     	if (unfilteredSBSv2ConfigNames == null || refreshList) {
-    		unfilteredSBSv2ConfigNames = new ArrayList<String>();
+    		unfilteredSBSv2ConfigNames = new HashMap<String, String>(); 
     		
         	// parse the xml files in SBS_HOME/lib/config/ to get SBSv2 configs
     		try {
@@ -182,11 +185,15 @@
 	public static List<ISymbianBuildContext> getFilteredSBSv2BuildContexts(ISymbianSDK sdk) {
 		List<ISymbianBuildContext> contexts = new ArrayList<ISymbianBuildContext>();
 		
-		for (String name : getUnfilteredSBSv2BuildConfigurations(false)) {
-
+		Iterator it = getUnfilteredSBSv2BuildConfigurations(false).entrySet().iterator(); 
+		while (it.hasNext()){ 
+			Map.Entry buildConfigPair = (Map.Entry)it.next(); 
+			String alias = (String)buildConfigPair.getKey(); // The sbsv2 alias 
+			String basePlat = (String)buildConfigPair.getValue(); 
+			
 			boolean addConfig = true;
 			for (String filteredConfig : getSBSv2ConfigurationsToFilter()) {
-				if (filteredConfig.compareTo(name) == 0) {
+				if (filteredConfig.compareTo(alias) == 0) {
 					addConfig = false;
 					break;
 				}
@@ -196,43 +203,25 @@
 				// only support configs that fall into something we can make a build context
 				// out of.  They must have a platform and a target.
 				String targetString = null;
-		    	if (name.toLowerCase().endsWith("_udeb") || name.toLowerCase().endsWith("_deb")) { //$NON-NLS-1$ //$NON-NLS-2$
+				String[] configTokens = alias.split("_"); // $//$NON-NLS-N$ 
+				// We presume that aliases have the second token as the "target". 
+				if (configTokens[1].toLowerCase().endsWith("deb")) { //$NON-NLS-1$
 		    		targetString = ISymbianBuildContext.DEBUG_TARGET;
-		    	} else if (name.toLowerCase().endsWith("_urel") || name.toLowerCase().endsWith("_rel")) { //$NON-NLS-1$ //$NON-NLS-2$
+				} else if (configTokens[1].toLowerCase().endsWith("rel")) { //$NON-NLS-1$
 		    		targetString = ISymbianBuildContext.RELEASE_TARGET;
 		    	}
 		    	
 		    	if (targetString != null) {
-		    		String[] parts = name.split("_"); //$NON-NLS-1$
-		    		if (parts.length == 2) {
-		    			SymbianBuildContext context = new SymbianBuildContext(sdk, parts[0].toUpperCase(), targetString);
+		    		
+		    		SymbianBuildContext context = null; 
+		    		context = new SymbianBuildContext(sdk, basePlat, targetString, alias); 	
+		    		if (context != null) 
 		    			contexts.add(context);
-		    		}
 		    	}
 			}
 		}
 		
-		Collections.sort(contexts, new Comparator<ISymbianBuildContext>() {
-
-			public int compare(ISymbianBuildContext o1, ISymbianBuildContext o2) {
-				String platform1 = o1.getPlatformString();
-				String platform2 = o2.getPlatformString();
-				if (platform1.equals(platform2)) {
-					return o1.getTargetString().compareTo(o2.getTargetString());
-				} else {
-					if (platform1.equals(ISymbianBuildContext.EMULATOR_PLATFORM)) {
-						return -1;
-					}
-					else if (platform2.equals(ISymbianBuildContext.EMULATOR_PLATFORM)) {
-						return 1;
-					}
-				}
-				return 0;
-			}
-			
-		});
-
-		return contexts;
+		return sortContexts(contexts);
 	}
 
 	/**
@@ -259,7 +248,7 @@
     		
     		NodeList children = root.getChildNodes();
     		for (int i=0; i< children.getLength(); i++) {
-    			getConfigsForNode(children.item(i));
+    			getConfigsForNode(children.item(i), root);
     		}
     		
     	} catch (Exception e) {
@@ -268,27 +257,37 @@
     	}
     }
     
-    private static void getConfigsForNode(Node node) {
+	private static void getConfigsForNode(Node node, Node parentNode) { 
 		if (node.getNodeName().equals("config")) { //$NON-NLS-1$
 			Node abstractNode = node.getAttributes().getNamedItem("abstract");  //$NON-NLS-1$
+			Node namedNode = node.getAttributes().getNamedItem("name"); //$NON-NLS-1$ 
 			if (abstractNode == null || abstractNode.getNodeValue().equals("false")) { //$NON-NLS-1$
-				Node namedNode = node.getAttributes().getNamedItem("name"); //$NON-NLS-1$
 				if (namedNode != null) {
+					
+					// Get the parent base build platform 
+					String baseBuildPlatform = null; 
+					if (parentNode != null){ 
+						baseBuildPlatform = parentNode.getAttributes().getNamedItem("name").getNodeValue(); 
+					}
 					// only support configs that fall into something we can make a build context
 					// out of.  They must have a platform and a target.
 					String configName = namedNode.getNodeValue();
-			    	if (configName.toLowerCase().endsWith("_udeb") || configName.toLowerCase().endsWith("_deb") || //$NON-NLS-1$ //$NON-NLS-2$
-		    			configName.toLowerCase().endsWith("_urel") || configName.toLowerCase().endsWith("_rel")) { //$NON-NLS-1$ //$NON-NLS-2$
-			    		if (configName.split("_").length == 2) { //$NON-NLS-1$
-							unfilteredSBSv2ConfigNames.add(configName);
-			    		}
-			    	}
+					String[] configTokens = configName.split("_"); 
+					if (configTokens.length >= 2) { //$NON-NLS-1$ 
+						String target = configTokens[1]; 
+						if (target.endsWith("deb") || target.endsWith("rel")){ //$NON-NLS-1$ 
+							if (baseBuildPlatform == null){ 
+								baseBuildPlatform = "unknown"; 
+							}
+							unfilteredSBSv2ConfigNames.put(configName, baseBuildPlatform); 
+						}
+					}
 				}
 			}
 
 			NodeList children = node.getChildNodes();
 			for (int i=0; i< children.getLength(); i++) {
-				getConfigsForNode(children.item(i));
+				getConfigsForNode(children.item(i), node);
 			}
 		}
     }
@@ -323,4 +322,89 @@
     	return sbsPath != null ? sbsPath : new Path(sbsScriptName); 
     }
     
+    private static List<ISymbianBuildContext> sortContexts(List<ISymbianBuildContext> contexts){ 
+    	
+		// 3 sorting stages to handle long Raptor aliases, and multiple aliases that have a similar platform and target prefix (e.g. armv5_urel)
+		
+		Collections.sort(contexts, new Comparator<ISymbianBuildContext>() {
+
+			// First sort the target name (Debug / Release) and push Emulation to the top
+			public int compare(ISymbianBuildContext o1, ISymbianBuildContext o2) {
+				String sbsAlias1 = o1.getSBSv2Alias();
+				String sbsAlias2 = o2.getSBSv2Alias();
+				
+				if (o1.getPlatformString().equals(o2.getPlatformString())) {
+					if (o1.getSBSv2Alias().split("_").length == 2 && o2.getSBSv2Alias().split("_").length == 2)
+						return o1.getTargetString().compareTo(o2.getTargetString());
+					else if (sbsAlias1.split("_").length >= 3 && sbsAlias1.split("_").length >= 3)
+						return 1;
+				} else {
+					if (sbsAlias1.toUpperCase().startsWith(ISymbianBuildContext.EMULATOR_PLATFORM)) {
+						return -1;
+					}else if (sbsAlias2.toUpperCase().startsWith(ISymbianBuildContext.EMULATOR_PLATFORM)) {
+						return 1;
+					} 
+				}
+				return sbsAlias1.compareTo(sbsAlias2);
+				
+			}
+			
+		});
+
+		// Sort long alias names
+		Collections.sort(contexts, new Comparator<ISymbianBuildContext>() {
+
+			public int compare(ISymbianBuildContext o1, ISymbianBuildContext o2) {
+				String sbsAlias1 = o1.getSBSv2Alias();
+				String sbsAlias2 = o2.getSBSv2Alias();
+				
+				if (sbsAlias1.split("_").length >= 3 && sbsAlias1.split("_").length >= 3 && !sbsAlias1.equals(sbsAlias2)){
+					String temp1[] = sbsAlias1.split("_");
+					String temp2[] = sbsAlias2.split("_");
+					String suffix1 = "";
+					String suffix2 = "";
+					for (int i = 2; i < temp1.length; i++){
+						suffix1 += temp1[i] + "_";
+					}
+					
+					for (int i = 2; i < temp2.length; i++){
+						suffix2 += temp2[i] + "_";
+					}
+					
+					return suffix1.compareTo(suffix2);
+				} 
+				
+				return 0;	
+			}
+		});
+		
+		// Sort the target string for long aliases
+		Collections.sort(contexts, new Comparator<ISymbianBuildContext>() {
+
+			public int compare(ISymbianBuildContext o1, ISymbianBuildContext o2) {
+				String sbsAlias1 = o1.getSBSv2Alias();
+				String sbsAlias2 = o2.getSBSv2Alias();
+				String temp1[] = sbsAlias1.split("_");
+				String temp2[] = sbsAlias2.split("_");
+				String suffix1 = "";
+				String suffix2 = "";
+				for (int i = 2; i < temp1.length; i++){
+					suffix1 += temp1[i] + "_";
+				}
+				
+				for (int i = 2; i < temp2.length; i++){
+					suffix2 += temp2[i] + "_";
+				}
+				
+				if (sbsAlias1.split("_").length >= 3 && sbsAlias1.split("_").length >= 3 && suffix1.equals(suffix2)){
+					return o1.getTargetString().compareTo(o2.getTargetString());
+				} 
+				
+				return 0;	
+			}
+		});
+		
+    	return contexts; 
+    }
+    
 }
--- a/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/api/sdk/SymbianBuildContext.java	Wed Mar 31 13:19:37 2010 -0500
+++ b/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/api/sdk/SymbianBuildContext.java	Thu Apr 01 13:05:44 2010 -0500
@@ -13,16 +13,30 @@
 package com.nokia.carbide.cpp.internal.api.sdk;
 
 import java.io.File;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
 
 import org.eclipse.core.runtime.IPath;
 import org.osgi.framework.Version;
 
 import com.nokia.carbide.cpp.epoc.engine.model.sbv.ISBVView;
-import com.nokia.carbide.cpp.epoc.engine.preprocessor.*;
+import com.nokia.carbide.cpp.epoc.engine.preprocessor.DefaultModelDocumentProvider;
+import com.nokia.carbide.cpp.epoc.engine.preprocessor.DefaultTranslationUnitProvider;
+import com.nokia.carbide.cpp.epoc.engine.preprocessor.DefineFactory;
+import com.nokia.carbide.cpp.epoc.engine.preprocessor.IDefine;
 import com.nokia.carbide.cpp.internal.sdk.core.model.SymbianMissingSDKFactory;
 import com.nokia.carbide.cpp.internal.sdk.core.model.SymbianSDK;
-import com.nokia.carbide.cpp.sdk.core.*;
+import com.nokia.carbide.cpp.sdk.core.IBSFCatalog;
+import com.nokia.carbide.cpp.sdk.core.IBSFPlatform;
+import com.nokia.carbide.cpp.sdk.core.IRVCTToolChainInfo;
+import com.nokia.carbide.cpp.sdk.core.ISBVPlatform;
+import com.nokia.carbide.cpp.sdk.core.ISymbianBuildContext;
+import com.nokia.carbide.cpp.sdk.core.ISymbianSDK;
+import com.nokia.carbide.cpp.sdk.core.SDKCorePlugin;
 import com.nokia.carbide.internal.api.cpp.epoc.engine.preprocessor.BasicIncludeFileLocator;
 import com.nokia.carbide.internal.api.cpp.epoc.engine.preprocessor.MacroScanner;
 
@@ -32,6 +46,7 @@
 	private String platform;
 	private String target;
 	private String displayString = null;
+	private String sbsv2Alias = null; 
 	
 	private static String EMULATOR_DISPLAY_TEXT = "Emulator"; //$NON-NLS-1$
 	private static String PHONE_DISPLAY_TEXT = "Phone"; //$NON-NLS-1$
@@ -54,15 +69,22 @@
 	private List<IDefine> compilerPrefixMacros = new ArrayList<IDefine>();
 	private long compilerCacheTimestamp;
 	
+	public SymbianBuildContext(ISymbianSDK theSDK, String thePlatform, String theTarget, String theSBSv2Alias) { 
+		sdkId = theSDK.getUniqueId(); 
+		platform = thePlatform.toUpperCase(); 
+		target = theTarget.toUpperCase(); 
+		sbsv2Alias = theSBSv2Alias; 
+		
+		getDisplayString(); 
+	}
 	
 	public SymbianBuildContext(ISymbianSDK theSDK, String thePlatform, String theTarget) {
 		sdkId = theSDK.getUniqueId();
-		platform = thePlatform;
-		target = theTarget;
+		platform = thePlatform.toUpperCase(); 
+		target = theTarget.toUpperCase(); 
 		getDisplayString();
 	}
 
-	
 	@Override
 	public int hashCode() {
 		final int prime = 31;
@@ -97,8 +119,11 @@
 		if (target == null) {
 			if (other.target != null)
 				return false;
-		} else if (!target.equals(other.target))
+		} else if (!target.equals(other.target)) {
 			return false;
+		} else if (sbsv2Alias!= null && !sbsv2Alias.equals(other.sbsv2Alias)) {
+			return false; 
+		}
 		return true;
 	}
 
@@ -114,11 +139,11 @@
 	}
 
 	public String getPlatformString() {
-		return platform;
+		return platform.toUpperCase(); 
 	}
 
 	public String getTargetString() {
-		return target;
+		return target.toUpperCase(); 
 	}
 
 	public String getDisplayString() {
@@ -137,7 +162,13 @@
 				displayString = displayString + SPACE_DISPLAY_TEXT + RELEASE_DISPLAY_TEXT;
 			}
 
-			displayString = displayString + " (" + platform + ") [" + getSDK().getUniqueId() + "]"; //$NON-NLS-1$
+			String basePlatform; 
+			if (sbsv2Alias != null) 
+				basePlatform = sbsv2Alias; 
+			else
+				basePlatform = platform; 
+			
+			displayString = displayString + " (" + basePlatform + ") [" + getSDK().getUniqueId() + "]"; //$NON-NLS-1$ 
 		}
 		return displayString;
 	}
@@ -151,15 +182,37 @@
 				sdk = SDKManagerInternalAPI.addMissingSdk(sdkId);
 			}
 						
-			return new SymbianBuildContext(sdk, getPlatformFromBuildConfigName(displayName), getTargetFromBuildConfigName(displayName));
+			return new SymbianBuildContext(sdk, getPlatformFromBuildConfigName(displayName), 
+					getTargetFromBuildConfigName(displayName), getSBSv2AliasFromConfigName(displayName)); 	
 		}
-		return new SymbianBuildContext(fallbackForBadSdk, SDK_NOT_INSTALLED, SDK_NOT_INSTALLED);
+		return new SymbianBuildContext(fallbackForBadSdk, SDK_NOT_INSTALLED, SDK_NOT_INSTALLED); 		
 	}
-
+	/**
+	 * See if the build configuration is an SBSv2 alias, and if so get the build-able alias name 
+	 * @param displayName 
+	 * @return The full SBSv2 alias that can be used with -c, otherwise null if not SBSv2 
+	 */
+	private static String getSBSv2AliasFromConfigName(String displayName) { 
+		int indexBegin = displayName.indexOf("("); //$NON-NLS-1$ 
+		int indexEnd = displayName.indexOf(")"); //$NON-NLS-1$ 
+		if (indexBegin > 0 && indexEnd > 0){ 
+			String configPart = displayName.substring(indexBegin+1, indexEnd); 
+			if (configPart.split("_").length > 1){ 
+				return configPart; 
+			}
+		}
+		return null;
+	}
 	private static String getPlatformFromBuildConfigName(String configName) {
 		String[] tokens = configName.split(SPACE_DISPLAY_TEXT);
 		String sdkIdToken = tokens[2];
-		return sdkIdToken.substring(1, sdkIdToken.length()-1);
+		if (sdkIdToken.contains("_")){ 
+			sdkIdToken = sdkIdToken.substring(1, sdkIdToken.length()-1); 
+			String[] aliasTokens = sdkIdToken.split("_"); 
+			return aliasTokens[0]; 
+		} else {
+			return sdkIdToken.substring(1, sdkIdToken.length()-1); 
+		}
 	}
 
 	public static String getSDKIDFromConfigName(String configName) {
@@ -253,7 +306,8 @@
 	}
 
 	public IPath getCompilerPrefixFile() {
-		if (platform.equals(GCCE_PLATFORM)) {
+		if (platform.equals(GCCE_PLATFORM) ||
+				(sbsv2Alias != null && sbsv2Alias.toUpperCase().contains(GCCE_PLATFORM))) {
 			return getGCCEPrefixFilePath();
 		} else if (platform.equals(ARMV5_PLATFORM)
 					|| platform.equals(ARMV5_ABIV2_PLATFORM)
@@ -569,5 +623,15 @@
 		return plat;
 	}
 	
+	public String getSBSv2Alias() {  
+		return sbsv2Alias;
+	} 
 	
+	public void setSBSv2Alias(String sbsv2Alias) { 
+		this.sbsv2Alias = sbsv2Alias; 
+	}
+	
+	public void setDisplayString(String newDisplayName) { 
+		this.displayString = newDisplayName; 
+	}
 }
--- a/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/sdk/core/model/SymbianSDK.java	Wed Mar 31 13:19:37 2010 -0500
+++ b/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/sdk/core/model/SymbianSDK.java	Thu Apr 01 13:05:44 2010 -0500
@@ -107,7 +107,6 @@
 	public SymbianSDK(DeviceType device) {
 		deviceEntry = device;
 		scanSDK();
-		
 	}
 	
 	public void scanSDK(){
@@ -1026,8 +1025,18 @@
 				if (line.startsWith(BUILD_INFO_KEYWORD)){
 					String[] versionTokens = line.split(" ");
 					if (versionTokens.length == 3){
-						int index = versionTokens[2].lastIndexOf("v");
-						if (index > 0){
+						
+						if (versionTokens[2].toUpperCase().startsWith("TB92SF") || versionTokens[2].toUpperCase().endsWith("TB92SF")){
+							setOSVersion(new Version("9.5.0"));
+							setSDKVersion(new Version("5.2.0"));
+							break;
+						} else if (versionTokens[2].toUpperCase().startsWith("TB101SF") || versionTokens[2].toUpperCase().endsWith("TB101SF")){
+							setOSVersion(new Version("9.6.0"));
+							setSDKVersion(new Version("6.0.0"));
+							break;
+						}
+						else if (versionTokens[2].lastIndexOf("v") > 0){
+							int index = versionTokens[2].lastIndexOf("v");
 							String osVersionString = versionTokens[2].substring(index+1, versionTokens[2].length());
 							
 							if (osVersionString.compareToIgnoreCase("tb91sf") == 0){
--- a/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/sdk/core/ISymbianBuildContext.java	Wed Mar 31 13:19:37 2010 -0500
+++ b/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/sdk/core/ISymbianBuildContext.java	Thu Apr 01 13:05:44 2010 -0500
@@ -143,4 +143,15 @@
 	 * @since 2.0
 	 */
 	public boolean isSymbianBinaryVariation();
+	
+	/**
+	 * 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.
+	 * @return the configuration name, or null if none.
+	 */
+	public String getSBSv2Alias();
+	
+	public void setSBSv2Alias(String newAlias);
+	
+	public void setDisplayString(String newDisplayName);
 }
--- a/core/com.nokia.carbide.cpp.sdk.ui/src/com/nokia/carbide/cpp/internal/api/sdk/ui/SBSv2PlatformFilterComposite.java	Wed Mar 31 13:19:37 2010 -0500
+++ b/core/com.nokia.carbide.cpp.sdk.ui/src/com/nokia/carbide/cpp/internal/api/sdk/ui/SBSv2PlatformFilterComposite.java	Thu Apr 01 13:05:44 2010 -0500
@@ -17,6 +17,7 @@
 package com.nokia.carbide.cpp.internal.api.sdk.ui;
 
 import java.util.ArrayList;
+import java.util.Collections;
 import java.util.List;
 
 import org.eclipse.jface.viewers.ArrayContentProvider;
@@ -97,8 +98,13 @@
 	
 	private void initTable(boolean refreshList) {
 
-		tableViewer.setInput(SBSv2Utils.getUnfilteredSBSv2BuildConfigurations(refreshList));
-
+		Object[] keySet = SBSv2Utils.getUnfilteredSBSv2BuildConfigurations(refreshList).keySet().toArray();
+		List<String> sbsAliases = new ArrayList<String>();
+		for (Object key : keySet)
+			sbsAliases.add((String)key);
+		Collections.sort(sbsAliases);
+		tableViewer.setInput(sbsAliases);
+		
 		// check all configs
 		tableViewer.setAllChecked(true);
 		
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/core/com.nokia.carbide.cpp/carbide_ide.target	Thu Apr 01 13:05:44 2010 -0500
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<?pde version="3.5"?>
+
+<target name="Carbide Help">
+<locations>
+<location path="/Users/Shared/mercurial/carbidecpp/core" type="Directory">
+<includeBundles>
+<plugin id="com.nokia.carbide.cpp.compiler.doc.user"/>
+<plugin id="com.nokia.carbide.cpp"/>
+<plugin id="com.nokia.carbide.cpp.doc.user"/>
+</includeBundles>
+</location>
+</locations>
+</target>