add Symbian Foundation build scripts
authorcawthron
Fri, 09 Oct 2009 07:35:41 -0500
changeset 527 aca45c77e587
parent 518 cb58dc1642ec
child 531 967657ca5c75
add Symbian Foundation build scripts
automation/product_builder/carbide.c/README.txt
automation/product_builder/carbide.c/build_carbide.bat
automation/product_builder/carbide.c/build_carbide.sh
automation/product_builder/carbide.c/config/build.properties
automation/product_builder/carbide.c/config/customTargets.xml
automation/product_builder/carbide.c/map_adt.txt
automation/product_builder/carbide.c/map_carbide.txt
automation/product_builder/carbide.c/map_cdk.txt
automation/product_builder/carbide.c/map_dev_kit.txt
automation/product_builder/carbide.c/map_pdt.txt
automation/product_builder/carbide.c/product.xml
automation/product_builder/carbide.c/site.xml
automation/product_builder/scripts/Utils.sh
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/automation/product_builder/carbide.c/README.txt	Fri Oct 09 07:35:41 2009 -0500
@@ -0,0 +1,19 @@
+How to Build Carbide.c++
+
+On Windows XP
+
+Install Merurial
+Install Java jdk-1_5_0_15-windows-i586-p.exe
+Install Cygwin in C:\cygwin (must also have cygwin\bin2)
+Install Carbide.c ADT in %TOP%\ADT
+
+edit build_carbide.bat
+    set TOP
+    set WORKSPACE
+    set HG_SFL_HOST
+    set HG_EPL_HOST
+    set HG_REVISION
+    set HG_USERNAME
+    set HG_PASSWORD
+
+run build_carbide.bat
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/automation/product_builder/carbide.c/build_carbide.bat	Fri Oct 09 07:35:41 2009 -0500
@@ -0,0 +1,44 @@
+@echo on
+
+rem Run this script to build Carbide.c
+
+set TOP=C:\work
+
+rem Prerequisites
+rem Install Merurial
+rem Install Java JDK-1_5_0_20-b02
+rem Install Cybwin in c:\cywin (must also have cygwin\bin2)
+rem Install Carbide.c ADT in %TOP%\ADT
+
+rem set WORKSPACE. The path to WORKSPACE must be short (about 30 characters)
+set WORKSPACE=C:\work\build
+if not exist %WORKSPACE% mkdir %WORKSPACE%
+
+rem set Mercurial host
+rem
+rem Nokia Austin
+rem set HG_SFL_HOST=dacvs002.americas.nokia.com/hg/Austin/MCL/sftools
+rem set HG_EPL_HOST=dacvs002.americas.nokia.com/hg/Austin/MCL/sftools
+rem
+rem Nokia London
+rem set HG_SFL_HOST=sylgbpwe0001.symbian.intra/hg/i_hg/sfl/MCL/sftools
+rem set HG_EPL_HOST=sylgbpwe0001.symbian.intra/hg/i_hg/oss/MCL/sftools
+rem
+rem Symbian Foundation
+set HG_SFL_HOST=developer.symbian.org/sfl/MCL/sftools
+set HG_EPL_HOST=developer.symbian.org/oss/MCL/sftools
+ 
+rem set Mercurial username and password
+set HG_USERNAME
+set HG_PASSWORD
+set HG_HTTP=https
+
+rem set Mercurial revision
+set HG_REVISION=RCL_2_1
+
+chdir /D %TOP%
+hg clone -r %HG_REVISION% %HG_HTTP%//%HG_USERNAME%:%HG_PASSWORD%@%HG_EPL_HOST%/dev/ide/carbidecpp/
+
+chdir /D C:\cygwin\bin2
+call cmd_call_bash.bat %TOP%/carbidecpp/automation/product_builder/carbide.c/build_carbide.sh --WORKSPACE:%WORKSPACE% --CARBIDE_VERSION_2DIGITS:2.1 --CARBIDE_VERSION_3DIGITS:2.1.1 --HG_SFL_HOST:%HG_SFL_HOST% --HG_EPL_HOST:%HG_EPL_HOST% --HG_REVISION:%HG_REVISION% --HG_USERNAME:%HG_USERNAME% --HG_PASSWORD:%HG_PASSWORD% --BASE_CARBIDE:%TOP%/ADT 
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/automation/product_builder/carbide.c/build_carbide.sh	Fri Oct 09 07:35:41 2009 -0500
@@ -0,0 +1,457 @@
+#!/bin/bash
+
+# ------------------------------------------------------------------
+
+thisDir=`dirname $0`
+[ "$thisDir" = "." ] && thisDir=`pwd`
+source $thisDir/../scripts/Utils.sh
+
+# ------------------------------------------------------------------
+#
+# parse command line args
+#
+
+argsText="WORKSPACE:<folder> --CARBIDE_VERSION_2DIGITS:<value> --CARBIDE_VERSION_3DIGITS:<value> [--BUILD_NUM:<value>] --HG_SFL_HOST:<value> --HG_EPL_HOST:<value> --HG_REVISION:<value> --HG_USERNAME:<value> --HG_PASSWORD:<value> --ATF_REVISION:<value> --BASE_CARBIDE:<value>"
+prepare_parse_args WORKSPACE CARBIDE_VERSION_2DIGITS CARBIDE_VERSION_3DIGITS BUILD_NUM HG_SFL_HOST HG_EPL_HOST HG_REVISION HG_USERNAME HG_PASSWORD ATF_REVISION BASE_CARBIDE > /tmp/$$.parse_args
+source /tmp/$$.parse_args
+rm -f /tmp/$$.parse_args
+
+# ------------------------------------------------------------------
+
+# NOTE: BUILD_ID and BUILD_NUMBER are set by Hudson
+if [ "$BUILD_NUM" = "" ]; then
+    if [ "$BUILD_ID" = "" ]; then
+        BUILD_NUM=v`date +%Y%m%d%H%M`
+    else
+        BUILD_NUM=v`echo $BUILD_ID | sed "s/[-_]//g" | cut -c1-12`
+        BUILD_NUM=${BUILD_NUM}_$BUILD_NUMBER
+    fi
+fi
+LONG_VERSION=$CARBIDE_VERSION_3DIGITS.$BUILD_NUM
+
+# change paths to unix style so cp will work correctly
+thisDir=`cygpath -m $thisDir`
+WORKSPACE=`cygpath -m $WORKSPACE`
+CHECKOUT_FOLDER=$WORKSPACE/co
+BUILD_FOLDER=$WORKSPACE/bld
+BASE_CARBIDE=`cygpath -m $BASE_CARBIDE`
+
+echo thisDir=$thisDir
+echo WORKSPACE=$WORKSPACE
+echo CHECKOUT_FOLDER=$CHECKOUT_FOLDER
+echo BUILD_FOLDER=$BUILD_FOLDER
+echo LONG_VERSION=$LONG_VERSION
+echo BASE_CARBIDE=$BASE_CARBIDE
+
+# create files that are R/W by all
+umask 0
+
+DO_ADT_LAYOUT=yes
+DO_PDT_LAYOUT=yes
+DO_PDL_LAYOUT=yes
+DO_PUBLIC_UPDATE_SITE=yes
+
+# ------------------------------------------------------------------
+
+if [ "yes" = "yes" ]; then
+    if [ -d $BUILD_FOLDER ]; then
+        run cmd /C rmdir /S /Q `cygpath -w $BUILD_FOLDER`
+    fi
+    run mkdir -p $BUILD_FOLDER/features
+    run mkdir -p $BUILD_FOLDER/plugins
+fi
+
+# ------------------------------------------------------------------
+
+run mkdir -p $CHECKOUT_FOLDER
+
+# ------------------------------------------------------------------
+
+if [ "yes" = "yes" ]; then
+    run rm -f $CHECKOUT_FOLDER/buildtags.txt
+
+    # dev/eclipseenv/buildlayout34 is too long; so, use a shorter path for this one
+    hg_host=$HG_EPL_HOST/dev/eclipseenv
+    hg_clone $CHECKOUT_FOLDER $CHECKOUT_FOLDER/buildtags.txt $HG_USERNAME $HG_PASSWORD $hg_host $HG_REVISION \
+        buildlayout34
+
+    hg_host=$HG_EPL_HOST
+    hg_clone $CHECKOUT_FOLDER $CHECKOUT_FOLDER/buildtags.txt $HG_USERNAME $HG_PASSWORD $hg_host $HG_REVISION \
+        dev/eclipseenv/eclipse \
+        dev/ide/carbidecpp
+
+    hg_host=$HG_SFL_HOST
+    hg_clone $CHECKOUT_FOLDER $CHECKOUT_FOLDER/buildtags.txt $HG_USERNAME $HG_PASSWORD $hg_host $HG_REVISION \
+        dev/ide/carbidecppplugins
+
+    hg_host=$HG_SFL_HOST
+    hg_clone $CHECKOUT_FOLDER $CHECKOUT_FOLDER/buildtags.txt $HG_USERNAME $HG_PASSWORD $hg_host default \
+        ana/dynaanaapps  ana/staticanaapps  ana/staticanamdw \
+        ana/compatanaapps  ana/testcreationandmgmt
+fi
+
+# ------------------------------------------------------------------
+
+if [ "yes" = "yes" ]; then
+    cd $BUILD_FOLDER
+    cat $thisDir/map_carbide.txt $thisDir/map_trace.txt $thisDir/map_cdk.txt $thisDir/map_adt.txt $thisDir/map_pdt.txt | grep -v "^#" | grep , | sed "s;^;run cp -pr $CHECKOUT_FOLDER/;" | sed "s;,; ;" > /tmp/$$.a    
+    source /tmp/$$.a
+    rm -f /tmp/$$.a
+fi
+
+# ------------------------------------------------------------------
+
+if [ "yes" = "yes" ]; then
+    unix2dos $CHECKOUT_FOLDER/buildtags.txt
+    run cp -p $CHECKOUT_FOLDER/buildtags.txt $BUILD_FOLDER/plugins/com.nokia.carbide.cpp/buildtags.txt
+fi
+
+# ------------------------------------------------------------------
+
+if [ "yes" = "yes" ]; then
+    run rm -rf $BUILD_FOLDER/buildlayout34
+    run cp -pr $CHECKOUT_FOLDER/buildlayout34 $BUILD_FOLDER/buildlayout34
+    run cp -r $BASE_CARBIDE/plugins/com.nokia.carbide.cpp.support_* $BUILD_FOLDER/buildlayout34/carbidecpp20devenv/plugins/
+    run cp -r $BASE_CARBIDE/plugins/com.freescale.* $BUILD_FOLDER/buildlayout34/carbidecpp20devenv/plugins/
+    run cp -r $BASE_CARBIDE/plugins/com.nokia.carbide.cpp.x86build* $BUILD_FOLDER/buildlayout34/carbidecpp20devenv/plugins/
+    run cp -r $BASE_CARBIDE/configuration/qt $BUILD_FOLDER/buildlayout34/carbidecpp20devenv/configuration/
+    run cp -r $BASE_CARBIDE/features/com.trolltech.qtcpp.feature_* $BUILD_FOLDER/buildlayout34/carbidecpp20devenv/features/
+    run cp -r $BASE_CARBIDE/plugins/com.trolltech.* $BUILD_FOLDER/buildlayout34/carbidecpp20devenv/plugins/
+    run cp -r $BASE_CARBIDE/features/org.eclipse.cdt.gnu.build_* $BUILD_FOLDER/buildlayout34/carbidecpp20devenv/features/
+    run cp -r $BASE_CARBIDE/features/org.eclipse.cdt.gnu.debug_* $BUILD_FOLDER/buildlayout34/carbidecpp20devenv/features/
+    run cp -r $BASE_CARBIDE/features/org.eclipse.cdt.platform_* $BUILD_FOLDER/buildlayout34/carbidecpp20devenv/features/
+    run cp -r $BASE_CARBIDE/features/org.eclipse.cdt_* $BUILD_FOLDER/buildlayout34/carbidecpp20devenv/features/
+    run cp -r $BASE_CARBIDE/plugins/org.eclipse.cdt_* $BUILD_FOLDER/buildlayout34/carbidecpp20devenv/plugins/
+    run cp -r $BASE_CARBIDE/plugins/org.eclipse.cdt.* $BUILD_FOLDER/buildlayout34/carbidecpp20devenv/plugins/
+fi
+
+ECLIPSE_HOME=$BUILD_FOLDER/buildlayout34/carbidecpp20devenv
+[ -d "$ECLIPSE_HOME" ] || error_exit cannot find folder $ECLIPSE_HOME
+ECLIPSE_BUILD_SCRIPTS=`ls -d $ECLIPSE_HOME/plugins/org.eclipse.pde.build_*/scripts`
+echo ECLIPSE_HOME=$ECLIPSE_HOME
+
+# ------------------------------------------------------------------
+#
+# remove update site from all feature.xml files except com.nokia.carbide.cpp/feature.xml
+#
+
+if [ "yes" = "yes" ]; then
+    run cd $BUILD_FOLDER
+    for name in `ls features/*/feature.xml | grep -v com.nokia.carbide.cpp/feature.xml`
+    do
+        remove_update_site_urls $name $BUILD_FOLDER/temp
+    done
+fi
+
+# ------------------------------------------------------------------
+
+if [ "yes" = "yes" ]; then
+    run rm -rf $BUILD_FOLDER/Carbide.c
+
+    cat $thisDir/product.xml \
+        | sed "s/\${CARBIDE_VERSION_2DIGITS}/${CARBIDE_VERSION_2DIGITS}/g" \
+        | sed "s/\${CARBIDE_VERSION_3DIGITS}/${CARBIDE_VERSION_3DIGITS}/g" \
+        > $BUILD_FOLDER/product.xml
+
+    must_run $ECLIPSE_HOME/eclipsec.exe -nosplash --launcher.suppressErrors -application org.eclipse.ant.core.antRunner \
+        -buildfile $ECLIPSE_BUILD_SCRIPTS/productBuild/productBuild.xml \
+        -Dbuilder=$thisDir/config \
+        -Dproduct=$BUILD_FOLDER/product.xml \
+        -DbuildDirectory=$BUILD_FOLDER \
+        -DbaseLocation=$ECLIPSE_HOME \
+        -DforceContextQualifier=$BUILD_NUM \
+        -DrepoDirectory=$BUILD_FOLDER/layout/repository \
+        -DbuildNumber=$BUILD_NUM \
+        -consoleLog
+fi
+
+# ------------------------------------------------------------------
+#
+# extract Carbide.c from the Eclipse PDE build
+#
+
+if [ "yes" = "yes" ]; then
+    run rm -rf   $BUILD_FOLDER/parts_carbide
+    run mkdir -p $BUILD_FOLDER/parts_carbide
+
+	# unzip our product and the packaged eclipse stuff into the product layout
+	run /bin/unzip -o $BUILD_FOLDER/Carbide.c/Carbide.c-win32.win32.x86.zip -d $BUILD_FOLDER/parts_carbide
+
+	# remove the configuration directory and p2 plugins (ONLY DO THIS FOR NON_P2 builds)
+	rm -rf $BUILD_FOLDER/parts_carbide/eclipse/configuration
+    rm -rf $BUILD_FOLDER/parts_carbide/eclipse/features/org.eclipse.equinox.p2.*
+    rm -rf $BUILD_FOLDER/parts_carbide/eclipse/plugins/org.eclipse.equinox.p2.*
+    rm -rf $BUILD_FOLDER/parts_carbide/eclipse/plugins/org.eclipse.ecf*
+    rm -rf $BUILD_FOLDER/parts_carbide/eclipse/plugins/org.eclipse.equinox.frameworkadmin*
+    rm -rf $BUILD_FOLDER/parts_carbide/eclipse/plugins/org.sat4j.*
+    rm -rf $BUILD_FOLDER/parts_carbide/eclipse/plugins/org.eclipse.equinox.simpleconfigurator.manipulator*
+    rm -rf $BUILD_FOLDER/parts_carbide/eclipse/dropins
+    rm -rf $BUILD_FOLDER/parts_carbide/eclipse/p2
+fi
+
+# ------------------------------------------------------------------
+#
+# remove <includes id="<feature>.source" /> from all feature.xml files
+#
+
+if [ "yes" = "yes" ]; then
+    run cd $BUILD_FOLDER/parts_carbide/eclipse/features
+    for name in */feature.xml
+    do
+        xml2oneline $name | grep "\<includes.id=.*.source\"" > /dev/null
+        if [ $? -eq 0 ]; then
+            xml2oneline $name > temp
+            echo grep -v "\<includes.id=.*.source\"" $name
+            grep -v "\<includes.id=.*.source\"" temp > $name
+            unix2dos $name
+        fi
+    done
+    rm -f temp
+    run cd $BUILD_FOLDER
+fi
+
+# ------------------------------------------------------------------
+
+if [ "yes" = "yes" ]; then
+	# copy eclipsec.exe
+	run cp $ECLIPSE_HOME/eclipsec.exe $BUILD_FOLDER/parts_carbide/eclipse
+
+	# copy carbide.c++.ini to eclipse.ini (for eclipsec.exe)
+    run cp -pr $BUILD_FOLDER/parts_carbide/eclipse/Carbide.c++.${CARBIDE_VERSION_2DIGITS}.ini $BUILD_FOLDER/parts_carbide/eclipse/eclipse.ini
+
+	# manually copy over the vista and 64 bit fragments until we figure out how to include them as part of the product build.
+	run cp -pr $ECLIPSE_HOME/plugins/org.eclipse.equinox.launcher.wpf.win32.x86* $BUILD_FOLDER/parts_carbide/eclipse/plugins
+	run cp $ECLIPSE_HOME/plugins/org.eclipse.swt.wpf.win32.x86_* $BUILD_FOLDER/parts_carbide/eclipse/plugins
+	run cp -pr $ECLIPSE_HOME/plugins/org.eclipse.equinox.launcher.win32.win32.x86_64* $BUILD_FOLDER/parts_carbide/eclipse/plugins
+	run cp $ECLIPSE_HOME/plugins/org.eclipse.swt.win32.win32.x86_64_* $BUILD_FOLDER/parts_carbide/eclipse/plugins
+
+    run mkdir -p $BUILD_FOLDER/parts_carbide/eclipse/jre
+    run cp -r $BASE_CARBIDE/jre $BUILD_FOLDER/parts_carbide/eclipse/
+
+	# copy the Qt feature/plugins into the product layout
+    run mkdir -p $BUILD_FOLDER/parts_carbide/eclipse/configuration/qt
+    run cp -r $BASE_CARBIDE/configuration/qt $BUILD_FOLDER/parts_carbide/eclipse/configuration/
+    run cp -r $BASE_CARBIDE/features/com.trolltech.qtcpp.feature_* $BUILD_FOLDER/parts_carbide/eclipse/features
+    run cp -r $BASE_CARBIDE/plugins/com.trolltech.* $BUILD_FOLDER/parts_carbide/eclipse/plugins
+
+	# copy the Trace plugins into the product layout
+    run cp -r $BASE_CARBIDE/plugins/com.nokia.tcf_*/os $BUILD_FOLDER/parts_carbide/eclipse/plugins/com.nokia.tcf_*
+
+	# copy the TRK plugins into the product layout
+    run cp -r $BASE_CARBIDE/plugins/com.nokia.carbide.trk.support_*/os $BUILD_FOLDER/parts_carbide/eclipse/plugins/com.nokia.carbide.trk.support_*
+
+    run mkdir -p $BUILD_FOLDER/parts_carbide/eclipse/EULA
+    run cp -p $CHECKOUT_FOLDER/dev/ide/carbidecpp/core/carbide_releases/EULA/carbide_eula.txt $BUILD_FOLDER/parts_carbide/eclipse/EULA/carbide_eula.txt
+
+    run mkdir -p $BUILD_FOLDER/parts_carbide/eclipse/readme
+    run cp -p $CHECKOUT_FOLDER/dev/ide/carbidecpp/core/carbide_releases/readme/readme_sdks.html $BUILD_FOLDER/parts_carbide/eclipse/readme/readme_sdks.html
+    run cp -p $CHECKOUT_FOLDER/dev/ide/carbidecpp/core/carbide_releases/readme/background_carbide.jpg $BUILD_FOLDER/parts_carbide/eclipse/readme/background_carbide.jpg
+
+    run mkdir -p $BUILD_FOLDER/parts_carbide/eclipse/x86Build
+    run cp -r $BASE_CARBIDE/x86Build/env_switch $BUILD_FOLDER/parts_carbide/eclipse/x86Build/env_switch
+    run cp -r $BASE_CARBIDE/x86Build/Release_Notes $BUILD_FOLDER/parts_carbide/eclipse/x86Build/Release_Notes
+    run cp -r $BASE_CARBIDE/x86Build/Symbian_Support $BUILD_FOLDER/parts_carbide/eclipse/x86Build/Symbian_Support
+    run cp -r $BASE_CARBIDE/x86Build/Symbian_Tools $BUILD_FOLDER/parts_carbide/eclipse/x86Build/Symbian_Tools
+
+    run mkdir -p $BUILD_FOLDER/parts_carbide/eclipse/configuration
+    run cp -p $CHECKOUT_FOLDER/dev/ide/carbidecpp/core/carbide_releases/configuration/server.properties $BUILD_FOLDER/parts_carbide/eclipse/configuration/server.properties
+    run cp -p $CHECKOUT_FOLDER/dev/ide/carbidecpp/core/carbide_releases/configuration/run_env_update.bat $BUILD_FOLDER/parts_carbide/eclipse/configuration/run_env_update.bat
+    run cp -p $BUILD_FOLDER/plugins/com.nokia.carbide.cpp/config.ini $BUILD_FOLDER/parts_carbide/eclipse/configuration/config.ini
+
+    chmod -R 777 $BUILD_FOLDER/parts_carbide
+fi
+
+# ------------------------------------------------------------------
+
+if [ "$DO_PUBLIC_UPDATE_SITE" = "yes" ]; then
+	# run entire product layout through the p2 metadata generator to make the update site
+	run $ECLIPSE_HOME/eclipsec.exe -nosplash --launcher.suppressErrors -application org.eclipse.equinox.p2.metadata.generator.EclipseGenerator \
+		-source $BUILD_FOLDER/parts_carbide/eclipse \
+		-metadataRepository file:$BUILD_FOLDER/parts_carbide/update_site -metadataRepositoryName "Carbide.c++ Metadata Repository" \
+		-artifactRepository file:$BUILD_FOLDER/parts_carbide/update_site -artifactRepositoryName "Carbide.c++ Artifact Repository" \
+		-compress -noDefaultIUs -publishArtifacts -root com.nokia.carbide.cpp.product -rootVersion ${CARBIDE_VERSION_3DIGITS}.$BUILD_NUM -consoleLog -vmargs -Xmx512m
+
+    rm -rf $BUILD_FOLDER/parts_carbide/update_site/artifacts.jar
+    rm -rf $BUILD_FOLDER/parts_carbide/update_site/content.jar
+fi
+
+# ------------------------------------------------------------------
+
+if [ "yes" = "yes" ]; then
+    run cd $BUILD_FOLDER
+    run rm -rf $BUILD_FOLDER/parts_carbide_base
+    run mv $BUILD_FOLDER/parts_carbide $BUILD_FOLDER/parts_carbide_base
+
+    move_plugins $BUILD_FOLDER/parts_carbide_base/eclipse $BUILD_FOLDER/parts_carbide/eclipse $thisDir/map_adt.txt \
+        $thisDir/map_cdk.txt $thisDir/map_pdt.txt 
+    move_plugins $BUILD_FOLDER/parts_carbide_base/update_site $BUILD_FOLDER/parts_carbide/update_site $thisDir/map_adt.txt \
+        $thisDir/map_cdk.txt $thisDir/map_pdt.txt
+    
+    run rm -rf $BUILD_FOLDER/parts_carbide_source
+    run mkdir -p $BUILD_FOLDER/parts_carbide_source/eclipse/features
+    run mkdir -p $BUILD_FOLDER/parts_carbide_source/eclipse/plugins
+    run mkdir -p $BUILD_FOLDER/parts_carbide_source/update_site/features
+    run mkdir -p $BUILD_FOLDER/parts_carbide_source/update_site/plugins
+    run mv $BUILD_FOLDER/parts_carbide_base/eclipse/features/*.source_* $BUILD_FOLDER/parts_carbide_source/eclipse/features
+    run mv $BUILD_FOLDER/parts_carbide_base/eclipse/plugins/*.source_* $BUILD_FOLDER/parts_carbide_source/eclipse/plugins
+    if [ "$DO_PUBLIC_UPDATE_SITE" = "yes" ]; then
+        run mv $BUILD_FOLDER/parts_carbide_base/update_site/features/*.source_* $BUILD_FOLDER/parts_carbide_source/update_site/features
+        run mv $BUILD_FOLDER/parts_carbide_base/update_site/plugins/*.source_* $BUILD_FOLDER/parts_carbide_source/update_site/plugins
+    fi
+fi
+
+# ------------------------------------------------------------------
+
+if [ "yes" = "yes" ]; then
+    run rm -rf   $BUILD_FOLDER/parts_eclispe_home
+    run mkdir -p $BUILD_FOLDER/parts_eclispe_home/eclipse
+
+    run cp -pr $CHECKOUT_FOLDER/buildlayout34/carbidecpp20devenv/features $BUILD_FOLDER/parts_eclispe_home/eclipse
+    run cp -pr $CHECKOUT_FOLDER/buildlayout34/carbidecpp20devenv/plugins $BUILD_FOLDER/parts_eclispe_home/eclipse
+
+	# remove the and p2 plugins (ONLY DO THIS FOR NON_P2 builds)
+    rm -rf $BUILD_FOLDER/parts_eclispe_home/eclipse/features/org.eclipse.equinox.p2.*
+    rm -rf $BUILD_FOLDER/parts_eclispe_home/eclipse/plugins/org.eclipse.equinox.p2.*
+    rm -rf $BUILD_FOLDER/parts_eclispe_home/eclipse/plugins/org.eclipse.ecf*
+    rm -rf $BUILD_FOLDER/parts_eclispe_home/eclipse/plugins/org.eclipse.equinox.frameworkadmin*
+    rm -rf $BUILD_FOLDER/parts_eclispe_home/eclipse/plugins/org.sat4j.*
+    rm -rf $BUILD_FOLDER/parts_eclispe_home/eclipse/plugins/org.eclipse.equinox.simpleconfigurator.manipulator*
+
+	# run parts_eclispe_home layout through the p2 metadata generator to make the update site
+    # only the features and plugins are required, all features and plugins are required to resolve dependencies
+	run $ECLIPSE_HOME/eclipsec.exe -nosplash --launcher.suppressErrors -application org.eclipse.equinox.p2.metadata.generator.EclipseGenerator \
+		-source $BUILD_FOLDER/parts_eclispe_home/eclipse \
+		-metadataRepository file:$BUILD_FOLDER/parts_eclispe_home/update_site -metadataRepositoryName "Carbide.c++ Metadata Repository" \
+		-artifactRepository file:$BUILD_FOLDER/parts_eclispe_home/update_site -artifactRepositoryName "Carbide.c++ Artifact Repository" \
+		-compress -noDefaultIUs -publishArtifacts -root com.nokia.carbide.cpp.product -rootVersion ${CARBIDE_VERSION_3DIGITS}.$BUILD_NUM -consoleLog -vmargs -Xmx512m
+
+    # bug 8732 - use org.junit4_4.3.1.jar from the Eclipse update site
+    #run cp -p $CHECKOUT_FOLDER/internal/eclipseenv/buildlayout34/update_site/plugins/org.junit4_4.3.1.jar $BUILD_FOLDER/parts_eclispe_home/update_site/plugins
+
+    rm -rf $BUILD_FOLDER/parts_eclispe_home/update_site/artifacts.jar
+    rm -rf $BUILD_FOLDER/parts_eclispe_home/update_site/content.jar
+    rm -rf $BUILD_FOLDER/parts_eclispe_home/update_site/binary
+fi
+
+# ------------------------------------------------------------------
+#
+# Now, we have the parts needed to make the layouts
+#
+# $BUILD_FOLDER/parts_carbide_base      features and plugins for all layouts
+# $BUILD_FOLDER/parts_carbide_source    features and plugins for source only
+# $BUILD_FOLDER/parts_carbide           features and plugins for multiple layouts, use map_adt.txt, map_cdk.txt, map_pdt.txt
+# $BUILD_FOLDER/parts_eclispe_home      features and plugins for CDK, use map_dev_kit.txt
+
+# ------------------------------------------------------------------
+
+if [ "yes" = "yes" ]; then
+    run rm -rf $BUILD_FOLDER/output_zips
+    run mkdir $BUILD_FOLDER/output_zips
+fi
+
+# ------------------------------------------------------------------
+#
+# make the ADT layout
+#
+
+if [ "$DO_ADT_LAYOUT" = "yes" ]; then
+    run rm -rf   $BUILD_FOLDER/layout_adt
+    run mkdir -p $BUILD_FOLDER/layout_adt
+
+    run cp -pr $BUILD_FOLDER/parts_carbide_base/eclipse $BUILD_FOLDER/layout_adt
+    copy_plugins $BUILD_FOLDER/parts_carbide/eclipse    $BUILD_FOLDER/layout_adt/eclipse $thisDir/map_adt.txt
+
+    run cd $BUILD_FOLDER/layout_adt/eclipse
+    run /bin/zip -r $BUILD_FOLDER/output_zips/Carbide.c_ADT_layout_$LONG_VERSION.zip .eclipseproduct *
+fi
+
+# ------------------------------------------------------------------
+#
+# make the PDT layout
+#
+
+if [ "$DO_PDT_LAYOUT" = "yes" ]; then
+    run rm -rf   $BUILD_FOLDER/layout_pdt
+    run mkdir -p $BUILD_FOLDER/layout_pdt
+
+    run cp -pr $BUILD_FOLDER/parts_carbide_base/eclipse $BUILD_FOLDER/layout_pdt
+    copy_plugins $BUILD_FOLDER/parts_carbide/eclipse    $BUILD_FOLDER/layout_pdt/eclipse $thisDir/map_adt.txt $thisDir/map_pdt.txt
+
+    run cd $BUILD_FOLDER/layout_pdt/eclipse
+    run /bin/zip -r $BUILD_FOLDER/output_zips/Carbide.c_PDT_layout_$LONG_VERSION.zip .eclipseproduct *
+fi
+
+# ------------------------------------------------------------------
+#
+# make the PDL layout
+#
+
+if [ "$DO_PDL_LAYOUT" = "yes" ]; then
+    run rm -rf   $BUILD_FOLDER/layout_pdl
+    run mkdir -p $BUILD_FOLDER/layout_pdl
+
+    # ADT
+    run cp -pr $BUILD_FOLDER/parts_carbide_base/eclipse   $BUILD_FOLDER/layout_pdl
+    copy_plugins $BUILD_FOLDER/parts_carbide/eclipse      $BUILD_FOLDER/layout_pdl/eclipse $thisDir/map_adt.txt
+
+    # CDK
+    run cp -pr $BUILD_FOLDER/parts_carbide_source/eclipse $BUILD_FOLDER/layout_pdl
+    copy_plugins $BUILD_FOLDER/parts_carbide/eclipse      $BUILD_FOLDER/layout_pdl/eclipse $thisDir/map_cdk.txt
+    copy_plugins $BUILD_FOLDER/parts_eclispe_home/eclipse $BUILD_FOLDER/layout_pdl/eclipse $thisDir/map_dev_kit.txt
+
+    run cd $BUILD_FOLDER/layout_pdl/eclipse
+    run /bin/zip -r $BUILD_FOLDER/output_zips/Carbide.c_PDL_layout_$LONG_VERSION.zip .eclipseproduct *
+fi
+
+# ------------------------------------------------------------------
+#
+# make the public update site
+#
+
+if [ "$DO_PUBLIC_UPDATE_SITE" = "yes" ]; then
+    run rm -rf   $BUILD_FOLDER/layout_public
+    run mkdir -p $BUILD_FOLDER/layout_public
+
+    # ADT, PDT
+    run cp -pr $BUILD_FOLDER/parts_carbide_base/update_site $BUILD_FOLDER/layout_public
+    copy_plugins $BUILD_FOLDER/parts_carbide/update_site $BUILD_FOLDER/layout_public/update_site $thisDir/map_adt.txt $thisDir/map_pdt.txt
+
+    # CDK
+    run cp -pr $BUILD_FOLDER/parts_carbide_source/update_site $BUILD_FOLDER/layout_public
+    copy_plugins $BUILD_FOLDER/parts_carbide/update_site $BUILD_FOLDER/layout_public/update_site $thisDir/map_cdk.txt
+    copy_plugins $BUILD_FOLDER/parts_eclispe_home/update_site $BUILD_FOLDER/layout_public/update_site $thisDir/map_dev_kit.txt
+
+    cat $CHECKOUT_FOLDER/dev/ide/carbidecpp/automation/product_builder/carbide.c/site.xml \
+        | sed "s/\${QUALIFIER}/$BUILD_NUM/g" \
+        | sed "s/\${CARBIDE_VERSION_2DIGITS}/${CARBIDE_VERSION_2DIGITS}/g" \
+        | sed "s/\${CARBIDE_VERSION_3DIGITS}/${CARBIDE_VERSION_3DIGITS}/g" \
+        > $BUILD_FOLDER/layout_public/update_site/site.xml
+
+    run cd $BUILD_FOLDER/layout_public/update_site
+    run /bin/zip -r $BUILD_FOLDER/output_zips/Carbide.c_update_site_$LONG_VERSION.zip site.xml features plugins
+fi
+
+# ------------------------------------------------------------------
+
+cd $BUILD_FOLDER/output_zips
+
+run cp -p $CHECKOUT_FOLDER/buildtags.txt buildtags.txt
+
+cat $CHECKOUT_FOLDER/buildtags.txt >> map.txt
+echo >> map.txt
+cat $thisDir/map* | cut -d"," -f1 | sort | sed "s/ *//" | grep -v ^$ >> map.txt
+unix2dos map.txt
+
+ls > artifacts.txt
+echo env:BUILD_NUMBER=$BUILD_NUMBER >> artifacts.txt
+echo env:HOSTNAME=`hostname` >> artifacts.txt
+echo env:HUDSON_URL=$HUDSON_URL >> artifacts.txt
+echo env:JOB_NAME=$JOB_NAME >> artifacts.txt
+echo env:PERMALINK=$HUDSON_URL/job/$JOB_NAME/$BUILD_NUMBER/ >> artifacts.txt
+echo env:WORKSPACE=`cygpath -m $WORKSPACE` >> artifacts.txt
+unix2dos artifacts.txt
+
+# ------------------------------------------------------------------
+
+echo exit $total_errors
+exit $total_errors
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/automation/product_builder/carbide.c/config/build.properties	Fri Oct 09 07:35:41 2009 -0500
@@ -0,0 +1,279 @@
+###############################################################################
+# Copyright (c) 2003, 2006 IBM Corporation and others.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+# 
+# Contributors:
+#     IBM Corporation - initial API and implementation
+###############################################################################
+#####################
+# Parameters describing how and where to execute the build.
+# Typical users need only update the following properties:
+#    baseLocation - where things you are building against are installed
+#    bootclasspath - The base jars to compile against (typicaly rt.jar)
+#    configs - the list of {os, ws, arch} configurations to build.  
+#
+# Of course any of the settings here can be overridden by spec'ing 
+# them on the command line (e.g., -DbaseLocation=d:/eclipse
+
+#The type of the top level element we are building,  generally "feature"
+topLevelElementType = feature
+#The id of the top level element we are building
+#TODO - no docs on exactly what this is - ideally this is type product and id com.nokia.carbide.cpp.product.
+#       if it needs to be a feature, we may need to create a "master" feature which just includes all of the
+#       features we use in the product.  of course, that's what the product.xml does.  :)
+topLevelElementId = com.nokia.carbide.cpp
+
+# this is set to work around bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=237922
+launcherIcons=${buildDirectory}/plugins/com.nokia.carbide.cpp/icons/Carbide_c_flat.ico
+
+############# PRODUCT/PACKAGING CONTROL #############
+product=product.xml
+runPackager=true
+
+#Set the name of the archive that will result from the product build.
+#archiveNamePrefix=
+
+# The prefix that will be used in the generated archive.
+archivePrefix=eclipse
+
+# The location underwhich all of the build output will be collected.
+collectingFolder=${archivePrefix}
+
+# The list of {os, ws, arch} configurations to build.  This 
+# value is a '&' separated list of ',' separate triples.  For example, 
+#     configs=win32,win32,x86 & linux,motif,x86
+# By default the value is *,*,*
+#configs = *, *, *
+configs=win32, win32, x86
+
+#configs=linux,gtk,x86
+#configs=win32, win32, x86 & \
+#	linux, gtk, ppc &\
+# linux, gtk, x86 & \
+#	linux, gtk, x86_64 & \
+#	linux, motif, x86 & \
+#	solaris, motif, sparc & \
+#	solaris, gtk, sparc & \
+#	aix, motif, ppc & \
+#	hpux, motif, PA_RISC & \
+#	macosx, carbon, ppc
+
+# By default PDE creates one archive (result) per entry listed in the configs property.
+# Setting this value to true will cause PDE to only create one output containing all 
+# artifacts for all the platforms listed in the configs property.
+# To control the output format for the group, add a "group, group, group - <format>" entry to the
+# archivesFormat. 
+#groupConfigurations=true
+
+#The format of the archive. By default a zip is created using antZip.
+#The list can only contain the configuration for which the desired format is different than zip.
+#archivesFormat=win32, win32, x86 - antZip& \
+#	linux, gtk, ppc - antZip &\
+#    linux, gtk, x86 - antZip& \
+#	linux, gtk, x86_64 - antZip& \
+# linux, motif, x86 - antZip& \
+#	solaris, motif, sparc - antZip& \
+#	solaris, gtk, sparc - antZip& \
+#	aix, motif, ppc - antZip& \
+#	hpux, motif, PA_RISC - antZip& \
+#	macosx, carbon, ppc - antZip
+archivesFormat =\
+ 	win32, win32, x86-zip &\
+ 	linux, gtk, x86-zip &\
+	*,*,*-zip
+
+#Set to true if you want the output to be ready for an update jar (no site.xml generated)
+#outputUpdateJars = true
+
+#Set to true for Jnlp generation
+#codebase should be a URL that will be used as the root of all relative URLs in the output.
+#generateJnlp=false
+#jnlp.codebase=<codebase url>
+#jnlp.j2se=<j2se version>
+#jnlp.locale=<a locale>
+#jnlp.generateOfflineAllowed=true or false generate <offlineAllowed/> attribute in the generated features
+#jnlp.configs=${configs}			#uncomment to filter the content of the generated jnlp files based on the configuration being built
+
+#Set to true if you want to sign jars
+#signJars=false
+#sign.alias=<alias>
+#sign.keystore=<keystore location>
+#sign.storepass=<keystore password>
+
+# Used to sign Rgml
+signJars=false
+sign.keystore=${buildDirectory}/plugins/com.nokia.carbide.rgml/.jarsign/.carbidestore
+sign.keypass=ca8913
+sign.storepass=ca1399
+sign.alias=carbide
+
+#Arguments to send to the zip executable
+zipargs=
+
+#Arguments to send to the tar executable
+tarargs=
+
+#Control the creation of a file containing the version included in each configuration - on by default 
+#generateVersionsLists=false
+
+############## BUILD NAMING CONTROL ################
+# The directory into which the build elements are fetched and where
+# the build takes place.
+buildDirectory=.build
+
+# Type of build.  Used in naming the build output.  Typically this value is
+# one of I, N, M, S, ...
+buildType=I
+
+# ID of the build.  Used in naming the build output.
+buildId=Carbide.c
+
+# Label for the build.  Used in naming the build output
+#buildLabel=${buildType}.${buildId}
+buildLabel=${buildId}
+
+# Timestamp for the build.  Used in naming the build output
+timestamp=007
+
+#The value to be used for the qualifier of a plugin or feature when you want to override the value computed by pde.
+#The value will only be applied to plugin or features indicating build.properties, qualifier = context 
+#forceContextQualifier=<the value for the qualifier>
+
+#Enable / disable the generation of a suffix for the features that use .qualifier. 
+#The generated suffix is computed according to the content of the feature   
+#generateFeatureVersionSuffix=true
+
+############# BASE CONTROL #############
+# Settings for the base Eclipse components and Java class libraries 
+# against which you are building.
+# Base location for anything the build needs to compile against.  For example,
+# in most RCP app or a plug-in,  the baseLocation should be the location of a previously
+# installed Eclipse against which the application or plug-in code will be compiled and the RCP delta pack.
+
+#base=.tools
+#baseLocation=${base}/eclipse
+#Os/Ws/Arch/nl of the eclipse specified by baseLocation
+baseos=win32
+basews=win32
+#baseos=linux
+#basews=gtk
+basearch=x86
+
+#this property indicates whether you want the set of plug-ins and features to be considered during the build to be limited to the ones reachable from the features / plugins being built
+filteredDependencyCheck=false
+
+#this property indicates whether the resolution should be done in development mode (i.e. ignore multiple bundles with singletons)
+resolution.devMode=false
+
+#pluginPath is a list of locations in which to find plugins and features.  This list is separated by the platform file separator (; or :)
+#a location is one of:  
+#- the location of the jar or folder that is the plugin or feature : /path/to/foo.jar or /path/to/foo
+#- a directory that contains a /plugins or /features subdirectory
+#- the location of a feature.xml, or for 2.1 style plugins, the plugin.xml or fragment.xml
+#pluginPath=
+
+skipBase=true
+eclipseURL=<url for eclipse download site>
+eclipseBuildId=<Id of Eclipse build to get>
+eclipseBaseURL=${eclipseURL}/eclipse-platform-${eclipseBuildId}-win32.zip
+
+
+############# MAP FILE CONTROL ################
+# This section defines CVS tags to use when fetching the map files from the repository.
+# If you want to fetch the map file from repository / location, change the getMapFiles target in the customTargets.xml
+
+skipMaps=true
+mapsRepo=:pserver:user1@ascvs01.americas.nokia.com:/n
+mapsRoot=debug/eclipse/workspace/maps
+mapsCheckoutTag=HEAD
+
+#tagMaps=true
+mapsTagTag=v${buildId}
+
+
+############ REPOSITORY CONTROL ###############
+# This section defines properties parameterizing the repositories where plugins, fragments
+# bundles and features are being obtained from. 
+
+# The tags to use when fetching elements to build.
+# By default thebuilder will use whatever is in the maps.  
+# This value takes the form of a comma separated list of repository identifier (like used in the map files) and the 
+# overriding value
+# For example fetchTag=CVS=HEAD, SVN=v20050101
+fetchTag=HEAD
+skipFetch=true
+
+
+############# JAVA COMPILER OPTIONS ##############
+# The location of the Java jars to compile against.  Typically the rt.jar for your JDK/JRE
+# jce.jar is required by com.nokia.carbide.bugreport
+bootclasspath=${java.home}/lib/rt.jar;${java.home}/lib/jce.jar
+
+# specific JRE locations to compile against. These values are used to compile bundles specifying a 
+# Bundle-RequiredExecutionEnvironment. Uncomment and set values for environments that you support
+#CDC-1.0/Foundation-1.0= /path/to/rt.jar
+#CDC-1.1/Foundation-1.1=
+#OSGi/Minimum-1.0=
+#OSGi/Minimum-1.1=
+#JRE-1.1=
+#J2SE-1.2=
+#J2SE-1.3=
+#J2SE-1.4=
+#J2SE-1.5=
+#JavaSE-1.6=
+#PersonalJava-1.1=
+#PersonalJava-1.2=
+#CDC-1.0/PersonalBasis-1.0=
+#CDC-1.0/PersonalJava-1.0=
+#CDC-1.1/PersonalBasis-1.1=
+#CDC-1.1/PersonalJava-1.1=
+
+# Specify the output format of the compiler log when eclipse jdt is used
+logExtension=.log
+
+# Whether or not to include debug info in the output jars
+javacDebugInfo=on
+
+# Whether or not to fail the build if there are compiler errors
+javacFailOnError=true
+
+# Enable or disable verbose mode of the compiler
+javacVerbose=false
+
+# Extra arguments for the compiler. These are specific to the java compiler being used.
+#compilerArg=
+
+# Default value for the version of the source code. This value is used when compiling plug-ins that do not set the Bundle-RequiredExecutionEnvironment or set javacSource in build.properties
+javacSource=1.5
+
+# Default value for the version of the byte code targeted. This value is used when compiling plug-ins that do not set the Bundle-RequiredExecutionEnvironment or set javacTarget in build.properties.
+javacTarget=1.5
+
+# this is supposed to work to generated the meta data for the product, but there are problems
+# with it so commenting out for now.  we manually call the p2 meta data generator after building
+# the product.  note that the current problem with this is that it generates a path from the build
+# server in the meta data, so when you use the director, it puts an asbuild1 specific path in the
+# config.ini file and the product doesn't launch.  we're also able to pass -compress on the command
+# line which basically gives us a repository that's essentially an update site without the site.xml.
+# I don't see a similar option that can be specified here.
+#generate.p2.metadata = true
+#p2.metadata.repo = file:${repoDirectory}
+#p2.artifact.repo = file:${repoDirectory}
+#p2.metadata.repo.name = Carbide.c++ Metadata Repository
+#p2.artifact.repo.name = Carbide.c++ Artifact Repository
+#p2.flavor = tooling
+#p2.publish.artifacts = true
+
+# From: http://help.eclipse.org/stable/index.jsp?topic=/org.eclipse.pde.doc.user/tasks/pde_individual_source.htm
+# Generating Individual Source Bundles
+# PDE/Build can automatically generate individual source bundles, but only in a headless build.
+# Individual soure bundle geneation can be turned on by specifying:
+individualSourceBundles=true
+# This must be specified in the build configuration's top level build.properties file and it
+# controls all source generation for that build. See Generating Source Features and Plug-ins 
+# http://help.eclipse.org/stable/topic/org.eclipse.pde.doc.user/tasks/pde_source_generation.htm
+# for details on generating traditional source plug-ins and features, the remainder of this
+# page assumes familiarity with traditional source generation.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/automation/product_builder/carbide.c/config/customTargets.xml	Fri Oct 09 07:35:41 2009 -0500
@@ -0,0 +1,185 @@
+<project name="Build specific targets and properties" default="noDefault">
+
+	<!-- ===================================================================== -->
+	<!-- Run a given ${target} on all elements being built -->
+	<!-- Add on <ant> task for each top level element being built. -->
+	<!-- ===================================================================== -->
+	<available property="allElementsFile" file="${builder}/allElements.xml" value="${builder}/allElements.xml"/>
+	<property name="allElementsFile" location="${eclipse.pdebuild.templates}/headless-build/allElements.xml"/>
+
+	<import file="${allElementsFile}" />
+	<target name="allElements">
+		<antcall target="allElementsDelegator" />
+	</target>
+	
+	<!-- ===================================================================== -->
+	<!-- ===================================================================== -->
+	<target name="getBaseComponents" depends="checkLocalBase" unless="skipBase">
+		<get src="${eclipseBaseURL}" dest="${buildDirectory}/../temp-base.zip" />
+		<unzip dest="${base}" overwrite="true" src="${buildDirectory}/../temp-base.zip" />
+	</target>
+
+	<target name="checkLocalBase">
+		<available file="${base}" property="skipBase" />
+	</target>
+
+	<!-- ===================================================================== -->
+	<!-- Check out map files from correct repository -->
+	<!-- Replace values for mapsCheckoutTag as desired. -->
+	<!-- ===================================================================== -->
+	<target name="getMapFiles" depends="checkLocalMaps" unless="skipMaps">
+		<property name="mapsCheckoutTag" value="HEAD" />
+		<cvs cvsRoot="${mapsRepo}" package="${mapsRoot}" dest="${buildDirectory}/maps" tag="${mapsCheckoutTag}" />
+	</target>
+
+	<target name="checkLocalMaps">
+		<available property="skipMaps" file="${buildDirectory}/maps" />
+	</target>
+
+	<target name="tagMapFiles" if="tagMaps">
+		<cvs dest="${buildDirectory}/maps/${mapsRoot}" command="tag ${mapsTagTag}" />
+	</target>
+
+	<!-- ===================================================================== -->
+
+	<target name="clean" unless="noclean">
+		<antcall target="allElements">
+			<param name="target" value="cleanElement" />
+		</antcall>
+	</target>
+
+	<target name="gatherLogs">
+		<mkdir dir="${buildDirectory}/${buildLabel}/compilelogs" />
+		<antcall target="allElements">
+			<param name="target" value="gatherLogs" />
+		</antcall>
+		<unzip dest="${buildDirectory}/${buildLabel}/compilelogs" overwrite="true">
+			<fileset dir="${buildDirectory}/features">
+				<include name="**/*.log.zip" />
+			</fileset>
+		</unzip>
+	</target>
+
+	<!-- ===================================================================== -->
+	<!-- Steps to do before setup -->
+	<!-- ===================================================================== -->
+	<target name="preSetup">
+        <echo message="java.home is ${java.home}" />
+	</target>
+
+	<!-- ===================================================================== -->
+	<!-- Steps to do after setup but before starting the build proper -->
+	<!-- ===================================================================== -->
+	<target name="postSetup">
+		<antcall target="getBaseComponents" />
+	</target>
+
+	<!-- ===================================================================== -->
+	<!-- Steps to do before fetching the build elements -->
+	<!-- ===================================================================== -->
+	<target name="preFetch">
+	</target>
+
+	<!-- ===================================================================== -->
+	<!-- Steps to do after fetching the build elements -->
+	<!-- ===================================================================== -->
+	<target name="postFetch">
+	</target>
+
+	<!-- ===================================================================== -->
+	<!-- Steps to do before generating the build scripts. -->
+	<!-- ===================================================================== -->
+	<target name="preGenerate">
+        <antcall target="buildAPIdocumentation" />
+		<antcall target="addBuildNumber" />
+	</target>
+
+    <target name="buildAPIdocumentation">
+		<ant antfile="buildDoc.xml" dir="${buildDirectory}/plugins/com.nokia.carbide.cpp.sdk.doc.user/" target="all" />
+    </target>
+
+	<target name="addBuildNumber" if="buildNumber">
+        <replace dir="${buildDirectory}/plugins" value="${buildNumber}" token="@buildNumber@">
+            <include name="com.nokia.carbide.cpp/about.mappings" />
+        </replace>
+	</target>
+
+	<!-- ===================================================================== -->
+	<!-- Steps to do after generating the build scripts. -->
+	<!-- ===================================================================== -->
+	<target name="postGenerate">
+		<antcall target="clean" />
+	</target>
+
+	<!-- ===================================================================== -->
+	<!-- Steps to do before running the build.xmls for the elements being built. -->
+	<!-- ===================================================================== -->
+	<target name="preProcess">
+	</target>
+
+	<!-- ===================================================================== -->
+	<!-- Steps to do after running the build.xmls for the elements being built. -->
+	<!-- ===================================================================== -->
+	<target name="postProcess">
+	</target>
+
+	<!-- ===================================================================== -->
+	<!-- Steps to do before running assemble. -->
+	<!-- ===================================================================== -->
+	<target name="preAssemble">
+        <ant antfile="build_index.xml" dir="${buildDirectory}/plugins/com.nokia.carbide.cpp.capabilityScanner" />
+        <ant antfile="build_index.xml" dir="${buildDirectory}/plugins/com.nokia.carbide.cpp.compiler.doc.user" />
+        <ant antfile="build_index.xml" dir="${buildDirectory}/plugins/com.nokia.carbide.cpp.codescanner" />
+        <ant antfile="build_index.xml" dir="${buildDirectory}/plugins/com.nokia.carbide.cpp.sdk.doc.user" />
+        <ant antfile="build_index.xml" dir="${buildDirectory}/plugins/com.nokia.carbide.cpp.uiq.doc.user" />
+        <ant antfile="build_index.xml" dir="${buildDirectory}/plugins/com.nokia.carbide.cpp.pi.doc.user" />
+        <ant antfile="build_index.xml" dir="${buildDirectory}/plugins/com.nokia.carbide.cpp.debug.crashdebugger" />
+        <ant antfile="build_index.xml" dir="${buildDirectory}/plugins/com.nokia.carbide.cpp.uidesigner.doc.user" />
+        <ant antfile="build_index.xml" dir="${buildDirectory}/plugins/com.nokia.carbide.cpp.doc.user" />
+	</target>
+
+	<!-- ===================================================================== -->
+	<!-- Steps to do after  running assemble. -->
+	<!-- ===================================================================== -->
+	<target name="postAssemble">
+	</target>
+
+	<!-- ===================================================================== -->
+	<!-- Steps to do before running package. -->
+	<!-- ===================================================================== -->
+	<target name="prePackage">
+	</target>
+
+	<!-- ===================================================================== -->
+	<!-- Steps to do after  running package. -->
+	<!-- ===================================================================== -->
+	<target name="postPackage">
+	</target>
+
+	<!-- ===================================================================== -->
+	<!-- Steps to do after the build is done. -->
+	<!-- ===================================================================== -->
+	<target name="postBuild">
+		<antcall target="gatherLogs" />
+	</target>
+
+	<!-- ===================================================================== -->
+	<!-- Steps to do to test the build results -->
+	<!-- ===================================================================== -->
+	<target name="test">
+	</target>
+
+	<!-- ===================================================================== -->
+	<!-- Steps to do to publish the build results -->
+	<!-- ===================================================================== -->
+	<target name="publish">
+	</target>
+
+	<!-- ===================================================================== -->
+	<!-- Default target                                                        -->
+	<!-- ===================================================================== -->
+	<target name="noDefault">
+		<echo message="You must specify a target when invoking this file" />
+	</target>
+
+</project>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/automation/product_builder/carbide.c/map_adt.txt	Fri Oct 09 07:35:41 2009 -0500
@@ -0,0 +1,15 @@
+dev/ide/carbidecppplugins/frameworkplugins/com.nokia.s60tools.extensions.framework,features/com.nokia.s60tools.extensions.framework
+dev/ide/carbidecppplugins/frameworkplugins/com.nokia.s60tools.sdk,plugins/com.nokia.s60tools.sdk
+dev/ide/carbidecppplugins/frameworkplugins/com.nokia.s60tools.ui,plugins/com.nokia.s60tools.ui
+dev/ide/carbidecppplugins/frameworkplugins/com.nokia.s60tools.util,plugins/com.nokia.s60tools.util
+dev/ide/carbidecppplugins/sftemplateswizard/com.nokia.carbide.extensions.symbianfoundationtemplates,features/com.nokia.carbide.extensions.symbianfoundationtemplates
+dev/ide/carbidecppplugins/sftemplateswizard/com.nokia.s60tools.symbianfoundationtemplates,plugins/com.nokia.s60tools.symbianfoundationtemplates
+dev/ide/carbidecppplugins/sftemplateswizard/com.nokia.s60tools.symbianfoundationtemplates.help,plugins/com.nokia.s60tools.symbianfoundationtemplates.help
+ana/staticanaapps/srcanaapps/apiquerytool/com.nokia.carbide.extensions.apiquery,features/com.nokia.carbide.extensions.apiquery
+ana/staticanaapps/srcanaapps/apiquerytool/com.nokia.s60tools.apiquery,plugins/com.nokia.s60tools.apiquery
+ana/staticanaapps/srcanaapps/apiquerytool/com.nokia.s60tools.apiquery.cache,plugins/com.nokia.s60tools.apiquery.cache
+ana/staticanaapps/srcanaapps/apiquerytool/com.nokia.s60tools.apiquery.cache.help,plugins/com.nokia.s60tools.apiquery.cache.help
+ana/staticanaapps/srcanaapps/apiquerytool/com.nokia.s60tools.apiquery.help,plugins/com.nokia.s60tools.apiquery.help
+ana/staticanaapps/srcanaapps/depexplorer/com.nokia.carbide.extensions.appdep,features/com.nokia.carbide.extensions.appdep
+ana/staticanaapps/srcanaapps/depexplorer/com.nokia.s60tools.appdep,plugins/com.nokia.s60tools.appdep
+ana/staticanaapps/srcanaapps/depexplorer/com.nokia.s60tools.appdep.help,plugins/com.nokia.s60tools.appdep.help
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/automation/product_builder/carbide.c/map_carbide.txt	Fri Oct 09 07:35:41 2009 -0500
@@ -0,0 +1,100 @@
+ana/dynaanaapps/sysperfana/perfinvestigator/com.nokia.carbide.cpp.pi,plugins/com.nokia.carbide.cpp.pi
+ana/dynaanaapps/sysperfana/perfinvestigator/com.nokia.carbide.cpp.pi-feature,features/com.nokia.carbide.cpp.pi
+ana/dynaanaapps/sysperfana/perfinvestigator/com.nokia.carbide.cpp.pi.address,plugins/com.nokia.carbide.cpp.pi.address
+ana/dynaanaapps/sysperfana/perfinvestigator/com.nokia.carbide.cpp.pi.button,plugins/com.nokia.carbide.cpp.pi.button
+ana/dynaanaapps/sysperfana/perfinvestigator/com.nokia.carbide.cpp.pi.call,plugins/com.nokia.carbide.cpp.pi.call
+ana/dynaanaapps/sysperfana/perfinvestigator/com.nokia.carbide.cpp.pi.core,plugins/com.nokia.carbide.cpp.pi.core
+ana/dynaanaapps/sysperfana/perfinvestigator/com.nokia.carbide.cpp.pi.doc.user,plugins/com.nokia.carbide.cpp.pi.doc.user
+ana/dynaanaapps/sysperfana/perfinvestigator/com.nokia.carbide.cpp.pi.function,plugins/com.nokia.carbide.cpp.pi.function
+ana/dynaanaapps/sysperfana/perfinvestigator/com.nokia.carbide.cpp.pi.instr,plugins/com.nokia.carbide.cpp.pi.instr
+ana/dynaanaapps/sysperfana/perfinvestigator/com.nokia.carbide.cpp.pi.memory,plugins/com.nokia.carbide.cpp.pi.memory
+ana/dynaanaapps/sysperfana/perfinvestigator/com.nokia.carbide.cpp.pi.power,plugins/com.nokia.carbide.cpp.pi.power
+ana/dynaanaapps/sysperfana/perfinvestigator/com.nokia.carbide.cpp.pi.priority,plugins/com.nokia.carbide.cpp.pi.priority
+ana/dynaanaapps/sysperfana/perfinvestigator/com.nokia.carbide.cpp.pi.priority2,plugins/com.nokia.carbide.cpp.pi.priority2
+ana/dynaanaapps/sysperfana/perfinvestigator/com.nokia.carbide.cpp.pi.ui,plugins/com.nokia.carbide.cpp.pi.ui
+ana/dynaanaapps/sysperfana/perfinvestigator/com.nokia.carbide.cpp.pi.util,plugins/com.nokia.carbide.cpp.pi.util
+ana/dynaanaapps/sysperfana/perfinvestigator/com.nokia.carbide.cpp.pi.wizards,plugins/com.nokia.carbide.cpp.pi.wizards
+dev/eclipseenv/eclipse/cdt/cdt_5_0_x/org.eclipse.cdt,plugins/org.eclipse.cdt
+dev/eclipseenv/eclipse/cdt/cdt_5_0_x/org.eclipse.cdt-feature,features/org.eclipse.cdt
+dev/eclipseenv/eclipse/cdt/cdt_5_0_x/org.eclipse.cdt.core,plugins/org.eclipse.cdt.core
+dev/eclipseenv/eclipse/cdt/cdt_5_0_x/org.eclipse.cdt.core.win32,plugins/org.eclipse.cdt.core.win32
+dev/eclipseenv/eclipse/cdt/cdt_5_0_x/org.eclipse.cdt.debug.core,plugins/org.eclipse.cdt.debug.core
+dev/eclipseenv/eclipse/cdt/cdt_5_0_x/org.eclipse.cdt.debug.mi.core,plugins/org.eclipse.cdt.debug.mi.core
+dev/eclipseenv/eclipse/cdt/cdt_5_0_x/org.eclipse.cdt.debug.mi.ui,plugins/org.eclipse.cdt.debug.mi.ui
+dev/eclipseenv/eclipse/cdt/cdt_5_0_x/org.eclipse.cdt.debug.ui,plugins/org.eclipse.cdt.debug.ui
+dev/eclipseenv/eclipse/cdt/cdt_5_0_x/org.eclipse.cdt.doc.user,plugins/org.eclipse.cdt.doc.user
+dev/eclipseenv/eclipse/cdt/cdt_5_0_x/org.eclipse.cdt.gnu.build-feature,features/org.eclipse.cdt.gnu.build
+dev/eclipseenv/eclipse/cdt/cdt_5_0_x/org.eclipse.cdt.gnu.debug-feature,features/org.eclipse.cdt.gnu.debug
+dev/eclipseenv/eclipse/cdt/cdt_5_0_x/org.eclipse.cdt.launch,plugins/org.eclipse.cdt.launch
+dev/eclipseenv/eclipse/cdt/cdt_5_0_x/org.eclipse.cdt.make.core,plugins/org.eclipse.cdt.make.core
+dev/eclipseenv/eclipse/cdt/cdt_5_0_x/org.eclipse.cdt.make.ui,plugins/org.eclipse.cdt.make.ui
+dev/eclipseenv/eclipse/cdt/cdt_5_0_x/org.eclipse.cdt.managedbuilder.core,plugins/org.eclipse.cdt.managedbuilder.core
+dev/eclipseenv/eclipse/cdt/cdt_5_0_x/org.eclipse.cdt.managedbuilder.gnu.ui,plugins/org.eclipse.cdt.managedbuilder.gnu.ui
+dev/eclipseenv/eclipse/cdt/cdt_5_0_x/org.eclipse.cdt.managedbuilder.ui,plugins/org.eclipse.cdt.managedbuilder.ui
+dev/eclipseenv/eclipse/cdt/cdt_5_0_x/org.eclipse.cdt.platform-feature,features/org.eclipse.cdt.platform
+dev/eclipseenv/eclipse/cdt/cdt_5_0_x/org.eclipse.cdt.ui,plugins/org.eclipse.cdt.ui
+dev/eclipseenv/eclipse/noneclipseoss/com.sun.syndication.1.0,plugins/com.sun.syndication
+dev/eclipseenv/eclipse/noneclipseoss/com.sun.syndication.fetcher.0.9,plugins/com.sun.syndication.fetcher
+dev/eclipseenv/eclipse/noneclipseoss/org.jdom.1.0,plugins/org.jdom
+dev/ide/carbidecpp/builder/com.nokia.carbide.cdt.builder,plugins/com.nokia.carbide.cdt.builder
+dev/ide/carbidecpp/builder/com.nokia.carbide.cpp.builder.utils,plugins/com.nokia.carbide.cpp.builder.utils
+dev/ide/carbidecpp/connectivity/com.nokia.carbide.remoteConnections,plugins/com.nokia.carbide.remoteConnections
+dev/ide/carbidecpp/connectivity/com.nokia.tcf,plugins/com.nokia.tcf
+dev/ide/carbidecpp/core/com.nokia.carbide.bugdatacollector,plugins/com.nokia.carbide.bugdatacollector
+dev/ide/carbidecpp/core/com.nokia.carbide.bugreport,plugins/com.nokia.carbide.bugreport
+dev/ide/carbidecpp/core/com.nokia.carbide.bugreport-feature,features/com.nokia.carbide.bugreport
+dev/ide/carbidecpp/core/com.nokia.carbide.cpp,plugins/com.nokia.carbide.cpp
+dev/ide/carbidecpp/core/com.nokia.carbide.cpp-feature,features/com.nokia.carbide.cpp
+dev/ide/carbidecpp/core/com.nokia.carbide.cpp.codescanner,plugins/com.nokia.carbide.cpp.codescanner
+dev/ide/carbidecpp/core/com.nokia.carbide.cpp.codescanner-feature,features/com.nokia.carbide.cpp.codescanner
+dev/ide/carbidecpp/core/com.nokia.carbide.cpp.compiler.doc.user,plugins/com.nokia.carbide.cpp.compiler.doc.user
+dev/ide/carbidecpp/core/com.nokia.carbide.cpp.doc.user,plugins/com.nokia.carbide.cpp.doc.user
+dev/ide/carbidecpp/core/com.nokia.carbide.cpp.featureTracker,plugins/com.nokia.carbide.cpp.featureTracker
+dev/ide/carbidecpp/core/com.nokia.carbide.cpp.leavescan,plugins/com.nokia.carbide.cpp.leavescan
+dev/ide/carbidecpp/core/com.nokia.carbide.cpp.news.reader,plugins/com.nokia.carbide.cpp.news.reader
+dev/ide/carbidecpp/core/com.nokia.carbide.cpp.oss,plugins/com.nokia.carbide.cpp.oss
+dev/ide/carbidecpp/core/com.nokia.carbide.cpp.sdk.core,plugins/com.nokia.carbide.cpp.sdk.core
+dev/ide/carbidecpp/core/com.nokia.carbide.cpp.sdk.ui,plugins/com.nokia.carbide.cpp.sdk.ui
+dev/ide/carbidecpp/core/com.nokia.carbide.cpp.sysdoc.hover,plugins/com.nokia.carbide.cpp.sysdoc.hover
+dev/ide/carbidecpp/core/com.nokia.carbide.cpp.sysdoc.hover.dependencies,plugins/com.nokia.carbide.cpp.sysdoc.hover.dependencies
+dev/ide/carbidecpp/core/com.nokia.carbide.cpp.ui,plugins/com.nokia.carbide.cpp.ui
+dev/ide/carbidecpp/core/com.nokia.carbide.help.common,plugins/com.nokia.carbide.help.common
+dev/ide/carbidecpp/core/com.nokia.carbide.sdt.utils,plugins/com.nokia.sdt.utils
+dev/ide/carbidecpp/core/com.nokia.carbide.search.system,plugins/com.nokia.carbide.search.system
+dev/ide/carbidecpp/core/com.nokia.carbide.search.system-feature,features/com.nokia.carbide.search.system
+dev/ide/carbidecpp/core/com.nokia.carbide.templatewizard,plugins/com.nokia.carbide.templatewizard
+dev/ide/carbidecpp/core/com.nokia.carbide.updater,plugins/com.nokia.carbide.updater
+dev/ide/carbidecpp/core/com.nokia.carbide.win32.utils,plugins/com.nokia.carbide.win32.utils
+dev/ide/carbidecpp/core/com.nokia.cpp.utils.core,plugins/com.nokia.cpp.utils.core
+dev/ide/carbidecpp/core/com.nokia.cpp.utils.ui,plugins/com.nokia.cpp.utils.ui
+dev/ide/carbidecpp/debuggercdi/com.nokia.carbide.cpp.debug.capabilities,plugins/com.nokia.carbide.cpp.debug.capabilities
+dev/ide/carbidecpp/debuggercdi/com.nokia.carbide.cpp.debug.crashdebugger,plugins/com.nokia.carbide.cpp.debug.crashdebugger
+dev/ide/carbidecpp/debuggercdi/com.nokia.carbide.cpp.debug.kernelaware,plugins/com.nokia.carbide.cpp.debug.kernelaware
+dev/ide/carbidecpp/debuggercdi/com.nokia.carbide.trk.support,plugins/com.nokia.carbide.trk.support
+dev/ide/carbidecpp/debuggercdi/com.nokia.cdt.debug.cw.symbian,plugins/com.nokia.cdt.debug.cw.symbian
+dev/ide/carbidecpp/debuggercdi/com.nokia.cdt.debug.launch,plugins/com.nokia.cdt.debug.launch
+dev/ide/carbidecpp/project/com.nokia.carbide.cpp.epoc.engine,plugins/com.nokia.carbide.cpp.epoc.engine
+dev/ide/carbidecpp/project/com.nokia.carbide.cpp.project.core,plugins/com.nokia.carbide.cpp.project.core
+dev/ide/carbidecpp/project/com.nokia.carbide.cpp.project.ui,plugins/com.nokia.carbide.cpp.project.ui
+dev/ide/carbidecpp/qt/com.nokia.carbide.cpp.qt.core,plugins/com.nokia.carbide.cpp.qt.core
+dev/ide/carbidecpp/qt/com.nokia.carbide.cpp.qt.ui,plugins/com.nokia.carbide.cpp.qt.ui
+dev/ide/carbidecpp/templates/com.nokia.carbide.cpp.qt.templates,plugins/com.nokia.carbide.cpp.qt.templates
+dev/ide/carbidecpp/templates/com.nokia.carbide.cpp.templates,plugins/com.nokia.carbide.cpp.templates
+dev/ide/carbidecpp/uidesigner/com.nokia.carbide.cpp.uidesigner.doc.user,plugins/com.nokia.carbide.cpp.uidesigner.doc.user
+dev/ide/carbidecpp/uidesigner/com.nokia.carbide.cpp.uiq.components,plugins/com.nokia.carbide.cpp.uiq.components
+dev/ide/carbidecpp/uidesigner/com.nokia.carbide.cpp.uiq.doc.user,plugins/com.nokia.carbide.cpp.uiq.doc.user
+dev/ide/carbidecpp/uidesigner/com.nokia.carbide.cpp.uiq.ui,plugins/com.nokia.carbide.cpp.uiq.ui
+dev/ide/carbidecpp/uidesigner/com.nokia.carbide.cpp.uiq.ui-feature,features/com.nokia.carbide.cpp.uiq.ui
+dev/ide/carbidecpp/uidesigner/com.nokia.sdt.component.symbian,plugins/com.nokia.sdt.component.symbian
+dev/ide/carbidecpp/uidesigner/com.nokia.sdt.emf.dm,plugins/com.nokia.sdt.emf.dm
+dev/ide/carbidecpp/uidesigner/com.nokia.sdt.series60.componentlibrary,plugins/com.nokia.sdt.series60.componentlibrary
+dev/ide/carbidecpp/uidesigner/com.nokia.sdt.sourcegen,plugins/com.nokia.sdt.sourcegen
+dev/ide/carbidecpp/uidesigner/com.nokia.sdt.symbian,plugins/com.nokia.sdt.symbian
+dev/ide/carbidecpp/uidesigner/com.nokia.sdt.symbian.ui,plugins/com.nokia.sdt.symbian.ui
+dev/ide/carbidecpp/uidesigner/com.nokia.sdt.uidesigner,plugins/com.nokia.sdt.uidesigner
+dev/ide/carbidecpp/uidesigner/com.nokia.sdt.uidesigner-feature,features/com.nokia.sdt.uidesigner
+dev/ide/carbidecpp/uidesigner/com.nokia.sdt.uidesigner.derived,plugins/com.nokia.sdt.uidesigner.derived
+dev/ide/carbidecpp/uidesigner/com.nokia.sdt.uimodel,plugins/com.nokia.sdt.uimodel
+ana/staticanamdw/srcanamdw/capabilityscanner/com.nokia.carbide.cpp.capabilityScanner,plugins/com.nokia.carbide.cpp.capabilityScanner
+ana/staticanamdw/srcanamdw/capabilityscanner/com.nokia.carbide.cpp.capabilityScanner-feature,features/com.nokia.carbide.cpp.capabilityScanner
+ana/staticanamdw/srcanamdw/capabilityscanner/com.nokia.carbide.cpp.epocwindDisplay,plugins/com.nokia.carbide.cpp.epocwindDisplay
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/automation/product_builder/carbide.c/map_cdk.txt	Fri Oct 09 07:35:41 2009 -0500
@@ -0,0 +1,4 @@
+dev/ide/carbidecpp/carbidesdk/com.nokia.carbide.cpp.sdk-feature,features/com.nokia.carbide.cpp.sdk
+dev/ide/carbidecpp/carbidesdk/com.nokia.carbide.cpp.sdk.doc.user,plugins/com.nokia.carbide.cpp.sdk.doc.user
+dev/ide/carbidecpp/carbidesdk/com.nokia.carbide.cpp.sdk.examples,plugins/com.nokia.carbide.cpp.sdk.examples
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/automation/product_builder/carbide.c/map_dev_kit.txt	Fri Oct 09 07:35:41 2009 -0500
@@ -0,0 +1,269 @@
+,features/org.eclipse.cvs.source
+,features/org.eclipse.draw2d.sdk
+,features/org.eclipse.draw2d.source
+,features/org.eclipse.emf.codegen.ecore.ui
+,features/org.eclipse.emf.codegen.ecore
+,features/org.eclipse.emf.codegen.ui
+,features/org.eclipse.emf.codegen
+,features/org.eclipse.emf.converter
+,features/org.eclipse.emf.doc
+,features/org.eclipse.emf.ecore.sdo.doc
+,features/org.eclipse.emf.ecore.sdo.editor
+,features/org.eclipse.emf.ecore.sdo.sdk
+,features/org.eclipse.emf.ecore.sdo.source
+,features/org.eclipse.emf.sdk
+,features/org.eclipse.emf.source
+,features/org.eclipse.emf
+,features/org.eclipse.equinox.executable
+,features/org.eclipse.gef.sdk
+,features/org.eclipse.gef.source
+,features/org.eclipse.help.source
+,features/org.eclipse.jdt.source
+,features/org.eclipse.jdt
+,features/org.eclipse.pde.p2.source
+,features/org.eclipse.pde.p2
+,features/org.eclipse.pde.source
+,features/org.eclipse.pde
+,features/org.eclipse.platform.source
+,features/org.eclipse.rcp.source
+,features/org.eclipse.sdk
+,features/org.eclipse.test
+,features/org.eclipse.xsd.doc
+,features/org.eclipse.xsd.ecore.converter
+,features/org.eclipse.xsd.sdk
+,features/org.eclipse.xsd.source
+,plugins/com.ibm.icu.source
+,plugins/javax.servlet.jsp.source
+,plugins/javax.servlet.source
+,plugins/org.apache.ant.source
+,plugins/org.apache.commons.el.source
+,plugins/org.apache.commons.logging.source
+,plugins/org.apache.jasper.source
+,plugins/org.apache.lucene.analysis.source
+,plugins/org.apache.lucene.source
+,plugins/org.eclipse.ant.core.source
+,plugins/org.eclipse.ant.optional.junit
+,plugins/org.eclipse.ant.ui.source
+,plugins/org.eclipse.ant.ui
+,plugins/org.eclipse.compare.source
+,plugins/org.eclipse.core.commands.source
+,plugins/org.eclipse.core.contenttype.source
+,plugins/org.eclipse.core.databinding.beans.source
+,plugins/org.eclipse.core.databinding.source
+,plugins/org.eclipse.core.expressions.source
+,plugins/org.eclipse.core.filebuffers.source
+,plugins/org.eclipse.core.filesystem.macosx
+,plugins/org.eclipse.core.filesystem.solaris.sparc
+,plugins/org.eclipse.core.filesystem.source
+,plugins/org.eclipse.core.jobs.source
+,plugins/org.eclipse.core.net.source
+,plugins/org.eclipse.core.resources.compatibility.source
+,plugins/org.eclipse.core.resources.source
+,plugins/org.eclipse.core.runtime.compatibility.auth.source
+,plugins/org.eclipse.core.runtime.compatibility.registry.source
+,plugins/org.eclipse.core.runtime.compatibility.source
+,plugins/org.eclipse.core.runtime.source
+,plugins/org.eclipse.core.variables.source
+,plugins/org.eclipse.cvs.source
+,plugins/org.eclipse.debug.core.source
+,plugins/org.eclipse.debug.ui.source
+,plugins/org.eclipse.draw2d.doc.isv
+,plugins/org.eclipse.draw2d.source
+,plugins/org.eclipse.emf.ant
+,plugins/org.eclipse.emf.cheatsheets
+,plugins/org.eclipse.emf.codegen.ecore.ui
+,plugins/org.eclipse.emf.codegen.ecore
+,plugins/org.eclipse.emf.codegen.ui
+,plugins/org.eclipse.emf.codegen
+,plugins/org.eclipse.emf.converter
+,plugins/org.eclipse.emf.doc
+,plugins/org.eclipse.emf.ecore.sdo.doc
+,plugins/org.eclipse.emf.ecore.sdo.editor
+,plugins/org.eclipse.emf.ecore.sdo.source
+,plugins/org.eclipse.emf.example.installer
+,plugins/org.eclipse.emf.exporter
+,plugins/org.eclipse.emf.importer.ecore
+,plugins/org.eclipse.emf.importer.java
+,plugins/org.eclipse.emf.importer.rose
+,plugins/org.eclipse.emf.importer
+,plugins/org.eclipse.emf.source
+,plugins/org.eclipse.emf
+,plugins/org.eclipse.equinox.app.source
+,plugins/org.eclipse.equinox.common.source
+,plugins/org.eclipse.equinox.http.jetty.source
+,plugins/org.eclipse.equinox.http.registry.source
+,plugins/org.eclipse.equinox.http.servlet.source
+,plugins/org.eclipse.equinox.jsp.jasper.registry.source
+,plugins/org.eclipse.equinox.jsp.jasper.source
+,plugins/org.eclipse.equinox.launcher.carbon.macosx
+,plugins/org.eclipse.equinox.launcher.gtk.solaris.sparc
+,plugins/org.eclipse.equinox.launcher.motif.aix.ppc
+,plugins/org.eclipse.equinox.launcher.source
+,plugins/org.eclipse.equinox.preferences.source
+,plugins/org.eclipse.equinox.registry.source
+,plugins/org.eclipse.equinox.security.macosx.source
+,plugins/org.eclipse.equinox.security.macosx
+,plugins/org.eclipse.equinox.security.source
+,plugins/org.eclipse.equinox.security.ui.source
+,plugins/org.eclipse.equinox.security.win32.x86.source
+,plugins/org.eclipse.equinox.simpleconfigurator.source
+,plugins/org.eclipse.gef.doc.isv
+,plugins/org.eclipse.gef.examples.ui.pde
+,plugins/org.eclipse.gef.source
+,plugins/org.eclipse.help.appserver.source
+,plugins/org.eclipse.help.base.source
+,plugins/org.eclipse.help.source
+,plugins/org.eclipse.help.ui.source
+,plugins/org.eclipse.help.webapp.source
+,plugins/org.eclipse.jdt.apt.core.source
+,plugins/org.eclipse.jdt.apt.core
+,plugins/org.eclipse.jdt.apt.pluggable.core.source
+,plugins/org.eclipse.jdt.apt.pluggable.core
+,plugins/org.eclipse.jdt.apt.ui.source
+,plugins/org.eclipse.jdt.apt.ui
+,plugins/org.eclipse.jdt.compiler.apt.source
+,plugins/org.eclipse.jdt.compiler.apt
+,plugins/org.eclipse.jdt.compiler.tool.source
+,plugins/org.eclipse.jdt.compiler.tool
+,plugins/org.eclipse.jdt.core.manipulation.source
+,plugins/org.eclipse.jdt.core.manipulation
+,plugins/org.eclipse.jdt.core.source
+,plugins/org.eclipse.jdt.core
+,plugins/org.eclipse.jdt.debug.source
+,plugins/org.eclipse.jdt.debug.ui.source
+,plugins/org.eclipse.jdt.debug.ui
+,plugins/org.eclipse.jdt.debug
+,plugins/org.eclipse.jdt.doc.isv
+,plugins/org.eclipse.jdt.doc.user
+,plugins/org.eclipse.jdt.junit.runtime.source
+,plugins/org.eclipse.jdt.junit.runtime
+,plugins/org.eclipse.jdt.junit.source
+,plugins/org.eclipse.jdt.junit4.runtime.source
+,plugins/org.eclipse.jdt.junit4.runtime
+,plugins/org.eclipse.jdt.junit
+,plugins/org.eclipse.jdt.launching.macosx.source
+,plugins/org.eclipse.jdt.launching.macosx
+,plugins/org.eclipse.jdt.launching.source
+,plugins/org.eclipse.jdt.launching
+,plugins/org.eclipse.jdt.source
+,plugins/org.eclipse.jdt.ui.source
+,plugins/org.eclipse.jdt.ui
+,plugins/org.eclipse.jdt
+,plugins/org.eclipse.jface.databinding.source
+,plugins/org.eclipse.jface.source
+,plugins/org.eclipse.jface.text.source
+,plugins/org.eclipse.jsch.core.source
+,plugins/org.eclipse.jsch.ui.source
+,plugins/org.eclipse.ltk.core.refactoring.source
+,plugins/org.eclipse.ltk.ui.refactoring.source
+,plugins/org.eclipse.osgi.services.source
+,plugins/org.eclipse.osgi.source
+,plugins/org.eclipse.osgi.util.source
+,plugins/org.eclipse.pde.api.tools.source
+,plugins/org.eclipse.pde.api.tools.ui.source
+,plugins/org.eclipse.pde.api.tools.ui
+,plugins/org.eclipse.pde.api.tools
+,plugins/org.eclipse.pde.build.source
+,plugins/org.eclipse.pde.build
+,plugins/org.eclipse.pde.core.source
+,plugins/org.eclipse.pde.core
+,plugins/org.eclipse.pde.doc.user
+,plugins/org.eclipse.pde.junit.runtime.source
+,plugins/org.eclipse.pde.junit.runtime
+,plugins/org.eclipse.pde.p2.ui.source
+,plugins/org.eclipse.pde.p2.ui
+,plugins/org.eclipse.pde.runtime.source
+,plugins/org.eclipse.pde.runtime
+,plugins/org.eclipse.pde.source
+,plugins/org.eclipse.pde.ui.source
+,plugins/org.eclipse.pde.ui.templates.source
+,plugins/org.eclipse.pde.ui.templates
+,plugins/org.eclipse.pde.ui
+,plugins/org.eclipse.pde
+,plugins/org.eclipse.platform.doc.isv
+,plugins/org.eclipse.platform.source
+,plugins/org.eclipse.rcp.source
+,plugins/org.eclipse.sdk
+,plugins/org.eclipse.search.source
+,plugins/org.eclipse.swt.carbon.macosx.source
+,plugins/org.eclipse.swt.carbon.macosx
+,plugins/org.eclipse.swt.gtk.solaris.sparc.source
+,plugins/org.eclipse.swt.gtk.solaris.sparc
+,plugins/org.eclipse.swt.motif.aix.ppc.source
+,plugins/org.eclipse.swt.motif.aix.ppc
+,plugins/org.eclipse.swt.win32.win32.x86.source
+,plugins/org.eclipse.swt.win32.win32.x86_64.source
+,plugins/org.eclipse.swt.wpf.win32.x86.source
+,plugins/org.eclipse.team.core.source
+,plugins/org.eclipse.team.cvs.core.source
+,plugins/org.eclipse.team.cvs.ssh.source
+,plugins/org.eclipse.team.cvs.ssh2.source
+,plugins/org.eclipse.team.cvs.ui.source
+,plugins/org.eclipse.team.ui.source
+,plugins/org.eclipse.test.performance.win32
+,plugins/org.eclipse.test.performance
+,plugins/org.eclipse.test.source
+,plugins/org.eclipse.test
+,plugins/org.eclipse.text.source
+,plugins/org.eclipse.ui.browser.source
+,plugins/org.eclipse.ui.carbon.source
+,plugins/org.eclipse.ui.carbon
+,plugins/org.eclipse.ui.cheatsheets.source
+,plugins/org.eclipse.ui.console.source
+,plugins/org.eclipse.ui.editors.source
+,plugins/org.eclipse.ui.externaltools.source
+,plugins/org.eclipse.ui.forms.source
+,plugins/org.eclipse.ui.ide.application.source
+,plugins/org.eclipse.ui.ide.source
+,plugins/org.eclipse.ui.intro.source
+,plugins/org.eclipse.ui.intro.universal.source
+,plugins/org.eclipse.ui.navigator.resources.source
+,plugins/org.eclipse.ui.navigator.source
+,plugins/org.eclipse.ui.net.source
+,plugins/org.eclipse.ui.presentations.r21.source
+,plugins/org.eclipse.ui.source
+,plugins/org.eclipse.ui.views.log.source
+,plugins/org.eclipse.ui.views.properties.tabbed.source
+,plugins/org.eclipse.ui.views.source
+,plugins/org.eclipse.ui.win32.source
+,plugins/org.eclipse.ui.workbench.compatibility.source
+,plugins/org.eclipse.ui.workbench.source
+,plugins/org.eclipse.ui.workbench.texteditor.source
+,plugins/org.eclipse.update.configurator.source
+,plugins/org.eclipse.update.core.source
+,plugins/org.eclipse.update.core.win32.source
+,plugins/org.eclipse.update.scheduler.source
+,plugins/org.eclipse.update.ui.source
+,plugins/org.eclipse.xsd.cheatsheets
+,plugins/org.eclipse.xsd.doc
+,plugins/org.eclipse.xsd.ecore.converter
+,plugins/org.eclipse.xsd.ecore.exporter
+,plugins/org.eclipse.xsd.ecore.importer
+,plugins/org.eclipse.xsd.example.installer
+,plugins/org.eclipse.xsd.source
+,plugins/org.junit.source
+,plugins/org.junit4.source
+,plugins/org.junit4
+,plugins/org.junit
+,plugins/org.mortbay.jetty.source
+,plugins/org.objectweb.asm.source
+,plugins/org.objectweb.asm
+,plugins/org.eclipse.core.filesystem.hpux.ia64_32
+,plugins/org.eclipse.core.filesystem.linux.ppc
+,plugins/org.eclipse.core.filesystem.linux.x86
+,plugins/org.eclipse.core.filesystem.linux.x86_64
+,plugins/org.eclipse.core.net.linux.x86
+,plugins/org.eclipse.equinox.launcher.gtk.linux.ppc
+,plugins/org.eclipse.equinox.launcher.gtk.linux.x86
+,plugins/org.eclipse.equinox.launcher.gtk.linux.x86_64
+,plugins/org.eclipse.equinox.launcher.motif.hpux.ia64_32
+,plugins/org.eclipse.swt.gtk.linux.ppc.source
+,plugins/org.eclipse.swt.gtk.linux.ppc
+,plugins/org.eclipse.swt.gtk.linux.x86.source
+,plugins/org.eclipse.swt.gtk.linux.x86
+,plugins/org.eclipse.swt.gtk.linux.x86_64.source
+,plugins/org.eclipse.swt.gtk.linux.x86_64
+,plugins/org.eclipse.swt.motif.hpux.ia64_32.source
+,plugins/org.eclipse.swt.motif.hpux.ia64_32
+,plugins/org.eclipse.update.core.linux.source
+,plugins/org.eclipse.update.core.linux
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/automation/product_builder/carbide.c/map_pdt.txt	Fri Oct 09 07:35:41 2009 -0500
@@ -0,0 +1,26 @@
+ana/compatanaapps/apicompatanaapps/compatanalyser/com.nokia.carbide.extensions.compatibilityanalyser,features/com.nokia.carbide.extensions.compatibilityanalyser
+ana/compatanaapps/apicompatanaapps/compatanalyser/com.nokia.s60tools.compatibilityanalyser,plugins/com.nokia.s60tools.compatibilityanalyser
+ana/compatanaapps/apicompatanaapps/compatanalyser/com.nokia.s60tools.compatibilityanalyser.corecomponents,plugins/com.nokia.s60tools.compatibilityanalyser.corecomponents
+ana/compatanaapps/apicompatanaapps/compatanalyser/com.nokia.s60tools.compatibilityanalyser.help,plugins/com.nokia.s60tools.compatibilityanalyser.help
+ana/compatanaapps/apicompatanaapps/compatanalyser/com.nokia.s60tools.compatibilityanalyser.thirdpartysources,plugins/com.nokia.s60tools.compatibilityanalyser.thirdpartysources
+dev/ide/carbidecppplugins/creatorextension/com.nokia.carbide.extension.creator,features/com.nokia.carbide.extensions.creator
+dev/ide/carbidecppplugins/creatorextension/com.nokia.s60tools.creator,plugins/com.nokia.s60tools.creator
+dev/ide/carbidecppplugins/creatorextension/com.nokia.s60tools.creator.help,plugins/com.nokia.s60tools.creator.help
+dev/ide/carbidecppplugins/htiextension/com.nokia.carbide.extensions.hticonnection,features/com.nokia.carbide.extensions.hticonnection
+dev/ide/carbidecppplugins/htiextension/com.nokia.s60tools.hticonnection,plugins/com.nokia.s60tools.hticonnection
+dev/ide/carbidecppplugins/htiextension/com.nokia.s60tools.hticonnection.help,plugins/com.nokia.s60tools.hticonnection.help
+dev/ide/carbidecppplugins/imakerplugin/com.nokia.carbide.extensions.imakerplugin,features/com.nokia.carbide.extensions.imaker
+dev/ide/carbidecppplugins/imakerplugin/com.nokia.s60tools.imakerplugin,plugins/com.nokia.s60tools.imakerplugin
+dev/ide/carbidecppplugins/imakerplugin/com.nokia.s60tools.imakerplugin.help,plugins/com.nokia.s60tools.imakerplugin.help
+dev/ide/carbidecppplugins/metadataeditor/com.nokia.carbide.extensions.metadataeditor,features/com.nokia.carbide.extensions.metadataeditor
+dev/ide/carbidecppplugins/metadataeditor/com.nokia.s60tools.metadataeditor,plugins/com.nokia.s60tools.metadataeditor
+dev/ide/carbidecppplugins/metadataeditor/com.nokia.s60tools.metadataeditor.help,plugins/com.nokia.s60tools.metadataeditor.help
+dev/ide/carbidecppplugins/remotecontrol/com.nokia.carbide.extensions.remotecontrol,features/com.nokia.carbide.extensions.remotecontrol
+dev/ide/carbidecppplugins/remotecontrol/com.nokia.s60tools.remotecontrol,plugins/com.nokia.s60tools.remotecontrol
+dev/ide/carbidecppplugins/remotecontrol/com.nokia.s60tools.remotecontrol.help,plugins/com.nokia.s60tools.remotecontrol.help
+ana/testcreationandmgmt/testdev/stifextension/com.nokia.carbide.extensions.stif,features/com.nokia.carbide.extensions.stif
+ana/testcreationandmgmt/testdev/stifextension/com.nokia.s60tools.stif,plugins/com.nokia.s60tools.stif
+ana/testcreationandmgmt/testdev/stifextension/com.nokia.s60tools.stif.configeditor,plugins/com.nokia.s60tools.stif.configeditor
+ana/testcreationandmgmt/testdev/stifextension/com.nokia.s60tools.stif.help,plugins/com.nokia.s60tools.stif.help
+ana/testcreationandmgmt/testdev/stifextension/com.nokia.s60tools.stif.scripteditor,plugins/com.nokia.s60tools.stif.scripteditor
+ana/testcreationandmgmt/testdev/stifextension/com.nokia.s60tools.testdrop,plugins/com.nokia.s60tools.testdrop
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/automation/product_builder/carbide.c/product.xml	Fri Oct 09 07:35:41 2009 -0500
@@ -0,0 +1,107 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?pde version="3.4"?>
+
+<product name="Carbide.c++" id="com.nokia.carbide.cpp.product" application="org.eclipse.ui.ide.workbench" version="${CARBIDE_VERSION_3DIGITS}" useFeatures="true">
+
+   <aboutInfo>
+      <image path="icons/about.png"/>
+      <text>
+         %productBlurb
+      </text>
+   </aboutInfo>
+
+   <configIni use="default">
+   </configIni>
+
+   <launcherArgs>
+      <vmArgs>-Xms40m
+-Xmx1024m
+-XX:MaxPermSize=96M</vmArgs>
+      <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts</vmArgsMac>
+   </launcherArgs>
+
+   <windowImages i16="icons/Carbide_c_icon_16x16.png" i32="icons/Carbide_c_icon_32x32.png" i48="icons/Carbide_c_icon_48x48.png"/>
+
+   <splash
+      location="com.nokia.carbide.cpp"
+      startupProgressRect="0,244,469,21"
+      startupMessageRect="12,190,441,15"
+      startupForegroundColor="777777" />
+   <launcher name="Carbide.c++.${CARBIDE_VERSION_2DIGITS}">
+      <solaris/>
+      <win useIco="true">
+         <ico path="/com.nokia.carbide.cpp/icons/Carbide_c_flat.ico"/>
+         <bmp/>
+      </win>
+   </launcher>
+
+   <intro introId="com.nokia.carbide.cpp.intro"/>
+
+   <vm>
+   </vm>
+
+   <plugins>
+      <plugin id="org.eclipse.ui.views.log"/>
+   </plugins>
+
+   <features>
+      <feature id="org.eclipse.cdt.platform" version="0.0.0"/>
+      <feature id="org.eclipse.cdt.gnu.build" version="0.0.0"/>
+      <feature id="org.eclipse.cdt.gnu.debug" version="0.0.0"/>
+      <feature id="org.eclipse.cdt" version="0.0.0"/>
+      <feature id="com.nokia.carbide.cpp" version="0.0.0"/>
+      <feature id="com.nokia.carbide.cpp.sdk" version="0.0.0"/>
+      <feature id="com.nokia.carbide.cpp.capabilityScanner" version="0.0.0"/>
+      <feature id="com.nokia.carbide.cpp.codescanner" version="0.0.0"/>
+      <feature id="com.nokia.carbide.search.system" version="0.0.0"/>
+      <feature id="com.nokia.carbide.bugreport" version="0.0.0"/>
+      <feature id="com.nokia.carbide.cpp.pi" version="0.0.0"/>
+      <feature id="com.nokia.sdt.uidesigner" version="0.0.0"/>
+      <feature id="com.nokia.carbide.cpp.uiq.ui" version="0.0.0"/>
+      <feature id="org.eclipse.cvs" version="0.0.0"/>
+      <feature id="org.eclipse.dd.debug.memory.renderings" version="0.0.0"/>
+      <feature id="org.eclipse.platform" version="0.0.0"/>
+      <feature id="org.eclipse.rcp" version="0.0.0"/>
+      <feature id="org.eclipse.draw2d" version="0.0.0"/>
+      <feature id="org.eclipse.emf.common" version="0.0.0"/>
+      <feature id="org.eclipse.emf.common.ui" version="0.0.0"/>
+      <feature id="org.eclipse.emf.databinding" version="0.0.0"/>
+      <feature id="org.eclipse.emf.databinding.edit" version="0.0.0"/>
+      <feature id="org.eclipse.emf.ecore" version="0.0.0"/>
+      <feature id="org.eclipse.emf.ecore.edit" version="0.0.0"/>
+      <feature id="org.eclipse.emf.ecore.editor" version="0.0.0"/>
+      <feature id="org.eclipse.emf.ecore.sdo" version="0.0.0"/>
+      <feature id="org.eclipse.emf.ecore.sdo.edit" version="0.0.0"/>
+      <feature id="org.eclipse.emf.edit" version="0.0.0"/>
+      <feature id="org.eclipse.emf.edit.ui" version="0.0.0"/>
+      <feature id="org.eclipse.emf.mapping" version="0.0.0"/>
+      <feature id="org.eclipse.emf.mapping.ecore" version="0.0.0"/>
+      <feature id="org.eclipse.emf.mapping.ecore.editor" version="0.0.0"/>
+      <feature id="org.eclipse.emf.mapping.ui" version="0.0.0"/>
+      <feature id="org.eclipse.gef" version="0.0.0"/>
+      <feature id="org.eclipse.help" version="0.0.0"/>
+      <feature id="org.eclipse.xsd" version="0.0.0"/>
+      <feature id="org.eclipse.xsd.edit" version="0.0.0"/>
+      <feature id="org.eclipse.xsd.editor" version="0.0.0"/>
+      <feature id="org.eclipse.xsd.mapping" version="0.0.0"/>
+      <feature id="org.eclipse.xsd.mapping.editor" version="0.0.0"/>
+
+      <!-- Public Extensions -->
+      <feature id="com.nokia.s60tools.extensions.framework" version="0.0.0"/>
+      <feature id="com.nokia.carbide.extensions.appdep" version="0.0.0"/>
+
+      <!-- ADT Extensions -->
+      <feature id="com.nokia.carbide.extensions.apiquery" version="0.0.0"/>
+      <feature id="com.nokia.carbide.extensions.symbianfoundationtemplates" version="0.0.0"/>
+
+      <!-- PDT Extensions -->
+      <feature id="com.nokia.carbide.extensions.compatibilityanalyser" version="0.0.0"/>
+      <feature id="com.nokia.carbide.extensions.imaker" version="0.0.0"/>
+      <feature id="com.nokia.carbide.extensions.metadataeditor" version="0.0.0"/>
+      <feature id="com.nokia.carbide.extensions.stif" version="0.0.0"/>
+      <feature id="com.nokia.carbide.extensions.hticonnection" version="0.0.0"/>
+      <feature id="com.nokia.carbide.extensions.remotecontrol" version="0.0.0"/>
+      <feature id="com.nokia.carbide.extensions.creator" version="0.0.0"/>
+   </features>
+
+</product>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/automation/product_builder/carbide.c/site.xml	Fri Oct 09 07:35:41 2009 -0500
@@ -0,0 +1,309 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<site>
+   <description url="http://tools.ext.nokia.com/updates/carbide20">
+      Carbide.c++ ${CARBIDE_VERSION_2DIGITS} update site.
+   </description>
+   <feature url="features/com.nokia.carbide.bugreport_2.0.0.${QUALIFIER}.jar" id="com.nokia.carbide.bugreport" version="2.0.0.${QUALIFIER}" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.cdt_5.0.1.${QUALIFIER}.jar" id="org.eclipse.cdt" version="5.0.1.${QUALIFIER}">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/com.nokia.carbide.bugreport.source_2.0.0.${QUALIFIER}.jar" id="com.nokia.carbide.bugreport.source" version="2.0.0.${QUALIFIER}" os="win32">
+      <category name="Carbide.c++ Development Kit"/>
+   </feature>
+   <feature url="features/com.nokia.carbide.cpp.capabilityScanner.source_2.0.0.${QUALIFIER}.jar" id="com.nokia.carbide.cpp.capabilityScanner.source" version="2.0.0.${QUALIFIER}" os="win32">
+      <category name="Carbide.c++ Development Kit"/>
+   </feature>
+   <feature url="features/com.nokia.carbide.cpp.capabilityScanner_2.0.0.${QUALIFIER}.jar" id="com.nokia.carbide.cpp.capabilityScanner" version="2.0.0.${QUALIFIER}" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/com.nokia.carbide.cpp.codescanner.source_2.0.0.${QUALIFIER}.jar" id="com.nokia.carbide.cpp.codescanner.source" version="2.0.0.${QUALIFIER}" os="win32">
+      <category name="Carbide.c++ Development Kit"/>
+   </feature>
+   <feature url="features/com.nokia.carbide.cpp.codescanner_2.0.0.${QUALIFIER}.jar" id="com.nokia.carbide.cpp.codescanner" version="2.0.0.${QUALIFIER}" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/com.nokia.carbide.cpp.pi_2.0.0.${QUALIFIER}.jar" id="com.nokia.carbide.cpp.pi" version="2.0.0.${QUALIFIER}" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/com.nokia.carbide.cpp.sdk_2.0.0.${QUALIFIER}.jar" id="com.nokia.carbide.cpp.sdk" version="2.0.0.${QUALIFIER}" os="win32">
+      <category name="Carbide.c++ Development Kit"/>
+   </feature>
+   <feature url="features/com.nokia.carbide.cpp.source_${CARBIDE_VERSION_3DIGITS}.${QUALIFIER}.jar" id="com.nokia.carbide.cpp.source" version="${CARBIDE_VERSION_3DIGITS}.${QUALIFIER}" os="win32">
+      <category name="Carbide.c++ Development Kit"/>
+   </feature>
+   <feature url="features/com.nokia.carbide.cpp.uiq.ui_2.0.0.${QUALIFIER}.jar" id="com.nokia.carbide.cpp.uiq.ui" version="2.0.0.${QUALIFIER}" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/com.nokia.carbide.cpp_${CARBIDE_VERSION_3DIGITS}.${QUALIFIER}.jar" id="com.nokia.carbide.cpp" version="${CARBIDE_VERSION_3DIGITS}.${QUALIFIER}" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/com.nokia.carbide.extensions.apiquery_1.1.2.jar" id="com.nokia.carbide.extensions.apiquery" version="1.1.2" os="win32">
+      <category name="Carbide.c++ PDT Features"/>
+   </feature>
+   <feature url="features/com.nokia.carbide.extensions.appdep_2.0.3.${QUALIFIER}.jar" id="com.nokia.carbide.extensions.appdep" version="2.0.3.${QUALIFIER}" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/com.nokia.carbide.extensions.compatibilityanalyser_1.4.1.jar" id="com.nokia.carbide.extensions.compatibilityanalyser" version="1.4.1" os="win32">
+      <category name="Carbide.c++ PDT Features"/>
+   </feature>
+   <feature url="features/com.nokia.carbide.extensions.creator_1.2.0.jar" id="com.nokia.carbide.extensions.creator" version="1.2.0" os="win32">
+      <category name="Carbide.c++ PDT Features"/>
+   </feature>
+   <feature url="features/com.nokia.carbide.extensions.hticonnection_1.1.0.jar" id="com.nokia.carbide.extensions.hticonnection" version="1.1.0" os="win32">
+      <category name="Carbide.c++ PDT Features"/>
+   </feature>
+   <feature url="features/com.nokia.carbide.extensions.imaker_2.1.3.jar" id="com.nokia.carbide.extensions.imaker" version="2.1.3" os="win32">
+      <category name="Carbide.c++ PDT Features"/>
+   </feature>
+   <feature url="features/com.nokia.carbide.extensions.metadataeditor_1.1.1.jar" id="com.nokia.carbide.extensions.metadataeditor" version="1.1.1" os="win32">
+      <category name="Carbide.c++ PDT Features"/>
+   </feature>
+   <feature url="features/com.nokia.carbide.extensions.remotecontrol_1.1.0.jar" id="com.nokia.carbide.extensions.remotecontrol" version="1.1.0" os="win32">
+      <category name="Carbide.c++ PDT Features"/>
+   </feature>
+   <feature url="features/com.nokia.carbide.extensions.stif_1.2.24.jar" id="com.nokia.carbide.extensions.stif" version="1.2.24" os="win32">
+      <category name="Carbide.c++ PDT Features"/>
+   </feature>
+   <feature url="features/com.nokia.carbide.extensions.symbianfoundationtemplates_1.1.0.jar" id="com.nokia.carbide.extensions.symbianfoundationtemplates" version="1.1.0" os="win32">
+      <category name="Carbide.c++ PDT Features"/>
+   </feature>
+   <feature url="features/com.nokia.carbide.search.system.source_2.0.0.${QUALIFIER}.jar" id="com.nokia.carbide.search.system.source" version="2.0.0.${QUALIFIER}" os="win32">
+      <category name="Carbide.c++ Development Kit"/>
+   </feature>
+   <feature url="features/com.nokia.carbide.search.system_2.0.0.${QUALIFIER}.jar" id="com.nokia.carbide.search.system" version="2.0.0.${QUALIFIER}" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/com.nokia.s60.5th.edition.migration.rules_1.0.0.jar" id="com.nokia.s60.5th.edition.migration.rules" version="1.0.0" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/com.nokia.s60tools.extensions.framework_1.3.1.jar" id="com.nokia.s60tools.extensions.framework" version="1.3.1" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/com.nokia.sdt.uidesigner_2.0.0.${QUALIFIER}.jar" id="com.nokia.sdt.uidesigner" version="2.0.0.${QUALIFIER}" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/com.trolltech.qtcpp.feature_1.5.0.jar" id="com.trolltech.qtcpp.feature" version="1.5.0" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.cdt.gnu.build.source_5.0.1.${QUALIFIER}.jar" id="org.eclipse.cdt.gnu.build.source" version="5.0.1.${QUALIFIER}" os="win32">
+      <category name="Carbide.c++ Development Kit"/>
+   </feature>
+   <feature url="features/org.eclipse.cdt.gnu.build_5.0.1.${QUALIFIER}.jar" id="org.eclipse.cdt.gnu.build" version="5.0.1.${QUALIFIER}" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.cdt.gnu.debug.source_5.0.1.${QUALIFIER}.jar" id="org.eclipse.cdt.gnu.debug.source" version="5.0.1.${QUALIFIER}" os="win32">
+      <category name="Carbide.c++ Development Kit"/>
+   </feature>
+   <feature url="features/org.eclipse.cdt.gnu.debug_5.0.1.${QUALIFIER}.jar" id="org.eclipse.cdt.gnu.debug" version="5.0.1.${QUALIFIER}" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.cdt.platform.source_5.0.1.${QUALIFIER}.jar" id="org.eclipse.cdt.platform.source" version="5.0.1.${QUALIFIER}" os="win32">
+      <category name="Carbide.c++ Development Kit"/>
+   </feature>
+   <feature url="features/org.eclipse.cdt.platform_5.0.1.${QUALIFIER}.jar" id="org.eclipse.cdt.platform" version="5.0.1.${QUALIFIER}" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.cvs.source_1.1.1.r34x_20080902-7C79E8N9nJD4oAW9V1938.jar" id="org.eclipse.cvs.source" version="1.1.1.r34x_20080902-7C79E8N9nJD4oAW9V1938" os="win32">
+      <category name="Carbide.c++ Development Kit"/>
+   </feature>
+   <feature url="features/org.eclipse.cvs_1.1.1.r34x_20080902-7C79E8N9nJD4oAW9V1938.jar" id="org.eclipse.cvs" version="1.1.1.r34x_20080902-7C79E8N9nJD4oAW9V1938">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.dd.debug.memory.renderings.source_1.1.0.v20080904.jar" id="org.eclipse.dd.debug.memory.renderings.source" version="1.1.0.v20080904" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.dd.debug.memory.renderings_1.1.0.v20080904.jar" id="org.eclipse.dd.debug.memory.renderings" version="1.1.0.v20080904" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.draw2d.sdk_3.4.1.v20080806-67718083A56B4H3F84A-__6_2A32.jar" id="org.eclipse.draw2d.sdk" version="3.4.1.v20080806-67718083A56B4H3F84A-__6_2A32" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.draw2d.source_3.4.1.v20080806-3307w31191_2102462.jar" id="org.eclipse.draw2d.source" version="3.4.1.v20080806-3307w31191_2102462" os="win32">
+      <category name="Carbide.c++ Development Kit"/>
+   </feature>
+   <feature url="features/org.eclipse.draw2d_3.4.1.v20080806-3307w31191_2102462.jar" id="org.eclipse.draw2d" version="3.4.1.v20080806-3307w31191_2102462" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.codegen.ecore.ui_2.4.1.v200808251517.jar" id="org.eclipse.emf.codegen.ecore.ui" version="2.4.1.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.codegen.ecore_2.4.1.v200808251517.jar" id="org.eclipse.emf.codegen.ecore" version="2.4.1.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.codegen.ui_2.4.0.v200808251517.jar" id="org.eclipse.emf.codegen.ui" version="2.4.0.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.codegen_2.4.0.v200808251517.jar" id="org.eclipse.emf.codegen" version="2.4.0.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.common.ui_2.4.0.v200808251517.jar" id="org.eclipse.emf.common.ui" version="2.4.0.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.common_2.4.0.v200808251517.jar" id="org.eclipse.emf.common" version="2.4.0.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.converter_2.4.1.v200808251517.jar" id="org.eclipse.emf.converter" version="2.4.1.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.databinding.edit_1.0.0.v200808251517.jar" id="org.eclipse.emf.databinding.edit" version="1.0.0.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.databinding_1.0.0.v200808251517.jar" id="org.eclipse.emf.databinding" version="1.0.0.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.doc_2.4.1.v200808251517.jar" id="org.eclipse.emf.doc" version="2.4.1.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.ecore.edit_2.4.1.v200808251517.jar" id="org.eclipse.emf.ecore.edit" version="2.4.1.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.ecore.editor_2.4.0.v200808251517.jar" id="org.eclipse.emf.ecore.editor" version="2.4.0.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.ecore.sdo.doc_2.4.0.v200808251517.jar" id="org.eclipse.emf.ecore.sdo.doc" version="2.4.0.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.ecore.sdo.edit_2.4.0.v200808251517.jar" id="org.eclipse.emf.ecore.sdo.edit" version="2.4.0.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.ecore.sdo.editor_2.4.0.v200808251517.jar" id="org.eclipse.emf.ecore.sdo.editor" version="2.4.0.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.ecore.sdo.sdk_2.4.0.v200808251517.jar" id="org.eclipse.emf.ecore.sdo.sdk" version="2.4.0.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.ecore.sdo.source_2.4.0.v200808251517.jar" id="org.eclipse.emf.ecore.sdo.source" version="2.4.0.v200808251517" os="win32">
+      <category name="Carbide.c++ Development Kit"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.ecore.sdo_2.4.0.v200808251517.jar" id="org.eclipse.emf.ecore.sdo" version="2.4.0.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.ecore_2.4.1.v200808251517.jar" id="org.eclipse.emf.ecore" version="2.4.1.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.edit.ui_2.4.1.v200808251517.jar" id="org.eclipse.emf.edit.ui" version="2.4.1.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.edit_2.4.1.v200808251517.jar" id="org.eclipse.emf.edit" version="2.4.1.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.mapping.ecore.editor_2.4.0.v200808251517.jar" id="org.eclipse.emf.mapping.ecore.editor" version="2.4.0.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.mapping.ecore_2.4.0.v200808251517.jar" id="org.eclipse.emf.mapping.ecore" version="2.4.0.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.mapping.ui_2.4.0.v200808251517.jar" id="org.eclipse.emf.mapping.ui" version="2.4.0.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.mapping_2.4.0.v200808251517.jar" id="org.eclipse.emf.mapping" version="2.4.0.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.sdk_2.4.1.v200808251517.jar" id="org.eclipse.emf.sdk" version="2.4.1.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.emf.source_2.4.1.v200808251517.jar" id="org.eclipse.emf.source" version="2.4.1.v200808251517" os="win32">
+      <category name="Carbide.c++ Development Kit"/>
+   </feature>
+   <feature url="features/org.eclipse.emf_2.4.1.v200808251517.jar" id="org.eclipse.emf" version="2.4.1.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.equinox.executable_3.3.101.R34x_v20080805-7H-ELeE8hXnkE15Wh9Rz0yu.jar" id="org.eclipse.equinox.executable" version="3.3.101.R34x_v20080805-7H-ELeE8hXnkE15Wh9Rz0yu" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.gef.sdk_3.4.1.v20080806-7B7E297OK9c7WEeDMZJfHVNDRBPX.jar" id="org.eclipse.gef.sdk" version="3.4.1.v20080806-7B7E297OK9c7WEeDMZJfHVNDRBPX" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.gef.source_3.4.1.v20080806-67718083A56B4H2A3213573.jar" id="org.eclipse.gef.source" version="3.4.1.v20080806-67718083A56B4H2A3213573" os="win32">
+      <category name="Carbide.c++ Development Kit"/>
+   </feature>
+   <feature url="features/org.eclipse.gef_3.4.1.v20080806-67718083A56B4H2A3213573.jar" id="org.eclipse.gef" version="3.4.1.v20080806-67718083A56B4H2A3213573" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.help.source_1.0.1.R34x_v20080827-7r7xEIxEI6Zu5nEqN7M3UBpglaat.jar" id="org.eclipse.help.source" version="1.0.1.R34x_v20080827-7r7xEIxEI6Zu5nEqN7M3UBpglaat" os="win32">
+      <category name="Carbide.c++ Development Kit"/>
+   </feature>
+   <feature url="features/org.eclipse.help_1.0.1.R34x_v20080827-7r7xEIxEI6Zu5nEqN7M3UBpglaat.jar" id="org.eclipse.help" version="1.0.1.R34x_v20080827-7r7xEIxEI6Zu5nEqN7M3UBpglaat" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.jdt.source_3.4.1.r341_v20080709-0800-7o7tEAfEF_U5qyUgrb2HAp539P97.jar" id="org.eclipse.jdt.source" version="3.4.1.r341_v20080709-0800-7o7tEAfEF_U5qyUgrb2HAp539P97" os="win32">
+      <category name="Carbide.c++ Development Kit"/>
+   </feature>
+   <feature url="features/org.eclipse.jdt_3.4.1.r341_v20080709-0800-7o7tEAfEF_U5qyUgrb2HAp539P97.jar" id="org.eclipse.jdt" version="3.4.1.r341_v20080709-0800-7o7tEAfEF_U5qyUgrb2HAp539P97" os="win32">
+      <category name="Carbide.c++ Development Kit"/>
+   </feature>
+   <feature url="features/org.eclipse.pde.p2.source_1.0.0.v20080522-1--7w3119171503111.jar" id="org.eclipse.pde.p2.source" version="1.0.0.v20080522-1--7w3119171503111" os="win32">
+      <category name="Carbide.c++ Development Kit"/>
+   </feature>
+   <feature url="features/org.eclipse.pde.p2_1.0.0.v20080522-1--7w3119171503111.jar" id="org.eclipse.pde.p2" version="1.0.0.v20080522-1--7w3119171503111" os="win32">
+      <category name="Carbide.c++ Development Kit"/>
+   </feature>
+   <feature url="features/org.eclipse.pde.source_3.4.1.r341_v20080731-7T7U0E9mlRIuGUYviF_VP.jar" id="org.eclipse.pde.source" version="3.4.1.r341_v20080731-7T7U0E9mlRIuGUYviF_VP" os="win32">
+      <category name="Carbide.c++ Development Kit"/>
+   </feature>
+   <feature url="features/org.eclipse.pde_3.4.1.r341_v20080731-7T7U0E9mlRIuGUYviF_VP.jar" id="org.eclipse.pde" version="3.4.1.r341_v20080731-7T7U0E9mlRIuGUYviF_VP" os="win32">
+      <category name="Carbide.c++ Development Kit"/>
+   </feature>
+   <feature url="features/org.eclipse.platform.source_3.4.1.r341_v20080731-9I96EiDElYevwz-p1bP5z-NlAaP7vtX6Utotqsu.jar" id="org.eclipse.platform.source" version="3.4.1.r341_v20080731-9I96EiDElYevwz-p1bP5z-NlAaP7vtX6Utotqsu" os="win32">
+      <category name="Carbide.c++ Development Kit"/>
+   </feature>
+   <feature url="features/org.eclipse.platform_3.4.1.r341_v20080731-9I96EiDElYevwz-p1bP5z-NlAaP7vtX6Utotqsu.jar" id="org.eclipse.platform" version="3.4.1.r341_v20080731-9I96EiDElYevwz-p1bP5z-NlAaP7vtX6Utotqsu" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.rcp.source_3.4.100.r341_v20080814-989JESIEdAciFYfkZZsBfSwQ2341.jar" id="org.eclipse.rcp.source" version="3.4.100.r341_v20080814-989JESIEdAciFYfkZZsBfSwQ2341" os="win32">
+      <category name="Carbide.c++ Development Kit"/>
+   </feature>
+   <feature url="features/org.eclipse.rcp_3.4.100.r341_v20080814-989JESIEdAciFYfkZZsBfSwQ2341.jar" id="org.eclipse.rcp" version="3.4.100.r341_v20080814-989JESIEdAciFYfkZZsBfSwQ2341" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.sdk_3.4.1.R34x_v20080827-7O7S78C2J40sK2o_ALcK8tLN_yZSJeg0P-3EtL4Ra90kv.jar" id="org.eclipse.sdk" version="3.4.1.R34x_v20080827-7O7S78C2J40sK2o_ALcK8tLN_yZSJeg0P-3EtL4Ra90kv" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.test_3.3.0.v20080507-7L7L__9oA55S5H5H02429.jar" id="org.eclipse.test" version="3.3.0.v20080507-7L7L__9oA55S5H5H02429" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.xsd.doc_2.4.0.v200808251517.jar" id="org.eclipse.xsd.doc" version="2.4.0.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.xsd.ecore.converter_2.4.0.v200808251517.jar" id="org.eclipse.xsd.ecore.converter" version="2.4.0.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.xsd.edit_2.4.0.v200808251517.jar" id="org.eclipse.xsd.edit" version="2.4.0.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.xsd.editor_2.4.0.v200808251517.jar" id="org.eclipse.xsd.editor" version="2.4.0.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.xsd.mapping.editor_2.4.0.v200808251517.jar" id="org.eclipse.xsd.mapping.editor" version="2.4.0.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.xsd.mapping_2.4.0.v200808251517.jar" id="org.eclipse.xsd.mapping" version="2.4.0.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.xsd.sdk_2.4.1.v200808251517.jar" id="org.eclipse.xsd.sdk" version="2.4.1.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <feature url="features/org.eclipse.xsd.source_2.4.1.v200808251517.jar" id="org.eclipse.xsd.source" version="2.4.1.v200808251517" os="win32">
+      <category name="Carbide.c++ Development Kit"/>
+   </feature>
+   <feature url="features/org.eclipse.xsd_2.4.1.v200808251517.jar" id="org.eclipse.xsd" version="2.4.1.v200808251517" os="win32">
+      <category name="Carbide.c++ Core IDE"/>
+   </feature>
+   <category-def name="Carbide.c++ Core IDE" label="Carbide.c++ ${CARBIDE_VERSION_3DIGITS} Core IDE">
+      <description>
+         Delivers core functionality required for all Carbide developers.
+      </description>
+   </category-def>
+   <category-def name="Carbide.c++ PDT Features" label="Carbide.c++ ${CARBIDE_VERSION_3DIGITS} PDT Features">
+      <description>
+         Delivers Platform Development Features for device creators.
+      </description>
+   </category-def>
+   <category-def name="Carbide.c++ Development Kit" label="Carbide.c++ ${CARBIDE_VERSION_3DIGITS} Development Kit">
+      <description>
+         Delivers Carbide sources and Java Development Tools for Carbide plug-in.
+      </description>
+   </category-def>
+</site>
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/automation/product_builder/scripts/Utils.sh	Fri Oct 09 07:35:41 2009 -0500
@@ -0,0 +1,301 @@
+#!/bin/bash
+#
+# utilities used by build scripts
+#
+# To include these utilites, add these lines to another script in the same folder.
+#
+#   utilsDir=`dirname $0`
+#   [ "$utilsDir" = "." ] && utilsDir=`pwd`
+#   source $utilsDir/Utils.sh
+#
+
+program=$0
+
+
+# ------------------------------------------------------------------
+#
+# prepare to parse command line args
+#   usage: prepare_parse_args arg1 [arg2] ...
+#
+# To parse command line args, add these lines after source $utilsDir/Utils.sh
+#
+#   argsText="--ARG1:<varlue> --ARG2:<value>"
+#   prepare_parse_args ARG1 ARG2 > /tmp/$$.parse_args
+#   source /tmp/$$.parse_args
+#   rm -f /tmp/$$.parse_args
+#
+
+function prepare_parse_args {
+    local name
+    local sedcmd='`echo $i | sed 's/[-a-zA-Z0-9_]*://'`'
+
+    echo 'for i in $*'
+    echo 'do'
+    echo '  case $i in'
+
+    for name in $*
+    do
+        echo "    --$name:*)"
+        echo "      $name=$sedcmd"
+        echo "      echo $name=\$$name"
+		echo '    ;;'
+    done
+
+    echo '    --help)'
+    echo '      usage $argsText'
+    echo '    ;;'
+    echo '    --verbose)'
+    echo '      verbose=YES'
+    echo '    ;;'
+    echo '    *)'
+    echo '    ;;'
+  	echo 'esac'
+    echo 'done'
+
+}
+
+this_step=0
+total_errors=0
+return_code=0
+
+#
+# count and print number of errors
+#
+function set_returncode {
+    this_step=$(($this_step+1))
+    if [ $1 -ne 0 ]; then
+        total_errors=$(($total_errors+1))
+    fi
+    return_code=$1
+    echo time = `date +%R`, step = $this_step, return code = $1, total errors = $total_errors
+}
+
+#
+# print error message and exit
+#
+function error_exit {
+    echo $program ERROR: $*
+    echo BUILD FAILED
+    set_returncode 1
+    exit $total_errors
+}
+
+#
+# print a command line
+# run the command line
+# remember the exit status
+#
+function run {
+    echo $*
+    $*
+    set_returncode $?
+}
+
+#
+# run and exit if non-zero return code
+#
+function must_run {
+    echo $*
+    $*
+    return_code=$?
+    set_returncode $return_code
+    if [ $return_code -ne 0 ]; then
+        exit $total_errors
+    fi
+}
+
+#
+# run the command line
+# remember the exit status
+#
+function run_quiet {
+    $*
+    set_returncode $?
+}
+
+#
+# show a usage message and exit
+#
+function usage {
+    echo usage: $program $* --help --verbose
+    set_returncode 1
+    exit $total_errors
+}
+
+# ------------------------------------------------------------------
+#
+# move or copy plugins from one layout to another
+# usage: move_or_copy_plugins <move_plugins | copy_plugins> [ -q] src_folder dst_folder map_file [map_file...]
+#
+function move_or_copy_plugins {
+    if [ "$1" != "move_plugins" -a "$1" != "copy_plugins" ]; then
+        echo 'usage: move_or_copy_plugins <move_plugins | copy_plugins> [ -q] src_folder dst_folder map_file [map_file...]'
+        return 1
+    fi
+
+    local move_or_copy=$1
+    shift
+
+    local verbose=1
+    if [ "$1" = "-q" ]; then
+        verbose=0
+        shift
+    fi
+
+    if [ $# -lt 3 ]; then
+        echo usage: $move_or_copy [ -q] src_folder dst_folder map_file [map_file...]
+        return 1
+    fi
+
+    local src_folder=$1
+    shift
+    local dst_folder=$1
+    shift
+
+    if [ ! -d $src_folder ]; then
+        echo ERROR: $move_or_copy: cannot find $src_folder
+        return 1
+    fi
+
+    [ -d $dst_folder/features ] || mkdir -p $dst_folder/features
+    [ -d $dst_folder/plugins ] || mkdir -p $dst_folder/plugins
+
+    local name
+    local name2
+    local have_x86_eol
+
+    for name in $*
+    do
+        if [ ! -f $name ]; then
+            echo ERROR: $move_or_copy: cannot find map file: $name
+            return 1
+        fi
+    done
+
+    for name in `cat $* | grep -v "^#" | grep , | cut -d"," -f2`
+    do
+        #echo $src_folder/${name} $src_folder/${name}_*
+        # Except for x86_64 plugins, plugins follow the convention that they do not have underscores in the name
+        # For example: org.eclipse.swt.win32.win32.x86_* matches
+        #    org.eclipse.swt.win32.win32.x86_3.4.1.v3449c.jar
+        #    org.eclipse.swt.win32.win32.x86_64.source_3.4.1.v3449c.jar
+        #    org.eclipse.swt.win32.win32.x86_64_3.4.1.v3449c.jar
+        # Check for x86_64 and handle the exception
+        echo $name | grep x86$ > /dev/null 2>&1
+        if [ $? -eq 0 ]; then
+            have_x86_eol=1
+        else
+            have_x86_eol=0
+        fi
+
+        features_or_plugins=`echo $name | cut -d"/" -f1`
+
+        # The x86 names may expand to more than one filename
+        for name2 in $src_folder/${name}_*
+        do
+            if [ "$name2" = '$src_folder/${name}_*' ]; then
+                # no match found
+                [ $verbose -eq 1 ] && echo WARNING: $move_or_copy: cannot find $src_folder/${name}
+            else
+                echo $name2 | grep x86_64 > /dev/null 2>&1
+                if [ $? -ne 0 -o $have_x86_eol -eq 0 ]; then
+                    # do this if name2 does not have x86_64  OR  if pattern does end in x86
+                    if [ "$move_or_copy" = "move_plugins" ]; then
+                        run mv $name2 $dst_folder/$features_or_plugins
+                    else
+                        run cp -pr $name2 $dst_folder/$features_or_plugins
+                    fi
+                fi
+            fi
+        done
+    done
+}
+
+#
+# move plugins from one layout to another
+# usage: move_plugins [ -q] src_folder dst_folder map_file [map_file...]
+#
+function move_plugins {
+    move_or_copy_plugins move_plugins $*
+}
+
+#
+# copy plugins from one layout to another
+# usage: copy_plugins [ -q] src_folder dst_folder map_file [map_file...]
+#
+function copy_plugins {
+    move_or_copy_plugins copy_plugins $*
+}
+
+# ------------------------------------------------------------------
+#
+# clone mercurial repository
+# usage: hg_clone checkout_folder buildtags_file username password host revision repo [repo...]
+#
+function hg_clone {
+    if [ $# -lt 7 ]; then
+        echo usage: usage: hg_clone checkout_folder buildtags_file username password host revision repo [repo...]
+        set_returncode 1
+        return 1
+    fi
+
+    local checkout_folder=$1
+    shift
+    local buildtags_file=$1
+    shift
+    local username=$1
+    shift
+    local password=$1
+    shift
+    local host=$1
+    shift
+    local revision=$1
+    shift
+
+    if [ ! -d $checkout_folder ]; then
+        echo ERROR: hg_clone: cannot find $checkout_folder
+        set_returncode 1
+        return 1
+    fi
+
+    local url=http://${username}:${password}@$host
+
+    local name
+    for name in $*
+    do
+        if [ ! -d $checkout_folder/$name ]; then
+            run cd $checkout_folder
+            run mkdir -p $name
+            run rmdir $name
+            echo hg clone http://$host/$name $name
+            run_quiet hg clone $url/$name $name
+        else
+            run cd $checkout_folder/$name
+            echo hg pull http://$host/$name
+            run_quiet hg pull $url/$name
+        fi
+        run cd $checkout_folder/$name
+        run hg update -C $revision
+        echo http://$host/$name `hg identify` >> $buildtags_file
+    done
+}
+
+
+# ------------------------------------------------------------------
+#
+# remove update site URLs from feature.xml
+#
+
+function remove_update_site_urls {
+    local feature_xml=$1
+    local temp_file=$2
+
+    xml2oneline $feature_xml > $temp_file
+    grep tools.ext.nokia.com/updates $temp_file > /dev/null
+    if [ $? -eq 0 ]; then
+        echo remove update site tools.ext.nokia.com/updates from $feature_xml
+        grep -v tools.ext.nokia.com/updates $temp_file | grep -v \<url\> | grep -v \</url\> > $feature_xml
+        unix2dos $feature_xml
+    fi
+    rm -f $temp_file
+}