--- a/symbian4/single/sysdefs/system_model.xml Wed Aug 25 17:32:35 2010 +0100
+++ b/symbian4/single/sysdefs/system_model.xml Wed Aug 25 17:59:20 2010 +0100
@@ -1,261 +1,260 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE SystemDefinition [
-<!ELEMENT SystemDefinition ( systemModel )>
-<!ATTLIST SystemDefinition
- name CDATA #REQUIRED
- schema CDATA #REQUIRED
->
-<!-- all paths are relative to the environment variable specified by the root attribute, or SOURCEROOT if not. -->
-
-<!-- System Model Section of DTD -->
-<!ELEMENT systemModel (layer+)>
-
-<!ELEMENT layer (block* | collection*)*>
-<!-- Kernel Services, Base Services, OS Services, Etc -->
-<!ATTLIST layer
- name CDATA #REQUIRED
- long-name CDATA #IMPLIED
- levels NMTOKENS #IMPLIED
- span CDATA #IMPLIED
->
-
-<!ELEMENT block (subblock* | collection*)*>
- <!-- Generic OS services, Comms Services, etc -->
-<!ATTLIST block
- levels NMTOKENS #IMPLIED
- span CDATA #IMPLIED
- level NMTOKEN #IMPLIED
- name CDATA #REQUIRED
- long-name CDATA #IMPLIED
->
-
-<!ELEMENT subblock (collection)*>
-<!-- Cellular Baseband Services, Networking Services, etc -->
-<!ATTLIST subblock
- name CDATA #REQUIRED
- long-name CDATA #IMPLIED
->
-
-<!ELEMENT collection (component)*>
-<!-- Screen Driver, Content Handling, etc -->
-<!ATTLIST collection
- name CDATA #REQUIRED
- long-name CDATA #IMPLIED
- level NMTOKEN #IMPLIED
->
-
-<!ELEMENT component (unit)*>
-<!-- contains units or is a package or prebuilt -->
-<!ATTLIST component
- name CDATA #REQUIRED
- long-name CDATA #IMPLIED
- deprecated CDATA #IMPLIED
- introduced CDATA #IMPLIED
- contract CDATA #IMPLIED
- plugin (Y|N) "N"
- filter CDATA #IMPLIED
- class NMTOKENS #IMPLIED
- supports CDATA #IMPLIED
- purpose ( optional | mandatory | development ) "optional"
->
-
-<!ELEMENT unit EMPTY >
-<!-- must be buildable (bld.inf) -->
-<!-- bldFile may someday be removed in favour of mrp -->
-<!ATTLIST unit
- mrp CDATA #IMPLIED
- filter CDATA #IMPLIED
- bldFile CDATA #IMPLIED
- root CDATA #IMPLIED
- version NMTOKEN #IMPLIED
- prebuilt NMTOKEN #IMPLIED
- late (Y|N) #IMPLIED
- priority CDATA #IMPLIED
->
-]>
-<SystemDefinition name="Symbian^4" schema="2.0.1">
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE SystemDefinition [
+<!ELEMENT SystemDefinition ( systemModel )>
+<!ATTLIST SystemDefinition
+ name CDATA #REQUIRED
+ schema CDATA #REQUIRED
+>
+<!-- all paths are relative to the environment variable specified by the root attribute, or SOURCEROOT if not. -->
+
+<!-- System Model Section of DTD -->
+<!ELEMENT systemModel (layer+)>
+
+<!ELEMENT layer (block* | collection*)*>
+<!-- Kernel Services, Base Services, OS Services, Etc -->
+<!ATTLIST layer
+ name CDATA #REQUIRED
+ long-name CDATA #IMPLIED
+ levels NMTOKENS #IMPLIED
+ span CDATA #IMPLIED
+>
+
+<!ELEMENT block (subblock* | collection*)*>
+ <!-- Generic OS services, Comms Services, etc -->
+<!ATTLIST block
+ levels NMTOKENS #IMPLIED
+ span CDATA #IMPLIED
+ level NMTOKEN #IMPLIED
+ name CDATA #REQUIRED
+ long-name CDATA #IMPLIED
+>
+
+<!ELEMENT subblock (collection)*>
+<!-- Cellular Baseband Services, Networking Services, etc -->
+<!ATTLIST subblock
+ name CDATA #REQUIRED
+ long-name CDATA #IMPLIED
+>
+
+<!ELEMENT collection (component)*>
+<!-- Screen Driver, Content Handling, etc -->
+<!ATTLIST collection
+ name CDATA #REQUIRED
+ long-name CDATA #IMPLIED
+ level NMTOKEN #IMPLIED
+>
+
+<!ELEMENT component (unit)*>
+<!-- contains units or is a package or prebuilt -->
+<!ATTLIST component
+ name CDATA #REQUIRED
+ long-name CDATA #IMPLIED
+ deprecated CDATA #IMPLIED
+ introduced CDATA #IMPLIED
+ contract CDATA #IMPLIED
+ plugin (Y|N) "N"
+ filter CDATA #IMPLIED
+ class NMTOKENS #IMPLIED
+ supports CDATA #IMPLIED
+ purpose ( optional | mandatory | development ) "optional"
+>
+
+<!ELEMENT unit EMPTY >
+<!-- must be buildable (bld.inf) -->
+<!-- bldFile may someday be removed in favour of mrp -->
+<!ATTLIST unit
+ mrp CDATA #IMPLIED
+ filter CDATA #IMPLIED
+ bldFile CDATA #IMPLIED
+ root CDATA #IMPLIED
+ version NMTOKEN #IMPLIED
+ prebuilt NMTOKEN #IMPLIED
+ late (Y|N) #IMPLIED
+ priority CDATA #IMPLIED
+>
+]>
+<SystemDefinition schema="2.0.1" name="Symbian^4">
<systemModel>
<layer name="adaptation" long-name="Adaptation" levels="low mw high">
-<block name="stubs" level="high" span="2" long-name="Stubs" levels="adaptation plugin mid engine">
+<block name="stubs" level="high" span="2" levels="adaptation plugin mid engine" long-name="Stubs">
<collection name="audiostubs" long-name="Audio Stubs" level="adaptation">
-<component name="devsoundextensions_stubs" long-name="Devsound Extensions Stubs">
+<component name="devsoundextensions_stubs" long-name="Devsound Extensions Stubs" purpose="optional">
<unit bldFile="adaptation/stubs/audiostubs/devsoundextensions_stubs/group"/>
</component>
-<component name="fmradiotunercontrolstub" long-name="FM Radio Tuner Control Stub">
+<component name="fmradiotunercontrolstub" long-name="FM Radio Tuner Control Stub" purpose="optional">
<unit bldFile="adaptation/stubs/audiostubs/fmradiotunercontrolstub/group"/>
</component>
</collection>
<collection name="drm_stubs" long-name="DRM Stubs" level="plugin">
-<component name="drm_stubs_build" long-name="DRM Stubs Build">
+<component name="drm_stubs_build" long-name="DRM Stubs Build" purpose="optional">
<unit bldFile="adaptation/stubs/drm_stubs/group"/>
</component>
</collection>
<collection name="ocrsrv_stub" long-name="OCR Services Stub" level="mid">
-<component name="ocrsrv_stub_build" long-name="OCR Services Stub Build" filter="!dfs_build">
+<component name="ocrsrv_stub_build" long-name="OCR Services Stub Build" filter="!dfs_build" purpose="optional">
<unit bldFile="adaptation/stubs/ocrsrv_stub/group"/>
</component>
</collection>
<collection name="omasuplasnconverterstubimpl" long-name="OMA SUPL ASN Converter Stub Implementation" level="plugin">
-<component name="omasuplasnconverterstubimpl_build" long-name="OMA SUPL ASN Converter Stub Implementation Build" filter="!dfs_build">
+<component name="omasuplasnconverterstubimpl_build" long-name="OMA SUPL ASN Converter Stub Implementation Build" filter="!dfs_build" purpose="optional">
<unit bldFile="adaptation/stubs/omasuplasnconverterstubimpl/group"/>
</component>
</collection>
<collection name="posmsgpluginreferenceimpl" long-name="POS Message Plugin Reference Implementation" level="plugin">
-<component name="posmsgpluginreferenceimpl_build" long-name="POS Message Plugin Reference Implementation Build" plugin="Y">
+<component name="posmsgpluginreferenceimpl_build" long-name="POS Message Plugin Reference Implementation Build" purpose="optional" plugin="Y">
<unit bldFile="adaptation/stubs/posmsgpluginreferenceimpl/group"/>
</component>
</collection>
<collection name="srsfenginestub" long-name="SRSF Engine Stub" level="engine">
-<component name="srsfenginestub_build" long-name="SRSF Engine Stub Build" filter="stubs">
+<component name="srsfenginestub_build" long-name="SRSF Engine Stub Build" filter="stubs" purpose="optional">
<unit bldFile="adaptation/stubs/srsfenginestub/group"/>
</component>
</collection>
<collection name="power_save_display_mode_stub" long-name="Power Save Display Mode Stub" level="plugin">
-<component name="power_save_display_mode_stub_build" long-name="Power Save Display Mode Stub Build">
+<component name="power_save_display_mode_stub_build" long-name="Power Save Display Mode Stub Build" purpose="optional">
<unit bldFile="adaptation/stubs/power_save_display_mode_stub/group"/>
</component>
</collection>
<collection name="systemswstubs" long-name="System Software Stubs" level="adaptation">
-<component name="ddcaccessstub" long-name="DDC Access Stub">
+<component name="ddcaccessstub" long-name="DDC Access Stub" purpose="optional">
<unit bldFile="adaptation/stubs/systemswstubs/ddcaccessstub/group"/>
</component>
-<component name="tvoutconfig" long-name="TV Out Config">
+<component name="tvoutconfig" long-name="TV Out Config" purpose="optional">
<unit bldFile="adaptation/stubs/systemswstubs/TVOutConfig/group" filter="oem_build"/>
</component>
-<component name="accessorypolicyreference" long-name="Accessory Policy Reference">
+<component name="accessorypolicyreference" long-name="Accessory Policy Reference" purpose="optional">
<unit bldFile="adaptation/stubs/systemswstubs/accessorypolicyreference/group" filter="oem_build"/>
</component>
-<component name="asyreference" long-name="ASY Reference" plugin="Y">
+<component name="asyreference" long-name="ASY Reference" purpose="optional" plugin="Y">
<unit bldFile="adaptation/stubs/systemswstubs/asyreference/group" filter="oem_build"/>
</component>
-<component name="examplecommonisc" long-name="Example Common ISC">
+<component name="examplecommonisc" long-name="Example Common ISC" purpose="optional">
<unit bldFile="adaptation/stubs/systemswstubs/examplecommonisc/group" filter="oem_build"/>
</component>
-<component name="exampledsy" long-name="Example DSY">
+<component name="exampledsy" long-name="Example DSY" purpose="optional">
<unit bldFile="adaptation/stubs/systemswstubs/exampledsy/group" filter="oem_build"/>
</component>
-<component name="featuremanagerstub" long-name="Feature Manager Stub">
+<component name="featuremanagerstub" long-name="Feature Manager Stub" purpose="optional">
<unit bldFile="adaptation/stubs/systemswstubs/featuremanagerstub/group" filter="oem_build"/>
</component>
-<component name="hwrmstubplugins" long-name="Hardware Resource Manager Stub Plugins" plugin="Y">
+<component name="hwrmstubplugins" long-name="Hardware Resource Manager Stub Plugins" purpose="optional" plugin="Y">
<unit bldFile="adaptation/stubs/systemswstubs/hwrmstubplugins/group" filter="oem_build"/>
</component>
-<component name="hwrmhapticsstubplugin" long-name="Hardware Resource Manager Haptics Stub Plugin" plugin="Y">
+<component name="hwrmhapticsstubplugin" long-name="Hardware Resource Manager Haptics Stub Plugin" purpose="optional" plugin="Y">
<unit bldFile="adaptation/stubs/systemswstubs/hwrmhapticsstubplugin/group" filter="oem_build"/>
</component>
-<component name="sensorchannelsreference" long-name="Sensor Channels Reference">
+<component name="sensorchannelsreference" long-name="Sensor Channels Reference" purpose="optional">
<unit bldFile="adaptation/stubs/systemswstubs/sensorchannelsreference/group" filter="oem_build"/>
</component>
-<component name="ssyreference" long-name="SSY Reference" plugin="Y">
+<component name="ssyreference" long-name="SSY Reference" purpose="optional" plugin="Y">
<unit bldFile="adaptation/stubs/systemswstubs/ssyreference/group" filter="oem_build"/>
</component>
-<component name="startupadaptationstub" long-name="Startup Adaptation Stub" plugin="Y">
+<component name="startupadaptationstub" long-name="Startup Adaptation Stub" purpose="optional" plugin="Y">
<unit bldFile="adaptation/stubs/systemswstubs/startupadaptationstub/group" filter="oem_build"/>
</component>
-<component name="tiltcompensationstub" long-name="Tilt Compensation Stub">
+<component name="tiltcompensationstub" long-name="Tilt Compensation Stub" purpose="optional">
<unit bldFile="adaptation/stubs/systemswstubs/tiltcompensationstub/group" filter="oem_build"/>
</component>
-<component name="tvoutbehaviour" long-name="TV Out Behaviour">
+<component name="tvoutbehaviour" long-name="TV Out Behaviour" purpose="optional">
<unit bldFile="adaptation/stubs/systemswstubs/tvoutbehaviour/group" filter="oem_build"/>
</component>
-<component name="wiredbearerreference" long-name="Wired Bearer Reference" plugin="Y">
+<component name="wiredbearerreference" long-name="Wired Bearer Reference" purpose="optional" plugin="Y">
<unit bldFile="adaptation/stubs/systemswstubs/wiredbearerreference/group" filter="oem_build"/>
</component>
</collection>
<collection name="tactileclickplugin_stub" long-name="Tactile Click Plugin Stub" level="engine">
-<component name="tactileclickplugin_stub_build" long-name="Tactile Click Plugin Stub Build" plugin="Y">
+<component name="tactileclickplugin_stub_build" long-name="Tactile Click Plugin Stub Build" purpose="optional" plugin="Y">
<unit bldFile="adaptation/stubs/tactileclickplugin_stub/group"/>
</component>
</collection>
<collection name="wlanhwinit_stub" long-name="WLAN Hardware Init Stub" level="mid">
-<component name="wlanhwinit_stub_build" long-name="WLAN Hardware Init Stub Build">
+<component name="wlanhwinit_stub_build" long-name="WLAN Hardware Init Stub Build" purpose="optional">
<unit bldFile="adaptation/stubs/wlanhwinit_stub/group"/>
</component>
</collection>
</block>
-<block name="beagleboard" level="low" long-name="Beagle Board" levels="hw-if">
+<block name="beagleboard" level="low" levels="hw-if" long-name="Beagle Board">
<collection name="omap3530" long-name="OMAP 3530" level="hw-if">
-<component name="omap3530_build" long-name="Beagle Board Common" introduced="^3" purpose="optional" filter="sf_build">
+<component name="omap3530_build" long-name="Beagle Board Common" introduced="^3" filter="sf_build" purpose="optional">
<unit bldFile="adaptation/beagleboard/omap3530" mrp="adaptation/beagleboard/omap3530/base_beagle.mrp"/>
</component>
-<component name="omap3530_kernel" long-name="Beagle Board Kernel" introduced="^3" purpose="optional" filter="sf_build">
+<component name="omap3530_kernel" long-name="Beagle Board Kernel" introduced="^3" filter="sf_build" purpose="optional">
<unit bldFile="adaptation/beagleboard/omap3530/kernel"/>
</component>
-<component name="beagleboard_Baseport" long-name="Beagle Board Baseport" introduced="^3" purpose="optional" filter="sf_build">
+<component name="beagleboard_Baseport" long-name="Beagle Board Baseport" introduced="^3" filter="sf_build" purpose="optional">
<unit bldFile="adaptation/beagleboard/omap3530/beagleboard"/>
</component>
</collection>
</block>
-<block name="qemu" level="low" long-name="QEMU and Baseport" levels="hw-if">
+<block name="qemu" level="low" levels="hw-if" long-name="QEMU and Baseport">
<collection name="qemu_baseport" long-name="Baseport" level="hw-if">
-<component name="syborg" long-name="Syborg" introduced="^2" purpose="optional" filter="sf_build">
+<component name="syborg" long-name="Syborg" introduced="^2" filter="sf_build" purpose="optional">
<unit bldFile="adaptation/qemu/baseport/syborg" mrp="adaptation/qemu/baseport/syborg/syborg.mrp"/>
</component>
</collection>
</block>
<block name="codecs.aricent" level="low" long-name="Aricent Codecs">
<collection name="utilities" long-name="Aricent Utilities">
-<component name="ariprocessengine" long-name="Aricent Process Engine">
+<component name="ariprocessengine" long-name="Aricent Process Engine" purpose="optional">
<unit bldFile="adaptation/codecs.aricent/utilities/ariprocessengine/group"/>
</component>
-<component name="aristatemachine" long-name="Aricent State Machine">
+<component name="aristatemachine" long-name="Aricent State Machine" purpose="optional">
<unit bldFile="adaptation/codecs.aricent/utilities/aristatemachine/group"/>
</component>
</collection>
<collection name="aaclc_enc" level="plugin">
-<component name="ariaaclcencmmfcodec">
+<component name="ariaaclcencmmfcodec" purpose="optional">
<unit bldFile="adaptation/codecs.aricent/aaclc_enc/ariaaclcencmmfcodec/group"/>
</component>
</collection>
<collection name="amrnb_dec" level="plugin">
-<component name="ariamrnbdecmmfcodec">
+<component name="ariamrnbdecmmfcodec" purpose="optional">
<unit bldFile="adaptation/codecs.aricent/amrnb_dec/ariamrnbdecmmfcodec/group"/>
</component>
</collection>
<collection name="amrnb_enc" level="plugin">
-<component name="ariamrnbencmmfcodec">
+<component name="ariamrnbencmmfcodec" purpose="optional">
<unit bldFile="adaptation/codecs.aricent/amrnb_enc/ariamrnbencmmfcodec/group"/>
</component>
</collection>
<collection name="amrwb_dec" level="plugin">
-<component name="ariamrwbdecmmfcodec">
+<component name="ariamrwbdecmmfcodec" purpose="optional">
<unit bldFile="adaptation/codecs.aricent/amrwb_dec/ariamrwbdecmmfcodec/group"/>
</component>
</collection>
<collection name="h264_dec" level="plugin">
-<component name="arih264dechwdevice">
+<component name="arih264dechwdevice" purpose="optional">
<unit bldFile="adaptation/codecs.aricent/h264_dec/arih264dechwdevice/group"/>
</component>
</collection>
<collection name="h264_enc" level="plugin">
-<component name="arih264enchwdevice">
+<component name="arih264enchwdevice" purpose="optional">
<unit bldFile="adaptation/codecs.aricent/h264_enc/arih264enchwdevice/group"/>
</component>
</collection>
<collection name="heaac_dec" level="plugin">
-<component name="ariheaacdecmmfcodec">
+<component name="ariheaacdecmmfcodec" purpose="optional">
<unit bldFile="adaptation/codecs.aricent/heaac_dec/ariheaacdecmmfcodec/group"/>
</component>
</collection>
<collection name="mp3_dec" level="plugin">
-<component name="arimp3decmmfcodec">
+<component name="arimp3decmmfcodec" purpose="optional">
<unit bldFile="adaptation/codecs.aricent/mp3_dec/arimp3decmmfcodec/group"/>
</component>
</collection>
<collection name="mp4asp_dec" level="plugin">
-<component name="arimpeg4aspdechwdevice">
+<component name="arimpeg4aspdechwdevice" purpose="optional">
<unit bldFile="adaptation/codecs.aricent/mp4asp_dec/arimpeg4aspdechwdevice/group"/>
</component>
</collection>
<collection name="mp4sp_enc" level="plugin">
-<component name="arimp4spenchwdevice">
+<component name="arimp4spenchwdevice" purpose="optional">
<unit bldFile="adaptation/codecs.aricent/mp4sp_enc/arimp4spenchwdevice/group"/>
</component>
</collection>
</block>
</layer>
<layer name="os" long-name="OS" levels="hw services">
-<block name="kernelhwsrv" level="hw" long-name="Kernel and Hardware Services" levels="hw-if adaptation framework test">
+<block name="kernelhwsrv" level="hw" levels="hw-if adaptation framework test" long-name="Kernel and Hardware Services">
<collection name="brdbootldr" long-name="Board Boot Loader" level="hw-if">
<component name="ubootldr" long-name="Boot Loader" introduced="9.2" purpose="optional">
<unit bldFile="os/kernelhwsrv/brdbootldr/ubootldr" mrp="os/kernelhwsrv/brdbootldr/ubootldr/base_ubootldr.mrp"/>
@@ -361,7 +360,7 @@
<component name="usbmsfs" long-name="USB Mass Storage File System" filter="gt" purpose="optional" plugin="Y">
<unit bldFile="os/kernelhwsrv/userlibandfileserver/fileserver/smassstorage" mrp="os/kernelhwsrv/userlibandfileserver/fileserver/smassstorage/base_f32_smassstorage.mrp"/>
</component>
-<component name="usbhostmssrv" long-name="USB Host Mass Storage Server" filter="gt" introduced="^3" purpose="optional" plugin="Y">
+<component name="usbhostmssrv" long-name="USB Host Mass Storage Server" introduced="^3" filter="gt" purpose="optional" plugin="Y">
<unit bldFile="os/kernelhwsrv/userlibandfileserver/fileserver/shostmassstorage" mrp="os/kernelhwsrv/userlibandfileserver/fileserver/shostmassstorage/base_f32_shostmassstorage.mrp"/>
</component>
<component name="fat32fs" long-name="FAT32 File System" filter="gt" purpose="optional" plugin="Y">
@@ -397,7 +396,7 @@
</component>
</collection>
</block>
-<block name="boardsupport" level="hw" long-name="Board Support" levels="bsp test 2 3 config">
+<block name="boardsupport" level="hw" levels="bsp test 2 3 config" long-name="Board Support">
<collection name="emulator" long-name="Emulator" level="bsp">
<component name="emulatorbsp" long-name="Emulator BSP" purpose="optional">
<unit bldFile="os/boardsupport/emulator/emulatorbsp" mrp="os/boardsupport/emulator/emulatorbsp/base_wins.mrp"/>
@@ -414,9 +413,9 @@
</component>
</collection>
</block>
-<block name="buildtools" level="hw" long-name="Build Tools" levels="bld mw fw ui">
+<block name="buildtools" level="hw" levels="bld mw fw ui" long-name="Build Tools">
<collection name="bldsystemtools" long-name="Build System Tools" level="bld">
-<component name="sysdeftools" long-name="System Definition Tools" purpose="development" introduced="^2">
+<component name="sysdeftools" long-name="System Definition Tools" introduced="^2" purpose="development">
<unit mrp="os/buildtools/bldsystemtools/sysdeftools/group/sysdeftools.mrp"/>
</component>
<component name="commonbldutils" long-name="Common Utils" purpose="development">
@@ -435,8 +434,8 @@
</component>
</collection>
<collection name="sbsv1_os" long-name="Symbian Build System v1" level="fw">
-<component name="e32toolp" long-name="E32 Perl Tools" purpose="development" filter="sf_build" class="PC">
-<unit mrp="os/buildtools/sbsv1_os/e32toolp/group/tools_e32toolp.mrp" bldFile="os/buildtools/sbsv1_os/e32toolp/group"/>
+<component name="e32toolp" long-name="E32 Perl Tools" filter="sf_build" purpose="development" class="PC">
+<unit bldFile="os/buildtools/sbsv1_os/e32toolp/group" mrp="os/buildtools/sbsv1_os/e32toolp/group/tools_e32toolp.mrp"/>
</component>
</collection>
<collection name="imgtools_os" long-name="Image Tools" level="fw">
@@ -455,172 +454,172 @@
</component>
</collection>
</block>
-<block name="ossrv" level="services" long-name="Generic OS Services" levels="physical-abstraction app-libs encoding translation data-services utilities">
+<block name="ossrv" level="services" levels="physical-abstraction app-libs encoding translation data-services utilities" long-name="Generic OS Services">
<collection name="ossrv_pub" long-name="Generic OS Services Public Interfaces" level="utilities">
-<component name="boost_apis" long-name="Boost APIs" filter="s60" class="api">
+<component name="boost_apis" long-name="Boost APIs" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/boost_apis/group"/>
</component>
-<component name="cpp_wrappers" long-name="Cpp wrappers" filter="s60" class="api">
+<component name="cpp_wrappers" long-name="Cpp wrappers" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/cpp_wrappers/group"/>
</component>
-<component name="character_type_apis" long-name="Character Type APIs" filter="s60" class="api">
+<component name="character_type_apis" long-name="Character Type APIs" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/character_type_apis/group"/>
</component>
-<component name="compiler_specific_runtime_support" long-name="Compiler Specific Runtime Support" filter="s60" class="api">
+<component name="compiler_specific_runtime_support" long-name="Compiler Specific Runtime Support" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/compiler_specific_runtime_support/group"/>
</component>
-<component name="ossrv_configuration_api" long-name="Generic OS Services Configuration API" filter="s60" class="api">
+<component name="ossrv_configuration_api" long-name="Generic OS Services Configuration API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/configuration/group"/>
</component>
-<component name="crypto_authentication_codes_and_hash_functions_api" long-name="Crypto Authentication Codes and Hash Functions API" filter="s60" class="api">
+<component name="crypto_authentication_codes_and_hash_functions_api" long-name="Crypto Authentication Codes and Hash Functions API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/crypto_authentication_codes_and_hash_functions_api/group"/>
</component>
-<component name="crypto_auxillary_functions_api" long-name="Crypto Auxillary Functions API" filter="s60" class="api">
+<component name="crypto_auxillary_functions_api" long-name="Crypto Auxillary Functions API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/crypto_auxillary_functions_api/group"/>
</component>
-<component name="crypto_certificates_api" long-name="Crypto Certificates API" filter="s60" class="api">
+<component name="crypto_certificates_api" long-name="Crypto Certificates API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/crypto_certificates_api/group"/>
</component>
-<component name="crypto_inputoutput_and_data_encoding_api" long-name="Crypto Input/Output and Data Encoding API" filter="s60" class="api">
+<component name="crypto_inputoutput_and_data_encoding_api" long-name="Crypto Input/Output and Data Encoding API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/crypto_inputoutput_and_data_encoding_api/group"/>
</component>
-<component name="crypto_public_key_cryptography_and_key_agreement_api" long-name="Crypto Public Key Cryptography and Key Agreement API" filter="s60" class="api">
+<component name="crypto_public_key_cryptography_and_key_agreement_api" long-name="Crypto Public Key Cryptography and Key Agreement API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/crypto_public_key_cryptography_and_key_agreement_api/group"/>
</component>
-<component name="crypto_symmetric_ciphers_api" long-name="Crypto Symmetric Ciphers API" filter="s60" class="api">
+<component name="crypto_symmetric_ciphers_api" long-name="Crypto Symmetric Ciphers API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/crypto_symmetric_ciphers_api/group"/>
</component>
-<component name="crypto_utility_functions_api" long-name="Crypto Utility Functions API" filter="s60" class="api">
+<component name="crypto_utility_functions_api" long-name="Crypto Utility Functions API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/crypto_utility_functions_api/group"/>
</component>
-<component name="cryptogaphy_related_api" long-name="Cryptogaphy Related API" filter="s60" class="api">
+<component name="cryptogaphy_related_api" long-name="Cryptogaphy Related API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/cryptogaphy_related_api/group"/>
</component>
-<component name="ossrv_debug_api" long-name="Generic OS Services Debug API" filter="s60" class="api">
+<component name="ossrv_debug_api" long-name="Generic OS Services Debug API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/debug/group"/>
</component>
-<component name="ossrv_exceptions_api" long-name="Generic OS Services Exceptions API" filter="s60" class="api">
+<component name="ossrv_exceptions_api" long-name="Generic OS Services Exceptions API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/exceptions/group"/>
</component>
-<component name="io_stream_api" long-name="I/O stream API" filter="s60" class="api">
+<component name="io_stream_api" long-name="I/O stream API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/io_stream_api/group"/>
</component>
-<component name="localization_function_api" long-name="Localization Function API" filter="s60" class="api">
+<component name="localization_function_api" long-name="Localization Function API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/localization_function_api/group"/>
</component>
-<component name="math_operations_api" long-name="Math Operations API" filter="s60" class="api">
+<component name="math_operations_api" long-name="Math Operations API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/math_operations_api/group"/>
</component>
-<component name="ossrv_memory_api" long-name="Generic OS Services Memory API" filter="s60" class="api">
+<component name="ossrv_memory_api" long-name="Generic OS Services Memory API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/memory/group"/>
</component>
-<component name="no_namespace_headers" long-name="No Namespace Headers" filter="s60" class="api">
+<component name="no_namespace_headers" long-name="No Namespace Headers" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/no_namespace_headers/group"/>
</component>
-<component name="openc_headers" long-name="OpenC headers" filter="s60" class="api">
+<component name="openc_headers" long-name="OpenC headers" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/openc_headers/group"/>
</component>
-<component name="openc_wrappers" long-name="OpenC wrappers" filter="s60" class="api">
+<component name="openc_wrappers" long-name="OpenC wrappers" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/openc_wrappers/group"/>
</component>
-<component name="ssl_general_api" long-name="SSL General API" filter="s60" class="api">
+<component name="ssl_general_api" long-name="SSL General API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/ssl_general_api/group"/>
</component>
-<component name="ssl_protocol_methods_api" long-name="SSL Protocol Methods API" filter="s60" class="api">
+<component name="ssl_protocol_methods_api" long-name="SSL Protocol Methods API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/ssl_protocol_methods_api/group"/>
</component>
-<component name="standard_compressiondecompression_api" long-name="Standard Compression/Decompression API" filter="s60" class="api">
+<component name="standard_compressiondecompression_api" long-name="Standard Compression/Decompression API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/standard_compressiondecompression_api/group"/>
</component>
-<component name="stl" long-name="STL API" filter="s60" class="api">
+<component name="stl" long-name="STL API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/stl/group"/>
</component>
-<component name="thread_api" long-name="Thread API" filter="s60" class="api">
+<component name="thread_api" long-name="Thread API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/thread_api/group"/>
</component>
-<component name="type_attributes" long-name="Type Attributes API" filter="s60" class="api">
+<component name="type_attributes" long-name="Type Attributes API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/type_attributes/group"/>
</component>
-<component name="typeinfo" long-name="Type Info API" filter="s60" class="api">
+<component name="typeinfo" long-name="Type Info API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/typeinfo/group"/>
</component>
-<component name="utility_apis" long-name="Utility APIs" filter="s60" class="api">
+<component name="utility_apis" long-name="Utility APIs" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/utility_apis/group"/>
</component>
-<component name="wide_character_classapis" long-name="Wide character class/apis" filter="s60" class="api">
+<component name="wide_character_classapis" long-name="Wide character class/apis" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/wide_character_classapis/group"/>
</component>
-<component name="dbus_api" long-name="Dbus API" filter="s60" class="api">
+<component name="dbus_api" long-name="Dbus API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/dbus/group"/>
</component>
-<component name="dbus-glib_api" long-name="D-Bus GLib API" filter="s60" class="api">
+<component name="dbus-glib_api" long-name="D-Bus GLib API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_pub/dbus-glib/group"/>
</component>
</collection>
<collection name="ossrv_plat" long-name="Generic OS Services Platform Interfaces" level="utilities">
-<component name="libutils_apis" long-name="Utility Library APIs" filter="s60" class="api">
+<component name="libutils_apis" long-name="Utility Library APIs" filter="s60" purpose="optional" class="api">
<unit bldFile="os/ossrv/ossrv_plat/libutils/group"/>
</component>
</collection>
<collection name="stdlibs" long-name="Standard Libraries" level="translation">
-<component name="libz" filter="s60" long-name="Z Compression Library">
+<component name="libz" long-name="Z Compression Library" filter="s60" purpose="optional">
<unit bldFile="os/ossrv/stdlibs/libz/group"/>
</component>
-<component name="libcrypt" filter="s60" long-name="Crypt Library">
+<component name="libcrypt" long-name="Crypt Library" filter="s60" purpose="optional">
<unit bldFile="os/ossrv/stdlibs/libcrypt/group"/>
</component>
</collection>
<collection name="ssl" long-name="SSL" level="data-services">
-<component name="libcrypto" filter="s60" long-name="Crypto Library">
+<component name="libcrypto" long-name="Crypto Library" filter="s60" purpose="optional">
<unit bldFile="os/ossrv/ssl/libcrypto/group"/>
</component>
-<component name="libssl" filter="s60" purpose="development" long-name="SSL Library">
+<component name="libssl" long-name="SSL Library" filter="s60" purpose="development">
<unit bldFile="os/ossrv/ssl/libssl/group"/>
</component>
</collection>
<collection name="glib" long-name="GLib" level="utilities">
-<component name="glibbackend" filter="s60" long-name="GLib Backend">
+<component name="glibbackend" long-name="GLib Backend" filter="s60" purpose="optional">
<unit bldFile="os/ossrv/glib/build/symbian/glibbackend/group"/>
<!-- Move to here: <unit bldFile="glib/glibbackend/group"/> -->
</component>
-<component name="libglib" filter="s60" long-name="GLib Library">
+<component name="libglib" long-name="GLib Library" filter="s60" purpose="optional">
<unit bldFile="os/ossrv/glib/build/symbian/glib/group"/>
<!-- Move to here: <unit bldFile="glib/libglib/group"/> -->
</component>
-<component name="libgthread" filter="s60" long-name="Libg Thread">
+<component name="libgthread" long-name="Libg Thread" filter="s60" purpose="optional">
<unit bldFile="os/ossrv/glib/build/symbian/gthread/group"/>
<!-- Move to here: <unit bldFile="glib/libgthread/group"/> -->
</component>
-<component name="libgmodule" filter="s60" long-name="Libg Module">
+<component name="libgmodule" long-name="Libg Module" filter="s60" purpose="optional">
<unit bldFile="os/ossrv/glib/build/symbian/gmodule/group"/>
<!-- Move to here: <unit bldFile="glib/libgmodule/group"/> -->
</component>
-<component name="libgobject" filter="s60" long-name="Libg Object">
+<component name="libgobject" long-name="Libg Object" filter="s60" purpose="optional">
<unit bldFile="os/ossrv/glib/build/symbian/gobject/group"/>
<!-- Move to here: <unit bldFile="glib/libgobject/group"/> -->
</component>
</collection>
<collection name="stdcpp" long-name="C++ Standard Library" level="translation">
<!-- collection is really a component. Needs to be moved down a directory -->
-<component name="stdcpp_build" filter="s60" long-name="Stdcpp">
+<component name="stdcpp_build" long-name="Stdcpp" filter="s60" purpose="optional">
<unit bldFile="os/ossrv/stdcpp/group"/>
</component>
</collection>
<collection name="ofdbus" long-name="Open Foundation D-Bus" level="utilities">
-<component name="dbus" filter="s60" long-name="D-Bus">
+<component name="dbus" long-name="D-Bus" filter="s60" purpose="optional">
<unit bldFile="os/ossrv/ofdbus/dbus/group"/>
</component>
-<component name="dbus-glib" filter="s60" long-name="D-Bus GLib">
+<component name="dbus-glib" long-name="D-Bus GLib" filter="s60" purpose="optional">
<unit bldFile="os/ossrv/ofdbus/dbus-glib/group"/>
</component>
-<component name="ofdbus_rom" filter="s60" long-name="D-Bus ROM">
-<!-- Contains IBY for for dbus. Should remove #includes to above components and move this down a directory
+<component name="ofdbus_rom" long-name="D-Bus ROM" filter="s60" purpose="optional">
+<!-- Contains IBY for for dbus. Should remove #includes to above components and move this down a directory
Consider moving IBY file to one of the above as well and removing this component entirely -->
<unit bldFile="os/ossrv/ofdbus/group"/>
</component>
</collection>
<collection name="utilitylibraries" long-name="Utility Libraries" level="encoding">
-<component name="libutils" filter="s60" long-name="Utility Library">
+<component name="libutils" long-name="Utility Library" filter="s60" purpose="optional">
<unit bldFile="os/ossrv/utilitylibraries/libutils/group"/>
</component>
</collection>
@@ -682,7 +681,7 @@
</component>
</collection>
<collection name="ossrv_info" long-name="Generic OS Services Info" level="utilities">
-<component name="ossrv_build" filter="s60" long-name="Generic OS Services Build">
+<component name="ossrv_build" long-name="Generic OS Services Build" filter="s60" purpose="optional">
<!-- exports should be moved to individual components -->
<unit bldFile="os/ossrv/group"/>
</component>
@@ -691,7 +690,7 @@
</component>
</collection>
</block>
-<block name="persistentdata" level="services" long-name="Persistent Data Services" levels="adaptation hw-if plugin framework server app-if">
+<block name="persistentdata" level="services" levels="adaptation hw-if plugin framework server app-if" long-name="Persistent Data Services">
<collection name="featuremgmt" long-name="Feature Management" level="framework">
<component name="featuremgr" long-name="Feature Manager" introduced="^3" purpose="mandatory">
<unit bldFile="os/persistentdata/featuremgmt/featuremgr/group" mrp="os/persistentdata/featuremgmt/featuremgr/group/syslibs_featmgr.mrp"/>
@@ -707,7 +706,7 @@
<component name="filelogger" long-name="File Logger" introduced="ER5" deprecated="^3" purpose="optional">
<unit bldFile="os/persistentdata/loggingservices/filelogger/group" mrp="os/persistentdata/loggingservices/filelogger/group/comms-infras_flogger.mrp"/>
</component>
-<component name="rfilelogger" long-name="RFile Logger" deprecated="^3" introduced="9.1" purpose="development">
+<component name="rfilelogger" long-name="RFile Logger" introduced="9.1" deprecated="^3" purpose="development">
<unit bldFile="os/persistentdata/loggingservices/rfilelogger/group" mrp="os/persistentdata/loggingservices/rfilelogger/group/testtools_utilities.mrp"/>
</component>
</collection>
@@ -742,360 +741,354 @@
</component>
</collection>
</block>
-<block name="devicesrv" level="services" long-name="Device Services" levels="adaptation hw-if plugin framework server app-if">
+<block name="devicesrv" level="services" levels="adaptation hw-if plugin framework server app-if" long-name="Device Services">
<collection name="devicesrv_pub" long-name="Device Services Public Interfaces" level="app-if">
-<component name="platform_path_definitions_api" long-name="Platform Path Definitions API" filter="s60,bldmefirst" class="api">
+<component name="platform_path_definitions_api" long-name="Platform Path Definitions API" filter="s60,bldmefirst" purpose="optional" class="api">
<!-- this needs to be moved to deviceplatformrelease -->
<unit bldFile="os/devicesrv/devicesrv_pub/platform_path_definitions_api/group"/>
</component>
-<component name="common_platform_security_definitions_api" long-name="Common Platform Security Definitions API" filter="s60" class="api">
+<component name="common_platform_security_definitions_api" long-name="Common Platform Security Definitions API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_pub/common_platform_security_definitions_api/group"/>
</component>
-<component name="feature_discovery_api" long-name="Feature Discovery API" filter="s60" class="api">
+<component name="feature_discovery_api" long-name="Feature Discovery API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_pub/feature_discovery_api/group"/>
</component>
-<component name="platform_environment_api" long-name="Platform Environment API" filter="s60" class="api">
+<component name="platform_environment_api" long-name="Platform Environment API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_pub/platform_environment_api/group"/>
</component>
-<component name="sensor_channel_api" long-name="Sensor Channel API" filter="s60" class="api">
+<component name="sensor_channel_api" long-name="Sensor Channel API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_pub/sensor_channel_api/group"/>
</component>
-<component name="sensor_definitions_api" long-name="Sensor Definitions API" filter="s60" class="api">
+<component name="sensor_definitions_api" long-name="Sensor Definitions API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_pub/sensor_definitions_api/group"/>
</component>
-<component name="version_info_api" long-name="Version Info API" filter="s60" class="api">
+<component name="version_info_api" long-name="Version Info API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_pub/version_info_api/group"/>
</component>
-<component name="accessory_monitoring_api" long-name="Accessory Monitoring API" filter="s60" class="api">
+<component name="accessory_monitoring_api" long-name="Accessory Monitoring API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_pub/accessory_monitoring_api/group"/>
</component>
-<component name="haptics_api" long-name="Haptics API" filter="s60" class="api">
+<component name="haptics_api" long-name="Haptics API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_pub/haptics_api/group"/>
</component>
-<component name="sensor_data_compensator_api" long-name="Sensor Data Compensator API" filter="s60" class="api">
+<component name="sensor_data_compensator_api" long-name="Sensor Data Compensator API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_pub/sensor_data_compensator_api/group"/>
</component>
</collection>
<collection name="devicesrv_plat" long-name="Device Services Platform Interfaces" level="app-if">
-<component name="configuration_file_parser_api" long-name="Configuration File Parser API" filter="s60" class="api">
+<component name="configuration_file_parser_api" long-name="Configuration File Parser API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/configuration_file_parser_api/group"/>
</component>
-<component name="dos_extension_plugin_api" long-name="DOS Extension Plug-In API" filter="s60" class="api">
+<component name="dos_extension_plugin_api" long-name="DOS Extension Plug-In API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/dos_extension_plugin_api/group"/>
</component>
-<component name="mediator_command_initiator_api" long-name="Mediator Command Initiator API" filter="s60" class="api">
+<component name="mediator_command_initiator_api" long-name="Mediator Command Initiator API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/mediator_command_initiator_api/group"/>
</component>
-<component name="syslangutil_api" long-name="SysLangUtil API" filter="s60" class="api">
+<component name="syslangutil_api" long-name="SysLangUtil API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/syslangutil_api/group"/>
</component>
-<component name="wakeup_alarm_api" long-name="Wakeup Alarm API" filter="s60" class="api">
+<component name="wakeup_alarm_api" long-name="Wakeup Alarm API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/wakeup_alarm_api/group"/>
</component>
-<component name="disk_and_memory_level_keys_api" long-name="Disk and Memory Level Keys API" filter="s60" class="api">
+<component name="disk_and_memory_level_keys_api" long-name="Disk and Memory Level Keys API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/disk_and_memory_level_keys_api/group"/>
</component>
-<component name="mediator_plugin_api" long-name="Mediator Plugin API" filter="s60" class="api">
+<component name="mediator_plugin_api" long-name="Mediator Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/mediator_plugin_api/group"/>
</component>
-<component name="headset_status_api" long-name="Headset Status API" filter="s60" class="api">
+<component name="headset_status_api" long-name="Headset Status API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/headset_status_api/group"/>
</component>
-<component name="system_startup_extension_plugin_api" long-name="System Startup Extension Plugin API" filter="s60" class="api">
+<component name="system_startup_extension_plugin_api" long-name="System Startup Extension Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/system_startup_extension_plugin_api/group"/>
</component>
-<component name="sensor_plugin_api" long-name="Sensor Plugin API" filter="s60" class="api">
+<component name="sensor_plugin_api" long-name="Sensor Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/sensor_plugin_api/group"/>
</component>
-<component name="accessory_api" long-name="Accessory API" filter="s60" class="api">
+<component name="accessory_api" long-name="Accessory API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/accessory_api/group"/>
</component>
-<component name="display_language_definition_api" long-name="Display Language Definition API" filter="s60" class="api">
+<component name="display_language_definition_api" long-name="Display Language Definition API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/display_language_definition_api/group"/>
</component>
-<component name="mediator_command_responder_api" long-name="Mediator Command Responder API" filter="s60" class="api">
+<component name="mediator_command_responder_api" long-name="Mediator Command Responder API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/mediator_command_responder_api/group"/>
</component>
-<component name="accessory_policy_definitions_api" long-name="Accessory Policy Definitions API" filter="s60" class="api">
+<component name="accessory_policy_definitions_api" long-name="Accessory Policy Definitions API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/accessory_policy_definitions_api/group"/>
</component>
-<component name="hw_settings_api" long-name="Hardware Settings API" filter="s60" class="api">
+<component name="hw_settings_api" long-name="Hardware Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/hw_settings_api/group"/>
</component>
-<component name="mediator_domain_definitions_api" long-name="Mediator Domain Definitions API" filter="s60" class="api">
+<component name="mediator_domain_definitions_api" long-name="Mediator Domain Definitions API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/mediator_domain_definitions_api/group"/>
</component>
-<component name="sensor_extension_api" long-name="Sensor Extension API" filter="s60" class="api">
+<component name="sensor_extension_api" long-name="Sensor Extension API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/sensor_extension_api/group"/>
</component>
-<component name="accessory_plugin_api" long-name="Accessory Plugin API" filter="s60" class="api">
+<component name="accessory_plugin_api" long-name="Accessory Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/accessory_plugin_api/group"/>
</component>
-<component name="sae_api" long-name="SAE API" filter="s60" class="api">
+<component name="sae_api" long-name="SAE API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/sae_api/group"/>
</component>
-<component name="accessory_control_api" long-name="Accessory Control API" filter="s60" class="api">
+<component name="accessory_control_api" long-name="Accessory Control API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/accessory_control_api/group"/>
</component>
-<component name="mediator_static_registration_api" long-name="Mediator Static Registration API" filter="s60" class="api">
+<component name="mediator_static_registration_api" long-name="Mediator Static Registration API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/mediator_static_registration_api/group"/>
</component>
-<component name="accessory_key_event_handling_api" long-name="Accessory Key Event Handling API" filter="s60" class="api">
+<component name="accessory_key_event_handling_api" long-name="Accessory Key Event Handling API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/accessory_key_event_handling_api/group"/>
</component>
-<component name="mediator_notification_api" long-name="Mediator Notification API" filter="s60" class="api">
+<component name="mediator_notification_api" long-name="Mediator Notification API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/mediator_notification_api/group"/>
</component>
-<component name="accessory_policy_utility_api" long-name="Accessory Policy Utility API" filter="s60" class="api">
+<component name="accessory_policy_utility_api" long-name="Accessory Policy Utility API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/accessory_policy_utility_api/group"/>
</component>
-<component name="common_dsy_plugin_api" long-name="Common DSY Plugin API" filter="s60" class="api">
+<component name="common_dsy_plugin_api" long-name="Common DSY Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/common_dsy_plugin_api/group"/>
</component>
-<component name="remote_control_extension_api" long-name="Remote Control Extension API" filter="s60" class="api">
+<component name="remote_control_extension_api" long-name="Remote Control Extension API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/remote_control_extension_api/group"/>
</component>
-<component name="sensor_channel_filter_api" long-name="Sensor Channel Filter API" filter="s60" class="api">
+<component name="sensor_channel_filter_api" long-name="Sensor Channel Filter API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/sensor_channel_filter_api/group"/>
</component>
-<component name="dos_extension_api" long-name="DOS Extension API" filter="s60" class="api">
+<component name="dos_extension_api" long-name="DOS Extension API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/dos_extension_api/group"/>
</component>
-<component name="accessory_audio_control_api" long-name="Accessory Audio Control API" filter="s60" class="api">
+<component name="accessory_audio_control_api" long-name="Accessory Audio Control API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/accessory_audio_control_api/group"/>
</component>
-<component name="mediator_event_consumer_api" long-name="Mediator Event Consumer API" filter="s60" class="api">
+<component name="mediator_event_consumer_api" long-name="Mediator Event Consumer API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/mediator_event_consumer_api/group"/>
</component>
-<component name="shared_data_api" long-name="Shared Data API" filter="s60" class="api">
+<component name="shared_data_api" long-name="Shared Data API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/shared_data_api/group"/>
</component>
-<component name="accessory_settings_api" long-name="Accessory Settings API" filter="s60" class="api">
+<component name="accessory_settings_api" long-name="Accessory Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/accessory_settings_api/group"/>
</component>
-<component name="accessory_bluetooth_control_api" long-name="Accessory Bluetooth Control API" filter="s60" class="api">
+<component name="accessory_bluetooth_control_api" long-name="Accessory Bluetooth Control API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/accessory_bluetooth_control_api/group"/>
</component>
-<component name="extended_version_info_api" long-name="Extended Version Info API" filter="s60" class="api">
+<component name="extended_version_info_api" long-name="Extended Version Info API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/extended_version_info_api/group"/>
</component>
-<component name="mediator_event_provider_api" long-name="Mediator Event Provider API" filter="s60" class="api">
+<component name="mediator_event_provider_api" long-name="Mediator Event Provider API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/mediator_event_provider_api/group"/>
</component>
-<component name="tv_out_config_api" long-name="TV Out Config API" filter="s60" class="api">
+<component name="tv_out_config_api" long-name="TV Out Config API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/tv_out_config_api/group"/>
</component>
-<component name="tspclientmapper_api" long-name="TSP Client Mapper API" filter="s60" class="api">
+<component name="tspclientmapper_api" long-name="TSP Client Mapper API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/tspclientmapper_api/group"/>
</component>
-<component name="powersave_api" long-name="Power Save API" filter="s60" class="api">
+<component name="powersave_api" long-name="Power Save API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/powersave_api/group"/>
</component>
-<component name="powersave_definitions_api" long-name="Power Save Definitions API" filter="s60" class="api">
+<component name="powersave_definitions_api" long-name="Power Save Definitions API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/powersave_definitions_api/group"/>
</component>
-<component name="powersave_plugin_api" long-name="Power Save Plugin API" filter="s60" class="api">
+<component name="powersave_plugin_api" long-name="Power Save Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/powersave_plugin_api/group"/>
</component>
-<component name="extended_version_info_plugin_api" long-name="Extended Version Info Plugin API" filter="s60" class="api">
+<component name="extended_version_info_plugin_api" long-name="Extended Version Info Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/extended_version_info_plugin_api/group"/>
</component>
-<component name="haptics_plugin_api" long-name="Haptics Plugin API" filter="s60" class="api">
+<component name="haptics_plugin_api" long-name="Haptics Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/haptics_plugin_api/group"/>
</component>
-<component name="haptics_effect_data_getter_plugin_api" long-name="Haptics Effect Data Getter Plugin API" filter="s60" class="api">
+<component name="haptics_effect_data_getter_plugin_api" long-name="Haptics Effect Data Getter Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/haptics_effect_data_getter_plugin_api/group"/>
</component>
-<component name="haptics_packetizer_plugin_api" long-name="Haptics Packetizer Plugin API" filter="s60" class="api">
+<component name="haptics_packetizer_plugin_api" long-name="Haptics Packetizer Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/haptics_packetizer_plugin_api/group"/>
</component>
-<component name="tiltcompensation_api" long-name="Tilt Compensation API" filter="s60" class="api">
+<component name="tiltcompensation_api" long-name="Tilt Compensation API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/tiltcompensation_api/group"/>
</component>
-<component name="disk_notification_handler_api" long-name="Disk Notification Handler API" filter="s60" class="api">
+<component name="disk_notification_handler_api" long-name="Disk Notification Handler API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/disk_notification_handler_api/group"/>
</component>
-<component name="accessory_policy_usb_audio_api" long-name="Accessory Policy USB Audio API" filter="s60" class="api">
+<component name="accessory_policy_usb_audio_api" long-name="Accessory Policy USB Audio API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/accessory_policy_usb_audio_api/group"/>
</component>
-<component name="accessory_policy_hdmi_audio_api" long-name="Accessory Policy HDMI Audio API" filter="s60" class="api">
+<component name="accessory_policy_hdmi_audio_api" long-name="Accessory Policy HDMI Audio API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/accessory_policy_hdmi_audio_api/group"/>
</component>
-<component name="sensor_data_compensator_plugin_api" long-name="Sensor Data Compensator Plugin API" filter="s60" class="api">
+<component name="sensor_data_compensator_plugin_api" long-name="Sensor Data Compensator Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/sensor_data_compensator_plugin_api/group"/>
</component>
-<component name="ddc_access_api" long-name="DDC Access API" filter="s60" class="api">
+<component name="ddc_access_api" long-name="DDC Access API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/ddc_access_api/group"/>
</component>
-<component name="tv_out_behaviour_api" long-name="TV Out Behaviour API" filter="s60" class="api">
+<component name="tv_out_behaviour_api" long-name="TV Out Behaviour API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/devicesrv/devicesrv_plat/tv_out_behaviour_api/group"/>
</component>
-<component name="autoaudio_plugin_api" long-name="Auto Audio Plugin API" filter="s60" introduced="^4" class="api">
-<unit bldFile="os/devicesrv/devicesrv_plat/autoaudio_plugin_api/group"/>
-</component>
</collection>
<collection name="accessoryservices" long-name="Accessory Services" level="framework">
-<component name="accessorymonitor" filter="s60" long-name="Accessory Monitor">
+<component name="accessorymonitor" long-name="Accessory Monitor" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/accessoryservices/accessorymonitor/group"/>
</component>
-<component name="accessoryremotecontrol" filter="s60" long-name="Accessory Remote Control">
+<component name="accessoryremotecontrol" long-name="Accessory Remote Control" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/accessoryservices/accessoryremotecontrol/group"/>
</component>
-<component name="accessoryserver" filter="s60" long-name="Accessory Server">
+<component name="accessoryserver" long-name="Accessory Server" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/accessoryservices/accessoryserver/group"/>
</component>
-<component name="pluggeddisplay" filter="s60" long-name="Plugged Display" introduced="^3">
+<component name="pluggeddisplay" long-name="Plugged Display" introduced="^3" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/accessoryservices/pluggeddisplay/group"/>
</component>
-<component name="headsetstatusapi" filter="s60" long-name="Headset Status API">
+<component name="headsetstatusapi" long-name="Headset Status API" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/accessoryservices/headsetstatusapi/group"/>
</component>
-<component name="tspclientmapper" filter="s60" long-name="TSP Client Mapper">
+<component name="tspclientmapper" long-name="TSP Client Mapper" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/accessoryservices/tspclientmapper/group"/>
</component>
-<component name="remotecontrolfw" long-name="Remote Control Framework" introduced="9.1" purpose="optional" filter="s60">
+<component name="remotecontrolfw" long-name="Remote Control Framework" introduced="9.1" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/accessoryservices/remotecontrolfw/group" mrp="os/devicesrv/accessoryservices/remotecontrolfw/group/bluetooth_remotecontrol.mrp"/>
</component>
-<component name="gid_pc_tool" filter="s60" long-name="Generic ID PC Tool" class="tool PC">
+<component name="gid_pc_tool" long-name="Generic ID PC Tool" filter="s60" purpose="optional" class="tool PC">
<unit bldFile="os/devicesrv/accessoryservices/gid_pc_tool/group"/>
</component>
-<component name="autoaudioasy" filter="s60" long-name="Auto Audio Plugin" introduced="^4" plugin="Y">
-<unit bldFile="os/devicesrv/accessoryservices/autoaudioasy/group"/>
-</component>
</collection>
<collection name="commonservices" long-name="Common Services" level="app-if">
-<component name="commonengine" filter="s60" long-name="Common Engine">
+<component name="commonengine" long-name="Common Engine" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/commonservices/commonengine/group"/>
</component>
-<component name="commonengineresources" filter="s60" long-name="Common Engine Resources" class="config">
+<component name="commonengineresources" long-name="Common Engine Resources" filter="s60" purpose="optional" class="config">
<unit bldFile="os/devicesrv/commonservices/commonengineresources/group"/>
</component>
-<component name="platformenv" filter="s60" long-name="Platform Environment">
+<component name="platformenv" long-name="Platform Environment" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/commonservices/platformenv/group"/>
</component>
-<component name="sysutil" long-name="System Utilities" purpose="mandatory" introduced="ER5" filter="s60">
+<component name="sysutil" long-name="System Utilities" introduced="ER5" filter="s60" purpose="mandatory">
<unit bldFile="os/devicesrv/commonservices/sysutil/group" mrp="os/devicesrv/commonservices/sysutil/group/sysutil.mrp"/>
</component>
-<component name="activitymanager" long-name="Activity Manager" purpose="mandatory" introduced="ER5" filter="s60">
+<component name="activitymanager" long-name="Activity Manager" introduced="ER5" filter="s60" purpose="mandatory">
<unit bldFile="os/devicesrv/commonservices/activitymanager/group" mrp="os/devicesrv/commonservices/activitymanager/group/activitymanager.mrp"/>
</component>
</collection>
<collection name="dosservices" long-name="Domestic Operating System Services" level="hw-if">
-<component name="commondsy" filter="s60" long-name="Common DSY" plugin="Y">
+<component name="commondsy" long-name="Common DSY" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="os/devicesrv/dosservices/commondsy/group"/>
</component>
-<component name="dosserver" filter="s60" long-name="Domestic OS Server">
+<component name="dosserver" long-name="Domestic OS Server" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/dosservices/dosserver/group"/>
</component>
</collection>
<collection name="sensorservices" long-name="Sensor Services" level="framework">
-<component name="sensorserver" filter="s60" long-name="Sensor Server">
+<component name="sensorserver" long-name="Sensor Server" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/sensorservices/sensorserver/group"/>
</component>
-<component name="orientationssy" filter="s60" long-name="Orientation SSY" plugin="Y">
+<component name="orientationssy" long-name="Orientation SSY" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="os/devicesrv/sensorservices/orientationssy/group"/>
</component>
-<component name="tiltcompensationssy" filter="s60" long-name="Tilt Compensation SSY" plugin="Y">
+<component name="tiltcompensationssy" long-name="Tilt Compensation SSY" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="os/devicesrv/sensorservices/tiltcompensationssy/group"/>
</component>
-<component name="sensordatacompensator" filter="s60" long-name="Sensor Data Compensator">
+<component name="sensordatacompensator" long-name="Sensor Data Compensator" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/sensorservices/sensordatacompensator/group"/>
</component>
</collection>
<collection name="hwrmhaptics" long-name="HWRM Haptics" level="plugin">
-<component name="hapticseffectdatagetterfw" filter="s60" long-name="Haptics Effect Data Getter Framework">
+<component name="hapticseffectdatagetterfw" long-name="Haptics Effect Data Getter Framework" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/hwrmhaptics/hapticseffectdatagetterfw/group"/>
</component>
-<component name="hapticspluginservice" filter="s60" long-name="Haptics Plugin Service">
+<component name="hapticspluginservice" long-name="Haptics Plugin Service" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/hwrmhaptics/hapticspluginservice/group"/>
</component>
-<component name="hapticspacketizer" filter="s60" long-name="Haptics Packetizer">
+<component name="hapticspacketizer" long-name="Haptics Packetizer" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/hwrmhaptics/hapticspacketizer/group"/>
</component>
-<component name="hapticspluginmanager" filter="s60" long-name="Haptics Plugin Manager">
+<component name="hapticspluginmanager" long-name="Haptics Plugin Manager" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/hwrmhaptics/hapticspluginmanager/group"/>
</component>
-<component name="hapticsserver" filter="s60" long-name="Haptics Server">
+<component name="hapticsserver" long-name="Haptics Server" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/hwrmhaptics/hapticsserver/group"/>
</component>
-<component name="hapticsclient" filter="s60" long-name="Haptics Client">
+<component name="hapticsclient" long-name="Haptics Client" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/hwrmhaptics/hapticsclient/group"/>
</component>
-<component name="hwrmhaptics_build" filter="s60" long-name="HWRM Haptics Build">
+<component name="hwrmhaptics_build" long-name="HWRM Haptics Build" filter="s60" purpose="optional">
<!-- move these exports into the appropriate above components and delete this component-->
<unit bldFile="os/devicesrv/hwrmhaptics/group"/>
</component>
</collection>
<collection name="mediator" long-name="Mediator" level="app-if">
<!--collection is really a component. Move it down a directory -->
-<component name="mediator_build" filter="s60" long-name="Mediator Build">
+<component name="mediator_build" long-name="Mediator Build" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/mediator/group"/>
</component>
</collection>
<collection name="psmservices" long-name="Power Save Mode Services" level="app-if">
-<component name="psmserver" filter="s60" long-name="PSM Server">
+<component name="psmserver" long-name="PSM Server" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/psmservices/psmserver/group"/>
</component>
</collection>
<collection name="resourcemgmt" long-name="Resource Management" level="hw-if">
-<component name="hwrmfmtxwatcherplugin" filter="s60" long-name="HWRM FM Transmitter Watcher Plugin" plugin="Y">
+<component name="hwrmfmtxwatcherplugin" long-name="HWRM FM Transmitter Watcher Plugin" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="os/devicesrv/resourcemgmt/hwrmfmtxwatcherplugin/group"/>
</component>
-<component name="hwrmtargetmodifierplugin" filter="s60" long-name="HWRM Target Modifier Plugin" plugin="Y">
+<component name="hwrmtargetmodifierplugin" long-name="HWRM Target Modifier Plugin" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="os/devicesrv/resourcemgmt/hwrmtargetmodifierplugin/group"/>
</component>
-<component name="vibractrl" filter="s60" long-name="Vibra Control" deprecated="9.1">
+<component name="vibractrl" long-name="Vibra Control" deprecated="9.1" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/resourcemgmt/vibractrl/group"/>
</component>
-<component name="hwresourcesmgr" long-name="Hardware Resources Manager" introduced="^2" purpose="optional" filter="s60">
+<component name="hwresourcesmgr" long-name="Hardware Resources Manager" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/resourcemgmt/hwresourcesmgr/group" mrp="os/devicesrv/resourcemgmt/hwresourcesmgr/group/telephony_hwrm.mrp"/>
</component>
-<component name="hwresourcesmgrconfig" long-name="Hardware Resources Manager Config" introduced="^3" purpose="optional" filter="s60" class="config">
+<component name="hwresourcesmgrconfig" long-name="Hardware Resources Manager Config" introduced="^3" filter="s60" purpose="optional" class="config">
<unit bldFile="os/devicesrv/resourcemgmt/hwresourcesmgrconfig" mrp="os/devicesrv/resourcemgmt/hwresourcesmgrconfig/telephony_hwrm-config.mrp"/>
</component>
-<component name="resourcemgmt_data" filter="s60" long-name="Resource Management Data" class="config">
+<component name="resourcemgmt_data" long-name="Resource Management Data" filter="s60" purpose="optional" class="config">
<!-- Move exports to a self-contained component. Or leave as a component but move down a dir -->
<unit bldFile="os/devicesrv/resourcemgmt/group"/>
</component>
-<component name="powerandmemorynotificationservice" long-name="Power and Memory Notification Service" introduced="6.0" purpose="mandatory" filter="s60">
+<component name="powerandmemorynotificationservice" long-name="Power and Memory Notification Service" introduced="6.0" filter="s60" purpose="mandatory">
<unit bldFile="os/devicesrv/resourcemgmt/powerandmemorynotificationservice/group" mrp="os/devicesrv/resourcemgmt/powerandmemorynotificationservice/group/syslibs_pwrcli.mrp"/>
</component>
</collection>
<collection name="sysstatemgmt" long-name="System State Management" level="server">
-<component name="ssmmapperutility" filter="s60" long-name="SSM Mapper Utility" introduced="^3">
+<component name="ssmmapperutility" long-name="SSM Mapper Utility" introduced="^3" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/sysstatemgmt/ssmmapperutility/group"/>
</component>
-<component name="ssmpolicyplugins" filter="s60" long-name="SSM Policy Plugins" introduced="^3" plugin="Y">
+<component name="ssmpolicyplugins" long-name="SSM Policy Plugins" introduced="^3" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="os/devicesrv/sysstatemgmt/ssmpolicyplugins/group"/>
</component>
-<component name="ssmutilityplugins" filter="s60" long-name="SSM Utility Plugins" introduced="^3" plugin="Y">
+<component name="ssmutilityplugins" long-name="SSM Utility Plugins" introduced="^3" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="os/devicesrv/sysstatemgmt/ssmutilityplugins/group"/>
</component>
-<component name="ssmcmdlists" filter="s60" long-name="SSM Command Lists" introduced="^3">
+<component name="ssmcmdlists" long-name="SSM Command Lists" introduced="^3" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/sysstatemgmt/ssmcmdlists/group"/>
</component>
-<component name="ssmcustcmds" filter="s60" long-name="SSM Custom Commands" introduced="^3">
+<component name="ssmcustcmds" long-name="SSM Custom Commands" introduced="^3" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/sysstatemgmt/ssmcustcmds/group"/>
</component>
-<component name="syslangutil" filter="s60" long-name="System Language Utility" introduced="^3">
+<component name="syslangutil" long-name="System Language Utility" introduced="^3" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/sysstatemgmt/syslangutil/group"/>
</component>
-<component name="sysrestart" filter="s60" long-name="System Restart" introduced="^3">
+<component name="sysrestart" long-name="System Restart" introduced="^3" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/sysstatemgmt/sysrestart/group"/>
</component>
-<component name="sysuiprovider" filter="s60" long-name="System UI Provider" introduced="^3">
+<component name="sysuiprovider" long-name="System UI Provider" introduced="^3" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/sysstatemgmt/sysuiprovider/group"/>
</component>
-<component name="systemstarter" long-name="System Starter" introduced="9.1" deprecated="^3" purpose="mandatory" filter="s60">
+<component name="systemstarter" long-name="System Starter" introduced="9.1" deprecated="^3" filter="s60" purpose="mandatory">
<unit bldFile="os/devicesrv/sysstatemgmt/systemstarter/group" mrp="os/devicesrv/sysstatemgmt/systemstarter/group/app-framework_sysstart.mrp"/>
</component>
-<component name="systemstatemgr" long-name="System State Manager" introduced="^3" purpose="mandatory" filter="s60">
+<component name="systemstatemgr" long-name="System State Manager" introduced="^3" filter="s60" purpose="mandatory">
<unit bldFile="os/devicesrv/sysstatemgmt/systemstatemgr/group" mrp="os/devicesrv/sysstatemgmt/systemstatemgr/group/app-framework_ssma.mrp"/>
</component>
-<component name="systemstateplugins" long-name="System State Plugins" introduced="^3" purpose="optional" filter="s60" plugin="Y">
+<component name="systemstateplugins" long-name="System State Plugins" introduced="^3" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="os/devicesrv/sysstatemgmt/systemstateplugins/group" mrp="os/devicesrv/sysstatemgmt/systemstateplugins/group/app-framework_ssplugins.mrp"/>
</component>
-<component name="systemstatereferenceplugins" long-name="System State Reference Plugins" introduced="^3" purpose="optional" filter="s60" plugin="Y">
+<component name="systemstatereferenceplugins" long-name="System State Reference Plugins" introduced="^3" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="os/devicesrv/sysstatemgmt/systemstatereferenceplugins/group" mrp="os/devicesrv/sysstatemgmt/systemstatereferenceplugins/group/app-framework_ssrefplugins.mrp"/>
</component>
</collection>
@@ -1105,7 +1098,7 @@
</component>
</collection>
<collection name="systemhealthmanagement" long-name="System Health Management" level="server">
-<component name="systemhealthmgr" long-name="System Health Manager" introduced="^3" purpose="optional" filter="s60">
+<component name="systemhealthmgr" long-name="System Health Manager" introduced="^3" filter="s60" purpose="optional">
<unit bldFile="os/devicesrv/systemhealthmanagement/systemhealthmgr/group" mrp="os/devicesrv/systemhealthmanagement/systemhealthmgr/group/app-framework_shma.mrp"/>
</component>
</collection>
@@ -1116,7 +1109,7 @@
</component>
</collection>
</block>
-<block name="security" level="services" long-name="OS Security" levels="physical-abstraction plugins libraries management services utilities">
+<block name="security" level="services" levels="physical-abstraction plugins libraries management services utilities" long-name="OS Security">
<collection name="authenticationservices" long-name="Authentication Services" level="utilities">
<component name="authenticationserver" long-name="Authentication Server" introduced="^4" purpose="optional">
<unit bldFile="os/security/authenticationservices/authenticationserver/group" mrp="os/security/authenticationservices/authenticationserver/group/security_authserver.mrp"/>
@@ -1145,10 +1138,10 @@
</component>
</collection>
<collection name="crypto" long-name="Crypto Libraries" level="libraries">
-<component name="weakcryptospi" long-name="Weak Crypto SPI" filter="gt" introduced="^3" purpose="optional">
+<component name="weakcryptospi" long-name="Weak Crypto SPI" introduced="^3" filter="gt" purpose="optional">
<unit bldFile="os/security/crypto/weakcryptospi/group" mrp="os/security/crypto/weakcryptospi/group/security_cryptospi_weak.mrp"/>
</component>
-<component name="strongcryptospi" long-name="Strong Crypto SPI" filter="gt" introduced="^3" purpose="optional">
+<component name="strongcryptospi" long-name="Strong Crypto SPI" introduced="^3" filter="gt" purpose="optional">
<unit bldFile="os/security/crypto/weakcryptospi/strong" mrp="os/security/crypto/weakcryptospi/group/security_cryptospi_strong.mrp"/>
</component>
</collection>
@@ -1175,7 +1168,7 @@
</component>
</collection>
<collection name="cryptoplugins" long-name="Crypto Plugins" level="plugins">
-<component name="cryptospiplugins" long-name="Crypto SPI Plugins" filter="gt" introduced="^3" purpose="optional" plugin="Y">
+<component name="cryptospiplugins" long-name="Crypto SPI Plugins" introduced="^3" filter="gt" purpose="optional" plugin="Y">
<unit bldFile="os/security/cryptoplugins/cryptospiplugins/group" mrp="os/security/cryptoplugins/cryptospiplugins/group/security_cryptospi_plugins.mrp"/>
</component>
</collection>
@@ -1186,7 +1179,7 @@
<component name="filebasedcertificateandkeystores" long-name="File-based Certificate and Key Stores" introduced="8.0" purpose="optional">
<unit bldFile="os/security/cryptoservices/filebasedcertificateandkeystores/group" mrp="os/security/cryptoservices/filebasedcertificateandkeystores/group/security_filetokens.mrp"/>
</component>
-<component name="browserrootcertificates" long-name="Browser Root Certificates" introduced="^2" purpose="optional" filter="sf_build">
+<component name="browserrootcertificates" long-name="Browser Root Certificates" introduced="^2" filter="sf_build" purpose="optional">
<unit mrp="os/security/cryptoservices/browserrootcertificates/browserrootcerts.mrp"/>
</component>
<component name="asnpkcs" long-name="ASN PKCS" introduced="8.0" purpose="optional">
@@ -1199,7 +1192,7 @@
</component>
</collection>
</block>
-<block name="lbs" level="services" long-name="Locating Services" levels="hw-if data-acquisition adaptation management application-interface">
+<block name="lbs" level="services" levels="hw-if data-acquisition adaptation management application-interface" long-name="Locating Services">
<collection name="datasourcemodules" long-name="Generic Positioning Plugins" level="data-acquisition">
<component name="defaultpositioningmodule" long-name="Default Positioning Module" introduced="^2" purpose="optional" plugin="Y">
<unit bldFile="os/lbs/datasourcemodules/defaultpositioningmodule/group" mrp="os/lbs/datasourcemodules/defaultpositioningmodule/group/lbs_default_positioning_module.mrp"/>
@@ -1285,7 +1278,7 @@
</component>
</collection>
</block>
-<block name="commsfw" level="services" long-name="Communications Framework" levels="server support framework process app-if">
+<block name="commsfw" level="services" levels="server support framework process app-if" long-name="Communications Framework">
<collection name="commsprocess" long-name="Comms Process" level="process">
<component name="commsrootserver" long-name="Comms Root Server" introduced="7.0s" purpose="mandatory">
<unit bldFile="os/commsfw/commsprocess/commsrootserverconfig/group" mrp="os/commsfw/commsprocess/commsrootserverconfig/group/comms-infras_rootserver.mrp"/>
@@ -1365,7 +1358,7 @@
</component>
</collection>
</block>
-<block name="networkingsrv" level="services" long-name="Networking Services" levels="adaptation hw-if plugin framework server app-if">
+<block name="networkingsrv" level="services" levels="adaptation hw-if plugin framework server app-if" long-name="Networking Services">
<collection name="esockapiextensions" long-name="ESock API Extensions" level="app-if">
<component name="internetsockets" long-name="Internet Sockets" introduced="ER5" purpose="mandatory">
<unit bldFile="os/networkingsrv/esockapiextensions/internetsockets/group" mrp="os/networkingsrv/esockapiextensions/internetsockets/group/networking_insock.mrp"/>
@@ -1492,82 +1485,82 @@
</component>
</collection>
</block>
-<block name="wlan" level="services" long-name="WLAN" levels="hw low mid high tools test">
+<block name="wlan" level="services" levels="hw low mid high tools test" long-name="WLAN">
<collection name="wlan_plat" long-name="WLAN Platform Interfaces" level="test">
-<component name="wlan_dbif_api" long-name="WLAN DBIF API" filter="s60" class="api">
+<component name="wlan_dbif_api" long-name="WLAN DBIF API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_dbif_api/group"/>
</component>
-<component name="wlan_hal_api" long-name="WLAN HAL API" filter="s60" class="api">
+<component name="wlan_hal_api" long-name="WLAN HAL API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_hal_api/group"/>
</component>
-<component name="wlan_management_api" long-name="WLAN Management API" filter="s60" class="api">
+<component name="wlan_management_api" long-name="WLAN Management API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_management_api/group"/>
</component>
-<component name="wlan_device_settings_api" long-name="WLAN Device Settings API" filter="s60" class="api">
+<component name="wlan_device_settings_api" long-name="WLAN Device Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_device_settings_api/group"/>
</component>
-<component name="wlan_control_api" long-name="WLAN Control API" filter="s60" class="api">
+<component name="wlan_control_api" long-name="WLAN Control API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_control_api/group"/>
</component>
-<component name="wlan_hw_initialization_data_api" long-name="WLAN Hardware Initialization Data API" filter="s60" class="api">
+<component name="wlan_hw_initialization_data_api" long-name="WLAN Hardware Initialization Data API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_hw_initialization_data_api/group"/>
</component>
-<component name="wlan_power_save_plugin_api" long-name="WLAN Power Save Plugin API" filter="s60" class="api">
+<component name="wlan_power_save_plugin_api" long-name="WLAN Power Save Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_power_save_plugin_api/group"/>
</component>
-<component name="wlan_info_api" long-name="WLAN Info API" filter="s60" class="api">
+<component name="wlan_info_api" long-name="WLAN Info API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_info_api/group"/>
</component>
-<component name="wlan_agent_hotspot_plugin_api" long-name="WLAN Agent Hotspot Plug-in API" filter="s60" class="api">
+<component name="wlan_agent_hotspot_plugin_api" long-name="WLAN Agent Hotspot Plug-in API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_agent_hotspot_plugin_api/group"/>
</component>
-<component name="wlan_osa_api" long-name="WLAN OSA API" filter="s60" class="api">
+<component name="wlan_osa_api" long-name="WLAN OSA API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_osa_api/group"/>
</component>
-<component name="wlan_spia_api" long-name="WLAN SPIA API" filter="s60" class="api">
+<component name="wlan_spia_api" long-name="WLAN SPIA API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_spia_api/group"/>
</component>
-<component name="wlan_hpa_api" long-name="WLAN HPA API" filter="s60" class="api">
+<component name="wlan_hpa_api" long-name="WLAN HPA API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_hpa_api/group"/>
</component>
-<component name="wlan_eapol_plugin_api" long-name="WLAN EAPOL Plugin API" filter="s60" class="api">
+<component name="wlan_eapol_plugin_api" long-name="WLAN EAPOL Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_eapol_plugin_api/group"/>
</component>
-<component name="wlan_generic_plugin_api" long-name="WLAN Generic Plugin API" filter="s60" class="api">
+<component name="wlan_generic_plugin_api" long-name="WLAN Generic Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_generic_plugin_api/group"/>
</component>
-<component name="wlan_aws_plugin_api" long-name="WLAN AWS Plugin API" filter="s60" class="api">
+<component name="wlan_aws_plugin_api" long-name="WLAN AWS Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/wlan/wlan_plat/wlan_aws_plugin_api/group"/>
</component>
</collection>
<collection name="wlan_pub" long-name="WLAN Public Interfaces" level="test">
-<component name="wlan_sdk_info_api" long-name="WLAN SDK Info API" filter="s60" class="api">
+<component name="wlan_sdk_info_api" long-name="WLAN SDK Info API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/wlan/wlan_pub/wlan_sdk_info_api/group"/>
</component>
</collection>
<collection name="wlan_bearer" long-name="WLAN Bearer" level="hw">
-<component name="wlanpsmplugin" filter="s60" long-name="WLAN PSM Plugin" plugin="Y">
+<component name="wlanpsmplugin" long-name="WLAN PSM Plugin" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="os/wlan/wlan_bearer/wlanpsmplugin/group"/>
</component>
-<component name="wlanagent" filter="s60" long-name="WLAN Agent">
+<component name="wlanagent" long-name="WLAN Agent" filter="s60" purpose="optional">
<unit bldFile="os/wlan/wlan_bearer/wlanagent/group"/>
</component>
-<component name="wlandbif_cd" filter="s60" long-name="WLAN CommsDat interface">
+<component name="wlandbif_cd" long-name="WLAN CommsDat interface" filter="s60" purpose="optional">
<unit bldFile="os/wlan/wlan_bearer/wlandbif_cd/group"/>
</component>
<!-- should follow component directory rules for stuff in wlan_symbian/ and put in a single component or split up properly -->
-<component name="wlanengine" filter="s60" long-name="WLAN Engine">
+<component name="wlanengine" long-name="WLAN Engine" filter="s60" purpose="optional">
<unit bldFile="os/wlan/wlan_bearer/wlanengine/wlan_symbian/wlanengine_symbian_3.1/group"/>
</component>
-<component name="wlanldd" filter="s60" long-name="WLAN LDD">
+<component name="wlanldd" long-name="WLAN LDD" filter="s60" purpose="optional">
<unit bldFile="os/wlan/wlan_bearer/wlanldd/wlan_symbian/wlanldd_symbian/group"/>
</component>
-<component name="wlannwif" filter="s60" long-name="WLAN Network Interface">
+<component name="wlannwif" long-name="WLAN Network Interface" filter="s60" purpose="optional">
<unit bldFile="os/wlan/wlan_bearer/wlannwif/group"/>
</component>
</collection>
</block>
-<block name="cellularsrv" level="services" long-name="Cellular Baseband Services" levels="adaptation hw-if plugin framework server app-if">
+<block name="cellularsrv" level="services" levels="adaptation hw-if plugin framework server app-if" long-name="Cellular Baseband Services">
<collection name="basebandabstraction" long-name="Baseband Abstraction" level="hw-if">
<component name="basebandchanneladaptor" long-name="Baseband Channel Adaptor" introduced="8.1" purpose="optional">
<unit bldFile="os/cellularsrv/basebandabstraction/basebandchanneladaptor/group" mrp="os/cellularsrv/basebandabstraction/basebandchanneladaptor/group/networking_bca.mrp"/>
@@ -1627,8 +1620,8 @@
<component name="common_tsy" long-name="Common TSY" introduced="^2" purpose="optional" plugin="Y">
<unit bldFile="os/cellularsrv/telephonyserverplugins/common_tsy/group" mrp="os/cellularsrv/telephonyserverplugins/common_tsy/group/telephony_commontsy.mrp"/>
</component>
-<component name="licenseetsystub" long-name="Licensee TSY Stub" introduced="^2" purpose="development" filter="sf_build" plugin="Y">
-<unit mrp="os/cellularsrv/telephonyserverplugins/licenseetsystub/group/licenseetsystub.mrp" bldFile="os/cellularsrv/telephonyserverplugins/licenseetsystub/group"/>
+<component name="licenseetsystub" long-name="Licensee TSY Stub" introduced="^2" filter="sf_build" purpose="development" plugin="Y">
+<unit bldFile="os/cellularsrv/telephonyserverplugins/licenseetsystub/group" mrp="os/cellularsrv/telephonyserverplugins/licenseetsystub/group/licenseetsystub.mrp"/>
</component>
<component name="multimodetsy" long-name="Multimode TSY" purpose="development" plugin="Y">
<unit bldFile="os/cellularsrv/telephonyserverplugins/multimodetsy/group" mrp="os/cellularsrv/telephonyserverplugins/multimodetsy/group/telephony_mmtsy.mrp"/>
@@ -1675,15 +1668,15 @@
</component>
</collection>
</block>
-<block name="bt" level="services" long-name="Bluetooth" levels="adaptation hw-if plugin framework server app-if">
+<block name="bt" level="services" levels="adaptation hw-if plugin framework server app-if" long-name="Bluetooth">
<collection name="bt_plat" long-name="Bluetooth Platform Interfaces" level="app-if">
-<component name="bluetooth_audio_adaptation_api" long-name="Bluetooth Audio Adaptation API" filter="s60" class="api">
+<component name="bluetooth_audio_adaptation_api" long-name="Bluetooth Audio Adaptation API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/bt/bt_plat/bluetooth_audio_adaptation_api/group"/>
</component>
-<component name="bluetooth_power_management_api" long-name="Bluetooth Power Management API" filter="s60" class="api">
+<component name="bluetooth_power_management_api" long-name="Bluetooth Power Management API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/bt/bt_plat/bluetooth_power_management_api/group"/>
</component>
-<component name="at_command_handler_plugin_api" long-name="AT Command Handler Plugin API" filter="s60" class="api">
+<component name="at_command_handler_plugin_api" long-name="AT Command Handler Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/bt/bt_plat/at_command_handler_plugin_api/group"/>
</component>
</collection>
@@ -1748,7 +1741,7 @@
<collection name="bluetoothapitest" long-name="Bluetooth API Tests" level="app-if"/>
<collection name="atext" long-name="AT Extensions" level="server">
<!-- collection is really a component. Need to move down a directory -->
-<component name="atext_build" long-name="AT Extension Build" introduced="^3" purpose="optional" filter="s60">
+<component name="atext_build" long-name="AT Extension Build" introduced="^3" filter="s60" purpose="optional">
<unit bldFile="os/bt/atext/group"/>
</component>
</collection>
@@ -1758,12 +1751,12 @@
</component>
</collection>
<collection name="btsimulator" long-name="Bluetooth Simulator" level="internal-utils">
-<component name="btaudioadaptation_stub" long-name="Bluetooth Audio Adaption Stub" introduced="^3" purpose="optional" filter="s60">
+<component name="btaudioadaptation_stub" long-name="Bluetooth Audio Adaption Stub" introduced="^3" filter="s60" purpose="optional">
<unit bldFile="os/bt/btsimulator/btaudioadaptation_stub/group"/>
</component>
</collection>
</block>
-<block name="usb" level="services" long-name="USB" levels="adaptation hw-if plugin framework server app-if">
+<block name="usb" level="services" levels="adaptation hw-if plugin framework server app-if" long-name="USB">
<collection name="usb_plat" long-name="USB Platform Interfaces" level="app-if">
<!-- placeholder for platform APIs -->
</collection>
@@ -1784,314 +1777,306 @@
</component>
</collection>
</block>
-<block name="mm" level="services" long-name="Multimedia" levels="adaptation hw-if device-fw devices middleware app-if">
+<block name="mm" level="services" levels="adaptation hw-if device-fw devices middleware app-if" long-name="Multimedia">
<collection name="mm_pub" long-name="Multimedia Public Interfaces" level="app-if">
-<component name="audio_effects_api" long-name="Audio Effects API" filter="s60" class="api">
+<component name="audio_effects_api" long-name="Audio Effects API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_pub/audio_effects_api/group" filter="!test"/>
</component>
-<component name="audio_effects_presets_api" long-name="Audio Effects Presets API" filter="s60" class="api">
+<component name="audio_effects_presets_api" long-name="Audio Effects Presets API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_pub/audio_effects_presets_api/group" filter="!test"/>
</component>
-<component name="drm_audio_player_api" long-name="DRM Audio Player API" filter="s60" class="api">
+<component name="drm_audio_player_api" long-name="DRM Audio Player API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_pub/drm_audio_player_api/group" filter="!test"/>
</component>
-<component name="multimedia_extension_interfaces_api" long-name="Multimedia Extension Interfaces API" filter="s60" class="api">
+<component name="multimedia_extension_interfaces_api" long-name="Multimedia Extension Interfaces API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_pub/multimedia_extension_interfaces_api/group"/>
</component>
</collection>
<collection name="mm_plat" long-name="Multimedia Platform Interfaces" level="app-if">
-<component name="aac_decoder_config_api" long-name="AAC Decoder Config API" filter="s60" class="api">
+<component name="aac_decoder_config_api" long-name="AAC Decoder Config API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/aac_decoder_config_api/group" filter="!test"/>
</component>
-<component name="aac_decoder_config_msg_hdlr_api" long-name="AAC Decoder Config Msg Hdlr API" filter="s60" class="api">
+<component name="aac_decoder_config_msg_hdlr_api" long-name="AAC Decoder Config Msg Hdlr API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/aac_decoder_config_msg_hdlr_api/group"/>
</component>
-<component name="aac_decoder_config_proxy_api" long-name="AAC Decoder Config Proxy API" filter="s60" class="api">
+<component name="aac_decoder_config_proxy_api" long-name="AAC Decoder Config Proxy API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/aac_decoder_config_proxy_api/group"/>
</component>
-<component name="added_devsound_control_api" long-name="Added DevSound Control API" filter="s60" class="api">
+<component name="added_devsound_control_api" long-name="Added DevSound Control API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/added_devsound_control_api/group"/>
</component>
-<component name="added_devsound_control_msg_hdlr_api" long-name="Added DevSound Control Msg Hdlr API" filter="s60" class="api">
+<component name="added_devsound_control_msg_hdlr_api" long-name="Added DevSound Control Msg Hdlr API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/added_devsound_control_msg_hdlr_api/group"/>
</component>
-<component name="added_devsound_control_proxy_api" long-name="Added DevSound Control Proxy API" filter="s60" class="api">
+<component name="added_devsound_control_proxy_api" long-name="Added DevSound Control Proxy API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/added_devsound_control_proxy_api/group"/>
</component>
-<component name="audio_effects_msg_hdlr_api" long-name="Audio Effects Message Handler API" filter="s60" class="api">
+<component name="audio_effects_msg_hdlr_api" long-name="Audio Effects Message Handler API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/audio_effects_msg_hdlr_api/group"/>
</component>
-<component name="audio_effects_proxy_api" long-name="Audio Effects Proxy API" filter="s60" class="api">
+<component name="audio_effects_proxy_api" long-name="Audio Effects Proxy API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/audio_effects_proxy_api/group"/>
</component>
-<component name="audio_policy_header_api" long-name="Audio Policy Header API" filter="s60" class="api">
+<component name="audio_policy_header_api" long-name="Audio Policy Header API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/audio_policy_header_api/group"/>
</component>
-<component name="audio_routing_api" long-name="Audio Routing API" filter="s60" class="api">
+<component name="audio_routing_api" long-name="Audio Routing API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/audio_routing_api/group" filter="!test"/>
</component>
-<component name="audio_routing_msg_hdlr_api" long-name="Audio Routing Msg Hdlr API" filter="s60" class="api">
+<component name="audio_routing_msg_hdlr_api" long-name="Audio Routing Msg Hdlr API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/audio_routing_msg_hdlr_api/group"/>
</component>
-<component name="audio_routing_proxy_api" long-name="Audio Routing Proxy API" filter="s60" class="api">
+<component name="audio_routing_proxy_api" long-name="Audio Routing Proxy API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/audio_routing_proxy_api/group"/>
</component>
-<component name="custom_interface_builder_api" long-name="Custom Interface Builder API" filter="s60" class="api">
+<component name="custom_interface_builder_api" long-name="Custom Interface Builder API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/custom_interface_builder_api/group"/>
</component>
-<component name="custom_interface_message_handler_factory_api" long-name="Custom Interface Message Handler Factory API" filter="s60" class="api">
+<component name="custom_interface_message_handler_factory_api" long-name="Custom Interface Message Handler Factory API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/custom_interface_message_handler_factory_api/group"/>
</component>
-<component name="custom_interface_proxy_factory_api" long-name="Custom Interface Proxy Factory API" filter="s60" class="api">
+<component name="custom_interface_proxy_factory_api" long-name="Custom Interface Proxy Factory API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/custom_interface_proxy_factory_api/group"/>
</component>
-<component name="custom_interface_utility_api" long-name="Custom Interface Utility API" filter="s60" class="api">
+<component name="custom_interface_utility_api" long-name="Custom Interface Utility API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/custom_interface_utility_api/group"/>
</component>
-<component name="devsound_adaptation_api" long-name="DevSound Adaptation API" filter="s60" class="api">
+<component name="devsound_adaptation_api" long-name="DevSound Adaptation API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/devsound_adaptation_api/group"/>
</component>
-<component name="display_posting_api" long-name="Display Posting API" filter="s60" class="api">
+<component name="display_posting_api" long-name="Display Posting API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/display_posting_api/group"/>
</component>
-<component name="eaac_plus_decoder_interface_api" long-name="eAAC Plus Decoder Interface API" filter="s60" class="api">
+<component name="eaac_plus_decoder_interface_api" long-name="eAAC Plus Decoder Interface API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/eaac_plus_decoder_interface_api/group" filter="!test"/>
</component>
-<component name="eaac_plus_decoder_interface_msg_hdlr_api" long-name="eAAC Plus Decoder Interface Message Handler API" filter="s60" class="api">
+<component name="eaac_plus_decoder_interface_msg_hdlr_api" long-name="eAAC Plus Decoder Interface Message Handler API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/eaac_plus_decoder_interface_msg_hdlr_api/group"/>
</component>
-<component name="eaac_plus_decoder_interface_proxy_api" long-name="eAAC Plus Decoder Interface Proxy API" filter="s60" class="api">
+<component name="eaac_plus_decoder_interface_proxy_api" long-name="eAAC Plus Decoder Interface Proxy API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/eaac_plus_decoder_interface_proxy_api/group"/>
</component>
-<component name="error_concealment_interface_api" long-name="Error Concealment Interface API" filter="s60" class="api">
+<component name="error_concealment_interface_api" long-name="Error Concealment Interface API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/error_concealment_interface_api/group" filter="!test"/>
</component>
-<component name="error_concealment_interface_msg_hdlr_api" long-name="Error Concealment Interface Message Handler API" filter="s60" class="api">
+<component name="error_concealment_interface_msg_hdlr_api" long-name="Error Concealment Interface Message Handler API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/error_concealment_interface_msg_hdlr_api/group"/>
</component>
-<component name="error_concealment_interface_proxy_api" long-name="Error Concealment Interface Proxy API" filter="s60" class="api">
+<component name="error_concealment_interface_proxy_api" long-name="Error Concealment Interface Proxy API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/error_concealment_interface_proxy_api/group"/>
</component>
-<component name="fm_radio_adaptation_api" long-name="FM Radio Adaptation API" filter="s60" class="api">
+<component name="fm_radio_adaptation_api" long-name="FM Radio Adaptation API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/fm_radio_adaptation_api/group"/>
</component>
-<component name="g711_decoder_interface_api" long-name="G711 Decoder Interface API" filter="s60" class="api">
+<component name="g711_decoder_interface_api" long-name="G711 Decoder Interface API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/g711_decoder_interface_api/group" filter="!test"/>
</component>
-<component name="g711_decoder_interface_msg_hdlr_api" long-name="G711 Decoder Interface Message Handler API" filter="s60" class="api">
+<component name="g711_decoder_interface_msg_hdlr_api" long-name="G711 Decoder Interface Message Handler API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/g711_decoder_interface_msg_hdlr_api/group"/>
</component>
-<component name="g711_decoder_interface_proxy_api" long-name="G711 Decoder Interface Proxy API" filter="s60" class="api">
+<component name="g711_decoder_interface_proxy_api" long-name="G711 Decoder Interface Proxy API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/g711_decoder_interface_proxy_api/group"/>
</component>
-<component name="g711_encoder_interface_api" long-name="G711 Encoder Interface API" filter="s60" class="api">
+<component name="g711_encoder_interface_api" long-name="G711 Encoder Interface API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/g711_encoder_interface_api/group" filter="!test"/>
</component>
-<component name="g711_encoder_interface_msg_hdlr_api" long-name="G711 Encoder Interface Message Handler API" filter="s60" class="api">
+<component name="g711_encoder_interface_msg_hdlr_api" long-name="G711 Encoder Interface Message Handler API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/g711_encoder_interface_msg_hdlr_api/group"/>
</component>
-<component name="g711_encoder_interface_proxy_api" long-name="G711 Encoder Interface Proxy API" filter="s60" class="api">
+<component name="g711_encoder_interface_proxy_api" long-name="G711 Encoder Interface Proxy API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/g711_encoder_interface_proxy_api/group"/>
</component>
-<component name="g729_decoder_interface_api" long-name="G729 Decoder Interface API" filter="s60" class="api">
+<component name="g729_decoder_interface_api" long-name="G729 Decoder Interface API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/g729_decoder_interface_api/group" filter="!test"/>
</component>
-<component name="g729_decoder_interface_msg_hdlr_api" long-name="G729 Decoder Interface Message Handler API" filter="s60" class="api">
+<component name="g729_decoder_interface_msg_hdlr_api" long-name="G729 Decoder Interface Message Handler API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/g729_decoder_interface_msg_hdlr_api/group"/>
</component>
-<component name="g729_decoder_interface_proxy_api" long-name="G729 Decoder Interface Proxy API" filter="s60" class="api">
+<component name="g729_decoder_interface_proxy_api" long-name="G729 Decoder Interface Proxy API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/g729_decoder_interface_proxy_api/group"/>
</component>
-<component name="g729_encoder_interface_api" long-name="G729 Encoder Interface API" filter="s60" class="api">
+<component name="g729_encoder_interface_api" long-name="G729 Encoder Interface API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/g729_encoder_interface_api/group" filter="!test"/>
</component>
-<component name="g729_encoder_interface_proxy_api" long-name="G729 Encoder Interface Proxy API" filter="s60" class="api">
+<component name="g729_encoder_interface_proxy_api" long-name="G729 Encoder Interface Proxy API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/g729_encoder_interface_proxy_api/group"/>
</component>
-<component name="g729_encoder_interface_msg_hdlr_api" long-name="G729 Encoder Interface Message Handler API" filter="s60" class="api">
+<component name="g729_encoder_interface_msg_hdlr_api" long-name="G729 Encoder Interface Message Handler API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/g729_encoder_interface_msg_hdlr_api/group"/>
</component>
-<component name="global_audio_settings_api" long-name="Global Audio Settings API" filter="s60" class="api">
+<component name="global_audio_settings_api" long-name="Global Audio Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/global_audio_settings_api/group" filter="!test"/>
</component>
-<component name="global_audio_settings_definition_api" long-name="Global Audio Settings Definition API" filter="s60" class="api">
+<component name="global_audio_settings_definition_api" long-name="Global Audio Settings Definition API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/global_audio_settings_definition_api/group"/>
</component>
-<component name="ilbc_decoder_interface_api" long-name="Ilbc Decoder Interface API" filter="s60" class="api">
+<component name="ilbc_decoder_interface_api" long-name="Ilbc Decoder Interface API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/ilbc_decoder_interface_api/group" filter="!test"/>
</component>
-<component name="ilbc_decoder_interface_msg_hdlr_api" long-name="Ilbc Decoder Interface Message Handler API" filter="s60" class="api">
+<component name="ilbc_decoder_interface_msg_hdlr_api" long-name="Ilbc Decoder Interface Message Handler API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/ilbc_decoder_interface_msg_hdlr_api/group"/>
</component>
-<component name="ilbc_decoder_interface_proxy_api" long-name="Ilbc Decoder Interface Proxy API" filter="s60" class="api">
+<component name="ilbc_decoder_interface_proxy_api" long-name="Ilbc Decoder Interface Proxy API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/ilbc_decoder_interface_proxy_api/group"/>
</component>
-<component name="ilbc_encoder_interface_api" long-name="Ilbc Encoder Interface API" filter="s60" class="api">
+<component name="ilbc_encoder_interface_api" long-name="Ilbc Encoder Interface API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/ilbc_encoder_interface_api/group" filter="!test"/>
</component>
-<component name="ilbc_encoder_interface_msg_hdlr_api" long-name="Ilbc Encoder Interface Message Handler API" filter="s60" class="api">
+<component name="ilbc_encoder_interface_msg_hdlr_api" long-name="Ilbc Encoder Interface Message Handler API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/ilbc_encoder_interface_msg_hdlr_api/group"/>
</component>
-<component name="ilbc_encoder_interface_proxy_api" long-name="Ilbc Encoder Interface Proxy API" filter="s60" class="api">
+<component name="ilbc_encoder_interface_proxy_api" long-name="Ilbc Encoder Interface Proxy API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/ilbc_encoder_interface_proxy_api/group"/>
</component>
-<component name="mdf_plugin_uids" long-name="MDF Plug-in UIDs" filter="s60" class="api">
+<component name="mdf_plugin_uids" long-name="MDF Plug-in UIDs" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/mdf_plugin_uids/group"/>
</component>
-<component name="multimedia_fourcc_definitions_api" long-name="Multimedia FourCC Definitions API" filter="s60" class="api">
+<component name="multimedia_fourcc_definitions_api" long-name="Multimedia FourCC Definitions API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/multimedia_fourcc_definitions_api/group"/>
</component>
-<component name="nokia_audio_policy_header_api" long-name="Nokia Audio Policy Header API" filter="s60" class="api">
+<component name="nokia_audio_policy_header_api" long-name="Nokia Audio Policy Header API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/nokia_audio_policy_header_api/group"/>
</component>
-<component name="nokia_multimedia_fourcc_definitions_api" long-name="Nokia Multimedia Fourcc Definitions API" filter="s60" class="api">
+<component name="nokia_multimedia_fourcc_definitions_api" long-name="Nokia Multimedia Fourcc Definitions API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/nokia_multimedia_fourcc_definitions_api/group"/>
</component>
-<component name="ra8_decoder_interface_api" long-name="RA8 Decoder Interface API" filter="s60" class="api">
+<component name="ra8_decoder_interface_api" long-name="RA8 Decoder Interface API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/ra8_decoder_interface_api/group" filter="!test"/>
</component>
-<component name="ra8_decoder_interface_msg_hdlr_api" long-name="RA8 Decoder Interface Message Handler API" filter="s60" class="api">
+<component name="ra8_decoder_interface_msg_hdlr_api" long-name="RA8 Decoder Interface Message Handler API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/ra8_decoder_interface_msg_hdlr_api/group"/>
</component>
-<component name="ra8_decoder_interface_proxy_api" long-name="RA8 Decoder Interface Proxy API" filter="s60" class="api">
+<component name="ra8_decoder_interface_proxy_api" long-name="RA8 Decoder Interface Proxy API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/ra8_decoder_interface_proxy_api/group"/>
</component>
-<component name="rds_adaptation_api" long-name="RDS Adaptation API" filter="s60" class="api">
+<component name="rds_adaptation_api" long-name="RDS Adaptation API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/rds_adaptation_api/group"/>
</component>
-<component name="restricted_audio_output_api" long-name="Restricted Audio Output API" filter="s60" class="api">
+<component name="restricted_audio_output_api" long-name="Restricted Audio Output API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/restricted_audio_output_api/group" filter="!test"/>
</component>
-<component name="restricted_audio_output_msg_hdlr_api" long-name="Restricted Audio Output Message Handler API" filter="s60" class="api">
+<component name="restricted_audio_output_msg_hdlr_api" long-name="Restricted Audio Output Message Handler API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/restricted_audio_output_msg_hdlr_api/group"/>
</component>
-<component name="restricted_audio_output_proxy_api" long-name="Restricted Audio Output Proxy API" filter="s60" class="api">
+<component name="restricted_audio_output_proxy_api" long-name="Restricted Audio Output Proxy API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/restricted_audio_output_proxy_api/group"/>
</component>
-<component name="sbc_encoder_interface_api" long-name="SBC Encoder Interface API" filter="s60" class="api">
+<component name="sbc_encoder_interface_api" long-name="SBC Encoder Interface API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/sbc_encoder_interface_api/group" filter="!test"/>
</component>
-<component name="sbc_encoder_interface_msg_hdlr_api" long-name="SBC Encoder Interface Message Handler API" filter="s60" class="api">
+<component name="sbc_encoder_interface_msg_hdlr_api" long-name="SBC Encoder Interface Message Handler API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/sbc_encoder_interface_msg_hdlr_api/group"/>
</component>
-<component name="sbc_encoder_interface_proxy_api" long-name="SBC Encoder Interface Proxy API" filter="s60" class="api">
+<component name="sbc_encoder_interface_proxy_api" long-name="SBC Encoder Interface Proxy API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/sbc_encoder_interface_proxy_api/group"/>
</component>
-<component name="secure_output_mdf_custom_interface" long-name="Secure Output MDF Custom Interface" filter="s60" class="api">
+<component name="secure_output_mdf_custom_interface" long-name="Secure Output MDF Custom Interface" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/secure_output_mdf_custom_interface/group"/>
</component>
-<component name="speech_encoder_config_api" long-name="Speech Encoder Config API" filter="s60" class="api">
+<component name="speech_encoder_config_api" long-name="Speech Encoder Config API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/speech_encoder_config_api/group" filter="!test"/>
</component>
-<component name="speech_encoder_config_msg_hdlr_api" long-name="Speech Encoder Config Message Handler API" filter="s60" class="api">
+<component name="speech_encoder_config_msg_hdlr_api" long-name="Speech Encoder Config Message Handler API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/speech_encoder_config_msg_hdlr_api/group"/>
</component>
-<component name="speech_encoder_config_proxy_api" long-name="Speech Encoder Config Proxy API" filter="s60" class="api">
+<component name="speech_encoder_config_proxy_api" long-name="Speech Encoder Config Proxy API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/speech_encoder_config_proxy_api/group"/>
</component>
-<component name="telephony_audio_routing_client_api" long-name="Telephony Audio Routing Client API" filter="s60" class="api">
+<component name="telephony_audio_routing_client_api" long-name="Telephony Audio Routing Client API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/telephony_audio_routing_client_api/group"/>
</component>
-<component name="telephony_audio_routing_manager_api" long-name="Telephony Audio Routing Manager API" filter="s60" class="api">
+<component name="telephony_audio_routing_manager_api" long-name="Telephony Audio Routing Manager API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/telephony_audio_routing_manager_api/group"/>
</component>
-<component name="video_buffer_management_mdf_custom_interface" long-name="Video Buffer Management MDF Custom Interface" filter="s60" class="api">
+<component name="video_buffer_management_mdf_custom_interface" long-name="Video Buffer Management MDF Custom Interface" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/video_buffer_management_mdf_custom_interface/group"/>
</component>
-<component name="video_decoder_rotation_mdf_custom_interface" long-name="Video Decoder Rotation MDF Custom Interface" filter="s60" class="api">
+<component name="video_decoder_rotation_mdf_custom_interface" long-name="Video Decoder Rotation MDF Custom Interface" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/video_decoder_rotation_mdf_custom_interface/group"/>
</component>
-<component name="video_decoder_scaling_mdf_custom_interface" long-name="Video Decoder Scaling MDF Custom Interface" filter="s60" class="api">
+<component name="video_decoder_scaling_mdf_custom_interface" long-name="Video Decoder Scaling MDF Custom Interface" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/video_decoder_scaling_mdf_custom_interface/group"/>
</component>
-<component name="video_reclaim_extbuffers_ci" long-name="Video Reclaim Extbuffers Custom Interface" filter="s60" class="api">
+<component name="video_reclaim_extbuffers_ci" long-name="Video Reclaim Extbuffers Custom Interface" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/video_reclaim_extbuffers_ci/group"/>
</component>
-<component name="video_window_control_custom_interface" long-name="Video Window Control Custom Interface" filter="s60" class="api">
+<component name="video_window_control_custom_interface" long-name="Video Window Control Custom Interface" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/video_window_control_custom_interface/group"/>
</component>
-<component name="wma_decoder_interface_api" long-name="WMA Decoder Interface API" filter="s60" class="api">
+<component name="wma_decoder_interface_api" long-name="WMA Decoder Interface API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/wma_decoder_interface_api/group" filter="!test"/>
</component>
-<component name="wma_decoder_interface_msg_hdlr_api" long-name="WMA Decoder Interface Message Handler API" filter="s60" class="api">
+<component name="wma_decoder_interface_msg_hdlr_api" long-name="WMA Decoder Interface Message Handler API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/wma_decoder_interface_msg_hdlr_api/group"/>
</component>
-<component name="wma_decoder_interface_proxy_api" long-name="WMA Decoder Interface Proxy API" filter="s60" class="api">
+<component name="wma_decoder_interface_proxy_api" long-name="WMA Decoder Interface Proxy API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/wma_decoder_interface_proxy_api/group"/>
</component>
-<component name="eaacplusutil_api" long-name="EAac Plus Util API" filter="s60" class="api">
+<component name="eaacplusutil_api" long-name="EAac Plus Util API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/eaacplusutil_api/group"/>
</component>
-<component name="frametable_api" long-name="Frametable API" filter="s60" class="api">
+<component name="frametable_api" long-name="Frametable API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/mm/mm_plat/frametable_api/group"/>
</component>
</collection>
<collection name="devsoundextensions" long-name="Devsound Extensions" level="device-fw">
-<component name="drmaudioplayer" filter="s60" long-name="DRM Audio Player">
+<component name="drmaudioplayer" long-name="DRM Audio Player" filter="s60" purpose="optional">
<unit bldFile="os/mm/devsoundextensions/drmaudioplayer/group"/>
</component>
-<component name="mmextfw" filter="s60" long-name="Multimedia Extension Framework">
+<component name="mmextfw" long-name="Multimedia Extension Framework" filter="s60" purpose="optional">
<unit bldFile="os/mm/devsoundextensions/mmextfw/group"/>
</component>
-<component name="audiorouting" filter="s60" long-name="Audio Routing">
+<component name="audiorouting" long-name="Audio Routing" filter="s60" purpose="optional">
<unit bldFile="os/mm/devsoundextensions/audiorouting/group"/>
</component>
-<component name="effects" filter="s60" long-name="Effects">
+<component name="effects" long-name="Effects" filter="s60" purpose="optional">
<unit bldFile="os/mm/devsoundextensions/effects/group"/>
</component>
-<component name="effectspresets" filter="s60" long-name="Effects Presets">
+<component name="effectspresets" long-name="Effects Presets" filter="s60" purpose="optional">
<unit bldFile="os/mm/devsoundextensions/effectspresets/group"/>
</component>
-<component name="effectspresets_utils" filter="s60" long-name="Effects Presets Utils">
-<!-- need to #include the lot from a single bld.inf
+<component name="effectspresets_utils" long-name="Effects Presets Utils" filter="s60" purpose="optional">
+<!-- need to #include the lot from a single bld.inf
Also move to a standard component location, not under effectspresets -->
<unit bldFile="os/mm/devsoundextensions/effectspresets/AudioEqualizerUtility/group" filter="!dfs_build"/>
<unit bldFile="os/mm/devsoundextensions/effectspresets/EnvironmentalReverbUtility/group" filter="!dfs_build"/>
</component>
-<component name="telephonyaudiorouting" filter="s60" long-name="Telephony Audio Routing">
+<component name="telephonyaudiorouting" long-name="Telephony Audio Routing" filter="s60" purpose="optional">
<unit bldFile="os/mm/devsoundextensions/telephonyaudiorouting/group"/>
</component>
-<component name="mmfcustominterfaces" filter="s60" long-name="MMF Custom Interfaces">
+<component name="mmfcustominterfaces" long-name="MMF Custom Interfaces" filter="s60" purpose="optional">
<unit bldFile="os/mm/devsoundextensions/mmfcustominterfaces/group"/>
</component>
-<component name="addeddevsoundcontrol" filter="s60" long-name="Added DevSound Control">
+<component name="addeddevsoundcontrol" long-name="Added DevSound Control" filter="s60" purpose="optional">
<unit bldFile="os/mm/devsoundextensions/addeddevsoundcontrol/group"/>
</component>
-<component name="globalaudiosettings" filter="s60" long-name="Global Audio Settings">
+<component name="globalaudiosettings" long-name="Global Audio Settings" filter="s60" purpose="optional">
<unit bldFile="os/mm/devsoundextensions/globalaudiosettings/group"/>
</component>
-<component name="restrictedaudiooutput" filter="s60" long-name="Restricted Audio Output">
+<component name="restrictedaudiooutput" long-name="Restricted Audio Output" filter="s60" purpose="optional">
<unit bldFile="os/mm/devsoundextensions/restrictedaudiooutput/group"/>
</component>
-<component name="ciextnfactoryplugins" filter="s60" long-name="Custom Interface Extension Factory Plugins" plugin="Y">
+<component name="ciextnfactoryplugins" long-name="Custom Interface Extension Factory Plugins" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="os/mm/devsoundextensions/ciextnfactoryplugins/group"/>
</component>
</collection>
<collection name="mdfdevvideoextensions" long-name="MDF Dev Video Extensions" level="device-fw">
-<component name="nga_mdf_postprocessor" long-name="NGA MDF Postprocessor" filter="s60">
+<component name="nga_mdf_postprocessor" long-name="NGA MDF Postprocessor" filter="s60" purpose="optional">
<unit bldFile="os/mm/mdfdevvideoextensions/nga_mdf_postprocessor/group"/>
</component>
</collection>
<collection name="frametable_stub" long-name="Frametable Stub" level="device-fw">
<!-- collection is really a component. Needs to move down a directory -->
-<component name="frametable_stub_build" long-name="Frametable Stub Build" filter="s60" introduced="^4">
+<component name="frametable_stub_build" long-name="Frametable Stub Build" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="os/mm/frametable_stub/group"/>
</component>
</collection>
<collection name="eaacplusutil_stub" long-name="eAAC Plus Utils Stub" level="hw-if">
<!-- collection is really a component. Needs to move down a directory -->
-<component name="eaacplusutil_stub_build" long-name="eAAC Plus Utils Stub Build" filter="s60" introduced="^4">
+<component name="eaacplusutil_stub_build" long-name="eAAC Plus Utils Stub Build" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="os/mm/eaacplusutil_stub/group"/>
</component>
</collection>
-<collection name="imagingandcamerafws" long-name="Imaging and Camera Frameworks" level="app-if">
-<component name="imagingfws" long-name="Imaging Frameworks" introduced="7.0s" purpose="mandatory">
-<unit bldFile="os/mm/imagingandcamerafws/imagingfws/group" mrp="os/mm/imagingandcamerafws/imagingfws/group/multimedia_icl.mrp"/>
-</component>
-<component name="camerafw" long-name="Camera Framework" introduced="7.0s" purpose="optional">
-<unit bldFile="os/mm/imagingandcamerafws/camerafw/group" mrp="os/mm/imagingandcamerafws/camerafw/group/multimedia_ecam_framework.mrp"/>
-</component>
-</collection>
<collection name="mmlibs" long-name="Multimedia Libraries" level="middleware">
<component name="mmutilitylib" long-name="Multimedia Utility Library" introduced="8.1" purpose="mandatory">
<unit bldFile="os/mm/mmlibs/mmutilitylib/group" mrp="os/mm/mmlibs/mmutilitylib/group/multimedia_common.mrp"/>
@@ -2141,23 +2126,6 @@
</component>
</collection>
<collection name="mmtestenv" long-name="Multimedia Test Environment" level="device-fw"/>
-<collection name="omxil" long-name="OpenMAX IL" level="hw-if">
-<component name="omxilapi" long-name="OpenMAX IL API" introduced="^3" purpose="optional">
-<unit bldFile="os/mm/omxil/omxilapi/group" mrp="os/mm/omxil/omxilapi/group/multimedia_omx_il_api.mrp" version="1"/>
-</component>
-<component name="omxilcore" long-name="OpenMAX IL Core" introduced="^3" purpose="optional">
-<unit bldFile="os/mm/omxil/omxilcore/group" mrp="os/mm/omxil/omxilcore/group/multimedia_omx_il_core.mrp" version="1"/>
-</component>
-<component name="omxilcomponentcommon" long-name="OpenMAX IL Component Framework" introduced="^3" purpose="optional">
-<unit bldFile="os/mm/omxil/omxilcomponentcommon/group" mrp="os/mm/omxil/omxilcomponentcommon/group/multimedia_omx_il_comp.mrp" version="1"/>
-</component>
-<component name="omxilrefcomps" long-name="OpenMAX IL Reference Components" introduced="^3" purpose="optional">
-<unit bldFile="os/mm/omxil/omxilrefcomps/ref_components/group" mrp="os/mm/omxil/omxilrefcomps/ref_components/group/multimedia_omx_il_comp_ref.mrp" version="1"/>
-</component>
-<component name="mmilapi" long-name="Multimedia Integration Layer API" introduced="^3" purpose="development">
-<unit bldFile="os/mm/omxil/mmilapi/group" mrp="os/mm/omxil/mmilapi/group/multimedia_il_api.mrp"/>
-</component>
-</collection>
<collection name="devsound" long-name="Sound Device" level="devices">
<component name="devsoundapi" long-name="DevSound API" introduced="7.0s" purpose="mandatory">
<unit bldFile="os/mm/devsound/devsoundapi/group" mrp="os/mm/devsound/devsoundapi/group/multimedia_mdf_devsound_api.mrp"/>
@@ -2174,7 +2142,7 @@
<component name="refdevsound" long-name="Reference DevSound Plugins" introduced="7.0s" purpose="optional">
<unit bldFile="os/mm/devsound/devsoundrefplugin/group" mrp="os/mm/devsound/devsoundrefplugin/group/multimedia_mdf_devsound_refplugin.mrp"/>
</component>
-<component name="btdevsound" long-name="Bluetooth DevSound Plugin" introduced="7.0s" purpose="development" deprecated="^4" plugin="Y">
+<component name="btdevsound" long-name="Bluetooth DevSound Plugin" introduced="7.0s" deprecated="^4" purpose="development" plugin="Y">
<unit bldFile="os/mm/devsound/sounddevbt/group" mrp="os/mm/devsound/sounddevbt/group/multimedia_mdf_devsound_refbtplugin.mrp"/>
</component>
<component name="a3ftrace" long-name="A3F Trace Utility" introduced="^2" purpose="development">
@@ -2205,61 +2173,104 @@
</component>
</collection>
</block>
-<block name="imagingext" level="services" long-name="Imaging Extensions" levels="adaptation hw-if plugin framework server app-if">
+<block name="mmimaging" level="services" levels="adaptation hw-if device-fw devices middleware app-if" long-name="Multimedia Imaging">
+<collection name="imaging" long-name="Imaging Frameworks and Plugins" level="app-if">
+<component name="imagingfws" long-name="Imaging Frameworks" introduced="7.0s" purpose="mandatory">
+<unit bldFile="os/mmimaging/imaging/imagingfws/group" mrp="os/mmimaging/imaging/imagingfws/group/multimedia_icl.mrp"/>
+</component>
+<component name="imagingplugins" long-name="Imaging Plugins" introduced="7.0s" purpose="optional" plugin="Y">
+<unit bldFile="os/mmimaging/imaging/imagingplugins/group" mrp="os/mmimaging/imaging/imagingplugins/group/multimedia_icl_plugin.mrp"/>
+</component>
+<component name="imagingdocs" long-name="Imaging Documentation" purpose="development" class="doc">
+<unit mrp="os/mmimaging/imaging/imagingdocs/imaging_documentation.mrp"/>
+</component>
+</collection>
+<collection name="imagingtestenv" long-name="Imaging Test Environment" level="device-fw"/>
+</block>
+<block name="openmaxil" level="services" levels="adaptation hw-if device-fw devices middleware app-if">
+<collection name="openmaxil_plat" long-name="OpenMAX IL Platform Exports" level="hw-if">
+<component name="khronos_api" long-name="OpenMAX IL API" introduced="^3" purpose="mandatory" class="api">
+<unit bldFile="os/openmaxil/openmaxil_plat/khronos_api/group" version="1"/>
+</component>
+<component name="symbian_api" long-name="OpenMAX IL Symbian API" introduced="^3" purpose="mandatory" class="api">
+<unit bldFile="os/openmaxil/openmaxil_plat/symbian_api/group" version="1"/>
+</component>
+<component name="test_api" long-name="OpenMAX IL test headers" introduced="^3" purpose="development" class="api">
+<unit bldFile="os/openmaxil/openmaxil_plat/test_api/group" version="1"/>
+</component>
+</collection>
+<collection name="omxil_generic" long-name="OpenMAX IL Implementation" level="device-fw">
+<component name="omxilcomplib" long-name="OpenMAX IL Component Framework" introduced="^3" purpose="optional">
+<unit bldFile="os/openmaxil/omxil_generic/omxilcomplib/group" version="1"/>
+</component>
+<component name="omxilcore" long-name="OpenMAX IL Core" introduced="^3" purpose="mandatory">
+<unit bldFile="os/openmaxil/omxil_generic/omxilcore/group" version="1"/>
+</component>
+<component name="omxilloader" long-name="OpenMAX IL Loader" introduced="^3" purpose="mandatory">
+<unit bldFile="os/openmaxil/omxil_generic/omxilloader/group" version="1"/>
+</component>
+</collection>
+<collection name="tsrc" long-name="OpenMAX IL Test code" level="hw-if">
+<component name="xmltestharness" long-name="OpenMAX IL XML Test Harness" introduced="^3" purpose="development">
+<unit bldFile="os/openmaxil/tsrc/xmltestharness/group" version="1"/>
+</component>
+</collection>
+</block>
+<block name="imagingext" level="services" levels="adaptation hw-if plugin framework server app-if" long-name="Imaging Extensions">
<collection name="imagingext_pub" long-name="Imaging Extensions Public Interfaces" level="app-if">
-<component name="exif_api" long-name="Exif API" filter="s60" class="api">
+<component name="exif_api" long-name="Exif API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/imagingext/imagingext_pub/exif_api/group" filter="!test"/>
</component>
</collection>
<collection name="imagingext_plat" long-name="Imaging Extensions Platform Interfaces" level="app-if">
-<component name="jpeg2000_icl_plugin_api" long-name="JPEG2000 ICL plugin API" filter="s60" class="api">
+<component name="jpeg2000_icl_plugin_api" long-name="JPEG2000 ICL plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/imagingext/imagingext_plat/jpeg2000_icl_plugin_api/group"/>
</component>
-<component name="extended_icl_jpeg_api" long-name="Extended ICL Jpeg API" filter="s60" class="api">
+<component name="extended_icl_jpeg_api" long-name="Extended ICL Jpeg API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/imagingext/imagingext_plat/extended_icl_jpeg_api/group" filter="!test"/>
</component>
-<component name="h324_annex_k_custom_api" long-name="H324 Annex K Custom API" filter="s60" class="api">
+<component name="h324_annex_k_custom_api" long-name="H324 Annex K Custom API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/imagingext/imagingext_plat/h324_annex_k_custom_api/group"/>
</component>
-<component name="ecam_orientation_custom_api" long-name="ECam Orientation Custom API" filter="s60" class="api">
+<component name="ecam_orientation_custom_api" long-name="ECam Orientation Custom API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/imagingext/imagingext_plat/ecam_orientation_custom_api/group"/>
</component>
-<component name="ecam_ui_orientation_override_custom_api" long-name="ECam UI Orientation Override Custom API" filter="s60" class="api">
+<component name="ecam_ui_orientation_override_custom_api" long-name="ECam UI Orientation Override Custom API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/imagingext/imagingext_plat/ecam_ui_orientation_override_custom_api/group"/>
</component>
-<component name="ecam_face_tracking_custom_api" long-name="ECam Face Tracking Custom API" filter="s60" class="api">
+<component name="ecam_face_tracking_custom_api" long-name="ECam Face Tracking Custom API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/imagingext/imagingext_plat/ecam_face_tracking_custom_api/group"/>
</component>
-<component name="ecam_use_case_hint_custom_api" long-name="ECam Use Case Hint Custom API" filter="s60" introduced="^3" class="api">
+<component name="ecam_use_case_hint_custom_api" long-name="ECam Use Case Hint Custom API" introduced="^3" filter="s60" purpose="optional" class="api">
<unit bldFile="os/imagingext/imagingext_plat/ecam_use_case_hint_custom_api/group"/>
</component>
</collection>
<collection name="imageadaptationextensions" long-name="Image Adaptation Extensions" level="app-if">
-<component name="iclextjpegapi" filter="s60" long-name="ICL Extension JPEG API">
+<component name="iclextjpegapi" long-name="ICL Extension JPEG API" filter="s60" purpose="optional">
<unit bldFile="os/imagingext/imageadaptationextensions/iclextjpegapi/group"/>
</component>
-<component name="imageadaptationextensions_build" filter="s60" long-name="Image Adaptation Extensions Build">
+<component name="imageadaptationextensions_build" long-name="Image Adaptation Extensions Build" filter="s60" purpose="optional">
<!-- Move the export from this bld.inf into the above one and remove this component, or make this a ROM component -->
<unit bldFile="os/imagingext/imageadaptationextensions/group"/>
</component>
</collection>
<collection name="imagingmodules" long-name="Imaging Modules" level="hw-if">
-<component name="exiflib" filter="s60" long-name="Exif Library">
+<component name="exiflib" long-name="Exif Library" filter="s60" purpose="optional">
<unit bldFile="os/imagingext/imagingmodules/exiflib/group"/>
</component>
-<component name="jp2kcodec" filter="s60" long-name="JPEG2000 Decoder Plugin" plugin="Y">
+<component name="jp2kcodec" long-name="JPEG2000 Decoder Plugin" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="os/imagingext/imagingmodules/jp2kcodec/group"/>
</component>
</collection>
</block>
-<block name="graphics" level="services" long-name="Graphics" levels="adaptation engines internal-adaptations device-interface internal-utils app-if">
+<block name="graphics" level="services" levels="adaptation engines internal-adaptations device-interface internal-utils app-if" long-name="Graphics">
<collection name="graphicsaccelaration" long-name="Graphics Acceleration" level="adaptation">
-<component name="vgi" filter="s60" long-name="VGI">
+<component name="vgi" long-name="VGI" filter="s60" purpose="optional">
<unit bldFile="os/graphics/graphicsaccelaration/vgi/group"/>
</component>
</collection>
<collection name="m3g" long-name="Mobile 3D Graphics" level="internal-adaptations">
-<component name="m3gcore11" filter="s60" long-name="M3G Core 1.1">
+<component name="m3gcore11" long-name="M3G Core 1.1" filter="s60" purpose="optional">
<unit bldFile="os/graphics/m3g/m3gcore11/group"/>
</component>
</collection>
@@ -2308,7 +2319,7 @@
</component>
</collection>
<collection name="graphics_plat" long-name="Graphics Platform Interfaces" level="app-if">
-<component name="m3g_core_api" filter="sf_build" long-name="M3G Core API" class="api">
+<component name="m3g_core_api" long-name="M3G Core API" filter="sf_build" purpose="optional" class="api">
<unit bldFile="os/graphics/graphics_plat/m3g_core_api/group"/>
</component>
</collection>
@@ -2345,7 +2356,7 @@
<component name="openglesinterface" long-name="OpenGL ES Interface" introduced="8.0" purpose="optional">
<unit bldFile="os/graphics/opengles/openglesinterface/group" mrp="os/graphics/opengles/openglesinterface/group/graphics_openglesheaders.mrp"/>
</component>
-<component name="opengles_stub" filter="sf_build" long-name="OpenGL ES Stub" purpose="optional" introduced="^2">
+<component name="opengles_stub" long-name="OpenGL ES Stub" introduced="^2" filter="sf_build" purpose="optional">
<unit bldFile="os/graphics/opengles/openglesinterface/group/opengles_stub"/>
</component>
</collection>
@@ -2353,11 +2364,11 @@
<component name="openvginterface" long-name="OpenVG Interface" introduced="^2" purpose="optional">
<unit bldFile="os/graphics/openvg/openvginterface/group" mrp="os/graphics/openvg/openvginterface/group/graphics_openvgheaders.mrp"/>
</component>
-<component name="openvg11" filter="s60" long-name="OpenVG 1.1">
+<component name="openvg11" long-name="OpenVG 1.1" filter="s60" purpose="optional">
<!-- this needs to be moved to it's own component directory, ie openvg/openvg11 -->
<unit bldFile="os/graphics/openvg/openvginterface/group/openvg11"/>
</component>
-<component name="sfopenvg" filter="sf_build" long-name="Khronos OpenVG Reference Implementation" introduced="^2" purpose="optional">
+<component name="sfopenvg" long-name="Khronos OpenVG Reference Implementation" introduced="^2" filter="sf_build" purpose="optional">
<unit bldFile="os/graphics/openvg/openvgrefimplementation/sfopenvg/group"/>
</component>
</collection>
@@ -2379,7 +2390,7 @@
<component name="gdi" long-name="GDI" purpose="mandatory">
<unit bldFile="os/graphics/graphicsdeviceinterface/gdi/group" mrp="os/graphics/graphicsdeviceinterface/gdi/group/graphics_gdi.mrp"/>
</component>
-<component name="bitgdi" long-name="BitGDI" purpose="mandatory" filter="api_test">
+<component name="bitgdi" long-name="BitGDI" filter="api_test" purpose="mandatory">
<!-- just api_test, not test -->
<unit bldFile="os/graphics/graphicsdeviceinterface/bitgdi/group" mrp="os/graphics/graphicsdeviceinterface/bitgdi/group/graphics_bitgdi.mrp"/>
</component>
@@ -2406,26 +2417,26 @@
</collection>
<collection name="graphicsapitest" long-name="Graphics API Tests" level="app-if"/>
</block>
-<block name="textandloc" level="services" long-name="Text and Localisation Services" levels="encoding util fonts tools text">
+<block name="textandloc" level="services" levels="encoding util fonts tools text" long-name="Text and Localisation Services">
<collection name="charconvfw" long-name="Character Conversion" level="encoding">
-<component name="charconv_fw" long-name="Character Encoding and Conversion Framework" purpose="optional" filter="api_test">
+<component name="charconv_fw" long-name="Character Encoding and Conversion Framework" filter="api_test" purpose="optional">
<!-- both production and api_test-->
<unit bldFile="os/textandloc/charconvfw/charconv_fw/group" mrp="os/textandloc/charconvfw/charconv_fw/group/syslibs_charconv.mrp"/>
</component>
-<component name="charconvplugins" long-name="Character Encoding and Conversion Plugins" purpose="optional" filter="apit_test" plugin="Y">
+<component name="charconvplugins" long-name="Character Encoding and Conversion Plugins" filter="apit_test" purpose="optional" plugin="Y">
<!-- both production and api_test-->
<unit bldFile="os/textandloc/charconvfw/charconvplugins/group" mrp="os/textandloc/charconvfw/charconvplugins/group/syslibs_charconv_plugins.mrp"/>
</component>
-<component name="fatfilenameconversionplugins" long-name="FAT Filename Conversion Plugins" introduced="9.1" purpose="optional" filter="api_test" plugin="Y">
+<component name="fatfilenameconversionplugins" long-name="FAT Filename Conversion Plugins" introduced="9.1" filter="api_test" purpose="optional" plugin="Y">
<!-- both production and api_test-->
<unit bldFile="os/textandloc/charconvfw/fatfilenameconversionplugins/group" mrp="os/textandloc/charconvfw/fatfilenameconversionplugins/group/syslibs_FATCharsetConv.mrp"/>
</component>
</collection>
<collection name="fontandtxtsrv" long-name="Font and Text Services" level="fonts">
-<component name="iculayoutengine" long-name="ICU Layout Engine" introduced="9.2" purpose="optional" deprecated="^4" plugin="Y">
+<component name="iculayoutengine" long-name="ICU Layout Engine" introduced="9.2" deprecated="^4" purpose="optional" plugin="Y">
<unit bldFile="os/textandloc/fontservices/textshaperplugin/group" mrp="os/textandloc/fontservices/textshaperplugin/group/graphics_iculayoutengine.mrp"/>
</component>
-<component name="fontstore" long-name="Font Store" purpose="mandatory" filter="api_test">
+<component name="fontstore" long-name="Font Store" filter="api_test" purpose="mandatory">
<!-- both production and api_test-->
<unit bldFile="os/textandloc/fontservices/fontstore/group" mrp="os/textandloc/fontservices/fontstore/group/graphics_fntstore.mrp"/>
</component>
@@ -2448,16 +2459,16 @@
</component>
</collection>
<collection name="textandlocutils" long-name="Text and Localisation Utils" level="util">
-<component name="numbergrouping" long-name="Number Grouping">
+<component name="numbergrouping" long-name="Number Grouping" purpose="optional">
<unit bldFile="os/textandloc/textandlocutils/numbergrouping/group" mrp="os/textandloc/textandlocutils/numbergrouping/group/tls_numbergrouping.mrp"/>
</component>
-<component name="jplangutil" long-name="Japanese Language Utilities">
+<component name="jplangutil" long-name="Japanese Language Utilities" purpose="optional">
<unit bldFile="os/textandloc/textandlocutils/jplangutil/group" mrp="os/textandloc/textandlocutils/jplangutil/group/tls_jplangutil.mrp"/>
</component>
-<component name="sortutil" long-name="Sorting Utility">
+<component name="sortutil" long-name="Sorting Utility" purpose="optional">
<unit bldFile="os/textandloc/textandlocutils/sortutil/group" mrp="os/textandloc/textandlocutils/sortutil/group/tls_sortutil.mrp"/>
</component>
-<component name="inlinetext" long-name="Inline Text">
+<component name="inlinetext" long-name="Inline Text" purpose="optional">
<unit bldFile="os/textandloc/textandlocutils/inlinetext/group" mrp="os/textandloc/textandlocutils/inlinetext/group/tls_inlinetext.mrp"/>
</component>
<component name="numberformatting" long-name="Number Formatting" introduced="7.0s" purpose="optional">
@@ -2486,35 +2497,35 @@
</component>
</collection>
</block>
-<block name="xmlsrv" level="services" long-name="XML Services" levels="plugin server framework generic specific">
+<block name="xmlsrv" level="services" levels="plugin server framework generic specific" long-name="XML Services">
<collection name="xmlsrv_plat" long-name="XML Services Platform Interfaces" level="specific">
-<component name="xml_encryption_api" long-name="XML Encryption API" filter="s60" class="api">
+<component name="xml_encryption_api" long-name="XML Encryption API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/xmlsrv/xmlsrv_plat/xml_encryption_api/group"/>
</component>
-<component name="xml_signature_api" long-name="XML Signature API" filter="s60" class="api">
+<component name="xml_signature_api" long-name="XML Signature API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/xmlsrv/xmlsrv_plat/xml_signature_api/group"/>
</component>
-<component name="xml_security_engine_utils_api" long-name="XML Security Engine Utils API" filter="s60" class="api">
+<component name="xml_security_engine_utils_api" long-name="XML Security Engine Utils API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/xmlsrv/xmlsrv_plat/xml_security_engine_utils_api/group"/>
</component>
-<component name="cxml_library_api" long-name="cXml Library API" filter="s60" class="api">
+<component name="cxml_library_api" long-name="cXml Library API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/xmlsrv/xmlsrv_plat/cxml_library_api/group"/>
</component>
-<component name="xml_parser_api" long-name="XML Parser API" filter="s60" class="api">
+<component name="xml_parser_api" long-name="XML Parser API" filter="s60" purpose="optional" class="api">
<unit bldFile="os/xmlsrv/xmlsrv_plat/xml_parser_api/group"/>
</component>
</collection>
<collection name="xmlsecurityengine" long-name="XML Security Engine" level="framework">
-<component name="xmlseccertman" filter="s60" long-name="XML Security Certificate Manager">
+<component name="xmlseccertman" long-name="XML Security Certificate Manager" filter="s60" purpose="optional">
<unit bldFile="os/xmlsrv/xmlsecurityengine/xmlseccertman/group"/>
</component>
-<component name="xmlsec" filter="s60" long-name="XML Security">
+<component name="xmlsec" long-name="XML Security" filter="s60" purpose="optional">
<unit bldFile="os/xmlsrv/xmlsecurityengine/xmlsec/group"/>
</component>
-<component name="xmlseccrypto" filter="s60" long-name="XML Security Crypto">
+<component name="xmlseccrypto" long-name="XML Security Crypto" filter="s60" purpose="optional">
<unit bldFile="os/xmlsrv/xmlsecurityengine/xmlseccrypto/group"/>
</component>
-<component name="xmlsecwrapper" filter="s60" long-name="XML Security Wrapper">
+<component name="xmlsecwrapper" long-name="XML Security Wrapper" filter="s60" purpose="optional">
<unit bldFile="os/xmlsrv/xmlsecurityengine/xmlsecwrapper/group"/>
</component>
</collection>
@@ -2540,10 +2551,10 @@
<component name="wbxmlparser" long-name="WBXML Parser" introduced="7.0s" purpose="optional" plugin="Y">
<unit bldFile="os/xmlsrv/xml/wbxmlparser/group" mrp="os/xmlsrv/xml/wbxmlparser/group/syslibs_wbxmlparser.mrp" filter="!test"/>
</component>
-<component name="cxmllibrary" filter="s60" long-name="cXml Library">
+<component name="cxmllibrary" long-name="cXml Library" filter="s60" purpose="optional">
<unit bldFile="os/xmlsrv/xml/cxmllibrary/group"/>
</component>
-<component name="xmlparser" filter="s60" long-name="XML Interface">
+<component name="xmlparser" long-name="XML Interface" filter="s60" purpose="optional">
<unit bldFile="os/xmlsrv/xml/xmlparser/group"/>
</component>
</collection>
@@ -2553,16 +2564,16 @@
</component>
</collection>
</block>
-<block name="deviceplatformrelease" level="services" long-name="Device Platform Release" levels="bld mid top">
+<block name="deviceplatformrelease" level="services" levels="bld mid top" long-name="Device Platform Release">
<collection name="s60extras" long-name="S60 Extras" level="mid">
<!-- collection is really a component. Need to move down a directory -->
-<component name="s60extras_build" filter="s60" long-name="S60 Extras Build" purpose="development" class="config">
+<component name="s60extras_build" long-name="S60 Extras Build" filter="s60" purpose="development" class="config">
<unit bldFile="os/deviceplatformrelease/s60extras/group"/>
</component>
</collection>
<collection name="version" long-name="Version" level="top">
<!-- collection is really a component. Need to move down a directory -->
-<component name="version_build" filter="s60" long-name="Version Build" purpose="development" class="config">
+<component name="version_build" long-name="Version Build" filter="s60" purpose="development" class="config">
<unit bldFile="os/deviceplatformrelease/version/group"/>
</component>
</collection>
@@ -2578,18 +2589,18 @@
<component name="system_model" long-name="System Model" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/deviceplatformrelease/foundation_system/system_model/system_model.mrp"/>
</component>
-<component name="sf_config" filter="s60,build_as_app" long-name="Foundation Config" introduced="^4">
+<component name="sf_config" long-name="Foundation Config" introduced="^4" filter="s60,build_as_app" purpose="optional">
<unit bldFile="os/deviceplatformrelease/foundation_system/sf_config/CI_external/group"/>
</component>
-<component name="config" filter="s60" long-name="Config" purpose="development" class="config"/>
-<component name="cenrep" filter="sf_build" long-name="ConE Central Repository Config" purpose="development" class="config">
+<component name="config" long-name="Config" filter="s60" purpose="development" class="config"/>
+<component name="cenrep" long-name="ConE Central Repository Config" filter="sf_build" purpose="development" class="config">
<!-- will should give the id/path something more unique than cenrep -->
<unit bldFile="os/deviceplatformrelease/foundation_system/sf_config/cenrep/group"/>
</component>
-<component name="rombuild_syborg" filter="sf_build" long-name="Syborg iMaker Config" purpose="development" introduced="^3" class="config">
+<component name="rombuild_syborg" long-name="Syborg iMaker Config" introduced="^3" filter="sf_build" purpose="development" class="config">
<unit bldFile="os/deviceplatformrelease/foundation_system/sf_config/rombuild/syborg/group"/>
</component>
-<component name="rombuild_zoom2" filter="sf_build" long-name="Zoom2 iMaker Config" purpose="development" introduced="^3" class="config">
+<component name="rombuild_zoom2" long-name="Zoom2 iMaker Config" introduced="^3" filter="sf_build" purpose="development" class="config">
<unit bldFile="os/deviceplatformrelease/foundation_system/sf_config/rombuild/zoom2/group"/>
</component>
</collection>
@@ -2599,100 +2610,100 @@
</component>
</collection>
</block>
-<block name="osrndtools" level="services" long-name="OS R&D tools" levels="fw trace analysis">
+<block name="osrndtools" level="services" levels="fw trace analysis" long-name="OS R&D tools">
<collection name="stif" long-name="STIF" level="fw">
-<component name="stif_plat" filter="s60" long-name="STIF Platform Interfaces" purpose="development" class="api">
+<component name="stif_plat" long-name="STIF Platform Interfaces" filter="s60" purpose="development" class="api">
<unit bldFile="os/osrndtools/stif/stif_plat/group"/>
</component>
-<component name="testinterface" filter="s60" long-name="Test Interface" purpose="development">
+<component name="testinterface" long-name="Test Interface" filter="s60" purpose="development">
<unit bldFile="os/osrndtools/stif/testinterface/group"/>
</component>
-<component name="testserver" filter="s60" long-name="Test Server" purpose="development">
+<component name="testserver" long-name="Test Server" filter="s60" purpose="development">
<unit bldFile="os/osrndtools/stif/testserver/group"/>
</component>
-<component name="testengine" filter="s60" long-name="Test Engine" purpose="development">
+<component name="testengine" long-name="Test Engine" filter="s60" purpose="development">
<unit bldFile="os/osrndtools/stif/testengine/group"/>
</component>
-<component name="testserverstarter" filter="s60" long-name="Test Server Starter" purpose="development">
+<component name="testserverstarter" long-name="Test Server Starter" filter="s60" purpose="development">
<unit bldFile="os/osrndtools/stif/testserverstarter/group"/>
</component>
-<component name="stiftfwif" filter="s60" long-name="STIF Test Framework Interface" purpose="development">
+<component name="stiftfwif" long-name="STIF Test Framework Interface" filter="s60" purpose="development">
<unit bldFile="os/osrndtools/stif/stiftfwif/group"/>
</component>
-<component name="consoleui" filter="s60" long-name="Console UI" purpose="development">
+<component name="consoleui" long-name="Console UI" filter="s60" purpose="development">
<unit bldFile="os/osrndtools/stif/consoleui/group"/>
</component>
-<component name="testcombiner" filter="s60" long-name="Test Combiner" purpose="development">
+<component name="testcombiner" long-name="Test Combiner" filter="s60" purpose="development">
<unit bldFile="os/osrndtools/stif/testcombiner/group"/>
</component>
-<component name="demomodule" filter="s60" long-name="Demo Module" purpose="development">
+<component name="demomodule" long-name="Demo Module" filter="s60" purpose="development">
<unit bldFile="os/osrndtools/stif/demomodule/group"/>
</component>
-<component name="atslogger" filter="s60" long-name="ATS Logger" purpose="development">
+<component name="atslogger" long-name="ATS Logger" filter="s60" purpose="development">
<unit bldFile="os/osrndtools/stif/atslogger/group"/>
</component>
-<component name="atsinterface" filter="s60" long-name="ATS Interface" purpose="development">
+<component name="atsinterface" long-name="ATS Interface" filter="s60" purpose="development">
<unit bldFile="os/osrndtools/stif/atsinterface/group"/>
</component>
-<component name="testscripter" filter="s60" long-name="Test Scripter" purpose="development">
+<component name="testscripter" long-name="Test Scripter" filter="s60" purpose="development">
<unit bldFile="os/osrndtools/stif/testscripter/group"/>
</component>
-<component name="suevent" filter="s60" long-name="SU Event" purpose="development">
+<component name="suevent" long-name="SU Event" filter="s60" purpose="development">
<unit bldFile="os/osrndtools/stif/suevent/group"/>
</component>
-<component name="stifkerneltestclassbase" filter="s60" long-name="STIF Kernel Test Class Base" purpose="development">
+<component name="stifkerneltestclassbase" long-name="STIF Kernel Test Class Base" filter="s60" purpose="development">
<unit bldFile="os/osrndtools/stif/stifkerneltestclassbase/group"/>
</component>
-<component name="stif_data" filter="s60" long-name="STIF Data" purpose="development" class="config">
+<component name="stif_data" long-name="STIF Data" filter="s60" purpose="development" class="config">
<!-- This is a component. Should move down a directory. or move into other STIF components-->
<unit bldFile="os/osrndtools/stif/group"/>
</component>
</collection>
<collection name="memspy" long-name="MemSpy" level="trace">
-<component name="memspy_plat" filter="s60" long-name="MemSpy Platform Interfaces" purpose="development" class="api">
+<component name="memspy_plat" long-name="MemSpy Platform Interfaces" filter="s60" purpose="development" class="api">
<unit bldFile="os/osrndtools/memspy/memspy_plat/group"/>
</component>
-<component name="driver" filter="s60" long-name="MemSpy Driver" purpose="development">
+<component name="driver" long-name="MemSpy Driver" filter="s60" purpose="development">
<unit bldFile="os/osrndtools/memspy/driver/group"/>
</component>
-<component name="memspy_engine" filter="s60" long-name="MemSpy Engine" purpose="development">
+<component name="memspy_engine" long-name="MemSpy Engine" filter="s60" purpose="development">
<unit bldFile="os/osrndtools/memspy/engine/group"/>
</component>
-<component name="commandline" filter="s60" long-name="MemSpy Command Line" purpose="development">
+<component name="commandline" long-name="MemSpy Command Line" filter="s60" purpose="development">
<unit bldFile="os/osrndtools/memspy/commandline/group"/>
</component>
-<component name="memspyserver" filter="s60" long-name="MemSpy Server" purpose="development" introduced="^4">
+<component name="memspyserver" long-name="MemSpy Server" introduced="^4" filter="s60" purpose="development">
<unit bldFile="os/osrndtools/memspy/MemSpyServer/group"/>
</component>
-<component name="memspyclient" filter="s60" long-name="MemSpy Client" purpose="development" introduced="^4">
+<component name="memspyclient" long-name="MemSpy Client" introduced="^4" filter="s60" purpose="development">
<unit bldFile="os/osrndtools/memspy/MemSpyClient/group"/>
</component>
-<component name="memspy_build" filter="s60" long-name="MemSpy Build" purpose="development">
+<component name="memspy_build" long-name="MemSpy Build" filter="s60" purpose="development">
<!-- move exports into self-contained component.-->
<unit bldFile="os/osrndtools/memspy/group"/>
</component>
</collection>
<collection name="hti" long-name="Harmonized Test Interface" level="trace">
-<component name="hti_plat" filter="s60" long-name="HTI Platform Interfaces" purpose="development" class="api">
+<component name="hti_plat" long-name="HTI Platform Interfaces" filter="s60" purpose="development" class="api">
<unit bldFile="os/osrndtools/hti/hti_plat/group"/>
</component>
-<component name="hticfg" filter="s60" long-name="HTI Config" purpose="development">
+<component name="hticfg" long-name="HTI Config" filter="s60" purpose="development">
<unit bldFile="os/osrndtools/hti/hticfg/group"/>
</component>
-<component name="htiautostart" filter="s60" long-name="HTI Autostart" purpose="development">
+<component name="htiautostart" long-name="HTI Autostart" filter="s60" purpose="development">
<unit bldFile="os/osrndtools/hti/htiautostart/group"/>
</component>
-<component name="htiframework" filter="s60" long-name="HTI Framework" purpose="development">
+<component name="htiframework" long-name="HTI Framework" filter="s60" purpose="development">
<unit bldFile="os/osrndtools/hti/htiframework/group"/>
</component>
-<component name="hticommplugins" filter="s60" long-name="HTI Communication Plugins" purpose="development" plugin="Y">
+<component name="hticommplugins" long-name="HTI Communication Plugins" filter="s60" purpose="development" plugin="Y">
<!-- need to #include these from a single unit or separate into component at the right directory level -->
<unit bldFile="os/osrndtools/hti/HtiCommPlugins/HtiBtCommPlugin/group"/>
<unit bldFile="os/osrndtools/hti/HtiCommPlugins/HtiIPCommPlugin/group"/>
<unit bldFile="os/osrndtools/hti/HtiCommPlugins/HtiSerialCommPlugin/group"/>
<unit bldFile="os/osrndtools/hti/HtiCommPlugins/HtiUsbSerialCommPlugin/group"/>
</component>
-<component name="htiserviceplugins" filter="s60" long-name="HTI Service Plugins" purpose="development" plugin="Y">
+<component name="htiserviceplugins" long-name="HTI Service Plugins" filter="s60" purpose="development" plugin="Y">
<!-- need to #include these from a single unit or separate into component at the right directory level -->
<unit bldFile="os/osrndtools/hti/HtiServicePlugins/HtiAppServicePlugin/group"/>
<unit bldFile="os/osrndtools/hti/HtiServicePlugins/HtiEchoServicePlugin/group"/>
@@ -2700,230 +2711,230 @@
<unit bldFile="os/osrndtools/hti/HtiServicePlugins/HtiIpProxyServicePlugin/group"/>
<unit bldFile="os/osrndtools/hti/HtiServicePlugins/HtiStifTfServicePlugin/group"/>
</component>
-<component name="htifilehlp" filter="s60" long-name="HTI File Help" purpose="development">
+<component name="htifilehlp" long-name="HTI File Help" filter="s60" purpose="development">
<unit bldFile="os/osrndtools/hti/htifilehlp/group"/>
</component>
-<component name="htiwatchdog" filter="s60" long-name="HTI Watchdog" purpose="development">
+<component name="htiwatchdog" long-name="HTI Watchdog" filter="s60" purpose="development">
<unit bldFile="os/osrndtools/hti/htiwatchdog/group"/>
</component>
-<component name="hti_build" filter="s60" long-name="HTI Build" purpose="development">
+<component name="hti_build" long-name="HTI Build" filter="s60" purpose="development">
<!-- move exports into self-contained component.-->
<unit bldFile="os/osrndtools/hti/group"/>
</component>
</collection>
<collection name="piprofiler" long-name="Performance Investigator Profiler" level="analysis">
-<component name="piprofiler_build" long-name="Performance Investigator Profiler Build" introduced="^4">
+<component name="piprofiler_build" long-name="Performance Investigator Profiler Build" introduced="^4" purpose="optional">
<unit bldFile="os/osrndtools/piprofiler/group"/>
</component>
</collection>
<collection name="analyzetool" long-name="Analyze Tool" level="analysis">
-<component name="analyzetool_build" long-name="Analyze Tool Build" introduced="^4">
+<component name="analyzetool_build" long-name="Analyze Tool Build" introduced="^4" purpose="optional">
<unit bldFile="os/osrndtools/analyzetool/group"/>
</component>
</collection>
</block>
</layer>
<layer name="mw" long-name="Middleware" levels="generic specific">
-<block name="appsupport" level="generic" long-name="Generic Application Support" levels="system plugin framework server generic specific">
+<block name="appsupport" level="generic" levels="system plugin framework server generic specific" long-name="Generic Application Support">
<collection name="appsupport_pub" long-name="Generic Application Support Public Interfaces" level="specific">
-<component name="flash_viewer_framework_api" long-name="Flash Viewer Framework API" filter="s60" class="api">
+<component name="flash_viewer_framework_api" long-name="Flash Viewer Framework API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_pub/flash_viewer_framework_api/group"/>
</component>
-<component name="network_status_api" long-name="Network Status API" filter="s60" class="api">
+<component name="network_status_api" long-name="Network Status API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_pub/network_status_api/group"/>
</component>
</collection>
<collection name="appsupport_plat" long-name="Generic Application Support Platform Interfaces" level="specific">
-<component name="action_plugin_api" long-name="Action Plug-In API" filter="s60" class="api">
+<component name="action_plugin_api" long-name="Action Plug-In API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/action_plugin_api/group"/>
</component>
-<component name="application_orientation_api" long-name="Application Orientation API" filter="s60" class="api">
+<component name="application_orientation_api" long-name="Application Orientation API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/application_orientation_api/group"/>
</component>
-<component name="context_access_api" long-name="Context Access API" filter="s60" class="api">
+<component name="context_access_api" long-name="Context Access API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/context_access_api/group"/>
</component>
-<component name="context_framework_services_api" long-name="Context Framework Services API" filter="s60" class="api">
+<component name="context_framework_services_api" long-name="Context Framework Services API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/context_framework_services_api/group"/>
</component>
-<component name="context_framework_client_api" long-name="Context Framework Client API" filter="s60" class="api">
+<component name="context_framework_client_api" long-name="Context Framework Client API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/context_framework_client_api/group"/>
</component>
-<component name="context_framework_listener_api" long-name="Context Framework Listener API" filter="s60" class="api">
+<component name="context_framework_listener_api" long-name="Context Framework Listener API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/context_framework_listener_api/group"/>
</component>
-<component name="context_framework_version_api" long-name="Context Framework Version API" filter="s60" class="api">
+<component name="context_framework_version_api" long-name="Context Framework Version API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/context_framework_version_api/group"/>
</component>
-<component name="context_source_plugin_api" long-name="Context Source Plug-In API" filter="s60" class="api">
+<component name="context_source_plugin_api" long-name="Context Source Plug-In API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/context_source_plugin_api/group"/>
</component>
-<component name="context_source_settings_manager_api" long-name="Context Source Settings Manager API" filter="s60" class="api">
+<component name="context_source_settings_manager_api" long-name="Context Source Settings Manager API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/context_source_settings_manager_api/group"/>
</component>
-<component name="context_subscription_api" long-name="Context Subscription API" filter="s60" class="api">
+<component name="context_subscription_api" long-name="Context Subscription API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/context_subscription_api/group"/>
</component>
-<component name="key_event_framework_api" long-name="Key Event Framework API" filter="s60" class="api">
+<component name="key_event_framework_api" long-name="Key Event Framework API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/key_event_framework_api/group"/>
</component>
-<component name="key_event_framework_mapper_api" long-name="Key Event Framework Mapper API" filter="s60" class="api">
+<component name="key_event_framework_mapper_api" long-name="Key Event Framework Mapper API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/key_event_framework_mapper_api/group"/>
</component>
-<component name="media_keys_definition_api" long-name="Media Keys Definition API" filter="s60" class="api">
+<component name="media_keys_definition_api" long-name="Media Keys Definition API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/media_keys_definition_api/group"/>
</component>
-<component name="ood_threshold_api" long-name="OOD Threshold API" filter="s60" class="api">
+<component name="ood_threshold_api" long-name="OOD Threshold API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/ood_threshold_api/group"/>
</component>
-<component name="oom_monitor_api" long-name="OOM Monitor API" filter="s60" class="api">
+<component name="oom_monitor_api" long-name="OOM Monitor API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/oom_monitor_api/group"/>
</component>
-<component name="oom_monitor_plugin_api" long-name="OOM Monitor Plugin API" filter="s60" class="api">
+<component name="oom_monitor_plugin_api" long-name="OOM Monitor Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/oom_monitor_plugin_api/group"/>
</component>
-<component name="operation_provider_api" long-name="Operation Provider API" filter="s60" class="api">
+<component name="operation_provider_api" long-name="Operation Provider API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/operation_provider_api/group"/>
</component>
-<component name="phonecmdhandler_api" long-name="Phone Command Handler API" filter="s60" class="api">
+<component name="phonecmdhandler_api" long-name="Phone Command Handler API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/phonecmdhandler_api/group"/>
</component>
-<component name="restore_factory_settings_api" long-name="Restore Factory Settings API" filter="s60" class="api">
+<component name="restore_factory_settings_api" long-name="Restore Factory Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/restore_factory_settings_api/group"/>
</component>
-<component name="restore_factory_settings_plugin_api" long-name="Restore Factory Settings Plug-in API" filter="s60" class="api">
+<component name="restore_factory_settings_plugin_api" long-name="Restore Factory Settings Plug-in API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/restore_factory_settings_plugin_api/group"/>
</component>
-<component name="secondary_display_accfw_api" long-name="Secondary Display Accessory Framework API" filter="s60" class="api">
+<component name="secondary_display_accfw_api" long-name="Secondary Display Accessory Framework API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/secondary_display_accfw_api/group"/>
</component>
-<component name="secondary_display_startup_api" long-name="Secondary Display Startup API" filter="s60" class="api">
+<component name="secondary_display_startup_api" long-name="Secondary Display Startup API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/secondary_display_startup_api/group"/>
</component>
-<component name="secondary_display_sysap_api" long-name="Secondary Display System Application API" filter="s60" class="api">
+<component name="secondary_display_sysap_api" long-name="Secondary Display System Application API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/secondary_display_sysap_api/group"/>
</component>
-<component name="secondary_display_system_state_api" long-name="Secondary Display System State API" filter="s60" class="api">
+<component name="secondary_display_system_state_api" long-name="Secondary Display System State API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/secondary_display_system_state_api/group"/>
</component>
-<component name="sensor_user_setting_api" long-name="Sensor User Setting API" filter="s60" class="api">
+<component name="sensor_user_setting_api" long-name="Sensor User Setting API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/sensor_user_setting_api/group"/>
</component>
-<component name="startup_configuration_api" long-name="Startup Configuration API" filter="s60" class="api">
+<component name="startup_configuration_api" long-name="Startup Configuration API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/startup_configuration_api/group"/>
</component>
-<component name="system_application_key_handler_plugin_api" long-name="System Application Key Handler Plug-in API" filter="s60" class="api">
+<component name="system_application_key_handler_plugin_api" long-name="System Application Key Handler Plug-in API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/system_application_key_handler_plugin_api/group"/>
</component>
-<component name="system_application_light_control_plugin_api" long-name="System Application Light Control Plug-in API" filter="s60" class="api">
+<component name="system_application_light_control_plugin_api" long-name="System Application Light Control Plug-in API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/system_application_light_control_plugin_api/group"/>
</component>
-<component name="system_application_notification_api" long-name="System Application Notification API" filter="s60" class="api">
+<component name="system_application_notification_api" long-name="System Application Notification API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/system_application_notification_api/group"/>
</component>
-<component name="system_application_plugin_callback_api" long-name="System Application Plug-in Callback API" filter="s60" class="api">
+<component name="system_application_plugin_callback_api" long-name="System Application Plug-in Callback API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/system_application_plugin_callback_api/group"/>
</component>
-<component name="flash_mmi_service_interface_custom_api" long-name="Flash MMI Service Interface Custom API" filter="s60,!sf_build" introduced="^2" class="api">
+<component name="flash_mmi_service_interface_custom_api" long-name="Flash MMI Service Interface Custom API" introduced="^2" filter="s60,!sf_build" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/flash_mmi_service_interface_custom_api/group"/>
</component>
-<component name="flash_netscape_plugin_command_api" long-name="Flash Netscape Plugin Command API" filter="s60,!sf_build" introduced="^2" class="api">
+<component name="flash_netscape_plugin_command_api" long-name="Flash Netscape Plugin Command API" introduced="^2" filter="s60,!sf_build" purpose="optional" class="api">
<unit bldFile="mw/appsupport/appsupport_plat/flash_netscape_plugin_command_api/group"/>
</component>
</collection>
<collection name="contextframework" long-name="Context Framework" level="framework">
-<component name="cfw" filter="s60" long-name="Context Framework">
+<component name="cfw" long-name="Context Framework" filter="s60" purpose="optional">
<unit bldFile="mw/appsupport/contextframework/cfw/group"/>
</component>
-<component name="cfwplugins" filter="s60" long-name="Context Framework Plugins" plugin="Y">
+<component name="cfwplugins" long-name="Context Framework Plugins" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/appsupport/contextframework/cfwplugins/group"/>
</component>
</collection>
<collection name="coreapplicationuis" long-name="Core Application UIs" level="server">
-<component name="dbrecovery" filter="s60" long-name="Database Recovery">
+<component name="dbrecovery" long-name="Database Recovery" filter="s60" purpose="optional">
<unit bldFile="mw/appsupport/coreapplicationuis/dbrecovery/group"/>
</component>
-<component name="nspswsplugin" filter="s60" long-name="NSPS WS Plugin" plugin="Y">
+<component name="nspswsplugin" long-name="NSPS WS Plugin" filter="s60" purpose="optional" plugin="Y">
<!-- No Service Power Save? Window Server? Please elaborate-->
<unit bldFile="mw/appsupport/coreapplicationuis/nspswsplugin/group"/>
</component>
-<component name="rfs" filter="s60" long-name="Restore Factory Settings">
+<component name="rfs" long-name="Restore Factory Settings" filter="s60" purpose="optional">
<unit bldFile="mw/appsupport/coreapplicationuis/rfs/group"/>
</component>
-<component name="rfsplugins" filter="s60" long-name="Restore Factory Settings Plugins" plugin="Y">
+<component name="rfsplugins" long-name="Restore Factory Settings Plugins" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/appsupport/coreapplicationuis/rfsplugins/group"/>
</component>
-<component name="sysap" filter="s60" long-name="System Application">
+<component name="sysap" long-name="System Application" filter="s60" purpose="optional">
<unit bldFile="mw/appsupport/coreapplicationuis/sysap/group"/>
</component>
-<component name="variatedsettings" filter="s60" long-name="Variated Settings" class="config">
+<component name="variatedsettings" long-name="Variated Settings" filter="s60" purpose="optional" class="config">
<unit bldFile="mw/appsupport/coreapplicationuis/variatedsettings/group"/>
</component>
-<component name="accfwuinotifier" filter="s60" long-name="Accessory Framework UI Notifier" plugin="Y">
+<component name="accfwuinotifier" long-name="Accessory Framework UI Notifier" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/appsupport/coreapplicationuis/accfwuinotifier/group"/>
</component>
-<component name="kefmapper" filter="s60" long-name="Key Event Framework">
+<component name="kefmapper" long-name="Key Event Framework" filter="s60" purpose="optional">
<unit bldFile="mw/appsupport/coreapplicationuis/kefmapper/group"/>
</component>
-<component name="advancedtspcontroller" filter="s60" long-name="Advanced TSP Controller">
+<component name="advancedtspcontroller" long-name="Advanced TSP Controller" filter="s60" purpose="optional">
<unit bldFile="mw/appsupport/coreapplicationuis/advancedtspcontroller/group"/>
</component>
-<component name="powersaveutilities" filter="s60" long-name="Power Save Utilities">
+<component name="powersaveutilities" long-name="Power Save Utilities" filter="s60" purpose="optional">
<unit bldFile="mw/appsupport/coreapplicationuis/powersaveutilities/group"/>
</component>
-<component name="gsserverenginestub" filter="s60" long-name="GS Server Engine Stub" deprecated="^4">
+<component name="gsserverenginestub" long-name="GS Server Engine Stub" deprecated="^4" filter="s60" purpose="optional">
<unit bldFile="mw/appsupport/coreapplicationuis/gsserverenginestub/group"/>
</component>
-<component name="gsserverengine" filter="s60" long-name="GS Server Engine" deprecated="^4">
+<component name="gsserverengine" long-name="GS Server Engine" deprecated="^4" filter="s60" purpose="optional">
<unit bldFile="mw/appsupport/coreapplicationuis/gsserverengine/group"/>
</component>
-<component name="sensordatacompensatorplugin" filter="s60" long-name="Sensor Data Compensator Plugin" plugin="Y">
+<component name="sensordatacompensatorplugin" long-name="Sensor Data Compensator Plugin" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/appsupport/coreapplicationuis/sensordatacompensatorplugin/group"/>
</component>
-<component name="atcmdplugin" long-name="AT Command Plugin" filter="s60,!oem_build" plugin="Y">
+<component name="atcmdplugin" long-name="AT Command Plugin" filter="s60,!oem_build" purpose="optional" plugin="Y">
<unit bldFile="mw/appsupport/coreapplicationuis/atcmdplugin/group"/>
</component>
-<component name="devicepowermenuplugin" long-name="Device Power Menu Plugin" introduced="^4" plugin="Y">
+<component name="devicepowermenuplugin" long-name="Device Power Menu Plugin" introduced="^4" purpose="optional" plugin="Y">
<unit bldFile="mw/appsupport/coreapplicationuis/devicepowermenuplugin" proFile="devicepowermenuplugin.pro"/>
</component>
</collection>
<collection name="flashliteapi_3_1" long-name="Flash Lite API 3.1" level="specific">
<!-- collection is really a component. Move down a directory -->
-<component name="flashliteapi_3_1_build" long-name="Flash Lite API Build" filter="s60" introduced="^2"/>
+<component name="flashliteapi_3_1_build" long-name="Flash Lite API Build" introduced="^2" filter="s60" purpose="optional"/>
</collection>
<collection name="mediakeys" long-name="Media Keys" level="plugin">
<!-- collection is really a component. Move down a directory -->
-<component name="mediakeys_build" filter="s60" long-name="Media Keys Build">
+<component name="mediakeys_build" long-name="Media Keys Build" filter="s60" purpose="optional">
<unit bldFile="mw/appsupport/mediakeys/group"/>
</component>
</collection>
<collection name="startupservices" long-name="Startup Services" level="system">
-<component name="splashscreen" filter="s60" long-name="Splash Screen">
+<component name="splashscreen" long-name="Splash Screen" filter="s60" purpose="optional">
<unit bldFile="mw/appsupport/startupservices/splashscreen/group"/>
</component>
-<component name="startupanimation" filter="s60" long-name="Startup Animation">
+<component name="startupanimation" long-name="Startup Animation" filter="s60" purpose="optional">
<unit bldFile="mw/appsupport/startupservices/startupanimation/group"/>
</component>
-<component name="startup" long-name="Startup Application" filter="s60">
+<component name="startup" long-name="Startup Application" filter="s60" purpose="optional">
<unit bldFile="mw/appsupport/startupservices/startup/group"/>
</component>
</collection>
<collection name="sysresmonitoring" long-name="System Resource Monitoring" level="system">
-<component name="oodmonitor" filter="s60" long-name="OOD Monitor" introduced="7.0s">
+<component name="oodmonitor" long-name="OOD Monitor" introduced="7.0s" filter="s60" purpose="optional">
<unit bldFile="mw/appsupport/sysresmonitoring/oodmonitor/group"/>
</component>
-<component name="oommonitor" filter="s60" long-name="OOM Monitor" introduced="7.0s">
+<component name="oommonitor" long-name="OOM Monitor" introduced="7.0s" filter="s60" purpose="optional">
<unit bldFile="mw/appsupport/sysresmonitoring/oommonitor/group"/>
</component>
</collection>
<collection name="systemsettings" long-name="System Settings" level="system">
-<component name="gssensorplugin" filter="s60" long-name="GS Sensor Plugin" plugin="Y">
+<component name="gssensorplugin" long-name="GS Sensor Plugin" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/appsupport/systemsettings/gssensorplugin/group"/>
</component>
-<component name="accindicatorplugin" filter="s60" long-name="ACC Indicator Plugin" plugin="Y">
+<component name="accindicatorplugin" long-name="ACC Indicator Plugin" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/appsupport/systemsettings/accindicatorplugin" proFile="accindicatorplugin.pro"/>
</component>
-<component name="accindicatorsettings" filter="s60" long-name="ACC Indicator Settings">
+<component name="accindicatorsettings" long-name="ACC Indicator Settings" filter="s60" purpose="optional">
<!-- can't have a component inside another component -->
<unit bldFile="mw/appsupport/systemsettings/accindicatorplugin/accindicatorsettings" proFile="accindicatorsettings.pro"/>
</component>
@@ -2940,7 +2951,7 @@
</component>
</collection>
<collection name="hwresourceadaptation" long-name="Hardware Resource Adaptation" level="generic">
-<component name="hwresourcemgruiplugin" long-name="Hardware Resource Manager UI Plugin" introduced="^2" purpose="optional" deprecated="^4" plugin="Y">
+<component name="hwresourcemgruiplugin" long-name="Hardware Resource Manager UI Plugin" introduced="^2" deprecated="^4" purpose="optional" plugin="Y">
<unit bldFile="mw/appsupport/hwresourceadaptation/hwresourcemgruiplugin/group" mrp="mw/appsupport/hwresourceadaptation/hwresourcemgruiplugin/group/telephony_hwrmuiplugin.mrp"/>
</component>
</collection>
@@ -2948,7 +2959,7 @@
<component name="alarmserver" long-name="Alarm Server" introduced="7.0" purpose="optional">
<unit bldFile="mw/appsupport/commonappservices/alarmserver/Group" mrp="mw/appsupport/commonappservices/alarmserver/Group/app-services_alarmserver.mrp"/>
</component>
-<component name="alarmservertest" long-name="Alarm Server Test" deprecated="^3" introduced="8.1" purpose="development">
+<component name="alarmservertest" long-name="Alarm Server Test" introduced="8.1" deprecated="^3" purpose="development">
<unit bldFile="mw/appsupport/commonappservices/alarmservertest/TestAlarmSrv" mrp="mw/appsupport/commonappservices/alarmservertest/TestAlarmSrv/app-services_testalarmsrv.mrp"/>
</component>
<component name="appservicesdocs" long-name="Application Services Documentation" purpose="development" class="doc">
@@ -2986,7 +2997,7 @@
</component>
</collection>
<collection name="printingsupport" long-name="Printing Support" level="generic">
-<component name="printinguisupport" long-name="Printing UI Support" purpose="optional" introduced="^2" deprecated="^3">
+<component name="printinguisupport" long-name="Printing UI Support" introduced="^2" deprecated="^3" purpose="optional">
<unit bldFile="mw/appsupport/printingsupport/printinguisupport/group" mrp="mw/appsupport/printingsupport/printinguisupport/group/app-framework_print.mrp"/>
</component>
</collection>
@@ -3017,685 +3028,685 @@
</component>
</collection>
</block>
-<block name="securitysrv" level="generic" long-name="Security Services" levels="plugin framework server generic specific">
+<block name="securitysrv" level="generic" levels="plugin framework server generic specific" long-name="Security Services">
<collection name="secsrv_plat" long-name="Security Services Platform Interfaces" level="specific">
-<component name="cms_api" long-name="CMS API" filter="s60" class="api">
+<component name="cms_api" long-name="CMS API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/cms_api/group"/>
</component>
-<component name="pkcs12_parser_api" long-name="PKCS12 Parser API" filter="s60" class="api">
+<component name="pkcs12_parser_api" long-name="PKCS12 Parser API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/pkcs12_parser_api/group"/>
</component>
-<component name="java_utils_api" long-name="Java Utils API" filter="s60" class="api">
+<component name="java_utils_api" long-name="Java Utils API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/java_utils_api/group"/>
</component>
-<component name="wim_cert_api" long-name="WIM Cert API" filter="s60" class="api">
+<component name="wim_cert_api" long-name="WIM Cert API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/wim_cert_api/group"/>
</component>
-<component name="device_key_store_encryption_plugin_api" long-name="Device Key Store Encryption Plug-in API" filter="s60" class="api">
+<component name="device_key_store_encryption_plugin_api" long-name="Device Key Store Encryption Plug-in API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/device_key_store_encryption_plugin_api/group"/>
</component>
-<component name="x509certnameparser_api" long-name="X.509 Certificate Name Parser API" filter="s60" class="api">
+<component name="x509certnameparser_api" long-name="X.509 Certificate Name Parser API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/x509certnameparser_api/group"/>
</component>
-<component name="remote_lock_api" long-name="Remote Lock API" filter="s60" class="api">
+<component name="remote_lock_api" long-name="Remote Lock API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/remote_lock_api/group"/>
</component>
-<component name="pkidialog_api" long-name="PKI Dialog API" filter="s60" class="api">
+<component name="pkidialog_api" long-name="PKI Dialog API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/pkidialog_api/group"/>
</component>
-<component name="provisioning_api" long-name="Provisioning API" filter="s60" class="api">
+<component name="provisioning_api" long-name="Provisioning API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/provisioning_api/group"/>
</component>
-<component name="keyguard_configuration_api" long-name="Keyguard Configuration API" filter="s60" class="api">
+<component name="keyguard_configuration_api" long-name="Keyguard Configuration API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/keyguard_configuration_api/group"/>
</component>
-<component name="keylock_policy_api" long-name="Keylock Policy API" filter="s60" class="api">
+<component name="keylock_policy_api" long-name="Keylock Policy API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/keylock_policy_api/group"/>
</component>
-<component name="security_code_ui_api" long-name="Security Code UI API" filter="s60" class="api">
+<component name="security_code_ui_api" long-name="Security Code UI API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/security_code_ui_api/group"/>
</component>
-<component name="gba_api" long-name="GBA API" filter="s60" class="api">
+<component name="gba_api" long-name="GBA API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/gba_api/group"/>
</component>
-<component name="keyguard_access_api" long-name="Keyguard Access API" filter="s60" class="api">
+<component name="keyguard_access_api" long-name="Keyguard Access API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/keyguard_access_api/group"/>
</component>
-<component name="devicelock_access_api" long-name="Device Lock Access API" filter="s60" class="api">
+<component name="devicelock_access_api" long-name="Device Lock Access API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/devicelock_access_api/group"/>
</component>
-<component name="lockapp_server_api" long-name="Lock Application Server API" filter="s60" class="api">
+<component name="lockapp_server_api" long-name="Lock Application Server API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/lockapp_server_api/group"/>
</component>
-<component name="devencadaptation_api" long-name="Device Encryption Adaptation API" filter="s60" class="api">
+<component name="devencadaptation_api" long-name="Device Encryption Adaptation API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/devencadaptation_api/group"/>
</component>
-<component name="devenccommonutils_api" long-name="Device Encryption Common Utils API" filter="s60" class="api">
+<component name="devenccommonutils_api" long-name="Device Encryption Common Utils API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/securitysrv/secsrv_plat/devenccommonutils_api/group"/>
</component>
</collection>
<collection name="cms" long-name="Certificate Management Service" level="server">
<!-- collection is really a component. Need to move down a directory-->
-<component name="cms_build" filter="s60" long-name="CMS" introduced="^3">
+<component name="cms_build" long-name="CMS" introduced="^3" filter="s60" purpose="optional">
<unit bldFile="mw/securitysrv/cms/group"/>
</component>
</collection>
<collection name="pkiutilities" long-name="PKI Utilities" level="plugin">
-<component name="x509certnameparser" filter="s60" long-name="X.509 Certificate Name Parser">
+<component name="x509certnameparser" long-name="X.509 Certificate Name Parser" filter="s60" purpose="optional">
<unit bldFile="mw/securitysrv/pkiutilities/x509certnameparser/group"/>
</component>
-<component name="pkcs12" filter="s60" long-name="PKCS #12">
+<component name="pkcs12" long-name="PKCS #12" filter="s60" purpose="optional">
<unit bldFile="mw/securitysrv/pkiutilities/pkcs12/group"/>
</component>
-<component name="ctsecuritydialogs" filter="s60" long-name="Crypto Token Security Dialogs">
+<component name="ctsecuritydialogs" long-name="Crypto Token Security Dialogs" filter="s60" purpose="optional">
<unit bldFile="mw/securitysrv/pkiutilities/ctsecuritydialogs/group"/>
</component>
-<component name="certsaver" filter="s60" long-name="Certificate Saver">
+<component name="certsaver" long-name="Certificate Saver" filter="s60" purpose="optional">
<unit bldFile="mw/securitysrv/pkiutilities/certsaver/group"/>
</component>
-<component name="devicetoken" filter="s60" long-name="Device Token">
+<component name="devicetoken" long-name="Device Token" filter="s60" purpose="optional">
<unit bldFile="mw/securitysrv/pkiutilities/devicetoken/group"/>
</component>
-<component name="certificates" filter="s60" long-name="Certificates">
+<component name="certificates" long-name="Certificates" filter="s60" purpose="optional">
<unit bldFile="mw/securitysrv/pkiutilities/Certificates/group" filter="sf_build"/>
</component>
-<component name="pkiutilities_build" filter="s60" long-name="PKI Utilities Build">
+<component name="pkiutilities_build" long-name="PKI Utilities Build" filter="s60" purpose="optional">
<!-- need to split this into the above components -->
<unit bldFile="mw/securitysrv/pkiutilities/group"/>
</component>
<component name="ocsp" long-name="Online Certificate Status Protocol" introduced="^2" purpose="optional">
<unit bldFile="mw/securitysrv/pkiutilities/ocsp/group" mrp="mw/securitysrv/pkiutilities/ocsp/group/securitysrv_ocsp.mrp"/>
</component>
-<component name="untrustedcertificatedialog" filter="s60" long-name="Untrusted Certificate Dialog" introduced="^4">
+<component name="untrustedcertificatedialog" long-name="Untrusted Certificate Dialog" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/securitysrv/pkiutilities/untrustedcertificatedialog" proFile="untrustedcertificateplugin.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="wim" long-name="Wireless Identity Module" level="framework">
<!-- collection is really a component. Need to move down a directory-->
-<component name="wim_build" filter="s60" long-name="WIM Build">
+<component name="wim_build" long-name="WIM Build" filter="s60" purpose="optional">
<unit bldFile="mw/securitysrv/wim/group"/>
</component>
</collection>
<collection name="remotelock" long-name="Remote Lock" level="generic">
<!-- collection is really a component. Need to move down a directory-->
-<component name="remotelock_build" filter="s60" long-name="Remote Lock Build">
+<component name="remotelock_build" long-name="Remote Lock Build" filter="s60" purpose="optional">
<unit bldFile="mw/securitysrv/remotelock/group"/>
</component>
</collection>
<collection name="securitydialogs" long-name="Security Dialogs" level="specific">
-<component name="keylockpolicyapi" filter="s60" long-name="Keylock Policy API">
+<component name="keylockpolicyapi" long-name="Keylock Policy API" filter="s60" purpose="optional">
<unit bldFile="mw/securitysrv/securitydialogs/keylockpolicyapi/group"/>
</component>
-<component name="secui" filter="s60" long-name="Security UI">
+<component name="secui" long-name="Security UI" filter="s60" purpose="optional">
<unit bldFile="mw/securitysrv/securitydialogs/secui/group"/>
</component>
-<component name="securitynotifier" filter="s60" long-name="Security Notifier">
+<component name="securitynotifier" long-name="Security Notifier" filter="s60" purpose="optional">
<unit bldFile="mw/securitysrv/securitydialogs/securitynotifier/group"/>
</component>
-<component name="lockclient" filter="s60" long-name="Lock Client" introduced="^3">
+<component name="lockclient" long-name="Lock Client" introduced="^3" filter="s60" purpose="optional">
<!-- This overwrites the bld.inf already in this dir. I'm pretty sure this will cause problems with the export -->
<unit bldFile="mw/securitysrv/securitydialogs/lockclient/group" proFile="lockclient.pro" qmakeArgs="-r"/>
</component>
-<component name="lockapp" filter="s60" long-name="Lock Application" introduced="^3">
+<component name="lockapp" long-name="Lock Application" introduced="^3" filter="s60" purpose="optional">
<unit bldFile="mw/securitysrv/securitydialogs/lockapp/group"/>
</component>
-<component name="secuinotifications" long-name="Security UI Notifications" introduced="^4" filter="s60">
+<component name="secuinotifications" long-name="Security UI Notifications" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/securitysrv/securitydialogs/secuinotifications" proFile="secuinotifications.pro" qmakeArgs="-r"/>
</component>
-<component name="indicatorautolockplugin" long-name="Auto Lock Indicator Plugin" introduced="^4" filter="s60" plugin="Y">
+<component name="indicatorautolockplugin" long-name="Auto Lock Indicator Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y">
<!-- directory at the wrong level to be a component-->
<unit bldFile="mw/securitysrv/securitydialogs/autolock/indicatorplugin" proFile="indicatorautolockplugin.pro" qmakeArgs="-r"/>
</component>
-<component name="autolockuseractivityservice" long-name="Auto Lock User Activity Service" introduced="^4" filter="s60">
+<component name="autolockuseractivityservice" long-name="Auto Lock User Activity Service" introduced="^4" filter="s60" purpose="optional">
<!-- Can't have a component inside another. Need to move to securitydialogs/autolockuseractivityservice -->
<unit bldFile="mw/securitysrv/securitydialogs/autolock/autolockuseractivityservice" proFile="autolockuseractivityservice.pro" qmakeArgs="-r"/>
</component>
-<component name="autolocksrv" long-name="Auto Lock Server" introduced="^4" filter="s60">
+<component name="autolocksrv" long-name="Auto Lock Server" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/securitysrv/securitydialogs/autolock" proFile="autolock.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="cpsecplugins" long-name="Security Settings Plugins" level="plugin">
-<component name="devicelockplugin" long-name="Device Lock Plugin" introduced="^4" filter="s60">
+<component name="devicelockplugin" long-name="Device Lock Plugin" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/securitysrv/cpsecplugins/devicelockplugin" proFile="devicelockplugin.pro" qmakeArgs="-r"/>
</component>
-<component name="simpincodeplugin" long-name="SIM PIN Code Plugin" introduced="^4" filter="s60">
+<component name="simpincodeplugin" long-name="SIM PIN Code Plugin" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/securitysrv/cpsecplugins/simpincodeplugin" proFile="pincodeplugin.pro" qmakeArgs="-r"/>
</component>
-<component name="cpadvancedsecplugin" long-name="Advanced Security Plugin" introduced="^4" filter="s60">
+<component name="cpadvancedsecplugin" long-name="Advanced Security Plugin" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/securitysrv/cpsecplugins/cpadvancedsecplugin/group" proFile="advancedsecplugin.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="boottimeintegritycheck" long-name="Boot Time Integrity Check" level="plugin">
<!-- collection is really a component. Need to move down a directory-->
-<component name="boottimeintegritycheck_build" filter="s60" long-name="Boot Time Integrity Check Build">
+<component name="boottimeintegritycheck_build" long-name="Boot Time Integrity Check Build" filter="s60" purpose="optional">
<unit bldFile="mw/securitysrv/boottimeintegritycheck/group"/>
</component>
</collection>
<collection name="gba" long-name="Generic Bootstrapping Architecture" level="server">
-<component name="uicc" filter="s60" long-name="UICC" introduced="^2" plugin="Y">
+<component name="uicc" long-name="UICC" introduced="^2" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/securitysrv/gba/uicc/group"/>
</component>
-<component name="gbaserver" filter="s60" long-name="GBA Server" introduced="^2">
+<component name="gbaserver" long-name="GBA Server" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/securitysrv/gba/gbaserver/group"/>
</component>
-<component name="gbaapi" filter="s60" long-name="GBA API" introduced="^2">
+<component name="gbaapi" long-name="GBA API" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/securitysrv/gba/gbaapi/group"/>
</component>
-<component name="gbafilter" filter="s60" long-name="GBA HTTP Filter" introduced="^2" plugin="Y">
+<component name="gbafilter" long-name="GBA HTTP Filter" introduced="^2" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/securitysrv/gba/gbafilter/group"/>
</component>
-<component name="gba_build" filter="s60" long-name="Generic Boot Architecture Build" introduced="^2">
+<component name="gba_build" long-name="Generic Boot Architecture Build" introduced="^2" filter="s60" purpose="optional">
<!-- need to split this into the above components, or remove #includes and make this GBA ROM -->
<unit bldFile="mw/securitysrv/gba/group"/>
</component>
</collection>
<collection name="devencdiskutils" long-name="Device Encryption Disk Utils" level="server">
-<component name="devenccommonutils" filter="s60" long-name="Device Encryption Common Utils" introduced="^3">
+<component name="devenccommonutils" long-name="Device Encryption Common Utils" introduced="^3" filter="s60" purpose="optional">
<unit bldFile="mw/securitysrv/devencdiskutils/DevEncCommonUtils/group"/>
</component>
-<component name="devencrfsplugin" filter="s60" long-name="Device Encryption RFS Plugin" introduced="^3" plugin="Y">
+<component name="devencrfsplugin" long-name="Device Encryption RFS Plugin" introduced="^3" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/securitysrv/devencdiskutils/DevEncRfsPlugin/group"/>
</component>
-<component name="pk5recognizer" filter="s60" long-name="Device Encryption Pk5 Recognizer" introduced="^3" plugin="Y">
+<component name="pk5recognizer" long-name="Device Encryption Pk5 Recognizer" introduced="^3" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/securitysrv/devencdiskutils/Pk5Recognizer/group"/>
</component>
-<component name="devencstarter" filter="s60" long-name="Device Encryption Starter" introduced="^3" plugin="Y">
+<component name="devencstarter" long-name="Device Encryption Starter" introduced="^3" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/securitysrv/devencdiskutils/DevEncStarter/group"/>
</component>
-<component name="devencdiskutils_build" filter="s60" long-name="Device Encryption Disk Utils Build" introduced="^3">
+<component name="devencdiskutils_build" long-name="Device Encryption Disk Utils Build" introduced="^3" filter="s60" purpose="optional">
<!-- need to split this into the above components, or remove #includes and make this a ROM component-->
<unit bldFile="mw/securitysrv/devencdiskutils/group"/>
</component>
</collection>
<collection name="securitysrv_info" long-name="Security Services Info" level="specific">
-<component name="securitysrv_test" filter="s60,test,api_test" purpose="development" long-name="Security Services Test"/>
+<component name="securitysrv_test" long-name="Security Services Test" filter="s60,test,api_test" purpose="development"/>
<component name="securitysrv_metadata" long-name="Security Services Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="mw/securitysrv/securitysrv_info/securitysrv_metadata/securitysrv_metadata.mrp"/>
</component>
</collection>
</block>
-<block name="drm" level="generic" long-name="DRM" levels="plugin framework server generic specific">
+<block name="drm" level="generic" levels="plugin framework server generic specific" long-name="DRM">
<collection name="drm_plat" long-name="DRM Platform Interfaces" level="specific">
-<component name="roap_api" long-name="ROAP API" filter="s60" class="api">
+<component name="roap_api" long-name="ROAP API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/drm/drm_plat/roap_api/group"/>
</component>
-<component name="drm_common_api" long-name="DRM Common API" filter="s60" class="api">
+<component name="drm_common_api" long-name="DRM Common API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/drm/drm_plat/drm_common_api/group"/>
</component>
-<component name="drm_rights_api" long-name="DRM Rights API" filter="s60" class="api">
+<component name="drm_rights_api" long-name="DRM Rights API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/drm/drm_plat/drm_rights_api/group"/>
</component>
-<component name="drm_legacy_api" long-name="DRM Legacy API" filter="s60" class="api">
+<component name="drm_legacy_api" long-name="DRM Legacy API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/drm/drm_plat/drm_legacy_api/group"/>
</component>
-<component name="dcf_repository_api" long-name="DCF Repository API" filter="s60" class="api">
+<component name="dcf_repository_api" long-name="DCF Repository API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/drm/drm_plat/dcf_repository_api/group"/>
</component>
-<component name="drm_service_api" long-name="DRM Service API" filter="s60" class="api">
+<component name="drm_service_api" long-name="DRM Service API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/drm/drm_plat/drm_service_api/group"/>
</component>
-<component name="drm_secondary_display_api" long-name="DRM Secondary Display API" filter="s60" class="api">
+<component name="drm_secondary_display_api" long-name="DRM Secondary Display API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/drm/drm_plat/drm_secondary_display_api/group"/>
</component>
-<component name="drm_license_manager_api" long-name="DRM License Manager API" filter="s60" class="api">
+<component name="drm_license_manager_api" long-name="DRM License Manager API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/drm/drm_plat/drm_license_manager_api/group"/>
</component>
-<component name="drm_utility_api" long-name="DRM Utility API" filter="s60" class="api">
+<component name="drm_utility_api" long-name="DRM Utility API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/drm/drm_plat/drm_utility_api/group"/>
</component>
-<component name="drm_agents_api" long-name="DRM Agents API" filter="s60" class="api">
+<component name="drm_agents_api" long-name="DRM Agents API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/drm/drm_plat/drm_agents_api/group"/>
</component>
-<component name="wmdrm_core_api" long-name="WM DRM Core API" filter="s60" class="api">
+<component name="wmdrm_core_api" long-name="WM DRM Core API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/drm/drm_plat/wmdrm_core_api/group"/>
</component>
-<component name="wmdrm_access_api" long-name="WM DRM Access API" filter="s60" class="api">
+<component name="wmdrm_access_api" long-name="WM DRM Access API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/drm/drm_plat/wmdrm_access_api/group"/>
</component>
-<component name="wmdrm_ota_access_api" long-name="WM DRM OTA Access API" filter="s60" class="api">
+<component name="wmdrm_ota_access_api" long-name="WM DRM OTA Access API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/drm/drm_plat/wmdrm_ota_access_api/group"/>
</component>
-<component name="camese_utility_api" long-name="Camese Utility API" filter="s60" class="api">
+<component name="camese_utility_api" long-name="Camese Utility API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/drm/drm_plat/camese_utility_api/group"/>
</component>
-<component name="camese_framework_api" long-name="Camese Framework API" filter="s60" class="api">
+<component name="camese_framework_api" long-name="Camese Framework API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/drm/drm_plat/camese_framework_api/group"/>
</component>
</collection>
<collection name="drm_pub" long-name="DRM Public Interfaces" level="specific">
-<component name="drm_helper_api" long-name="DRM Helper API" filter="s60" class="api">
+<component name="drm_helper_api" long-name="DRM Helper API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/drm/drm_pub/drm_helper_api/group"/>
</component>
-<component name="oma_drm_caf_agent_api" long-name="OMA DRM CAF Agent API" filter="s60" class="api">
+<component name="oma_drm_caf_agent_api" long-name="OMA DRM CAF Agent API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/drm/drm_pub/oma_drm_caf_agent_api/group"/>
</component>
-<component name="drm_license_checker_api" long-name="DRM License Checker API" filter="s60" class="api">
+<component name="drm_license_checker_api" long-name="DRM License Checker API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/drm/drm_pub/drm_license_checker_api/group"/>
</component>
</collection>
<collection name="commondrm" long-name="Common DRM" level="generic">
<!-- it looks like this collection would be better as a component. If so, move down a directory. Otherwise, split up the bld.inf -->
-<component name="drmqtencryptor" filter="s60" long-name="DRM Qt Encryptor" introduced="^4">
+<component name="drmqtencryptor" long-name="DRM Qt Encryptor" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/drm/commondrm/drmqtencryptor" proFile="qt_drmencryptor.pro" qmakeArgs="-r"/>
</component>
-<component name="drmrightsmanagerui" filter="s60" long-name="DRM Rights Manager UI">
+<component name="drmrightsmanagerui" long-name="DRM Rights Manager UI" filter="s60" purpose="optional">
<unit bldFile="mw/drm/commondrm/drmrightsmanagerui/help/group"/>
</component>
-<component name="drmutility" filter="s60" long-name="DRM Utility">
+<component name="drmutility" long-name="DRM Utility" filter="s60" purpose="optional">
<unit bldFile="mw/drm/commondrm/drmutility/group"/>
</component>
-<component name="drmserviceapiwrapper" filter="s60" long-name="DRM Service API Wrapper">
+<component name="drmserviceapiwrapper" long-name="DRM Service API Wrapper" filter="s60" purpose="optional">
<unit bldFile="mw/drm/commondrm/drmserviceapiwrapper/group"/>
</component>
-<component name="drmrightsstoringlocation" filter="s60" long-name="DRM Rights Storing Location">
+<component name="drmrightsstoringlocation" long-name="DRM Rights Storing Location" filter="s60" purpose="optional">
<unit bldFile="mw/drm/commondrm/drmrightsstoringlocation/group"/>
</component>
-<component name="commondrm_build" filter="s60" long-name="Common DRM Build">
+<component name="commondrm_build" long-name="Common DRM Build" filter="s60" purpose="optional">
<!-- should be split into the above files, or them collapsed into a single component -->
<unit bldFile="mw/drm/commondrm/group"/>
</component>
-<component name="commondrm_qt_build" filter="s60" long-name="Common DRM Qt Build" introduced="^4">
+<component name="commondrm_qt_build" long-name="Common DRM Qt Build" introduced="^4" filter="s60" purpose="optional">
<!-- split up build components -->
-<unit bldFile="mw/drm/commondrm" qmakeArgs="-r" proFile="commondrm.pro"/>
+<unit bldFile="mw/drm/commondrm" proFile="commondrm.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="omadrm" long-name="OMA DRM" level="server">
<!-- split up build components -->
-<component name="omadrm_build" filter="s60" long-name="OMA DRM Build">
+<component name="omadrm_build" long-name="OMA DRM Build" filter="s60" purpose="optional">
<unit bldFile="mw/drm/omadrm/group"/>
</component>
-<component name="omadrm_qt_build" filter="s60" long-name="OMA DRM Qt Build" introduced="^4">
+<component name="omadrm_qt_build" long-name="OMA DRM Qt Build" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/drm/omadrm" proFile="omadrm.pro"/>
</component>
-<component name="foundationcerts" filter="sf_build" long-name="Foundation Certificates">
+<component name="foundationcerts" long-name="Foundation Certificates" filter="sf_build" purpose="optional">
<unit bldFile="mw/drm/omadrm/foundationcerts/group"/>
</component>
</collection>
<collection name="wmdrm" long-name="Windows Media DRM" level="framework">
<!-- collection is really a component. Move down a directory -->
-<component name="wmdrm_build" filter="s60" long-name="WM DRM Build">
+<component name="wmdrm_build" long-name="WM DRM Build" filter="s60" purpose="optional">
<unit bldFile="mw/drm/wmdrm/group"/>
</component>
</collection>
<collection name="drm_info" long-name="DRM Info" level="specific"/>
</block>
-<block name="locationsrv" level="specific" long-name="Location Services" levels="plugin fw server if">
+<block name="locationsrv" level="specific" levels="plugin fw server if" long-name="Location Services">
<collection name="locsrv_pub" long-name="Location Services Public Interfaces" level="if">
-<component name="landmarks_search_api" long-name="Landmarks Search API" filter="s60" class="api">
+<component name="landmarks_search_api" long-name="Landmarks Search API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/locationsrv/locsrv_pub/landmarks_search_api/group"/>
</component>
-<component name="landmarks_api" long-name="Landmarks API" filter="s60" class="api">
+<component name="landmarks_api" long-name="Landmarks API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/locationsrv/locsrv_pub/landmarks_api/group"/>
</component>
-<component name="landmarks_database_management_api" long-name="Landmarks Database Management API" filter="s60" class="api">
+<component name="landmarks_database_management_api" long-name="Landmarks Database Management API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/locationsrv/locsrv_pub/landmarks_database_management_api/group"/>
</component>
-<component name="location_triggering_api" long-name="Location Triggering API" filter="s60" class="api">
+<component name="location_triggering_api" long-name="Location Triggering API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/locationsrv/locsrv_pub/location_triggering_api/group"/>
</component>
-<component name="blid_application_satellite_info_api" long-name="BLID Application Satellite Info API" filter="s60" class="api">
+<component name="blid_application_satellite_info_api" long-name="BLID Application Satellite Info API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/locationsrv/locsrv_pub/blid_application_satellite_info_api/group"/>
</component>
</collection>
<collection name="locsrv_plat" long-name="Location Services Platform Interfaces" level="if">
-<component name="geocoding_api" long-name="Geocoding API" filter="s60" class="api">
+<component name="geocoding_api" long-name="Geocoding API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/geocoding_api/group"/>
</component>
-<component name="supl_pos_message_plugin_api" long-name="SUPL POS Message Plugin API" filter="s60" class="api placeholder">
-<!-- placeholder
- <meta rel="Api" href="locsrv_plat/supl_pos_message_plugin_api/supl_pos_message_plugin_api.metaxml"/>
- <unit bldFile="locsrv_plat/supl_pos_message_plugin_api/group"/>
+<component name="supl_pos_message_plugin_api" long-name="SUPL POS Message Plugin API" filter="s60" purpose="optional" class="api placeholder">
+<!-- placeholder
+ <meta rel="Api" href="locsrv_plat/supl_pos_message_plugin_api/supl_pos_message_plugin_api.metaxml"/>
+ <unit bldFile="locsrv_plat/supl_pos_message_plugin_api/group"/>
-->
</component>
-<component name="landmarks_category_definition_api" long-name="Landmarks Category Definition API" filter="s60" class="api">
+<component name="landmarks_category_definition_api" long-name="Landmarks Category Definition API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/landmarks_category_definition_api/group"/>
</component>
-<component name="supl_settings_api" long-name="SUPL Settings API" filter="s60" class="api">
+<component name="supl_settings_api" long-name="SUPL Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/supl_settings_api/group"/>
</component>
-<component name="np_proxy_configuration_api" long-name="NP Proxy Configuration API" filter="s60" class="api">
+<component name="np_proxy_configuration_api" long-name="NP Proxy Configuration API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/np_proxy_configuration_api/group"/>
</component>
-<component name="supl_terminal_initiation_api" long-name="SUPL Terminal Initiation API" filter="s60" class="api">
+<component name="supl_terminal_initiation_api" long-name="SUPL Terminal Initiation API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/supl_terminal_initiation_api/group"/>
</component>
-<component name="supl_network_initiation_api" long-name="SUPL Network Initiation API" filter="s60" class="api">
+<component name="supl_network_initiation_api" long-name="SUPL Network Initiation API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/supl_network_initiation_api/group"/>
</component>
-<component name="oma_supl_configuration_parameter_api" long-name="OMA SUPL Configuration Parameter API" filter="s60" class="api">
+<component name="oma_supl_configuration_parameter_api" long-name="OMA SUPL Configuration Parameter API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/oma_supl_configuration_parameter_api/group"/>
</component>
-<component name="location_triggering_management_api" long-name="Location Triggering Management API" filter="s60" class="api">
+<component name="location_triggering_management_api" long-name="Location Triggering Management API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/location_triggering_management_api/group"/>
</component>
-<component name="location_triggering_status_information_api" long-name="Location Triggering Status Information API" filter="s60" class="api">
+<component name="location_triggering_status_information_api" long-name="Location Triggering Status Information API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/location_triggering_status_information_api/group"/>
</component>
-<component name="oma_supl_asn_codec_plugin_api" long-name="OMA SUPL ASN Codec Plugin API" filter="s60" class="api">
+<component name="oma_supl_asn_codec_plugin_api" long-name="OMA SUPL ASN Codec Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/oma_supl_asn_codec_plugin_api/group"/>
</component>
-<component name="query_and_notification_api" long-name="Query and Notification API" filter="s60" introduced="^3" class="api">
+<component name="query_and_notification_api" long-name="Query and Notification API" introduced="^3" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/query_and_notification_api/group"/>
</component>
-<component name="location_local_variation_api" long-name="Location Local Variation API" filter="s60" class="api">
+<component name="location_local_variation_api" long-name="Location Local Variation API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/locationsrv/locsrv_plat/location_local_variation_api/group"/>
</component>
</collection>
<collection name="genericpositioningplugins" long-name="Generic Positioning Plugins" level="plugin">
-<component name="locationnpppsy" filter="s60" long-name="Location Positioning Proxy PSY" plugin="Y">
+<component name="locationnpppsy" long-name="Location Positioning Proxy PSY" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/locationsrv/genericpositioningplugins/locationnpppsy/group"/>
</component>
-<component name="locationsuplpsy" filter="s60" long-name="Location SUPL PSY" introduced="^3" plugin="Y">
+<component name="locationsuplpsy" long-name="Location SUPL PSY" introduced="^3" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/locationsrv/genericpositioningplugins/locationsuplpsy/group"/>
</component>
-<component name="genericpositioningplugins_build" filter="s60" long-name="Generic Positioning Plugins Build">
+<component name="genericpositioningplugins_build" long-name="Generic Positioning Plugins Build" filter="s60" purpose="optional">
<!-- need to break this up into the other components -->
<unit bldFile="mw/locationsrv/genericpositioningplugins/group"/>
</component>
</collection>
<collection name="landmarks" long-name="Landmarks" level="server">
-<component name="locationlandmarks" filter="s60" long-name="Location Landmarks">
+<component name="locationlandmarks" long-name="Location Landmarks" filter="s60" purpose="optional">
<unit bldFile="mw/locationsrv/landmarks/locationlandmarks/group"/>
</component>
</collection>
<collection name="locationsystemui" long-name="Location System UI" level="if">
-<component name="locationsysui" filter="s60" long-name="Location System UI">
+<component name="locationsysui" long-name="Location System UI" filter="s60" purpose="optional">
<unit bldFile="mw/locationsrv/locationsystemui/locationsysui/group"/>
</component>
-<component name="qtlocationsysui" filter="s60" long-name="Location System Qt UI">
+<component name="qtlocationsysui" long-name="Location System Qt UI" filter="s60" purpose="optional">
<unit bldFile="mw/locationsrv/locationsystemui/locationsysui" proFile="locsysui.pro"/>
</component>
</collection>
<collection name="supl" long-name="SUPL" level="fw">
-<component name="locationsuplfw" filter="s60" long-name="Location SUPL Framework">
+<component name="locationsuplfw" long-name="Location SUPL Framework" filter="s60" purpose="optional">
<unit bldFile="mw/locationsrv/supl/locationsuplfw/group"/>
</component>
-<component name="locationomasuplprotocolhandler" filter="s60" long-name="OMA SUPL Protocol Handler">
+<component name="locationomasuplprotocolhandler" long-name="OMA SUPL Protocol Handler" filter="s60" purpose="optional">
<unit bldFile="mw/locationsrv/supl/locationomasuplprotocolhandler/group"/>
</component>
-<component name="supltiapiimplementation" filter="s60" long-name="SUPL TI API Implementation" introduced="^3">
+<component name="supltiapiimplementation" long-name="SUPL TI API Implementation" introduced="^3" filter="s60" purpose="optional">
<unit bldFile="mw/locationsrv/supl/supltiapiimplementation/group"/>
</component>
</collection>
<collection name="locationtriggering" long-name="Location Triggering" level="server">
-<component name="ltlogger" filter="s60" long-name="LT Logger">
+<component name="ltlogger" long-name="LT Logger" filter="s60" purpose="optional">
<unit bldFile="mw/locationsrv/locationtriggering/ltlogger/group"/>
</component>
-<component name="ltclientlib" filter="s60" long-name="LT Client Library">
+<component name="ltclientlib" long-name="LT Client Library" filter="s60" purpose="optional">
<unit bldFile="mw/locationsrv/locationtriggering/ltclientlib/group"/>
</component>
-<component name="ltmanagementlib" filter="s60" long-name="LT Management Library">
+<component name="ltmanagementlib" long-name="LT Management Library" filter="s60" purpose="optional">
<unit bldFile="mw/locationsrv/locationtriggering/ltmanagementlib/group"/>
</component>
-<component name="ltcontainer" filter="s60" long-name="LT Container">
+<component name="ltcontainer" long-name="LT Container" filter="s60" purpose="optional">
<unit bldFile="mw/locationsrv/locationtriggering/ltcontainer/group"/>
</component>
-<component name="ltserver" filter="s60" long-name="LT Server">
+<component name="ltserver" long-name="LT Server" filter="s60" purpose="optional">
<unit bldFile="mw/locationsrv/locationtriggering/ltserver/group"/>
</component>
-<component name="ltstrategypluginapi" filter="s60" long-name="LT Strategy Plugin API">
+<component name="ltstrategypluginapi" long-name="LT Strategy Plugin API" filter="s60" purpose="optional">
<unit bldFile="mw/locationsrv/locationtriggering/ltstrategypluginapi/group"/>
</component>
-<component name="ltstrategyengine" filter="s60" long-name="LT Strategy Engine">
+<component name="ltstrategyengine" long-name="LT Strategy Engine" filter="s60" purpose="optional">
<unit bldFile="mw/locationsrv/locationtriggering/ltstrategyengine/group"/>
</component>
-<component name="ltmovementdetectionpluginapi" filter="s60" long-name="Movement Detection Plugin API">
+<component name="ltmovementdetectionpluginapi" long-name="Movement Detection Plugin API" filter="s60" purpose="optional">
<unit bldFile="mw/locationsrv/locationtriggering/ltmovementdetectionpluginapi/group"/>
</component>
-<component name="ltcellidmovementdetector" filter="s60" long-name="Cell ID Movement Detector">
+<component name="ltcellidmovementdetector" long-name="Cell ID Movement Detector" filter="s60" purpose="optional">
<unit bldFile="mw/locationsrv/locationtriggering/ltcellidmovementdetector/group"/>
</component>
-<component name="ltcontextsourceplugin" filter="s60" long-name="LT Context Source Plugin" introduced="^3" plugin="Y">
+<component name="ltcontextsourceplugin" long-name="LT Context Source Plugin" introduced="^3" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/locationsrv/locationtriggering/ltcontextsourceplugin/group"/>
</component>
-<component name="locationtriggering_build" filter="s60" long-name="Location Triggering Build">
+<component name="locationtriggering_build" long-name="Location Triggering Build" filter="s60" purpose="optional">
<!-- should remove #include from this and maybe put exports in the above components -->
<unit bldFile="mw/locationsrv/locationtriggering/group"/>
</component>
</collection>
</block>
-<block name="accesssec" level="generic" long-name="Access Security" levels="plugin framework server generic specific">
+<block name="accesssec" level="generic" levels="plugin framework server generic specific" long-name="Access Security">
<collection name="accesssec_plat" long-name="Access Security Platform Interfaces" level="specific">
-<component name="eap_vpn_api" long-name="EAP VPN API" filter="s60" class="api">
+<component name="eap_vpn_api" long-name="EAP VPN API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/accesssec/accesssec_plat/eap_vpn_api/group"/>
</component>
-<component name="eap_type_api" long-name="EAP Type API" filter="s60" class="api">
+<component name="eap_type_api" long-name="EAP Type API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/accesssec/accesssec_plat/eap_type_api/group"/>
</component>
-<component name="eap_qt_configuration_api" long-name="EAP Qt Configuration API" filter="s60" introduced="^4" class="api">
+<component name="eap_qt_configuration_api" long-name="EAP Qt Configuration API" introduced="^4" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/accesssec/accesssec_plat" proFile="accesssec_plat.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="securitysettings" long-name="WLAN Security Settings" level="specific">
-<component name="accesssec_qtconfigutils" filter="s60" long-name="Access Security Config Utils" introduced="^4">
+<component name="accesssec_qtconfigutils" long-name="Access Security Config Utils" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/accesssec/securitysettings/qtconfigutils" proFile="qtconfigutils.pro" qmakeArgs="-r"/>
</component>
-<component name="cpwlansecurityuiplugins" filter="s60" long-name="Control Panel WLAN Security UI Plugins" introduced="^4" plugin="Y">
+<component name="cpwlansecurityuiplugins" long-name="Control Panel WLAN Security UI Plugins" introduced="^4" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/accesssec/securitysettings/cpwlansecurityuiplugins" proFile="cpwlansecurityuiplugins.pro" qmakeArgs="-r"/>
</component>
-<component name="cpeapuiplugins" filter="s60" long-name="Control Panel EAP UI Pugins" introduced="^4" plugin="Y">
+<component name="cpeapuiplugins" long-name="Control Panel EAP UI Pugins" introduced="^4" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/accesssec/securitysettings/cpeapuiplugins" proFile="cpeapuiplugins.pro" qmakeArgs="-r"/>
</component>
-<component name="eapqtdialogs" filter="s60" long-name="EAP Qt Dialogs" introduced="^4">
+<component name="eapqtdialogs" long-name="EAP Qt Dialogs" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/accesssec/securitysettings/eapqtdialogs" proFile="eapqtdialogs.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="eapol" long-name="EAPOL" level="framework">
-<component name="eapol_framework" filter="s60" long-name="EAPOL Framework" introduced="9.2">
+<component name="eapol_framework" long-name="EAPOL Framework" introduced="9.2" filter="s60" purpose="optional">
<unit bldFile="mw/accesssec/eapol/group"/>
</component>
</collection>
</block>
-<block name="ipconnmgmt" level="generic" long-name="IP Connectivity Management" levels="plugin framework server utils api">
+<block name="ipconnmgmt" level="generic" levels="plugin framework server utils api" long-name="IP Connectivity Management">
<collection name="ipcm_plat" long-name="IP Connectivity Management Platform Interfaces" level="api">
-<component name="ipcm_plat_qt_build" long-name="IP Connectivity Management Qt Platform Interfaces" filter="s60" introduced="^4" class="api">
+<component name="ipcm_plat_qt_build" long-name="IP Connectivity Management Qt Platform Interfaces" introduced="^4" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_plat" proFile="ipcm_plat.pro"/>
</component>
-<component name="access_point_engine_misc_api" long-name="Access Point Engine Misc API" filter="s60" class="api">
+<component name="access_point_engine_misc_api" long-name="Access Point Engine Misc API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_plat/access_point_engine_misc_api/group"/>
</component>
-<component name="bearer_settings_plugin_api" long-name="Bearer Settings Plugin API" filter="s60" class="api">
+<component name="bearer_settings_plugin_api" long-name="Bearer Settings Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_plat/bearer_settings_plugin_api/group"/>
</component>
-<component name="commsdat_wlan_api" long-name="CommsDat WLAN API" filter="s60" class="api">
+<component name="commsdat_wlan_api" long-name="CommsDat WLAN API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_plat/commsdat_wlan_api/group"/>
</component>
-<component name="connection_monitor_extension_api" long-name="Connection Monitor Extension API" filter="s60" class="api">
+<component name="connection_monitor_extension_api" long-name="Connection Monitor Extension API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_plat/connection_monitor_extension_api/group"/>
</component>
-<component name="connection_ui_utilities_api" long-name="Connection UI Utilities API" filter="s60" class="api">
+<component name="connection_ui_utilities_api" long-name="Connection UI Utilities API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_plat/connection_ui_utilities_api/group"/>
</component>
-<component name="disconnect_dialog_api" long-name="Disconnect Dialog API" filter="s60" class="api">
+<component name="disconnect_dialog_api" long-name="Disconnect Dialog API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_plat/disconnect_dialog_api/group"/>
</component>
-<component name="disconnect_dialog_disable_api" long-name="Disconnect Dialog Disable API" filter="s60" class="api">
+<component name="disconnect_dialog_disable_api" long-name="Disconnect Dialog Disable API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_plat/disconnect_dialog_disable_api/group"/>
</component>
-<component name="extended_connection_settings_api" long-name="Extended Connection Settings API" filter="s60" class="api">
+<component name="extended_connection_settings_api" long-name="Extended Connection Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_plat/extended_connection_settings_api/group"/>
</component>
-<component name="pdpcontextmanager2_reset_factory_settings_api" long-name="PDP Context Manager 2 Reset Factory Settings API" filter="s60" class="api">
+<component name="pdpcontextmanager2_reset_factory_settings_api" long-name="PDP Context Manager 2 Reset Factory Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_plat/pdpcontextmanager2_reset_factory_settings_api/group"/>
</component>
-<component name="pdpcontextmanager2_settings_api" long-name="PDP Context Manager 2 Settings API" filter="s60" class="api">
+<component name="pdpcontextmanager2_settings_api" long-name="PDP Context Manager 2 Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_plat/pdpcontextmanager2_settings_api/group"/>
</component>
-<component name="mpm_connect_screen_api" long-name="MPM Connect Screen API" filter="s60" class="api">
+<component name="mpm_connect_screen_api" long-name="MPM Connect Screen API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_plat/mpm_connect_screen_api/group"/>
</component>
-<component name="flextimer_api" long-name="Flex Timer API" filter="s60" introduced="^4" class="api">
+<component name="flextimer_api" long-name="Flex Timer API" introduced="^4" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_plat/flextimer_api/group"/>
</component>
-<component name="mpm_vpn_toggle_api" long-name="MPM VPN Toggle API" filter="s60" introduced="^4" class="api">
+<component name="mpm_vpn_toggle_api" long-name="MPM VPN Toggle API" introduced="^4" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_plat/mpm_vpn_toggle_api/group"/>
</component>
</collection>
<collection name="ipcm_pub" long-name="IP Connectivity Management Public Interfaces" level="api">
-<component name="connection_settings_api" long-name="Connection Settings API" filter="s60" class="api">
+<component name="connection_settings_api" long-name="Connection Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_pub/connection_settings_api/group"/>
</component>
-<component name="access_point_engine_api" long-name="Access Point Engine API" filter="s60" class="api">
+<component name="access_point_engine_api" long-name="Access Point Engine API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_pub/access_point_engine_api/group"/>
</component>
-<component name="access_point_settings_handler_api" long-name="Access Point Settings Handler API" filter="s60" class="api">
+<component name="access_point_settings_handler_api" long-name="Access Point Settings Handler API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_pub/access_point_settings_handler_api/group"/>
</component>
-<component name="data_connection_log_counters_api" long-name="Data Connection Log Counters API" filter="s60" class="api">
+<component name="data_connection_log_counters_api" long-name="Data Connection Log Counters API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_pub/data_connection_log_counters_api/group"/>
</component>
-<component name="connection_monitor_server_api" long-name="Connection Monitor Server API" filter="s60" class="api">
+<component name="connection_monitor_server_api" long-name="Connection Monitor Server API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_pub/connection_monitor_server_api/group"/>
</component>
-<component name="connection_settings_ui_api" long-name="Connection Settings UI API" filter="s60" class="api">
+<component name="connection_settings_ui_api" long-name="Connection Settings UI API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_pub/connection_settings_ui_api/group"/>
</component>
-<component name="agent_dialog_api" long-name="Agent Dialog API" filter="s60" class="api">
+<component name="agent_dialog_api" long-name="Agent Dialog API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_pub/agent_dialog_api/group"/>
</component>
-<component name="extendedconnpref_api" long-name="Extended Connection Preferences API" filter="s60" class="api">
+<component name="extendedconnpref_api" long-name="Extended Connection Preferences API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_pub/extendedconnpref_api/group"/>
</component>
</collection>
<collection name="alwayson_net_plugin" long-name="Always Online Net Plugin" level="server">
-<component name="pdpcontextmanager2" filter="s60" long-name="PDP Context Manager 2">
+<component name="pdpcontextmanager2" long-name="PDP Context Manager 2" filter="s60" purpose="optional">
<unit bldFile="mw/ipconnmgmt/alwayson_net_plugin/pdpcontextmanager2/group"/>
</component>
</collection>
<collection name="apengine" long-name="Access Point Engine" level="framework">
-<component name="apeng" filter="s60" long-name="Access Point Engine">
+<component name="apeng" long-name="Access Point Engine" filter="s60" purpose="optional">
<unit bldFile="mw/ipconnmgmt/apengine/apeng/group"/>
</component>
-<component name="apsettingshandlerui" filter="s60" long-name="Access Point Settings Handler UI">
+<component name="apsettingshandlerui" long-name="Access Point Settings Handler UI" filter="s60" purpose="optional">
<unit bldFile="mw/ipconnmgmt/apengine/apsettingshandlerui/group"/>
</component>
</collection>
<collection name="bearermanagement" long-name="Bearer Management" level="framework">
-<component name="mpm" filter="s60" long-name="Mobility Policy Manager">
+<component name="mpm" long-name="Mobility Policy Manager" filter="s60" purpose="optional">
<unit bldFile="mw/ipconnmgmt/bearermanagement/mpm/group"/>
</component>
-<component name="extendedconnpref" filter="s60" long-name="Extended Connection Preferences">
+<component name="extendedconnpref" long-name="Extended Connection Preferences" filter="s60" purpose="optional">
<unit bldFile="mw/ipconnmgmt/bearermanagement/extendedconnpref/group"/>
</component>
-<component name="s60mcpr" filter="s60" long-name="S60 Meta-Connection Provider" plugin="Y">
+<component name="s60mcpr" long-name="S60 Meta-Connection Provider" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/ipconnmgmt/bearermanagement/S60MCPR/group"/>
</component>
</collection>
<collection name="cmmanager" long-name="Connection Method Manager" level="framework">
-<component name="cmmgr" filter="s60" long-name="CM Manager">
+<component name="cmmgr" long-name="CM Manager" filter="s60" purpose="optional">
<unit bldFile="mw/ipconnmgmt/cmmanager/cmmgr/group"/>
</component>
-<component name="connection_settings_shim" long-name="Connection Settings Shim" introduced="^4">
+<component name="connection_settings_shim" long-name="Connection Settings Shim" introduced="^4" purpose="optional">
<unit bldFile="mw/ipconnmgmt/cmmanager/connection_settings_shim" proFile="connection_settings_shim.pro" qmakeArgs="-r"/>
</component>
-<component name="cmapplsettingsui" long-name="Connection Settings UI" introduced="^4">
+<component name="cmapplsettingsui" long-name="Connection Settings UI" introduced="^4" purpose="optional">
<unit bldFile="mw/ipconnmgmt/cmmanager/cmapplsettingsui" proFile="cmapplsettingsui.pro" qmakeArgs="-r"/>
</component>
-<component name="cpipsettingsplugin" long-name="Connection Settings IP Plugin" introduced="^4" plugin="Y">
+<component name="cpipsettingsplugin" long-name="Connection Settings IP Plugin" introduced="^4" purpose="optional" plugin="Y">
<unit bldFile="mw/ipconnmgmt/cmmanager/cpipsettingsplugin" proFile="cpipsettingsplugin.pro" qmakeArgs="-r"/>
</component>
-<component name="cpdestinationplugin" long-name="CP Destination Plugin" introduced="^4" plugin="Y">
+<component name="cpdestinationplugin" long-name="CP Destination Plugin" introduced="^4" purpose="optional" plugin="Y">
<unit bldFile="mw/ipconnmgmt/cmmanager/cpdestinationplugin" proFile="cpdestinationplugin.pro" qmakeArgs="-r"/>
</component>
-<component name="cppacketdataapplugin" long-name="CP Packet Data AP Pplugin" introduced="^4" plugin="Y">
+<component name="cppacketdataapplugin" long-name="CP Packet Data AP Pplugin" introduced="^4" purpose="optional" plugin="Y">
<unit bldFile="mw/ipconnmgmt/cmmanager/cppacketdataapplugin" proFile="cppacketdataapplugin.pro" qmakeArgs="-r"/>
</component>
-<component name="cpwlanapplugin" long-name="CP WLAN AP Plugin" introduced="^4" plugin="Y">
+<component name="cpwlanapplugin" long-name="CP WLAN AP Plugin" introduced="^4" purpose="optional" plugin="Y">
<unit bldFile="mw/ipconnmgmt/cmmanager/cpwlanapplugin" proFile="cpwlanapplugin.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="connectionmonitoring" long-name="Connection Monitoring" level="server">
-<component name="connectionmonitorui" filter="s60" long-name="Connection Monitor UI">
+<component name="connectionmonitorui" long-name="Connection Monitor UI" filter="s60" purpose="optional">
<unit bldFile="mw/ipconnmgmt/connectionmonitoring/connectionmonitorui/group"/>
</component>
-<component name="connmon" filter="s60" long-name="Connection Monitor">
+<component name="connmon" long-name="Connection Monitor" filter="s60" purpose="optional">
<!-- either split into two components, or #include from a common bld.inf -->
<unit bldFile="mw/ipconnmgmt/connectionmonitoring/connmon/connectionmonitor/group"/>
<unit bldFile="mw/ipconnmgmt/connectionmonitoring/connmon/dataconnectionlogger/group"/>
</component>
-<component name="connmonext" filter="s60" long-name="Connection Monitor Extension API">
+<component name="connmonext" long-name="Connection Monitor Extension API" filter="s60" purpose="optional">
<unit bldFile="mw/ipconnmgmt/connectionmonitoring/connmonext/group"/>
</component>
-<component name="cellularindicatorplugin" long-name="Cellular Indicator Plugin" introduced="^4" plugin="Y">
+<component name="cellularindicatorplugin" long-name="Cellular Indicator Plugin" introduced="^4" purpose="optional" plugin="Y">
<unit bldFile="mw/ipconnmgmt/connectionmonitoring/cellularindicatorplugin" proFile="cellularindicatorplugin.pro" qmakeArgs="-r"/>
</component>
-<component name="indicatorobserver" long-name="Indicator Observer" introduced="^4">
+<component name="indicatorobserver" long-name="Indicator Observer" introduced="^4" purpose="optional">
<unit bldFile="mw/ipconnmgmt/connectionmonitoring/indicatorobserver" proFile="indicatorobserver.pro" qmakeArgs="-r"/>
</component>
-<component name="connectionmonitoringnview" long-name="Connection View" introduced="^4">
+<component name="connectionmonitoringnview" long-name="Connection View" introduced="^4" purpose="optional">
<unit bldFile="mw/ipconnmgmt/connectionmonitoring/connectionview" proFile="connectionview.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="connectionutilities" long-name="Connection Utilities" level="utils">
-<component name="connectiondialogs" filter="s60" long-name="Connection Dialogs">
+<component name="connectiondialogs" long-name="Connection Dialogs" filter="s60" purpose="optional">
<unit bldFile="mw/ipconnmgmt/connectionutilities/connectiondialogs/group"/>
</component>
-<component name="confirmqueries" long-name="Confirm Queries" introduced="^4">
+<component name="confirmqueries" long-name="Confirm Queries" introduced="^4" purpose="optional">
<unit bldFile="mw/ipconnmgmt/connectionutilities/confirmqueries" proFile="confirmqueries.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="keepalive" long-name="Keep Alive" level="server">
-<component name="flextimer" filter="s60" long-name="Flex Timer" introduced="^4">
+<component name="flextimer" long-name="Flex Timer" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/ipconnmgmt/keepalive/flextimer/group"/>
</component>
</collection>
<collection name="dbcreator" long-name="DB Creator" level="utils">
-<component name="commsdatcreator" filter="s60" long-name="Comms Database Creator" introduced="9.3">
+<component name="commsdatcreator" long-name="Comms Database Creator" introduced="9.3" filter="s60" purpose="optional">
<unit bldFile="mw/ipconnmgmt/dbcreator/commsdatcreator/group"/>
</component>
-<component name="commsdatcreatorrfsplugin" filter="s60" long-name="Comms Database Creator RFS Plugin" introduced="9.3" plugin="Y">
+<component name="commsdatcreatorrfsplugin" long-name="Comms Database Creator RFS Plugin" introduced="9.3" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/ipconnmgmt/dbcreator/commsdatcreatorrfsplugin/group"/>
</component>
-<component name="commsdatstartup" filter="s60" long-name="Comms Database Startup" introduced="9.3">
+<component name="commsdatstartup" long-name="Comms Database Startup" introduced="9.3" filter="s60" purpose="optional">
<unit bldFile="mw/ipconnmgmt/dbcreator/commsdatstartup/group"/>
</component>
-<component name="dbcreatorexe" filter="s60" long-name="DB Creator" introduced="9.3">
+<component name="dbcreatorexe" long-name="DB Creator" introduced="9.3" filter="s60" purpose="optional">
<unit bldFile="mw/ipconnmgmt/dbcreator/dbcreatorexe/group"/>
</component>
-<component name="dbcreator_build" filter="s60" long-name="DB Creator Build" introduced="9.3">
+<component name="dbcreator_build" long-name="DB Creator Build" introduced="9.3" filter="s60" purpose="optional">
<!-- move exports to another component, this is needed for the #ifndef for commsdatcreatorrfsplugin until configuration is in place-->
<unit bldFile="mw/ipconnmgmt/dbcreator/group"/>
</component>
</collection>
<collection name="ipconnmgmt_info" long-name="IP Connectivity Management Info" level="api">
-<component name="ipcm_build" filter="s60" long-name="IP Connectivity Management Build">
+<component name="ipcm_build" long-name="IP Connectivity Management Build" filter="s60" purpose="optional">
<!-- need to move exports to another component, or make this a config component and revmove the #includes -->
<unit bldFile="mw/ipconnmgmt/group"/>
</component>
</collection>
</block>
-<block name="netprotocols" level="generic" long-name="High-level Internet Protocols" levels="plugin framework server generic specific">
+<block name="netprotocols" level="generic" levels="plugin framework server generic specific" long-name="High-level Internet Protocols">
<collection name="netprotocols_plat" long-name="High-level Internet Protocols Platform Interfaces" level="specific">
-<component name="cookie_manager_api" long-name="Cookie Manager API" filter="s60" class="api">
+<component name="cookie_manager_api" long-name="Cookie Manager API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/netprotocols/netprotocols_plat/cookie_manager_api/group"/>
</component>
-<component name="http_cache_mgr_api" long-name="HTTP Cache Manager API" filter="s60" class="api">
+<component name="http_cache_mgr_api" long-name="HTTP Cache Manager API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/netprotocols/netprotocols_plat/http_cache_mgr_api/group"/>
</component>
-<component name="http_filters_api" long-name="HTTP Filters API" filter="s60" class="api">
+<component name="http_filters_api" long-name="HTTP Filters API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/netprotocols/netprotocols_plat/http_filters_api/group"/>
</component>
</collection>
<collection name="httpfilters" long-name="HTTP Filters" level="plugin">
-<component name="httpfiltercommon" filter="s60" long-name="HTTP Filter Common">
+<component name="httpfiltercommon" long-name="HTTP Filter Common" filter="s60" purpose="optional">
<unit bldFile="mw/netprotocols/httpfilters/httpfiltercommon/group"/>
</component>
-<component name="cookie" filter="s60" long-name="Cookie Filter" plugin="Y">
+<component name="cookie" long-name="Cookie Filter" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/netprotocols/httpfilters/cookie/group"/>
</component>
-<component name="deflatefilter" filter="s60" long-name="Deflate Filter" plugin="Y">
+<component name="deflatefilter" long-name="Deflate Filter" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/netprotocols/httpfilters/deflatefilter/group"/>
</component>
-<component name="httpfilterauthentication" filter="s60" long-name="Authentication Filter" plugin="Y">
+<component name="httpfilterauthentication" long-name="Authentication Filter" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/netprotocols/httpfilters/httpfilterauthentication/group"/>
</component>
-<component name="httpfilterconnhandler" filter="s60" long-name="Connection Handler Fitler" plugin="Y">
+<component name="httpfilterconnhandler" long-name="Connection Handler Fitler" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/netprotocols/httpfilters/httpfilterconnhandler/group"/>
</component>
-<component name="httpfilteriop" filter="s60" long-name="HTTP IOP Filter" plugin="Y">
+<component name="httpfilteriop" long-name="HTTP IOP Filter" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/netprotocols/httpfilters/httpfilteriop/group"/>
</component>
-<component name="httpfilterproxy" filter="s60" long-name="HTTP Proxy Filter" plugin="Y">
+<component name="httpfilterproxy" long-name="HTTP Proxy Filter" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/netprotocols/httpfilters/httpfilterproxy/group"/>
</component>
</collection>
@@ -3742,20 +3753,20 @@
</component>
</collection>
</block>
-<block name="ipappprotocols" level="generic" long-name="IP App Protocols" levels="plugin conn server if">
+<block name="ipappprotocols" level="generic" levels="plugin conn server if" long-name="IP App Protocols">
<collection name="ipappprotocols_plat" long-name="IP App Protocols Platform Interfaces" level="if">
-<component name="srtp_api" long-name="SRTP API" filter="s60" class="api">
+<component name="srtp_api" long-name="SRTP API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipappprotocols/ipappprotocols_plat/srtp_api/group"/>
</component>
-<component name="rtprtcp_api" long-name="RTP/RTCP API" filter="s60" class="api">
+<component name="rtprtcp_api" long-name="RTP/RTCP API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipappprotocols/ipappprotocols_plat/rtprtcp_api/group"/>
</component>
</collection>
<collection name="rtp" long-name="RTP" level="server">
-<component name="srtpstack" filter="s60" long-name="SRTP Stack">
+<component name="srtpstack" long-name="SRTP Stack" filter="s60" purpose="optional">
<unit bldFile="mw/ipappprotocols/rtp/srtpstack/group"/>
</component>
-<component name="rtpstack" filter="s60" long-name="RTP Stack">
+<component name="rtpstack" long-name="RTP Stack" filter="s60" purpose="optional">
<unit bldFile="mw/ipappprotocols/rtp/rtpstack/group"/>
</component>
</collection>
@@ -3769,19 +3780,19 @@
</component>
</collection>
<collection name="sipplugins" long-name="SIP Plugins" level="plugin">
-<component name="sippwlanplugin" filter="s60" long-name="SIP WLAN Plugin" plugin="Y">
+<component name="sippwlanplugin" long-name="SIP WLAN Plugin" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/ipappprotocols/sipplugins/sippwlanplugin/group"/>
</component>
-<component name="sippsipsettingsui" filter="s60" long-name="SIP Settings UI" plugin="Y" class="placeholder">
+<component name="sippsipsettingsui" long-name="SIP Settings UI" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!--<unit bldFile="sipplugins/sippsipsettingsui/group"/> -->
</component>
-<component name="sippdevmgmtsipadapter" filter="s60" long-name="Device Management SIP Settings Adapter" plugin="Y">
+<component name="sippdevmgmtsipadapter" long-name="Device Management SIP Settings Adapter" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/ipappprotocols/sipplugins/sippdevmgmtsipadapter/group"/>
</component>
-<component name="sippsystemstatemonitor" filter="s60" long-name="SIP System State Monitor" plugin="Y">
+<component name="sippsystemstatemonitor" long-name="SIP System State Monitor" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/ipappprotocols/sipplugins/sippsystemstatemonitor/group"/>
</component>
-<component name="sippsipadapter" filter="s60" long-name="SIP Adapter" introduced="^3" plugin="Y">
+<component name="sippsipadapter" long-name="SIP Adapter" introduced="^3" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/ipappprotocols/sipplugins/sippsipadapter/group"/>
</component>
</collection>
@@ -3796,401 +3807,401 @@
</component>
</collection>
</block>
-<block name="wirelessacc" level="specific" long-name="Wireless Access" levels="framework generic ui">
+<block name="wirelessacc" level="specific" levels="framework generic ui" long-name="Wireless Access">
<collection name="hsfw_plat" long-name="HotSpot Framework Platform Interfaces" level="ui">
-<component name="hotspot_framework_client_api" long-name="HotSpot Framework Client API" filter="s60" class="api">
+<component name="hotspot_framework_client_api" long-name="HotSpot Framework Client API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/wirelessacc/hsfw_plat/hotspot_framework_client_api/group"/>
</component>
-<component name="internet_connectivity_test_service_api" long-name="Internet Connectivity Test Service API" filter="s60" class="api">
+<component name="internet_connectivity_test_service_api" long-name="Internet Connectivity Test Service API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/wirelessacc/hsfw_plat/internet_connectivity_test_service_api/group"/>
</component>
-<component name="internet_connectivity_test_service_settings_api" long-name="Internet Connectivity Test Service Settings API" filter="s60" class="api">
+<component name="internet_connectivity_test_service_settings_api" long-name="Internet Connectivity Test Service Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/wirelessacc/hsfw_plat/internet_connectivity_test_service_settings_api/group"/>
</component>
-<component name="hotspot_framework_client_plugin_api" long-name="HotSpot Framework Client Plugin API" filter="s60" class="api">
+<component name="hotspot_framework_client_plugin_api" long-name="HotSpot Framework Client Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/wirelessacc/hsfw_plat/hotspot_framework_client_plugin_api/group"/>
</component>
</collection>
<collection name="hotspotfw" long-name="HotSpot Framework" level="framework">
<!-- collection is really a component. Needs to move down a dir -->
-<component name="hotspotfw_build" filter="s60" long-name="HotSpot Framework Build">
+<component name="hotspotfw_build" long-name="HotSpot Framework Build" filter="s60" purpose="optional">
<unit bldFile="mw/wirelessacc/hotspotfw/group"/>
</component>
</collection>
<collection name="wlanutilities" long-name="WLAN Utilities" level="generic">
-<component name="wlanqtutilities" filter="s60" long-name="WLAN Qt Utilities" introduced="^4">
+<component name="wlanqtutilities" long-name="WLAN Qt Utilities" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/wirelessacc/wlanutilities/wlanqtutilities" proFile="wlanqtutilities.pro" qmakeArgs="-r"/>
</component>
-<component name="eapwizard " filter="s60" long-name="EAP Wizard" introduced="^4">
+<component name="eapwizard" long-name="EAP Wizard" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/wirelessacc/wlanutilities/eapwizard" proFile="eapwizard.pro" qmakeArgs="-r"/>
</component>
-<component name="wpswizard " filter="s60" long-name="WPS Wizard" introduced="^4">
+<component name="wpswizard" long-name="WPS Wizard" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/wirelessacc/wlanutilities/wpswizard" proFile="wpswizard.pro" qmakeArgs="-r"/>
</component>
-<component name="wlanwizard " filter="s60" long-name="WLAN Wizard" introduced="^4">
+<component name="wlanwizard" long-name="WLAN Wizard" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/wirelessacc/wlanutilities/wlanwizard" proFile="wlanwizard.pro" qmakeArgs="-r"/>
</component>
-<component name="wlansniffer" filter="s60" long-name="WLAN Sniffer">
+<component name="wlansniffer" long-name="WLAN Sniffer" filter="s60" purpose="optional">
<unit bldFile="mw/wirelessacc/wlanutilities/wlansniffer" proFile="wlansniffer.pro" qmakeArgs="-r"/>
</component>
-<component name="wlanentryplugin" filter="s60" long-name="WLAN Entry Plugin" plugin="Y">
+<component name="wlanentryplugin" long-name="WLAN Entry Plugin" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/wirelessacc/wlanutilities/wlanentryplugin" proFile="wlanentryplugin.pro" qmakeArgs="-r"/>
</component>
-<component name="wlanindicatorplugin" filter="s60" long-name="WLAN Indicator Plugin" plugin="Y">
+<component name="wlanindicatorplugin" long-name="WLAN Indicator Plugin" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/wirelessacc/wlanutilities/wlanindicatorplugin" proFile="wlanindicatorplugin.pro" qmakeArgs="-r"/>
</component>
-<component name="cpwlansettingsplugin" filter="s60" long-name="WLAN Settings Control Panel Plugin" introduced="^4" plugin="Y">
+<component name="cpwlansettingsplugin" long-name="WLAN Settings Control Panel Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/wirelessacc/wlanutilities/cpwlansettingsplugin" proFile="cpwlansettingsplugin.pro" qmakeArgs="-r"/>
</component>
-<component name="wlanlogin" filter="s60" long-name="WLAN Login" introduced="^4">
+<component name="wlanlogin" long-name="WLAN Login" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/wirelessacc/wlanutilities/wlanlogin" proFile="wlanlogin.pro" qmakeArgs="-r"/>
</component>
</collection>
</block>
-<block name="vpnclient" level="specific" long-name="VPN Client" levels="engine ui api">
+<block name="vpnclient" level="specific" levels="engine ui api" long-name="VPN Client">
<collection name="vpnc_plat" long-name="VPN Client Platform Interfaces" level="api">
-<component name="vpnapi" filter="s60" long-name="VPN API" class="api">
+<component name="vpnapi" long-name="VPN API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/vpnclient/vpnc_plat/vpnapi/group"/>
</component>
</collection>
<collection name="vpnapiimpl" long-name="VPN API Implementation" level="engine">
-<component name="vpnapi_impl" filter="s60" long-name="VPN Implementation">
+<component name="vpnapi_impl" long-name="VPN Implementation" filter="s60" purpose="optional">
<unit bldFile="mw/vpnclient/vpnapiimpl/group"/>
</component>
</collection>
</block>
-<block name="ipappsrv" level="specific" long-name="IP App Services" levels="framework generic server conn plugin">
+<block name="ipappsrv" level="specific" levels="framework generic server conn plugin" long-name="IP App Services">
<collection name="ipappsrv_plat" long-name="IP App Services Platform Interfaces" level="plugin">
-<component name="transcoder_api" long-name="Transcoder API" filter="s60" class="api">
+<component name="transcoder_api" long-name="Transcoder API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipappsrv/ipappsrv_plat/transcoder_api/group"/>
</component>
-<component name="comms_event_api" long-name="Comms Event API" filter="s60" class="api">
+<component name="comms_event_api" long-name="Comms Event API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipappsrv/ipappsrv_plat/comms_event_api/group"/>
</component>
-<component name="floor_control_api" long-name="Floor Control API" filter="s60" class="api">
+<component name="floor_control_api" long-name="Floor Control API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipappsrv/ipappsrv_plat/floor_control_api/group"/>
</component>
-<component name="media_control_api" long-name="Media Control API" filter="s60" class="api">
+<component name="media_control_api" long-name="Media Control API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipappsrv/ipappsrv_plat/media_control_api/group"/>
</component>
-<component name="multimedia_comms_api" long-name="Multimedia Comms API" filter="s60" class="api">
+<component name="multimedia_comms_api" long-name="Multimedia Comms API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipappsrv/ipappsrv_plat/multimedia_comms_api/group"/>
</component>
-<component name="nat_settings_api" long-name="NAT Settings API" filter="s60" class="api">
+<component name="nat_settings_api" long-name="NAT Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/ipappsrv/ipappsrv_plat/nat_settings_api/group"/>
</component>
</collection>
<collection name="natfw" long-name="NAT Framework" level="framework">
<!-- collection is really a component. Need to move down a directory -->
-<component name="natfw_build" filter="s60" long-name="NAT Framework Build" introduced="^2">
+<component name="natfw_build" long-name="NAT Framework Build" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/ipappsrv/natfw/group"/>
</component>
</collection>
<collection name="multimediacommscontroller" long-name="Multimedia Comms Controller" level="conn">
<!-- collection is really a component. Need to move down a directory -->
-<component name="multimediacommscontroller_build" filter="s60" long-name="Multimedia Comms Controller Build">
+<component name="multimediacommscontroller_build" long-name="Multimedia Comms Controller Build" filter="s60" purpose="optional">
<unit bldFile="mw/ipappsrv/multimediacommscontroller/group"/>
</component>
</collection>
<collection name="multimediacommsengine" long-name="Multimedia Comms Engine" level="generic">
<!-- collection is really a component. Need to move down a directory -->
-<component name="multimediacommsengine_build" filter="s60" long-name="Multimedia Comms Engine Build">
+<component name="multimediacommsengine_build" long-name="Multimedia Comms Engine Build" filter="s60" purpose="optional">
<unit bldFile="mw/ipappsrv/multimediacommsengine/group"/>
</component>
</collection>
<collection name="natplugins" long-name="NAT Plugins" level="plugin">
-<component name="natpcliprovisioningnatfwadapter" filter="s60" long-name="Client Provisioning NAT Framework Traversal Adapter" introduced="^2" plugin="Y">
+<component name="natpcliprovisioningnatfwadapter" long-name="Client Provisioning NAT Framework Traversal Adapter" introduced="^2" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/ipappsrv/natplugins/natpcliprovisioningnatfwadapter/group"/>
</component>
-<component name="natpdevmgmtnatfwadapter" filter="s60" long-name="Device Management NAT Framework Traversal Adapter" plugin="Y">
+<component name="natpdevmgmtnatfwadapter" long-name="Device Management NAT Framework Traversal Adapter" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/ipappsrv/natplugins/natpdevmgmtnatfwadapter/group"/>
</component>
-<component name="natptraversalcontroller" filter="s60" long-name="NAT Traversal Controller" plugin="Y">
+<component name="natptraversalcontroller" long-name="NAT Traversal Controller" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/ipappsrv/natplugins/natptraversalcontroller/group"/>
</component>
-<component name="natpnatfwsdpprovider" filter="s60" long-name="NAT Framework SDP Provider" plugin="Y">
+<component name="natpnatfwsdpprovider" long-name="NAT Framework SDP Provider" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/ipappsrv/natplugins/natpnatfwsdpprovider/group"/>
</component>
</collection>
<collection name="ipappsrv_info" long-name="IP App Services Info" level="plugin">
-<component name="ipappsrv_build" long-name="IP App Services Build" filter="s60">
+<component name="ipappsrv_build" long-name="IP App Services Build" filter="s60" purpose="optional">
<!-- remove the #includes from here and rename as xxx ROM or move iby/sis files into another component-->
<unit mrp="mw/ipappsrv/group"/>
</component>
</collection>
</block>
-<block name="phonesrv" level="specific" long-name="Telephony and SIM Services" levels="utils framework server ui specific">
+<block name="phonesrv" level="specific" levels="utils framework server ui specific" long-name="Telephony and SIM Services">
<collection name="phonesrv_plat" long-name="Telephony and SIM Services Platform Interfaces" level="specific">
-<component name="string_parser_api" long-name="String Parser API" filter="s60" class="api">
+<component name="string_parser_api" long-name="String Parser API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/string_parser_api/group"/>
</component>
-<component name="cbs_mcn_client_api" long-name="CBS MCN Client API" filter="s60" class="api">
+<component name="cbs_mcn_client_api" long-name="CBS MCN Client API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/cbs_mcn_client_api/group"/>
</component>
-<component name="converged_call_engine_api" long-name="Converged Call Engine API" filter="s60" class="api">
+<component name="converged_call_engine_api" long-name="Converged Call Engine API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/converged_call_engine_api/group"/>
</component>
-<component name="aiw_dial_data_consumer_api" long-name="AIW Dial Data Consumer API" filter="s60" class="api">
+<component name="aiw_dial_data_consumer_api" long-name="AIW Dial Data Consumer API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/aiw_dial_data_consumer_api/group"/>
</component>
-<component name="phone_client_ussd_api" long-name="Phone Client USSD API" filter="s60" class="api">
+<component name="phone_client_ussd_api" long-name="Phone Client USSD API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/phone_client_ussd_api/group"/>
</component>
-<component name="sat_refresh_api" long-name="SAT Refresh API" filter="s60" class="api">
+<component name="sat_refresh_api" long-name="SAT Refresh API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/sat_refresh_api/group" filter="!test"/>
</component>
-<component name="network_handling_engine_api" long-name="Network Handling Engine API" filter="s60" class="api">
+<component name="network_handling_engine_api" long-name="Network Handling Engine API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/network_handling_engine_api/group"/>
</component>
-<component name="phone_client_emergency_call_api" long-name="Phone Client Emergency Call API" filter="s60" class="api">
+<component name="phone_client_emergency_call_api" long-name="Phone Client Emergency Call API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/phone_client_emergency_call_api/group"/>
</component>
-<component name="sat_configuration_api" long-name="SAT Configuration API" filter="s60" class="api">
+<component name="sat_configuration_api" long-name="SAT Configuration API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/sat_configuration_api/group"/>
</component>
-<component name="dial_utils_api" long-name="Dial Utils API" filter="s60" class="api">
+<component name="dial_utils_api" long-name="Dial Utils API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/dial_utils_api/group"/>
</component>
-<component name="phone_client_image_handler_api" long-name="Phone Client Image Handler API" filter="s60" class="api">
+<component name="phone_client_image_handler_api" long-name="Phone Client Image Handler API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/phone_client_image_handler_api/group"/>
</component>
-<component name="phone_client_messenger_api" long-name="Phone Client Messenger API" filter="s60" class="api">
+<component name="phone_client_messenger_api" long-name="Phone Client Messenger API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/phone_client_messenger_api/group"/>
</component>
-<component name="sat_client_api" long-name="SAT Client API" filter="s60" class="api">
+<component name="sat_client_api" long-name="SAT Client API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/sat_client_api/group" filter="!test"/>
</component>
-<component name="phone_client_api" long-name="Phone Client API" filter="s60" class="api">
+<component name="phone_client_api" long-name="Phone Client API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/phone_client_api/group"/>
</component>
-<component name="sat_service_api" long-name="SAT Service API" filter="s60" class="api">
+<component name="sat_service_api" long-name="SAT Service API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/sat_service_api/group" filter="!test"/>
</component>
-<component name="cbs_message_api" long-name="CBS Message API" filter="s60" class="api">
+<component name="cbs_message_api" long-name="CBS Message API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/cbs_message_api/group"/>
</component>
-<component name="phone_client_server_information_api" long-name="Phone Client Server Information API" filter="s60" class="api">
+<component name="phone_client_server_information_api" long-name="Phone Client Server Information API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/phone_client_server_information_api/group"/>
</component>
-<component name="phone_client_ussd_internal_api" long-name="Phone Client USSD Internal API" filter="s60" class="api">
+<component name="phone_client_ussd_internal_api" long-name="Phone Client USSD Internal API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/phone_client_ussd_internal_api/group"/>
</component>
-<component name="phone_client_command_handler_api" long-name="Phone Client Command Handler API" filter="s60" class="api">
+<component name="phone_client_command_handler_api" long-name="Phone Client Command Handler API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/phone_client_command_handler_api/group"/>
</component>
-<component name="phone_client_notify_api" long-name="Phone Client Notify API" filter="s60" class="api">
+<component name="phone_client_notify_api" long-name="Phone Client Notify API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/phone_client_notify_api/group"/>
</component>
-<component name="phone_client_utility_api" long-name="Phone Client Utility API" filter="s60" class="api">
+<component name="phone_client_utility_api" long-name="Phone Client Utility API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/phone_client_utility_api/group"/>
</component>
-<component name="telephony_network_information_api" long-name="Telephony Network Information API" filter="s60" class="api">
+<component name="telephony_network_information_api" long-name="Telephony Network Information API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/telephony_network_information_api/group"/>
</component>
-<component name="secondary_display_sat_api" long-name="Secondary Display SAT API" filter="s60" class="api">
+<component name="secondary_display_sat_api" long-name="Secondary Display SAT API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/secondary_display_sat_api/group"/>
</component>
-<component name="callui_reconnect_query_api" long-name="CallUI Reconnect Query API" filter="s60" class="api">
+<component name="callui_reconnect_query_api" long-name="CallUI Reconnect Query API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/callui_reconnect_query_api/group"/>
</component>
-<component name="service_provider_settings_api" long-name="Service Provider Settings API" filter="s60" class="api">
+<component name="service_provider_settings_api" long-name="Service Provider Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/service_provider_settings_api/group"/>
</component>
-<component name="converged_call_provider_api" long-name="Converged Call Provider API" filter="s60" class="api">
+<component name="converged_call_provider_api" long-name="Converged Call Provider API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/converged_call_provider_api/group"/>
</component>
-<component name="incoming_call_monitor_api" long-name="Incoming Call Monitor API" filter="s60" class="api">
+<component name="incoming_call_monitor_api" long-name="Incoming Call Monitor API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/incoming_call_monitor_api/group"/>
</component>
-<component name="default_emergency_numbers_api" long-name="Default Emergency Numbers API" filter="s60" class="api">
+<component name="default_emergency_numbers_api" long-name="Default Emergency Numbers API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/default_emergency_numbers_api/group"/>
</component>
-<component name="cenrep_database_api" long-name="Central Repository Database API" filter="s60" class="api">
+<component name="cenrep_database_api" long-name="Central Repository Database API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/cenrep_database_api/group"/>
</component>
-<component name="ss_settings_api" long-name="SS Settings API" filter="s60" class="api">
+<component name="ss_settings_api" long-name="SS Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/ss_settings_api/group"/>
</component>
-<component name="phone_settings_observer_api" long-name="Phone Settings Observer API" filter="s60" class="api">
+<component name="phone_settings_observer_api" long-name="Phone Settings Observer API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/phone_settings_observer_api/group"/>
</component>
-<component name="phone_settings_notes_ui_api" long-name="Phone Settings Notes UI API" filter="s60" class="api">
+<component name="phone_settings_notes_ui_api" long-name="Phone Settings Notes UI API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/phone_settings_notes_ui_api/group"/>
</component>
-<component name="phone_settings_api" long-name="Phone Settings API" filter="s60" class="api">
+<component name="phone_settings_api" long-name="Phone Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/phone_settings_api/group"/>
</component>
-<component name="voice_mailbox_number_api" long-name="Voice Mailbox Number API" filter="s60" class="api">
+<component name="voice_mailbox_number_api" long-name="Voice Mailbox Number API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/voice_mailbox_number_api/group"/>
</component>
-<component name="voice_mailbox_settings_api" long-name="Voice Mailbox Settings API" filter="s60" class="api">
+<component name="voice_mailbox_settings_api" long-name="Voice Mailbox Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/voice_mailbox_settings_api/group"/>
</component>
-<component name="call_information_api" long-name="Call Information API" filter="s60" class="api">
+<component name="call_information_api" long-name="Call Information API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/call_information_api/group" filter="!test"/>
</component>
-<component name="call_remote_party_information_api" long-name="Call Remote Party Information API" filter="s60" class="api">
+<component name="call_remote_party_information_api" long-name="Call Remote Party Information API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/call_remote_party_information_api/group" filter="!test"/>
</component>
-<component name="telephony_mediator_api" long-name="Telephony Mediator API" filter="s60" class="api">
+<component name="telephony_mediator_api" long-name="Telephony Mediator API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/telephony_mediator_api/group" filter="!test"/>
</component>
-<component name="dialpad_api" long-name="Dialpad API" filter="s60" introduced="^4" class="api">
+<component name="dialpad_api" long-name="Dialpad API" introduced="^4" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/dialpad_api/group"/>
</component>
-<component name="phone_settings_ui_notes_api" long-name="Phone Settings UI Notes API" filter="s60" introduced="^4" class="api">
+<component name="phone_settings_ui_notes_api" long-name="Phone Settings UI Notes API" introduced="^4" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/phonesrv/phonesrv_plat/phone_settings_ui_notes_api/group"/>
</component>
</collection>
<collection name="telutils" long-name="Telephony Utils" level="utils">
-<component name="phoneparser" filter="s60" long-name="Phone Parser">
+<component name="phoneparser" long-name="Phone Parser" filter="s60" purpose="optional">
<unit bldFile="mw/phonesrv/telutils/phoneparser/group"/>
</component>
-<component name="telephonyservice" filter="s60" long-name="Telephony Service">
+<component name="telephonyservice" long-name="Telephony Service" filter="s60" purpose="optional">
<unit bldFile="mw/phonesrv/telutils/telephonyservice/group"/>
</component>
-<component name="xqtelephonyservice" filter="s60" long-name="X Qt Telephony Service" introduced="^4">
+<component name="xqtelephonyservice" long-name="X Qt Telephony Service" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/phonesrv/telutils/xqtelephonyservice" proFile="xqtelephonyservice.pro"/>
</component>
-<component name="dialpad" filter="s60" long-name="Dial Pad" introduced="^4">
+<component name="dialpad" long-name="Dial Pad" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/phonesrv/telutils/dialpad" proFile="dialpad.pro"/>
</component>
-<component name="keysequencerecognitionservice" filter="s60" long-name="Key Sequence Recognition Service" introduced="^4">
+<component name="keysequencerecognitionservice" long-name="Key Sequence Recognition Service" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/phonesrv/telutils/keysequencerecognitionservice" proFile="keysequencerecognitionservice.pro"/>
</component>
</collection>
<collection name="cbs" long-name="Cellular Baseband Services" level="utils">
-<component name="cbsserver" filter="s60" long-name="CBS Server">
+<component name="cbsserver" long-name="CBS Server" filter="s60" purpose="optional">
<unit bldFile="mw/phonesrv/cbs/cbsserver/group"/>
</component>
</collection>
<collection name="cellular" long-name="Cellular" level="server">
-<component name="telephonysettings" filter="s60" long-name="Telephony Settings" purpose="development">
+<component name="telephonysettings" long-name="Telephony Settings" filter="s60" purpose="development">
<unit bldFile="mw/phonesrv/cellular/telephonysettings/group" filter="!test"/>
</component>
-<component name="psetwrapper" filter="s60" long-name="Provider Settings Wrapper" introduced="^4">
+<component name="psetwrapper" long-name="Provider Settings Wrapper" introduced="^4" filter="s60" purpose="optional">
<!-- need to move to own component, not under sssettings -->
<unit bldFile="mw/phonesrv/cellular/telephonysettings/xqbindings/psetwrapper" proFile="psetwrapper.pro"/>
</component>
-<component name="sssettings" filter="s60" long-name="Supplementary Service Settings" purpose="development">
+<component name="sssettings" long-name="Supplementary Service Settings" filter="s60" purpose="development">
<unit bldFile="mw/phonesrv/cellular/sssettings/group" filter="!test"/>
</component>
-<component name="sssettingswrapper" filter="s60" long-name="Supplementary Service Settings Wrapper" introduced="^4">
+<component name="sssettingswrapper" long-name="Supplementary Service Settings Wrapper" introduced="^4" filter="s60" purpose="optional">
<!-- need to move to own component, not under sssettings -->
<unit bldFile="mw/phonesrv/cellular/sssettings/xqbindings/sssettingswrapper" proFile="sssettingswrapper.pro"/>
</component>
-<component name="psetnotesui" filter="s60" long-name="Phone Settings Notes UI" purpose="development">
+<component name="psetnotesui" long-name="Phone Settings Notes UI" filter="s60" purpose="development">
<unit bldFile="mw/phonesrv/cellular/psetnotesui/group" filter="!test"/>
</component>
-<component name="psuinotes" filter="s60" long-name="Phone Settings Notes UI" introduced="^4">
+<component name="psuinotes" long-name="Phone Settings Notes UI" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/phonesrv/cellular/psuinotes" proFile="psuinotes.pro"/>
</component>
-<component name="servicerequest" filter="s60" long-name="Service Request">
+<component name="servicerequest" long-name="Service Request" filter="s60" purpose="optional">
<unit bldFile="mw/phonesrv/cellular/servicerequest/group"/>
</component>
</collection>
<collection name="convergedcallengine" long-name="Converged Call Engine" level="framework">
-<component name="callprovider" filter="s60" long-name="Call Provider">
+<component name="callprovider" long-name="Call Provider" filter="s60" purpose="optional">
<unit bldFile="mw/phonesrv/convergedcallengine/callprovider/group"/>
</component>
-<component name="cce" filter="s60" long-name="CCE">
+<component name="cce" long-name="CCE" filter="s60" purpose="optional">
<unit bldFile="mw/phonesrv/convergedcallengine/cce/group" filter="!test"/>
</component>
-<component name="spsettings" filter="s60" long-name="Service Provider Settings">
+<component name="spsettings" long-name="Service Provider Settings" filter="s60" purpose="optional">
<unit bldFile="mw/phonesrv/convergedcallengine/spsettings/group" filter="!test"/>
</component>
-<component name="cenrepdatabase" filter="s60" long-name="CCE Cenrep Database">
+<component name="cenrepdatabase" long-name="CCE Cenrep Database" filter="s60" purpose="optional">
<unit bldFile="mw/phonesrv/convergedcallengine/cenrepdatabase/group"/>
</component>
-<component name="serviceselector" filter="s60" long-name="Service Selector">
+<component name="serviceselector" long-name="Service Selector" filter="s60" purpose="optional">
<unit bldFile="mw/phonesrv/convergedcallengine/serviceselector/group"/>
</component>
</collection>
<collection name="networkhandling" long-name="Network Handling" level="framework">
-<component name="networkhandlingengine" filter="s60" long-name="Network Handling Engine">
+<component name="networkhandlingengine" long-name="Network Handling Engine" filter="s60" purpose="optional">
<unit bldFile="mw/phonesrv/networkhandling/networkhandlingengine/group"/>
</component>
</collection>
<collection name="phoneclientserver" long-name="Phone Client/Server" level="server">
-<component name="enpolicy" filter="s60" long-name="Emergency Number Policy">
+<component name="enpolicy" long-name="Emergency Number Policy" filter="s60" purpose="optional">
<unit bldFile="mw/phonesrv/phoneclientserver/enpolicy/group"/>
</component>
-<component name="aiwdialdata" filter="s60" long-name="AIW Dial Data">
+<component name="aiwdialdata" long-name="AIW Dial Data" filter="s60" purpose="optional">
<unit bldFile="mw/phonesrv/phoneclientserver/aiwdialdata/group" filter="!test"/>
</component>
-<component name="dialutils" filter="s60" long-name="Dial Utils">
+<component name="dialutils" long-name="Dial Utils" filter="s60" purpose="optional">
<unit bldFile="mw/phonesrv/phoneclientserver/dialutils/group" filter="!test"/>
</component>
-<component name="phoneclient" filter="s60" long-name="Phone Client">
+<component name="phoneclient" long-name="Phone Client" filter="s60" purpose="optional">
<unit bldFile="mw/phonesrv/phoneclientserver/phoneclient/group" filter="!test"/>
</component>
-<component name="phoneserver" filter="s60" long-name="Phone Server">
+<component name="phoneserver" long-name="Phone Server" filter="s60" purpose="optional">
<unit bldFile="mw/phonesrv/phoneclientserver/phoneserver/group"/>
</component>
</collection>
<collection name="phonecmdhandler" long-name="Phone Command Handler" level="generic">
-<component name="phonecmdhnlr" filter="s60" long-name="Phone Command Handler">
+<component name="phonecmdhnlr" long-name="Phone Command Handler" filter="s60" purpose="optional">
<unit bldFile="mw/phonesrv/phonecmdhandler/phonecmdhnlr/group"/>
</component>
</collection>
<collection name="satengine" long-name="SAT Engine" level="server">
-<component name="satserver" filter="s60" long-name="SAT Server">
+<component name="satserver" long-name="SAT Server" filter="s60" purpose="optional">
<unit bldFile="mw/phonesrv/satengine/satserver/group"/>
</component>
</collection>
<collection name="satui" long-name="SAT UI" level="ui">
-<component name="satshellcontroller" filter="s60" long-name="SAT Shell Controller">
+<component name="satshellcontroller" long-name="SAT Shell Controller" filter="s60" purpose="optional">
<unit bldFile="mw/phonesrv/satui/satshellcontroller/group"/>
</component>
-<component name="satapp" filter="s60" long-name="SAT Application" introduced="^4">
+<component name="satapp" long-name="SAT Application" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/phonesrv/satui/satapp" proFile="satapp.pro"/>
</component>
</collection>
<collection name="vmbx" long-name="Voice Mailbox" level="ui">
-<component name="vmbxcpplugin" filter="s60" long-name="Voice Mailbox CP Plugin" introduced="^4" plugin="Y">
+<component name="vmbxcpplugin" long-name="Voice Mailbox CP Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/phonesrv/vmbx/vmbxcpplugin" proFile="vmbxcpplugin.pro"/>
</component>
-<component name="vmbxengine" filter="s60" long-name="Voice Mailbox Engine" introduced="^4">
+<component name="vmbxengine" long-name="Voice Mailbox Engine" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/phonesrv/vmbx/vmbxengine" proFile="vmbxengine.pro"/>
</component>
</collection>
</block>
-<block name="messagingmw" level="specific" long-name="Messaging Middleware" levels="stack support fw api">
+<block name="messagingmw" level="specific" levels="stack support fw api" long-name="Messaging Middleware">
<collection name="msgfw_plat" long-name="Messaging Middleware Platform Interfaces" level="api">
-<component name="always_online_plugin_api" long-name="Always Online Plugin API" filter="s60" class="api">
+<component name="always_online_plugin_api" long-name="Always Online Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/messagingmw/msgfw_plat/always_online_plugin_api/group"/>
</component>
-<component name="always_online_client_api" long-name="Always Online Client API" filter="s60" class="api">
+<component name="always_online_client_api" long-name="Always Online Client API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/messagingmw/msgfw_plat/always_online_client_api/group"/>
</component>
-<component name="msg_common_utils_api" long-name="Messaging Common Utils API" filter="s60" class="api">
+<component name="msg_common_utils_api" long-name="Messaging Common Utils API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/messagingmw/msgfw_plat/msg_common_utils_api/group"/>
</component>
-<component name="muiu_utils_api" long-name="Messaging Center UI Utilities API" filter="s60" introduced="^4" class="api">
+<component name="muiu_utils_api" long-name="Messaging Center UI Utilities API" introduced="^4" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/messagingmw/msgfw_plat/muiu_utils_api/group"/>
</component>
</collection>
<collection name="messagingfw" long-name="Messaging Framework" level="fw">
<!-- should break this collection up into smaller related collections -->
-<component name="send_ui_api" long-name="Send UI API" filter="s60" deprecated="^4" class="api">
+<component name="send_ui_api" long-name="Send UI API" deprecated="^4" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/messagingmw/messagingfw/deprecate/send_ui_api/group"/>
</component>
-<component name="send_ui_plugin_api" long-name="Send UI Plug-in API" filter="s60" deprecated="^4" class="api">
+<component name="send_ui_plugin_api" long-name="Send UI Plug-in API" deprecated="^4" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/messagingmw/messagingfw/deprecate/send_ui_plugin_api/group"/>
</component>
-<component name="send_ui_datautils_api" long-name="Send UI Data Utils API" filter="s60" deprecated="^4" class="api">
+<component name="send_ui_datautils_api" long-name="Send UI Data Utils API" deprecated="^4" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/messagingmw/messagingfw/deprecate/send_ui_datautils_api/group"/>
</component>
-<component name="alwaysonline" filter="s60" long-name="Always Online Server" introduced="^2">
+<component name="alwaysonline" long-name="Always Online Server" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/messagingmw/messagingfw/alwaysonline/group"/>
</component>
-<component name="msgcommonutils" filter="s60" long-name="Messaging Common Utils" introduced="^2">
+<component name="msgcommonutils" long-name="Messaging Common Utils" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/messagingmw/messagingfw/msgcommonutils/group"/>
</component>
-<component name="senduiservices" filter="s60" long-name="Send UI Services" introduced="^2" deprecated="^4">
+<component name="senduiservices" long-name="Send UI Services" introduced="^2" deprecated="^4" filter="s60" purpose="optional">
<unit bldFile="mw/messagingmw/messagingfw/deprecate/senduiservices/group"/>
</component>
-<component name="muiuutils" long-name="Messaging Center UI Utilities" filter="s60" introduced="^4" class="api">
+<component name="muiuutils" long-name="Messaging Center UI Utilities" introduced="^4" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/messagingmw/messagingfw/muiuutils/group"/>
</component>
<component name="scheduledsendmtm" long-name="Scheduled Send MTM" introduced="6.0" purpose="optional" plugin="Y">
@@ -4233,347 +4244,347 @@
</component>
</collection>
</block>
-<block name="imsrv" level="specific" long-name="Instant Messaging and Presence Services" levels="plugin framework server generic specific">
+<block name="imsrv" level="specific" levels="plugin framework server generic specific" long-name="Instant Messaging and Presence Services">
<collection name="imsrv_plat" long-name="Instant Messaging and Presence Services Platform Interfaces" level="specific">
-<component name="ximp_core_data_model_api" long-name="XIMP Core Data Model API" filter="s60" class="api">
+<component name="ximp_core_data_model_api" long-name="XIMP Core Data Model API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_core_data_model_api/group"/>
</component>
-<component name="ximp_presence_protocol_plugin_host_api" long-name="XIMP Presence Protocol Plug-in Host API" filter="s60" class="api">
+<component name="ximp_presence_protocol_plugin_host_api" long-name="XIMP Presence Protocol Plug-in Host API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_presence_protocol_plugin_host_api/group"/>
</component>
-<component name="ximp_presence_data_model_api" long-name="XIMP Presence Data Model API" filter="s60" class="api">
+<component name="ximp_presence_data_model_api" long-name="XIMP Presence Data Model API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_presence_data_model_api/group"/>
</component>
-<component name="ximp_presence_protocol_plugin_api" long-name="XIMP Presence Protocol Plug-in API" filter="s60" class="api">
+<component name="ximp_presence_protocol_plugin_api" long-name="XIMP Presence Protocol Plug-in API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_presence_protocol_plugin_api/group"/>
</component>
-<component name="ximp_presence_management_api" long-name="XIMP Presence Management API" filter="s60" class="api">
+<component name="ximp_presence_management_api" long-name="XIMP Presence Management API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_presence_management_api/group"/>
</component>
-<component name="ximp_core_protocol_plugin_host_api" long-name="XIMP Core Protocol Plug-in Host API" filter="s60" class="api">
+<component name="ximp_core_protocol_plugin_host_api" long-name="XIMP Core Protocol Plug-in Host API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_core_protocol_plugin_host_api/group"/>
</component>
-<component name="ximp_core_management_api" long-name="XIMP Core Management API" filter="s60" class="api">
+<component name="ximp_core_management_api" long-name="XIMP Core Management API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_core_management_api/group"/>
</component>
-<component name="ximp_presence_base_api" long-name="XIMP Presence Base API" filter="s60" class="api">
+<component name="ximp_presence_base_api" long-name="XIMP Presence Base API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_presence_base_api/group"/>
</component>
-<component name="ximp_core_protocol_plugin_api" long-name="XIMP Core Protocol Plug-in API" filter="s60" class="api">
+<component name="ximp_core_protocol_plugin_api" long-name="XIMP Core Protocol Plug-in API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_core_protocol_plugin_api/group"/>
</component>
-<component name="ximp_core_base_api" long-name="XIMP Core Base API" filter="s60" class="api">
+<component name="ximp_core_base_api" long-name="XIMP Core Base API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_core_base_api/group"/>
</component>
-<component name="ximp_presence_cache_api" long-name="XIMP Presence Cache API" filter="s60" class="api">
+<component name="ximp_presence_cache_api" long-name="XIMP Presence Cache API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_presence_cache_api/group"/>
</component>
-<component name="ximp_core_feature_plugin_api" long-name="XIMP Core Feature Plugin API" filter="s60" class="api">
+<component name="ximp_core_feature_plugin_api" long-name="XIMP Core Feature Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_core_feature_plugin_api/group"/>
</component>
-<component name="ximp_im_protocol_plugin_host_api" long-name="XIMP IM Protocol Plugin Host API" filter="s60" class="api">
+<component name="ximp_im_protocol_plugin_host_api" long-name="XIMP IM Protocol Plugin Host API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_im_protocol_plugin_host_api/group"/>
</component>
-<component name="ximp_im_data_model_api" long-name="XIMP IM Data Model API" filter="s60" class="api">
+<component name="ximp_im_data_model_api" long-name="XIMP IM Data Model API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_im_data_model_api/group"/>
</component>
-<component name="ximp_im_protocol_plugin_api" long-name="XIMP IM Protocol Plugin API" filter="s60" class="api">
+<component name="ximp_im_protocol_plugin_api" long-name="XIMP IM Protocol Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_im_protocol_plugin_api/group"/>
</component>
-<component name="ximp_im_management_api" long-name="XIMP IM Management API" filter="s60" class="api">
+<component name="ximp_im_management_api" long-name="XIMP IM Management API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_im_management_api/group"/>
</component>
-<component name="ximp_im_base_api" long-name="XIMP IM Base API" filter="s60" class="api">
+<component name="ximp_im_base_api" long-name="XIMP IM Base API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_im_base_api/group"/>
</component>
-<component name="ximp_search_protocol_plugin_host_api" long-name="XIMP Search Protocol Plugin Host API" filter="s60" class="api">
+<component name="ximp_search_protocol_plugin_host_api" long-name="XIMP Search Protocol Plugin Host API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_search_protocol_plugin_host_api/group"/>
</component>
-<component name="ximp_search_data_model_api" long-name="XIMP Search Data Model API" filter="s60" class="api">
+<component name="ximp_search_data_model_api" long-name="XIMP Search Data Model API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_search_data_model_api/group"/>
</component>
-<component name="ximp_search_protocol_plugin_api" long-name="XIMP search Protocol Plugin API" filter="s60" class="api">
+<component name="ximp_search_protocol_plugin_api" long-name="XIMP search Protocol Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_search_protocol_plugin_api/group"/>
</component>
-<component name="ximp_search_management_api" long-name="XIMP Search Management API" filter="s60" class="api">
+<component name="ximp_search_management_api" long-name="XIMP Search Management API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_search_management_api/group"/>
</component>
-<component name="ximp_search_base_api" long-name="XIMP Search Base API" filter="s60" class="api">
+<component name="ximp_search_base_api" long-name="XIMP Search Base API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/ximp_search_base_api/group"/>
</component>
-<component name="xmpp_settings_api" long-name="XMPP Settings API" filter="s60" class="api">
+<component name="xmpp_settings_api" long-name="XMPP Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/xmpp_settings_api/group"/>
</component>
-<component name="im_cache_client_api" long-name="IM Cache Client API" filter="s60" class="api">
+<component name="im_cache_client_api" long-name="IM Cache Client API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/im_cache_client_api/group"/>
</component>
-<component name="im_cache_server_api" long-name="IM Cache Server API" filter="s60" class="api">
+<component name="im_cache_server_api" long-name="IM Cache Server API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/im_cache_server_api/group"/>
</component>
-<component name="presence_avabilitytext" long-name="Presence Availability Text" filter="s60" class="api">
+<component name="presence_avabilitytext" long-name="Presence Availability Text" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imsrv/imsrv_plat/presence_avabilitytext/group"/>
</component>
</collection>
<collection name="ximpfw" long-name="XIMP Framework" level="framework">
<!-- collection is really a component. Needs to be moved down a directory -->
-<component name="ximpfw_build" filter="s60" long-name="XIMP Framework Build">
+<component name="ximpfw_build" long-name="XIMP Framework Build" filter="s60" purpose="optional">
<unit bldFile="mw/imsrv/ximpfw/group"/>
</component>
</collection>
<collection name="imservices" long-name="IM Services" level="generic">
-<component name="imfeatureplugin" filter="s60" long-name="IM Feature Plugin" introduced="^2" plugin="Y">
+<component name="imfeatureplugin" long-name="IM Feature Plugin" introduced="^2" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/imsrv/imservices/imfeatureplugin/group"/>
</component>
-<component name="searchfeatureplugin" filter="s60" long-name="Search Feature Plugin" introduced="^2" plugin="Y">
+<component name="searchfeatureplugin" long-name="Search Feature Plugin" introduced="^2" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/imsrv/imservices/searchfeatureplugin/group"/>
</component>
-<component name="xmppsettingsapi" filter="s60" long-name="XMPP Settings API" introduced="^2">
+<component name="xmppsettingsapi" long-name="XMPP Settings API" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/imsrv/imservices/xmppsettingsapi/group"/>
</component>
-<component name="xmppsettingsfetcher" filter="s60" long-name="XMPP Settings Fetcher" introduced="^2">
+<component name="xmppsettingsfetcher" long-name="XMPP Settings Fetcher" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/imsrv/imservices/xmppsettingsfetcher/group"/>
</component>
-<component name="instantmessagingcache" filter="s60" long-name="Instant Messaging Cache" introduced="^2">
+<component name="instantmessagingcache" long-name="Instant Messaging Cache" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/imsrv/imservices/instantmessagingcache/group"/>
</component>
</collection>
<collection name="brandingserver" long-name="Branding Server" level="specific">
<!-- collection is really a component. Needs to be moved down a directory -->
-<component name="brandingserver_build" filter="s60" long-name="Branding Server Build">
+<component name="brandingserver_build" long-name="Branding Server Build" filter="s60" purpose="optional">
<unit bldFile="mw/imsrv/brandingserver/group"/>
</component>
</collection>
</block>
-<block name="legacypresence" level="specific" long-name="Legacy Presence Services" levels="engine fw ui">
+<block name="legacypresence" level="specific" levels="engine fw ui" long-name="Legacy Presence Services">
<collection name="pressrv_plat" long-name="Legacy Presence Services Platform Interfaces" level="ui">
-<component name="presence_list_api" long-name="Presence List API" filter="s60" class="api">
+<component name="presence_list_api" long-name="Presence List API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/presence_list_api/group"/>
</component>
-<component name="watcher_info_api" long-name="Watcher Info API" filter="s60" class="api">
+<component name="watcher_info_api" long-name="Watcher Info API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/watcher_info_api/group"/>
</component>
-<component name="simple_documents_api" long-name="SIMPLE Documents API" filter="s60" class="api">
+<component name="simple_documents_api" long-name="SIMPLE Documents API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/simple_documents_api/group"/>
</component>
-<component name="authorization_api" long-name="Authorization API" filter="s60" class="api">
+<component name="authorization_api" long-name="Authorization API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/authorization_api/group"/>
</component>
-<component name="xdm_protocol_plugin_api" long-name="XDM Protocol Plug-in API" filter="s60" class="api">
+<component name="xdm_protocol_plugin_api" long-name="XDM Protocol Plug-in API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/xdm_protocol_plugin_api/group"/>
</component>
-<component name="watcher_api" long-name="Watcher API" filter="s60" class="api">
+<component name="watcher_api" long-name="Watcher API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/watcher_api/group"/>
</component>
-<component name="xdm_api" long-name="XDM API" filter="s60" class="api">
+<component name="xdm_api" long-name="XDM API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/xdm_api/group"/>
</component>
-<component name="registration_api" long-name="Registration API" filter="s60" class="api">
+<component name="registration_api" long-name="Registration API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/registration_api/group"/>
</component>
-<component name="publisher_api" long-name="Publisher API" filter="s60" class="api">
+<component name="publisher_api" long-name="Publisher API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/publisher_api/group"/>
</component>
-<component name="messaging_connection_manager_api" long-name="Messaging Connection Manager API" filter="s60" class="api">
+<component name="messaging_connection_manager_api" long-name="Messaging Connection Manager API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/messaging_connection_manager_api/group"/>
</component>
-<component name="xdm_settings_api" long-name="XDM Settings API" filter="s60" class="api">
+<component name="xdm_settings_api" long-name="XDM Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/xdm_settings_api/group"/>
</component>
-<component name="simple_settings_api" long-name="SIMPLE Settings API" filter="s60" class="api">
+<component name="simple_settings_api" long-name="SIMPLE Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/simple_settings_api/group"/>
</component>
-<component name="simple_instant_msg_api" long-name="Simple Instant Msg API" filter="s60" class="api">
+<component name="simple_instant_msg_api" long-name="Simple Instant Msg API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/simple_instant_msg_api/group"/>
</component>
</collection>
</block>
-<block name="searchsrv" level="specific" long-name="Search Services" levels="services engine generic api">
+<block name="searchsrv" level="specific" levels="services engine generic api" long-name="Search Services">
<collection name="searchsrv_plat" long-name="Search Services Platform Interfaces" level="api">
-<component name="cpix_utility_api" long-name="CPIX Utility API" filter="s60" introduced="^4" class="api">
+<component name="cpix_utility_api" long-name="CPIX Utility API" introduced="^4" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/searchsrv/searchsrv_plat/cpix_utility_api/group"/>
</component>
-<component name="cpix_framework_api" long-name="CPIX Framework API" filter="s60" introduced="^4" class="api">
+<component name="cpix_framework_api" long-name="CPIX Framework API" introduced="^4" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/searchsrv/searchsrv_plat/cpix_framework_api/group"/>
</component>
-<component name="cpix_search_api" long-name="CPIX Search API" filter="s60" introduced="^4" class="api">
+<component name="cpix_search_api" long-name="CPIX Search API" introduced="^4" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/searchsrv/searchsrv_plat/cpix_search_api/group"/>
</component>
</collection>
<collection name="searchengine" long-name="Search Engine" level="engine">
-<component name="searchengine_util" long-name="Search Engine Utils" filter="s60" introduced="^4">
+<component name="searchengine_util" long-name="Search Engine Utils" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/searchsrv/searchengine/util/group"/>
</component>
-<component name="searchengine_oss" long-name="Search Engine OSS" filter="s60" introduced="^4">
+<component name="searchengine_oss" long-name="Search Engine OSS" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/searchsrv/searchengine/oss/group"/>
</component>
-<component name="cpix" long-name="Cross Platform Indexing Engine" filter="s60" introduced="^4">
+<component name="cpix" long-name="Cross Platform Indexing Engine" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/searchsrv/searchengine/cpix/group"/>
</component>
</collection>
<collection name="searcher" long-name="Searcher" level="generic">
-<component name="searchclient" long-name="Search Client" filter="s60" introduced="^4">
+<component name="searchclient" long-name="Search Client" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/searchsrv/searcher/SearchClient/group"/>
</component>
-<component name="searchserver" long-name="Search Server" filter="s60" introduced="^4">
+<component name="searchserver" long-name="Search Server" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/searchsrv/searcher/SearchServer/group"/>
</component>
-<component name="searcher_test" long-name="Searcher Tests" filter="s60" purpose="development" introduced="^4">
+<component name="searcher_test" long-name="Searcher Tests" introduced="^4" filter="s60" purpose="development">
<!-- #include from common bld.inf or split into two components -->
<unit bldFile="mw/searchsrv/searcher/tsrc/RobustnessTest/group"/>
<unit bldFile="mw/searchsrv/searcher/tsrc/LogPlayer/group"/>
</component>
</collection>
<collection name="searchsrv_harvester" long-name="Search Services Harvester" level="services">
-<component name="searchsrv_pluginfw" long-name="Search Server" filter="s60" introduced="^4">
+<component name="searchsrv_pluginfw" long-name="Search Server" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/searchsrv/harvester/pluginfw/group"/>
</component>
-<component name="searchsrv_harvesterserver" long-name="Search Harvester Server" filter="s60" introduced="^4">
+<component name="searchsrv_harvesterserver" long-name="Search Harvester Server" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/searchsrv/harvester/harvesterserver" proFile="harvester.pro"/>
</component>
</collection>
<collection name="searchsrv_watchdog" long-name="Search Services Watch Dog" level="services">
-<component name="searchsrv_watchdog_build" long-name="Search Services Watch Dog Build" filter="s60" introduced="^4">
+<component name="searchsrv_watchdog_build" long-name="Search Services Watch Dog Build" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/searchsrv/WatchDog/group"/>
</component>
</collection>
<collection name="qcpix" long-name="Qt CPIX" level="engine">
-<component name="qcpix_build" long-name="Qt CPIX Build" introduced="^4">
+<component name="qcpix_build" long-name="Qt CPIX Build" introduced="^4" purpose="optional">
<unit bldFile="mw/searchsrv/qcpix" proFile="qcpix.pro"/>
</component>
</collection>
<collection name="searchsrv_info" long-name="Search Services Info">
-<component name="searchsrv_build" long-name="Search Services Build" introduced="^4">
+<component name="searchsrv_build" long-name="Search Services Build" introduced="^4" purpose="optional">
<!-- move exports to own component and remove this -->
<unit bldFile="mw/searchsrv/group"/>
</component>
</collection>
</block>
-<block name="remotemgmt" level="specific" long-name="Remote Management" levels="plugin framework server generic specific">
+<block name="remotemgmt" level="specific" levels="plugin framework server generic specific" long-name="Remote Management">
<collection name="remotemgmt_pub" long-name="Remote Management Public Interfaces" level="specific">
-<component name="synchronization_capability_api" long-name="Synchronization Capability API" filter="s60" class="api">
+<component name="synchronization_capability_api" long-name="Synchronization Capability API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_pub/synchronization_capability_api/group"/>
</component>
</collection>
<collection name="remotemgmt_plat" long-name="Remote Management Platform Interfaces" level="specific">
-<component name="common_agent_util_and_definitions_api" long-name="Common Agent util and definitions API" filter="s60" class="api">
+<component name="common_agent_util_and_definitions_api" long-name="Common Agent util and definitions API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/common_agent_util_and_definitions_api/group"/>
</component>
-<component name="policy_management_certificate_api" long-name="Policy Management Certificate API" filter="s60" class="api">
+<component name="policy_management_certificate_api" long-name="Policy Management Certificate API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/policy_management_certificate_api/group"/>
</component>
-<component name="oma_provisioning_adapter_api" long-name="OMA Provisioning Adapter API" filter="s60" class="api">
+<component name="oma_provisioning_adapter_api" long-name="OMA Provisioning Adapter API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/oma_provisioning_adapter_api/group"/>
</component>
-<component name="device_management_parameter_api" long-name="Device Management Parameter API" filter="s60" class="api">
+<component name="device_management_parameter_api" long-name="Device Management Parameter API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/device_management_parameter_api/group"/>
</component>
-<component name="data_synchronization_plugin_api" long-name="Data Synchronization Plug-in API" filter="s60" class="api">
+<component name="data_synchronization_plugin_api" long-name="Data Synchronization Plug-in API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/data_synchronization_plugin_api/group"/>
</component>
-<component name="sync_alert_handler_api" long-name="Sync Alert Handler API" filter="s60" class="api">
+<component name="sync_alert_handler_api" long-name="Sync Alert Handler API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/sync_alert_handler_api/group"/>
</component>
-<component name="syncml_notifier_api" long-name="SyncML Notifier API" filter="s60" class="api">
+<component name="syncml_notifier_api" long-name="SyncML Notifier API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/syncml_notifier_api/group"/>
</component>
-<component name="syncml_client_api" long-name="SyncML Client API" filter="s60" class="api">
+<component name="syncml_client_api" long-name="SyncML Client API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/syncml_client_api/group"/>
</component>
-<component name="device_management_plugin_api" long-name="Device Management plug-in API" filter="s60" class="api">
+<component name="device_management_plugin_api" long-name="Device Management plug-in API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/device_management_plugin_api/group"/>
</component>
-<component name="dm_tree_apis" long-name="DM Tree APIs" filter="s60" class="api">
+<component name="dm_tree_apis" long-name="DM Tree APIs" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/dm_tree_apis/group"/>
</component>
-<component name="terminal_security_device_lock_api" long-name="Terminal Security Device Lock API" filter="s60" class="api">
+<component name="terminal_security_device_lock_api" long-name="Terminal Security Device Lock API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/terminal_security_device_lock_api/group"/>
</component>
-<component name="policy_management_request_api" long-name="Policy Management Request API" filter="s60" class="api">
+<component name="policy_management_request_api" long-name="Policy Management Request API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/policy_management_request_api/group"/>
</component>
-<component name="ds_constant_definitions_api" long-name="DS Constant Definitions API" filter="s60" class="api">
+<component name="ds_constant_definitions_api" long-name="DS Constant Definitions API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/ds_constant_definitions_api/group"/>
</component>
-<component name="scp_server_api" long-name="SCP Server API" filter="s60" class="api">
+<component name="scp_server_api" long-name="SCP Server API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/scp_server_api/group"/>
</component>
-<component name="data_synchronization_notification_api" long-name="Data Synchronization Notification API" filter="s60" class="api">
+<component name="data_synchronization_notification_api" long-name="Data Synchronization Notification API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/data_synchronization_notification_api/group"/>
</component>
-<component name="oma_provisioning_engine_api" long-name="OMA Provisioning Engine API" filter="s60" class="api">
+<component name="oma_provisioning_engine_api" long-name="OMA Provisioning Engine API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/oma_provisioning_engine_api/group"/>
</component>
-<component name="dm_utils_api" long-name="DM Utils API" filter="s60" class="api">
+<component name="dm_utils_api" long-name="DM Utils API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/dm_utils_api/group"/>
</component>
-<component name="syncml_alert_api" long-name="SyncML Alert API" filter="s60" class="api">
+<component name="syncml_alert_api" long-name="SyncML Alert API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/syncml_alert_api/group"/>
</component>
-<component name="obex_client_session_api" long-name="OBEX Client session API" filter="s60" class="api">
+<component name="obex_client_session_api" long-name="OBEX Client session API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/obex_client_session_api/group"/>
</component>
-<component name="setting_enforcement_info_api" long-name="Setting Enforcement Info API" filter="s60" class="api">
+<component name="setting_enforcement_info_api" long-name="Setting Enforcement Info API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/setting_enforcement_info_api/group"/>
</component>
-<component name="dm_constant_definitions_api" long-name="DM Constant Definitions API" filter="s60" class="api">
+<component name="dm_constant_definitions_api" long-name="DM Constant Definitions API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/dm_constant_definitions_api/group"/>
</component>
-<component name="oma_ds_extensions_api" long-name="OMA DS Extensions API" filter="s60" class="api">
+<component name="oma_ds_extensions_api" long-name="OMA DS Extensions API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/oma_ds_extensions_api/group"/>
</component>
-<component name="pnpms_utils_api" long-name="PNPMS Utils API" filter="s60" class="api">
+<component name="pnpms_utils_api" long-name="PNPMS Utils API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/pnpms_utils_api/group"/>
</component>
-<component name="adaptive_history_list_api" long-name="Adaptive History List API" filter="s60" class="api">
+<component name="adaptive_history_list_api" long-name="Adaptive History List API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/adaptive_history_list_api/group"/>
</component>
-<component name="adaptive_history_list_session_api" long-name="Adaptive History List Session API" filter="s60" class="api">
+<component name="adaptive_history_list_session_api" long-name="Adaptive History List Session API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/adaptive_history_list_session_api/group"/>
</component>
-<component name="fota_engine_api" long-name="FOTA Engine API" filter="s60" class="api">
+<component name="fota_engine_api" long-name="FOTA Engine API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/fota_engine_api/group"/>
</component>
-<component name="update_package_storage_plugin_api" long-name="Update Package Storage Plug-in API" filter="s60" class="api">
+<component name="update_package_storage_plugin_api" long-name="Update Package Storage Plug-in API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/update_package_storage_plugin_api/group"/>
</component>
-<component name="syncml_notifier_roaming_api" long-name="SyncML Notifier Roaming API" filter="s60" class="api">
+<component name="syncml_notifier_roaming_api" long-name="SyncML Notifier Roaming API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/syncml_notifier_roaming_api/group"/>
</component>
-<component name="dcmo_adapter_api" long-name="DCMO Adapter API" filter="s60" class="api">
+<component name="dcmo_adapter_api" long-name="DCMO Adapter API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/dcmo_adapter_api/group"/>
</component>
-<component name="dcmo_control_api" long-name="DCMO Control API" filter="s60" class="api">
+<component name="dcmo_control_api" long-name="DCMO Control API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/dcmo_control_api/group"/>
</component>
-<component name="ds_capability_mgmt_plugin_api" long-name="DS Capability Management Plugin API" filter="s60" class="api">
+<component name="ds_capability_mgmt_plugin_api" long-name="DS Capability Management Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/ds_capability_mgmt_plugin_api/group"/>
</component>
-<component name="devicemgmt_dialogs_api" long-name="Device Management Dialogs API" filter="s60" introduced="^4" class="api">
+<component name="devicemgmt_dialogs_api" long-name="Device Management Dialogs API" introduced="^4" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/devicemgmt_dialogs_api/group"/>
</component>
-<component name="dm_device_dialog_api" long-name="DM Device Dialog API" filter="s60" introduced="^4" class="api">
+<component name="dm_device_dialog_api" long-name="DM Device Dialog API" introduced="^4" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/dm_device_dialog_api/group"/>
</component>
</collection>
<collection name="policymanagement" long-name="Policy Management" level="generic">
-<component name="policyenginepolicies" long-name="Policy Engine Policies" filter="s60,!dfs_build">
+<component name="policyenginepolicies" long-name="Policy Engine Policies" filter="s60,!dfs_build" purpose="optional">
<unit bldFile="mw/remotemgmt/policymanagement/policyengine/policyenginepolicies/group"/>
</component>
-<component name="policyengine" filter="s60" long-name="Policy Engine">
+<component name="policyengine" long-name="Policy Engine" filter="s60" purpose="optional">
<unit bldFile="mw/remotemgmt/policymanagement/policyengine" proFile="policyengine.pro"/>
</component>
-<component name="policymanagement_config" filter="s60" long-name="Policy Management Config" class="config">
+<component name="policymanagement_config" long-name="Policy Management Config" filter="s60" purpose="optional" class="config">
<unit bldFile="mw/remotemgmt/policymanagement/group"/>
</component>
</collection>
<collection name="syncmlfw" long-name="SyncML Framework" level="server">
-<component name="syncmlfw_build" filter="s60" long-name="SyncML Framework Build">
+<component name="syncmlfw_build" long-name="SyncML Framework Build" filter="s60" purpose="optional">
<!-- need to break this up into components. Too convoluted a structure to be in a single bld.inf-->
<unit bldFile="mw/remotemgmt/syncmlfw/group"/>
</component>
</collection>
<collection name="terminalsecurity" long-name="Terminal Security" level="specific">
-<component name="scp" filter="s60" long-name="Security Code Proxy">
+<component name="scp" long-name="Security Code Proxy" filter="s60" purpose="optional">
<!-- can only have one unit, need to have these #included from a single bld.inf -->
<unit bldFile="mw/remotemgmt/terminalsecurity/scp/scpclient/group"/>
<unit bldFile="mw/remotemgmt/terminalsecurity/scp/scpdatabase/group"/>
@@ -4584,144 +4595,141 @@
<unit bldFile="mw/remotemgmt/terminalsecurity/scp/scpeventhandler/group"/>
<unit bldFile="mw/remotemgmt/terminalsecurity/scp/dmeventnotifier/group"/>
</component>
-<component name="terminalsecurity_client" filter="s60" long-name="Terminal Control Client">
+<component name="terminalsecurity_client" long-name="Terminal Control Client" filter="s60" purpose="optional">
<unit bldFile="mw/remotemgmt/terminalsecurity/client/group"/>
</component>
-<component name="terminalsecurity_server" filter="s60" long-name="Terminal Control Server">
+<component name="terminalsecurity_server" long-name="Terminal Control Server" filter="s60" purpose="optional">
<unit bldFile="mw/remotemgmt/terminalsecurity/server/group"/>
</component>
-<component name="tcadapter" filter="s60" long-name="Terminal Control Adapter">
+<component name="tcadapter" long-name="Terminal Control Adapter" filter="s60" purpose="optional">
<unit bldFile="mw/remotemgmt/terminalsecurity/tcadapter/bld"/>
</component>
-<component name="terminalsecurity_build" filter="s60" long-name="Terminal Security Build">
+<component name="terminalsecurity_build" long-name="Terminal Security Build" filter="s60" purpose="optional">
<!-- need to distribute exports, etc into the other components and remove this-->
<unit bldFile="mw/remotemgmt/terminalsecurity/group"/>
</component>
</collection>
<collection name="omaprovisioning" long-name="OMA Provisioning" level="specific">
-<component name="pnputil" filter="s60" long-name="PnP Util">
+<component name="pnputil" long-name="PnP Util" filter="s60" purpose="optional">
<unit bldFile="mw/remotemgmt/omaprovisioning/pnputil/group"/>
</component>
-<component name="provisioning" filter="s60" long-name="Provisioning">
+<component name="provisioning" long-name="Provisioning" filter="s60" purpose="optional">
<unit bldFile="mw/remotemgmt/omaprovisioning/provisioning/group"/>
</component>
</collection>
<collection name="dcmofw" long-name="Device Capability Management Object Framework" level="framework">
-<component name="dcmoclient" filter="s60" long-name="DCMO Client">
+<component name="dcmoclient" long-name="DCMO Client" filter="s60" purpose="optional">
<unit bldFile="mw/remotemgmt/dcmofw/dcmoclient/group"/>
</component>
-<component name="dcmoserver" filter="s60" long-name="DCMO Server">
+<component name="dcmoserver" long-name="DCMO Server" filter="s60" purpose="optional">
<unit bldFile="mw/remotemgmt/dcmofw/dcmoserver/group"/>
</component>
-<component name="dcmocustcmd" filter="s60" long-name="DCMO Custom Commands">
+<component name="dcmocustcmd" long-name="DCMO Custom Commands" filter="s60" purpose="optional">
<unit bldFile="mw/remotemgmt/dcmofw/dcmocustcmd/group"/>
</component>
-<component name="dcmofw_build" filter="s60" long-name="DCMO Build">
+<component name="dcmofw_build" long-name="DCMO Build" filter="s60" purpose="optional">
<!-- need to distribute exports, etc into the other components and remove this-->
<unit bldFile="mw/remotemgmt/dcmofw/group"/>
</component>
</collection>
<collection name="fotaapplication" long-name="FOTA Application" level="generic">
-<component name="fotaapplication_build" filter="s60" long-name="FOTA Application Build">
+<component name="fotaapplication_build" long-name="FOTA Application Build" filter="s60" purpose="optional">
<!-- need to make this a real component: move down a dir? break up? -->
<unit bldFile="mw/remotemgmt/fotaapplication/group"/>
</component>
-<component name="fotaserver" filter="s60" long-name="FOTA Server">
+<component name="fotaserver" long-name="FOTA Server" filter="s60" purpose="optional">
<unit bldFile="mw/remotemgmt/fotaapplication/fotaserver" proFile="fotaserver.pro"/>
</component>
</collection>
<collection name="devicemgmtnotifications" long-name="Device Management Notifications" level="server">
-<component name="devicemgmtnotifications_rom" filter="s60" long-name="DM Notifications ROM" introduced="^4">
+<component name="devicemgmtnotifications_rom" long-name="DM Notifications ROM" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/remotemgmt/devicemgmtnotifications/rom"/>
</component>
-<component name="dmdevdialogclient" filter="s60" long-name="DM Device Dialog Client" introduced="^4">
+<component name="dmdevdialogclient" long-name="DM Device Dialog Client" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/remotemgmt/devicemgmtnotifications/dmdevdialogclient/bld"/>
</component>
-<component name="dmdevdialogserver" filter="s60" long-name="DM Device Dialog Server" introduced="^4">
+<component name="dmdevdialogserver" long-name="DM Device Dialog Server" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/remotemgmt/devicemgmtnotifications/dmdevdialogserver/bld"/>
</component>
</collection>
</block>
-<block name="remoteconn" level="generic" long-name="Remote Connectivity" levels="plugin framework server generic specific">
+<block name="remoteconn" level="generic" levels="plugin framework server generic specific" long-name="Remote Connectivity">
<collection name="remoteconn_info" long-name="Remote Connectivity Info" level="specific">
<component name="remoteconn_metadata" long-name="Remote Connectivity Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="mw/remoteconn/remoteconn_info/remoteconn_metadata/remoteconn_metadata.mrp"/>
</component>
</collection>
<collection name="remoteconn_plat" long-name="Remote Connectivity Platform Interfaces" level="specific">
-<component name="dialup_connection_status_api" long-name="Dialup Connection Status API" filter="s60" class="api">
+<component name="dialup_connection_status_api" long-name="Dialup Connection Status API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remoteconn/remoteconn_plat/dialup_connection_status_api/group"/>
</component>
-<component name="dun_secondary_display_notification_api" long-name="Dialup Secondary Display Notification API" filter="s60" class="api">
+<component name="dun_secondary_display_notification_api" long-name="Dialup Secondary Display Notification API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/remoteconn/remoteconn_plat/dun_secondary_display_notification_api/group"/>
</component>
-<component name="generic_hid_api" long-name="Generic HID API" filter="s60" class="api">
+<component name="generic_hid_api" long-name="Generic HID API" filter="s60" purpose="optional" class="api">
<!-- Missing? <meta rel="Api" href="remoteconn_plat/generic_hid_api/generic_hid_api.metaxml"/> -->
<unit bldFile="mw/remoteconn/remoteconn_plat/generic_hid_api/group"/>
</component>
-<component name="locod_bearer_plugin_api" long-name="Local Connectivity Daemon Bearer Plugin API" filter="s60" class="api">
+<component name="locod_bearer_plugin_api" long-name="Local Connectivity Daemon Bearer Plugin API" filter="s60" purpose="optional" class="api">
<!-- Missing? <meta rel="Api" href="remoteconn_plat/locod_bearer_plugin_api/locod_bearer_plugin_api.metaxml"/> -->
<unit bldFile="mw/remoteconn/remoteconn_plat/locod_bearer_plugin_api/group"/>
</component>
-<component name="locod_service_plugin_api" long-name="Local Connectivity Daemon Service Plugin API" filter="s60" class="api">
+<component name="locod_service_plugin_api" long-name="Local Connectivity Daemon Service Plugin API" filter="s60" purpose="optional" class="api">
<!-- Missing? <meta rel="Api" href="remoteconn_plat/locod_service_plugin_api/locod_service_plugin_api.metaxml"/> -->
<unit bldFile="mw/remoteconn/remoteconn_plat/locod_service_plugin_api/group"/>
</component>
</collection>
<collection name="localconnectivityservice" long-name="Local Connectivity Service" level="server">
-<component name="locod" long-name="Local Connectivity Daemon" introduced="^4" purpose="optional" filter="s60">
+<component name="locod" long-name="Local Connectivity Daemon" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/remoteconn/localconnectivityservice/locod/group"/>
</component>
-<component name="dun" long-name="Dial-Up Networking" introduced="^4" purpose="optional" filter="s60">
+<component name="dun" long-name="Dial-Up Networking" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/remoteconn/localconnectivityservice/dun/group"/>
</component>
-<component name="generichid" long-name="Generic Human-Interface Device" introduced="^4" purpose="optional" filter="s60">
+<component name="generichid" long-name="Generic Human-Interface Device" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/remoteconn/localconnectivityservice/generichid/group"/>
</component>
-<component name="headset" long-name="Headset" introduced="^4" purpose="optional" filter="s60">
+<component name="headset" long-name="Headset" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/remoteconn/localconnectivityservice/headset/group"/>
</component>
</collection>
<collection name="mtptransports" long-name="MTP Transports" level="plugin">
-<component name="mtpusbtransport" long-name="MTP USB Transport" introduced="^2" purpose="optional" filter="s60" plugin="Y">
+<component name="mtpusbtransport" long-name="MTP USB Transport" introduced="^2" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/remoteconn/mtptransports/mtpusbtransport/group" mrp="mw/remoteconn/mtptransports/mtpusbtransport/group/mtp_usbsic.mrp"/>
</component>
-<component name="mtpptpiptransport" long-name="MTP PTP-IP Transport" introduced="^3" purpose="optional" filter="s60" plugin="Y">
+<component name="mtpptpiptransport" long-name="MTP PTP-IP Transport" introduced="^3" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/remoteconn/mtptransports/mtpptpiptransport/group" mrp="mw/remoteconn/mtptransports/mtpptpiptransport/group/mtp_ptpip.mrp"/>
</component>
-<component name="mtpcontroller" long-name="MTP Controller" introduced="^3" purpose="optional" plugin="Y">
-<unit bldFile="mw/remoteconn/mtptransports/mtpcontroller/group" mrp="mw/remoteconn/mtptransports/mtpcontroller/group/mtpcontroller.mrp"/>
-</component>
</collection>
<collection name="mtpfws" long-name="MTP Frameworks" level="framework">
-<component name="mtpfw" long-name="MTP Framework" introduced="^2" purpose="optional" filter="s60">
+<component name="mtpfw" long-name="MTP Framework" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/remoteconn/mtpfws/mtpfw/group" mrp="mw/remoteconn/mtpfws/mtpfw/group/mtp_framework.mrp"/>
</component>
-<component name="devdpextn" long-name="MTP Device Provider Extension" introduced="^4" purpose="optional" filter="s60">
+<component name="devdpextn" long-name="MTP Device Provider Extension" introduced="^4" filter="s60" purpose="optional">
<!-- can't have a component inside another component. Need to move to mtpfws/devdpextn/group -->
<unit bldFile="mw/remoteconn/mtpfws/mtpfw/dataproviders/devdp/devdpextn/group"/>
</component>
</collection>
<collection name="mtpdataproviders" long-name="MTP Data Providers" level="generic">
-<component name="mtpfileandfolderdp" long-name="MTP File and Folder Provider" introduced="^2" purpose="optional" filter="s60" plugin="Y">
+<component name="mtpfileandfolderdp" long-name="MTP File and Folder Provider" introduced="^2" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/remoteconn/mtpdataproviders/mtpfileandfolderdp/group" mrp="mw/remoteconn/mtpdataproviders/mtpfileandfolderdp/group/mtp_filedp.mrp"/>
</component>
-<component name="mtpimagedp" long-name="MTP Image Data Provider" introduced="^3" purpose="optional" filter="s60" plugin="Y">
+<component name="mtpimagedp" long-name="MTP Image Data Provider" introduced="^3" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/remoteconn/mtpdataproviders/mtpimagedp/group" mrp="mw/remoteconn/mtpdataproviders/mtpimagedp/group/mtp_imagedp.mrp"/>
</component>
-<component name="mtppictbridgedp" long-name="MTP PictBridge Data Provider" introduced="^3" purpose="optional" filter="s60" plugin="Y">
+<component name="mtppictbridgedp" long-name="MTP PictBridge Data Provider" introduced="^3" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/remoteconn/mtpdataproviders/mtppictbridgedp/group" mrp="mw/remoteconn/mtpdataproviders/mtppictbridgedp/group/mtp_pictbridgedp.mrp"/>
</component>
-<component name="pictbridgeengine" long-name="MTP PictBridge Engine" introduced="^4" purpose="optional" filter="s60">
+<component name="pictbridgeengine" long-name="MTP PictBridge Engine" introduced="^4" filter="s60" purpose="optional">
<!-- can't have a component inside another component. Need to move to mtpdataproviders/pictbridgeengine/group -->
<unit bldFile="mw/remoteconn/mtpdataproviders/mtppictbridgedp/pictbridgeengine/group"/>
</component>
-<component name="mtpplaybackcontroldp" long-name="MTP Playback Control Data Provider" introduced="^4" purpose="optional" filter="s60" plugin="Y">
+<component name="mtpplaybackcontroldp" long-name="MTP Playback Control Data Provider" introduced="^4" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/remoteconn/mtpdataproviders/mtpplaybackcontroldp/group" mrp="mw/remoteconn/mtpdataproviders/mtpplaybackcontroldp/group/mtp_playbackcontroldp.mrp"/>
</component>
</collection>
<collection name="backupandrestore" long-name="Backup and Restore" level="specific">
-<component name="backupengine" long-name="Backup Engine" introduced="9.0" purpose="optional" filter="s60">
+<component name="backupengine" long-name="Backup Engine" introduced="9.0" filter="s60" purpose="optional">
<unit bldFile="mw/remoteconn/backupandrestore/backupengine/group" mrp="mw/remoteconn/backupandrestore/backupengine/group/connectivity_backupengine.mrp"/>
</component>
<component name="backuptest" long-name="Backup Test" introduced="^2" purpose="development">
@@ -4737,343 +4745,285 @@
</component>
</collection>
</block>
-<block name="srvdiscovery" level="generic" long-name="Service Discovery and Usage" levels="plugin framework server generic specific">
+<block name="srvdiscovery" level="generic" levels="plugin framework server generic specific" long-name="Service Discovery and Usage">
<collection name="upnpstack_plat" long-name="UPnP Stack Platform Interfaces" level="specific">
-<component name="upnp_device_api" long-name="UPnP Device API" purpose="optional" introduced="^3" class="api">
+<component name="upnp_device_api" long-name="UPnP Device API" introduced="^3" purpose="optional" class="api">
<unit bldFile="mw/srvdiscovery/upnp/upnpstack_plat/upnp_device_api/group"/>
</component>
-<component name="upnp_common_api" long-name="UPnP Common API" purpose="optional" introduced="^3" class="api">
+<component name="upnp_common_api" long-name="UPnP Common API" introduced="^3" purpose="optional" class="api">
<unit bldFile="mw/srvdiscovery/upnp/upnpstack_plat/upnp_common_api/group"/>
</component>
-<component name="upnp_utils_api" long-name="UPnP Utils API" purpose="optional" introduced="^3" class="api">
+<component name="upnp_utils_api" long-name="UPnP Utils API" introduced="^3" purpose="optional" class="api">
<unit bldFile="mw/srvdiscovery/upnp/upnpstack_plat/upnp_utils_api/group"/>
</component>
-<component name="upnp_control_point_api" long-name="UPnP Control Point API" purpose="optional" introduced="^3" class="api">
+<component name="upnp_control_point_api" long-name="UPnP Control Point API" introduced="^3" purpose="optional" class="api">
<unit bldFile="mw/srvdiscovery/upnp/upnpstack_plat/upnp_control_point_api/group"/>
</component>
-<component name="upnp_httpserver_api" long-name="UPnP HTTP Server API" purpose="optional" introduced="^3" class="api">
+<component name="upnp_httpserver_api" long-name="UPnP HTTP Server API" introduced="^3" purpose="optional" class="api">
<unit bldFile="mw/srvdiscovery/upnp/upnpstack_plat/upnp_httpserver_api/group"/>
</component>
-<component name="upnp_http_transfer_api" long-name="UPnP HTTP Transfer API" purpose="optional" introduced="^3" class="api">
+<component name="upnp_http_transfer_api" long-name="UPnP HTTP Transfer API" introduced="^3" purpose="optional" class="api">
<unit bldFile="mw/srvdiscovery/upnp/upnpstack_plat/upnp_http_transfer_api/group"/>
</component>
</collection>
<collection name="servicediscoveryandcontrol" long-name="Service Discovery and Control" level="framework">
-<component name="servicediscoveryfw" long-name="Service Discovery Framework" introduced="^3" purpose="optional" filter="s60">
+<component name="servicediscoveryfw" long-name="Service Discovery Framework" introduced="^3" filter="s60" purpose="optional">
<unit bldFile="mw/srvdiscovery/servicediscoveryandcontrol/pnp/group" mrp="mw/srvdiscovery/servicediscoveryandcontrol/pnp/group/servicediscoveryframework.mrp"/>
</component>
</collection>
<collection name="upnp" long-name="UPnP" level="server">
-<component name="upnpstack" long-name="UPnP Stack" introduced="^3" purpose="optional" filter="s60">
+<component name="upnpstack" long-name="UPnP Stack" introduced="^3" filter="s60" purpose="optional">
<unit bldFile="mw/srvdiscovery/upnp/upnpstack/group"/>
</component>
</collection>
<collection name="srvdiscovery_info" long-name="Service Discovery and Usage Info" level="specific">
-<component name="srvdiscovery_metadata" long-name="Service Discovery and Usage Metadata" introduced="^2" purpose="development" filter="s60" class="config PC">
+<component name="srvdiscovery_metadata" long-name="Service Discovery and Usage Metadata" introduced="^2" filter="s60" purpose="development" class="config PC">
<unit mrp="mw/srvdiscovery/srvdiscovery_info/srvdiscovery_metadata/srvdiscovery_metadata.mrp"/>
</component>
</collection>
</block>
-<block name="dlnasrv" level="specific" long-name="DLNA Services" levels="stack server ctrl framework plugin">
+<block name="dlnasrv" level="specific" levels="stack server ctrl framework plugin" long-name="DLNA Services">
<!-- uncomment all the units when configuration is in place, they're currently #included from other xxx_build components -->
<collection name="dlnasrv_plat" long-name="DLNA Services Platform Interfaces" level="plugin">
-<component name="upnp_media_server_settings_api" long-name="UPnP Media Server Settings API" filter="s60" class="api">
+<component name="upnp_media_server_settings_api" long-name="UPnP Media Server Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/dlnasrv/dlnasrv_plat/upnp_media_server_settings_api/group"/>
</component>
-<component name="upnp_av_objects_api" long-name="UPnP A/V Objects API" filter="s60" class="api">
+<component name="upnp_av_objects_api" long-name="UPnP A/V Objects API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/dlnasrv/dlnasrv_plat/upnp_av_objects_api/group"/>
</component>
-<component name="upnp_media_server_api" long-name="UPnP Media Server API" filter="s60" class="api">
+<component name="upnp_media_server_api" long-name="UPnP Media Server API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/dlnasrv/dlnasrv_plat/upnp_media_server_api/group"/>
</component>
-<component name="upnp_security_plugin_api" long-name="UPnP Security Plugin API" filter="s60" class="api">
+<component name="upnp_security_plugin_api" long-name="UPnP Security Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/dlnasrv/dlnasrv_plat/upnp_security_plugin_api/group"/>
</component>
-<component name="upnp_avcp_api" long-name="UPnP AVCP API" filter="s60" class="api">
+<component name="upnp_avcp_api" long-name="UPnP AVCP API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/dlnasrv/dlnasrv_plat/upnp_avcp_api/group"/>
</component>
-<component name="upnp_media_server_metadata_api" long-name="UPnP Media Server Metadata API" filter="s60" class="api">
+<component name="upnp_media_server_metadata_api" long-name="UPnP Media Server Metadata API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/dlnasrv/dlnasrv_plat/upnp_media_server_metadata_api/group"/>
</component>
-<component name="upnp_command_api" long-name="UPnP Command API" filter="s60" class="api">
+<component name="upnp_command_api" long-name="UPnP Command API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/dlnasrv/dlnasrv_plat/upnp_command_api/group"/>
</component>
-<component name="upnp_plugin_api" long-name="UPnP Plugin API" filter="s60" class="api">
+<component name="upnp_plugin_api" long-name="UPnP Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/dlnasrv/dlnasrv_plat/upnp_plugin_api/group"/>
</component>
</collection>
<collection name="upnpavcontrolpoint" long-name="UPnP A/V Control Point" level="plugin">
-<component name="avcontrolframework" filter="s60" long-name="A/V Control Famework" introduced="9.1" deprecated="^3">
+<component name="avcontrolframework" long-name="A/V Control Famework" introduced="9.1" deprecated="^3" filter="s60" purpose="optional">
<unit bldFile="mw/dlnasrv/upnpavcontrolpoint/avcontrolframework/group"/>
</component>
-<component name="upnpavcontrolpoint_build" filter="s60" long-name="UPnP A/V Control Point Build" introduced="9.1" deprecated="^3">
+<component name="upnpavcontrolpoint_build" long-name="UPnP A/V Control Point Build" introduced="9.1" deprecated="^3" filter="s60" purpose="optional">
<!-- put exports in other component instead -->
<unit bldFile="mw/dlnasrv/upnpavcontrolpoint/group"/>
</component>
</collection>
<collection name="upnpmediaserver" long-name="UPnP Media Server" level="server">
-<component name="avobjects" filter="s60" long-name="A/V Objects">
+<component name="avobjects" long-name="A/V Objects" filter="s60" purpose="optional">
<unit bldFile="mw/dlnasrv/upnpmediaserver/avobjects/group"/>
</component>
-<component name="mediaserverclient" filter="s60" long-name="Media Server Client">
+<component name="mediaserverclient" long-name="Media Server Client" filter="s60" purpose="optional">
<unit bldFile="mw/dlnasrv/upnpmediaserver/mediaserverclient/group"/>
</component>
-<component name="connectionmanagerservice" filter="s60" long-name="Connection Manager Service">
+<component name="connectionmanagerservice" long-name="Connection Manager Service" filter="s60" purpose="optional">
<unit bldFile="mw/dlnasrv/upnpmediaserver/connectionmanagerservice/group"/>
</component>
-<component name="contentdirectoryservice" filter="s60" long-name="Content Directory Service">
+<component name="contentdirectoryservice" long-name="Content Directory Service" filter="s60" purpose="optional">
<unit bldFile="mw/dlnasrv/upnpmediaserver/contentdirectoryservice/group"/>
</component>
-<component name="mediaserverengine" filter="s60" long-name="Media Server Engine">
+<component name="mediaserverengine" long-name="Media Server Engine" filter="s60" purpose="optional">
<unit bldFile="mw/dlnasrv/upnpmediaserver/mediaserverengine/group"/>
</component>
-<component name="upnpmediaserver_build" filter="s60" long-name="UPnP Media Server Build">
+<component name="upnpmediaserver_build" long-name="UPnP Media Server Build" filter="s60" purpose="optional">
<!-- move exports into one of above components -->
<unit bldFile="mw/dlnasrv/upnpmediaserver/group"/>
</component>
</collection>
<collection name="upnpavcontroller" long-name="UPnP A/V Controller" level="ctrl">
-<component name="upnpxmlparser" filter="s60" long-name="UPnP XML Parser" introduced="^2">
+<component name="upnpxmlparser" long-name="UPnP XML Parser" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/dlnasrv/upnpavcontroller/upnpxmlparser/group"/>
</component>
-<component name="upnpavcontrollerserver" filter="s60" long-name="UPnP A/V Controller Server" introduced="^2">
+<component name="upnpavcontrollerserver" long-name="UPnP A/V Controller Server" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/dlnasrv/upnpavcontroller/upnpavcontrollerserver/group"/>
</component>
-<component name="upnpavcontrollerclient" filter="s60" long-name="UPnP A/V Ccontroller Client" introduced="^2">
+<component name="upnpavcontrollerclient" long-name="UPnP A/V Ccontroller Client" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/dlnasrv/upnpavcontroller/upnpavcontrollerclient/group"/>
</component>
-<component name="upnpavcontrollerhelper" filter="s60" long-name="UPnP A/V Controller Helper" introduced="^2">
+<component name="upnpavcontrollerhelper" long-name="UPnP A/V Controller Helper" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/dlnasrv/upnpavcontroller/upnpavcontrollerhelper/group"/>
</component>
-<component name="upnpavcontroller_build" filter="s60" long-name="UPnP A/V Controller Build" introduced="^2">
+<component name="upnpavcontroller_build" long-name="UPnP A/V Controller Build" introduced="^2" filter="s60" purpose="optional">
<!-- move exports content into one of above components -->
<unit bldFile="mw/dlnasrv/upnpavcontroller/group"/>
</component>
</collection>
<collection name="upnpframework" long-name="UPnP Framework" level="framework">
-<component name="upnputilities" filter="s60" long-name="UPnP Utilities" introduced="^2">
+<component name="upnputilities" long-name="UPnP Utilities" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/dlnasrv/upnpframework/upnputilities/group"/>
</component>
-<component name="upnpextensionpluginif" filter="s60" long-name="UPnP Home Media Extension Plugin Interface" introduced="^2" deprecated="^3">
-<unit bldFile="mw/dlnasrv/upnpframework/upnpextensionpluginif/group"/>
-</component>
-<component name="upnpfiletransferengine" filter="s60" long-name="UPnP File Transfer Engine" introduced="^2" deprecated="^3">
-<unit bldFile="mw/dlnasrv/upnpframework/upnpfiletransferengine/group"/>
-</component>
-<component name="upnpcommonui" filter="s60" long-name="UPnP Common UI" introduced="^2" deprecated="^3">
-<unit bldFile="mw/dlnasrv/upnpframework/upnpcommonui/group"/>
-</component>
-<component name="upnpaiwengine" filter="s60" long-name="UPnP AIW Engine" introduced="^2" deprecated="^3">
-<unit bldFile="mw/dlnasrv/upnpframework/upnpaiwengine/group"/>
-</component>
-<component name="upnpaiwprovider" filter="s60" long-name="UPnP AIW Provider" introduced="^2" deprecated="^3" plugin="Y">
-<unit bldFile="mw/dlnasrv/upnpframework/upnpaiwprovider/group"/>
-</component>
-<component name="upnpmusicadapter" filter="s60" long-name="UPnP Music Adapter" introduced="^2">
+<component name="upnpmusicadapter" long-name="UPnP Music Adapter" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/dlnasrv/upnpframework/upnpmusicadapter/group"/>
</component>
-<component name="upnpcommand" filter="s60" long-name="UPnP Command" introduced="^2">
+<component name="upnpcommand" long-name="UPnP Command" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/dlnasrv/upnpframework/upnpcommand/group"/>
</component>
-<component name="upnpframework_build" filter="s60" long-name="UPnP Framework Build" introduced="^2">
+<component name="upnpframework_build" long-name="UPnP Framework Build" introduced="^2" filter="s60" purpose="optional">
<!-- move exports content into one or more of above components -->
<unit bldFile="mw/dlnasrv/upnpframework/group"/>
</component>
</collection>
<collection name="upnpsettings" long-name="UPnP Settings" level="framework">
-<component name="upnpsettingsengine" filter="s60" long-name="UPnP Settings Engine" introduced="^2">
+<component name="upnpsettingsengine" long-name="UPnP Settings Engine" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/dlnasrv/upnpsettings/upnpsettingsengine/group"/>
</component>
-<component name="multiselectionui" filter="s60" long-name="Multi-Selection UI" introduced="^2" deprecated="^3">
-<unit bldFile="mw/dlnasrv/upnpsettings/multiselectionui/group"/>
-</component>
-<component name="appwizard" filter="s60" long-name="UPnP Settings Wizard App" introduced="^2" deprecated="^3">
-<unit bldFile="mw/dlnasrv/upnpsettings/appwizard/group"/>
-</component>
-<component name="upnpsharingui" filter="s60" long-name="UPnP Sharing UI" introduced="^2" deprecated="^3">
-<unit bldFile="mw/dlnasrv/upnpsettings/upnpsharingui/group"/>
-</component>
-<component name="upnpgsplugin" filter="s60" long-name="UPnP GS Plugin" introduced="^2" plugin="Y">
-<unit bldFile="mw/dlnasrv/upnpsettings/upnpgsplugin/group"/>
-</component>
-<component name="upnpsettings_build" filter="s60" long-name="UPnP Settings Build" introduced="^2">
+<component name="upnpsettings_build" long-name="UPnP Settings Build" introduced="^2" filter="s60" purpose="optional">
<!-- move exports content into one of above components -->
<unit bldFile="mw/dlnasrv/upnpsettings/group"/>
</component>
</collection>
<collection name="upnpsharing" long-name="UPnP Sharing" level="server">
-<component name="upnpdlnaprofiler" filter="s60" long-name="UPnP DLNA Profiler" introduced="^2">
+<component name="upnpdlnaprofiler" long-name="UPnP DLNA Profiler" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/dlnasrv/upnpsharing/upnpdlnaprofiler/group"/>
</component>
-<component name="upnpsecurity" filter="s60" long-name="UPnP Security" introduced="^2">
+<component name="upnpsecurity" long-name="UPnP Security" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/dlnasrv/upnpsharing/upnpsecurity/group"/>
</component>
-<component name="upnpcontentserver" filter="s60" long-name="UPnP Content Server" introduced="^2">
+<component name="upnpcontentserver" long-name="UPnP Content Server" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/dlnasrv/upnpsharing/upnpcontentserver/group"/>
</component>
-<component name="applicationengine" filter="s60" long-name="UPnP Application Engine" introduced="^2">
+<component name="applicationengine" long-name="UPnP Application Engine" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/dlnasrv/upnpsharing/applicationengine/group"/>
</component>
-<component name="upnpsharing_build" filter="s60" long-name="UPnP Sharing Build" introduced="^2">
+<component name="upnpsharing_build" long-name="UPnP Sharing Build" introduced="^2" filter="s60" purpose="optional">
<!-- move exports content into one of above components -->
<unit bldFile="mw/dlnasrv/upnpsharing/group"/>
</component>
</collection>
<collection name="upnpmpxplugins" long-name="UPnP MPX Plugins" level="plugin">
-<component name="upnpplaybackplugins" filter="s60" long-name="UPnP Playback Plugins" introduced="^2" plugin="Y">
+<component name="upnpplaybackplugins" long-name="UPnP Playback Plugins" introduced="^2" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/dlnasrv/upnpmpxplugins/upnpplaybackplugins/group"/>
</component>
-<component name="upnpmpxplugins_build" filter="s60" long-name="UPnP MPX Plugins Build" introduced="^2">
+<component name="upnpmpxplugins_build" long-name="UPnP MPX Plugins Build" introduced="^2" filter="s60" purpose="optional">
<!-- move exports content into other component? -->
<unit bldFile="mw/dlnasrv/upnpmpxplugins/group"/>
</component>
</collection>
-<collection name="upnpharvester" long-name="UPnP Harvester" level="ctrl">
-<component name="upnpharvester_common" filter="s60" long-name="UPnP Harvester Common" introduced="^2" deprecated="^3">
-<!-- need to merge or #include these to a single bld.inf -->
-<unit bldFile="mw/dlnasrv/upnpharvester/common/cmlibrary/group"/>
-<unit bldFile="mw/dlnasrv/upnpharvester/common/cmsettings/group"/>
-<unit bldFile="mw/dlnasrv/upnpharvester/common/cmsqlwrapper/group"/>
-<unit bldFile="mw/dlnasrv/upnpharvester/common/dbmanager/group"/>
-</component>
-<component name="cdssync" filter="s60" long-name="CDS Sync" introduced="^2" deprecated="^3">
-<unit bldFile="mw/dlnasrv/upnpharvester/cdssync/common"/>
-</component>
-<component name="mdhserver" filter="s60" long-name="Metadata Harvester Server" introduced="^2" deprecated="^3">
-<unit bldFile="mw/dlnasrv/upnpharvester/mdhserver/group"/>
-</component>
-<component name="upnpharvester_build" filter="s60" long-name="UPnP Harvester Build" introduced="^2" deprecated="^3">
-<!-- could just make the whole collection one component and move down a dir. Or move the exports here into the other component -->
-<unit bldFile="mw/dlnasrv/upnpharvester/group"/>
-</component>
-</collection>
-<collection name="homesync" long-name="Home Sync" level="plugin">
-<component name="contentmanager" filter="s60" long-name="Content Manager" introduced="^2" deprecated="^3">
-<unit bldFile="mw/dlnasrv/homesync/group"/>
-<!-- move bld.inf into contentmanager dir -->
-</component>
-</collection>
-<collection name="homemedia" long-name="Home Media" level="framework">
-<!-- collection is really just a component. Move down a directory -->
-<component name="homemedia_build" filter="s60" long-name="Home Media" introduced="^2" deprecated="^3">
-<unit bldFile="mw/dlnasrv/homemedia/group"/>
-</component>
-</collection>
<collection name="dlnasrv_info" long-name="DLNA Services Info" level="plugin"/>
</block>
-<block name="btservices" level="generic" long-name="Bluetooth Services" levels="framework server generic specific plugin">
+<block name="btservices" level="generic" levels="framework server generic specific plugin" long-name="Bluetooth Services">
<collection name="btservices_pub" long-name="BT Services Public Interfaces" level="plugin">
-<component name="bluetooth_power_state_api" long-name="Bluetooth Power State API" filter="s60" class="api">
+<component name="bluetooth_power_state_api" long-name="Bluetooth Power State API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/btservices/btservices_pub/bluetooth_power_state_api/group"/>
</component>
-<component name="bluetooth_notifier_api" long-name="Bluetooth Notifier API" filter="s60" class="api">
+<component name="bluetooth_notifier_api" long-name="Bluetooth Notifier API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/btservices/btservices_pub/bluetooth_notifier_api/group"/>
</component>
</collection>
<collection name="btservices_plat" long-name="BT Services Platform Interfaces" level="plugin">
-<component name="bluetooth_dosserver_audio_api" long-name="Bluetooth DOS Server Audio API" filter="s60" class="api">
+<component name="bluetooth_dosserver_audio_api" long-name="Bluetooth DOS Server Audio API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_dosserver_audio_api/group"/>
</component>
-<component name="bluetooth_dut_mode_api" long-name="Bluetooth DUT Mode API" filter="s60" class="api">
+<component name="bluetooth_dut_mode_api" long-name="Bluetooth DUT Mode API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_dut_mode_api/group"/>
</component>
-<component name="bluetooth_engine_api" long-name="Bluetooth Engine API" filter="s60" class="api">
+<component name="bluetooth_engine_api" long-name="Bluetooth Engine API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_engine_api/group"/>
</component>
-<component name="bluetooth_engine_connection_management_api" long-name="Bluetooth Engine Connection Management API" filter="s60" class="api">
+<component name="bluetooth_engine_connection_management_api" long-name="Bluetooth Engine Connection Management API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_engine_connection_management_api/group" filter="!test"/>
</component>
-<component name="bluetooth_engine_device_management_api" long-name="Bluetooth Engine Device Management API" filter="s60" class="api">
+<component name="bluetooth_engine_device_management_api" long-name="Bluetooth Engine Device Management API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_engine_device_management_api/group" filter="!test"/>
</component>
-<component name="bluetooth_engine_discovery_api" long-name="Bluetooth Engine Discovery API" filter="s60" class="api">
+<component name="bluetooth_engine_discovery_api" long-name="Bluetooth Engine Discovery API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_engine_discovery_api/group" filter="!test"/>
</component>
-<component name="bluetooth_engine_features_api" long-name="Bluetooth Engine Features API" filter="s60" class="api">
+<component name="bluetooth_engine_features_api" long-name="Bluetooth Engine Features API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_engine_features_api/group"/>
</component>
-<component name="bluetooth_engine_settings_api" long-name="Bluetooth Engine Settings API" filter="s60" class="api">
+<component name="bluetooth_engine_settings_api" long-name="Bluetooth Engine Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_engine_settings_api/group" filter="!test"/>
</component>
-<component name="bluetooth_engine_plugin_api" long-name="Bluetooth Engine Plugin API" filter="s60" class="api">
+<component name="bluetooth_engine_plugin_api" long-name="Bluetooth Engine Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_engine_plugin_api/group"/>
</component>
-<component name="bluetooth_local_variation_api" long-name="Bluetooth Local Variation API" filter="s60" class="api">
+<component name="bluetooth_local_variation_api" long-name="Bluetooth Local Variation API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_local_variation_api/group"/>
</component>
-<component name="bluetooth_notifier_internal_api" long-name="Bluetooth Notifier internal API" filter="s60" class="api">
+<component name="bluetooth_notifier_internal_api" long-name="Bluetooth Notifier internal API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_notifier_internal_api/group"/>
</component>
-<component name="bluetooth_sap_connection_state_api" long-name="Bluetooth SAP Connection State API" filter="s60" class="api">
+<component name="bluetooth_sap_connection_state_api" long-name="Bluetooth SAP Connection State API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_sap_connection_state_api/group"/>
</component>
-<component name="bluetooth_secondary_display_notification_api" long-name="Bluetooth Secondary Display Notification API" filter="s60" class="api">
+<component name="bluetooth_secondary_display_notification_api" long-name="Bluetooth Secondary Display Notification API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_secondary_display_notification_api/group"/>
</component>
-<component name="obex_secondary_display_notification_api" long-name="OBEX Secondary Display Notification API" filter="s60" class="api">
+<component name="obex_secondary_display_notification_api" long-name="OBEX Secondary Display Notification API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/btservices/btservices_plat/obex_secondary_display_notification_api/group"/>
</component>
-<component name="obex_service_plugin_api" long-name="OBEX Service Plugin API" filter="s60" class="api">
+<component name="obex_service_plugin_api" long-name="OBEX Service Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/btservices/btservices_plat/obex_service_plugin_api/group"/>
</component>
-<component name="obex_service_utils_api" long-name="OBEX Service Utils API" filter="s60" class="api">
+<component name="obex_service_utils_api" long-name="OBEX Service Utils API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/btservices/btservices_plat/obex_service_utils_api/group"/>
</component>
-<component name="usb_obexservicemanager_client_api" long-name="OBEX Service Manager Client API" filter="s60" class="api">
+<component name="usb_obexservicemanager_client_api" long-name="OBEX Service Manager Client API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/btservices/btservices_plat/usb_obexservicemanager_client_api/group"/>
</component>
-<component name="bt_remote_device_setting_api" long-name="BT Remote Device Setting API" filter="s60" introduced="^4" class="api">
+<component name="bt_remote_device_setting_api" long-name="BT Remote Device Setting API" introduced="^4" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/btservices/btservices_plat" proFile="btservices_plat.pro"/>
</component>
</collection>
<collection name="bluetoothengine" long-name="Bluetooth Engine" level="framework">
-<component name="btnotifclient" filter="s60" long-name="Bluetooth Notification Client" introduced="^4">
+<component name="btnotifclient" long-name="Bluetooth Notification Client" introduced="^4" filter="s60" purpose="optional">
<!-- cannot put a component under another component. Move up a directory -->
<unit bldFile="mw/btservices/bluetoothengine/btnotif/btnotifclient/group"/>
</component>
-<component name="bteng" filter="s60" long-name="Bluetooth Engine">
+<component name="bteng" long-name="Bluetooth Engine" filter="s60" purpose="optional">
<unit bldFile="mw/btservices/bluetoothengine/bteng/group"/>
</component>
-<component name="btserviceutil" filter="s60" long-name="Bluetooth Service Utils" introduced="^4">
+<component name="btserviceutil" long-name="Bluetooth Service Utils" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/btservices/bluetoothengine/btserviceutil/group" filter="!test"/>
</component>
-<component name="btnotif" filter="s60" long-name="Bluetooth Notifier">
+<component name="btnotif" long-name="Bluetooth Notifier" filter="s60" purpose="optional">
<unit bldFile="mw/btservices/bluetoothengine/btnotif/group"/>
</component>
-<component name="btdevicedialogplugin" filter="s60" long-name="Bluetooth Device Dialog Plugin" introduced="^4" plugin="Y">
+<component name="btdevicedialogplugin" long-name="Bluetooth Device Dialog Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/btservices/bluetoothengine/btnotif/btdevicedialogplugin" proFile="btdevicedialogplugin.pro"/>
</component>
-<component name="btaudioman" filter="s60" long-name="Bluetooth Audio Manager">
+<component name="btaudioman" long-name="Bluetooth Audio Manager" filter="s60" purpose="optional">
<unit bldFile="mw/btservices/bluetoothengine/btaudioman/group" filter="!test"/>
</component>
-<component name="btmac" filter="s60" long-name="Bluetooth Mono Audio Controller" plugin="Y">
+<component name="btmac" long-name="Bluetooth Mono Audio Controller" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/btservices/bluetoothengine/btmac/group"/>
</component>
-<component name="btsac" filter="s60" long-name="Bluetooth Stereo Audio Controller" plugin="Y">
+<component name="btsac" long-name="Bluetooth Stereo Audio Controller" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/btservices/bluetoothengine/btsac/group"/>
</component>
-<component name="btaudiostreamer" filter="s60" long-name="Bluetooth Audio Streamer">
+<component name="btaudiostreamer" long-name="Bluetooth Audio Streamer" filter="s60" purpose="optional">
<unit bldFile="mw/btservices/bluetoothengine/btaudiostreamer/group" filter="!test"/>
</component>
-<component name="btsap" filter="s60" long-name="Bluetooth SIM Access Profile" plugin="Y">
+<component name="btsap" long-name="Bluetooth SIM Access Profile" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/btservices/bluetoothengine/btsap/group"/>
</component>
-<component name="btui" filter="s60" long-name="Bluetooth UI">
+<component name="btui" long-name="Bluetooth UI" filter="s60" purpose="optional">
<unit bldFile="mw/btservices/bluetoothengine/btui" proFile="btui.pro"/>
</component>
-<component name="btpbap" filter="s60" long-name="Bluetooth Phonebook Access Profile" plugin="Y">
+<component name="btpbap" long-name="Bluetooth Phonebook Access Profile" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/btservices/bluetoothengine/btpbap/group"/>
</component>
-<component name="bthid" filter="s60" long-name="Bluetooth HID">
+<component name="bthid" long-name="Bluetooth HID" filter="s60" purpose="optional">
<unit bldFile="mw/btservices/bluetoothengine/bthid/group"/>
</component>
-<component name="btctrldcmoadapter" filter="s60" long-name="Bluetooth Control DCMO Adapter" introduced="^3" plugin="Y">
+<component name="btctrldcmoadapter" long-name="Bluetooth Control DCMO Adapter" introduced="^3" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/btservices/bluetoothengine/btctrldcmoadapter/group"/>
</component>
-<component name="btindicator" filter="s60" long-name="Bluetooth Indicator" introduced="^4">
+<component name="btindicator" long-name="Bluetooth Indicator" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/btservices/bluetoothengine/btindicator" proFile="btindicator.pro"/>
</component>
-<component name="bluetoothengine_conf" filter="s60" long-name="Bluetooth Engine Config" introduced="^4" class="config">
+<component name="bluetoothengine_conf" long-name="Bluetooth Engine Config" introduced="^4" filter="s60" purpose="optional" class="config">
<unit bldFile="mw/btservices/bluetoothengine/conf"/>
</component>
</collection>
@@ -5083,34 +5033,34 @@
</component>
</collection>
<collection name="atcommands" long-name="AT Commands" level="generic">
-<component name="modematplugin" long-name="Modem AT Plugin" filter="s60" introduced="^4" plugin="Y">
+<component name="modematplugin" long-name="Modem AT Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/btservices/atcommands/modematplugin/group"/>
</component>
-<component name="lccustomplugin" long-name="LC Custom Plugin" filter="s60" introduced="^4" plugin="Y">
+<component name="lccustomplugin" long-name="LC Custom Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/btservices/atcommands/lccustomplugin/group"/>
</component>
</collection>
<collection name="cbsatplugin" long-name="CBS AT Plugin" level="plugin">
-<component name="atmisccmdplugin" long-name="AT Misc Commands Plugin" filter="s60" introduced="^4" plugin="Y">
+<component name="atmisccmdplugin" long-name="AT Misc Commands Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/btservices/cbsatplugin/atmisccmdplugin/group"/>
</component>
</collection>
<collection name="btobexprofiles" long-name="BT OBEX Profiles" level="generic">
-<component name="obexreceiveservices" long-name="OBEX Receive Services" filter="s60">
+<component name="obexreceiveservices" long-name="OBEX Receive Services" filter="s60" purpose="optional">
<unit bldFile="mw/btservices/btobexprofiles/obexreceiveservices/group"/>
</component>
-<component name="btmsgviewer" long-name="BT Message Viewer" filter="s60" introduced="^4">
+<component name="btmsgviewer" long-name="BT Message Viewer" introduced="^4" filter="s60" purpose="optional">
<!-- should be moved out from under obexreceiveservices into own component dir -->
<unit bldFile="mw/btservices/btobexprofiles/obexreceiveservices/btmsgviewer" proFile="btmsgviewer.pro"/>
</component>
-<component name="obexsendservices" long-name="OBEX Send Services" filter="s60">
+<component name="obexsendservices" long-name="OBEX Send Services" filter="s60" purpose="optional">
<unit bldFile="mw/btservices/btobexprofiles/obexsendservices/group"/>
</component>
-<component name="obexhighway" long-name="OBEX Highway" filter="s60" introduced="^4">
+<component name="obexhighway" long-name="OBEX Highway" introduced="^4" filter="s60" purpose="optional">
<!-- should be moved out from under obexsendservices into own component dir -->
<unit bldFile="mw/btservices/btobexprofiles/obexsendservices/obexhighway" proFile="obexhighway.pro"/>
</component>
-<component name="obexserviceman" long-name="OBEX Service Manager" filter="s60">
+<component name="obexserviceman" long-name="OBEX Service Manager" filter="s60" purpose="optional">
<unit bldFile="mw/btservices/btobexprofiles/obexserviceman/group"/>
</component>
</collection>
@@ -5120,401 +5070,386 @@
</component>
</collection>
</block>
-<block name="usbservices" level="generic" long-name="USB Services" levels="framework server generic specific plugin">
+<block name="usbservices" level="generic" levels="framework server generic specific plugin" long-name="USB Services">
<collection name="usbservices_plat" long-name="USB Services Platform Interfaces" level="plugin">
-<component name="pictbridge_api" long-name="PictBridge API" filter="s60" class="api">
+<component name="pictbridge_api" long-name="PictBridge API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/usbservices/usbservices_plat/pictbridge_api/group"/>
</component>
-<component name="ptp_responder_api" long-name="PTP Responder API" filter="s60" class="api">
+<component name="ptp_responder_api" long-name="PTP Responder API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/usbservices/usbservices_plat/ptp_responder_api/group"/>
</component>
-<component name="ptp_transport_api" long-name="PTP Transport API" filter="s60" class="api">
+<component name="ptp_transport_api" long-name="PTP Transport API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/usbservices/usbservices_plat/ptp_transport_api/group"/>
</component>
-<component name="usb_device_control_plugin_api" long-name="USB Device Control Plug-in API" filter="s60" class="api">
+<component name="usb_device_control_plugin_api" long-name="USB Device Control Plug-in API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/usbservices/usbservices_plat/usb_device_control_plugin_api/group"/>
</component>
-<component name="usb_notifier_api" long-name="USB Notifier API" filter="s60" class="api">
+<component name="usb_notifier_api" long-name="USB Notifier API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/usbservices/usbservices_plat/usb_notifier_api/group"/>
</component>
-<component name="usb_personality_api_header" long-name="USB Personality API" filter="s60" class="api">
+<component name="usb_personality_api_header" long-name="USB Personality API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/usbservices/usbservices_plat/usb_personality_api_header/group"/>
</component>
-<component name="usb_personality_plugin_api" long-name="USB Personality Plug-in API" filter="s60" class="api">
+<component name="usb_personality_plugin_api" long-name="USB Personality Plug-in API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/usbservices/usbservices_plat/usb_personality_plugin_api/group"/>
</component>
-<component name="usb_secondary_display_api" long-name="USB Secondary Display API" filter="s60" class="api">
+<component name="usb_secondary_display_api" long-name="USB Secondary Display API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/usbservices/usbservices_plat/usb_secondary_display_api/group"/>
</component>
-<component name="usb_watcher_api" long-name="USB Watcher API" filter="s60" class="api">
+<component name="usb_watcher_api" long-name="USB Watcher API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/usbservices/usbservices_plat/usb_watcher_api/group"/>
</component>
-<component name="usb_watcher_info_api_header" long-name="USB Watcher Info API" filter="s60" class="api">
+<component name="usb_watcher_info_api_header" long-name="USB Watcher Info API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/usbservices/usbservices_plat/usb_watcher_info_api_header/group"/>
</component>
</collection>
<collection name="usbengines" long-name="USB Engines" level="generic">
-<component name="usbotgwatcher" filter="s60" long-name="USB OTG Watcher">
+<component name="usbotgwatcher" long-name="USB OTG Watcher" filter="s60" purpose="optional">
<unit bldFile="mw/usbservices/usbengines/usbotgwatcher/group"/>
</component>
-<component name="usbwatcher" filter="s60" long-name="USB Watcher">
+<component name="usbwatcher" long-name="USB Watcher" filter="s60" purpose="optional">
<unit bldFile="mw/usbservices/usbengines/usbwatcher/group"/>
</component>
-<component name="usblocodplugin" filter="s60" long-name="USB Local Connectivity Domain Plugin" plugin="Y">
+<component name="usblocodplugin" long-name="USB Local Connectivity Domain Plugin" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/usbservices/usbengines/usblocodplugin/group"/>
</component>
-<component name="usbdevcon" filter="s60" long-name="USB Device Control">
+<component name="usbdevcon" long-name="USB Device Control" filter="s60" purpose="optional">
<unit bldFile="mw/usbservices/usbengines/usbdevcon/group"/>
</component>
-<component name="usbremotepersonality" filter="s60" long-name="USB Remote Personality">
+<component name="usbremotepersonality" long-name="USB Remote Personality" filter="s60" purpose="optional">
<unit bldFile="mw/usbservices/usbengines/usbremotepersonality/group"/>
</component>
</collection>
<collection name="usbclasses" long-name="USB Classes" level="framework">
-<component name="usbobexclasscontroller" filter="s60" long-name="USB OBEX Class Controller" plugin="Y">
+<component name="usbobexclasscontroller" long-name="USB OBEX Class Controller" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/usbservices/usbclasses/usbobexclasscontroller/group"/>
</component>
-<component name="usbbasicpersonality" filter="s60" long-name="USB Basic Personality" plugin="Y">
+<component name="usbbasicpersonality" long-name="USB Basic Personality" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/usbservices/usbclasses/usbbasicpersonality/group"/>
</component>
-<component name="usbmscpersonality" filter="s60" long-name="USB MSC Personality" plugin="Y">
+<component name="usbmscpersonality" long-name="USB MSC Personality" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/usbservices/usbclasses/usbmscpersonality/group"/>
</component>
-<component name="usbphoneasmodem" filter="s60" long-name="USB Phone as Modem" introduced="^3">
+<component name="usbphoneasmodem" long-name="USB Phone as Modem" introduced="^3" filter="s60" purpose="optional">
<unit bldFile="mw/usbservices/usbclasses/usbphoneasmodem/group"/>
</component>
</collection>
<collection name="usbuis" long-name="USB UIs" level="specific">
-<component name="usbuinotif" filter="s60" long-name="USB UI Notifiers">
+<component name="usbuinotif" long-name="USB UI Notifiers" filter="s60" purpose="optional">
<unit bldFile="mw/usbservices/usbuis/usbuinotif" filter="!test" proFile="usbuinotif.pro" qmakeArgs="-r"/>
</component>
-<component name="imageprintuiprovider" filter="s60" long-name="ImagePrint UI Provider" plugin="Y">
+<component name="imageprintuiprovider" long-name="ImagePrint UI Provider" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/usbservices/usbuis/imageprintuiprovider/group"/>
</component>
-<component name="usbimageprintui" filter="s60" long-name="ImagePrint UI">
+<component name="usbimageprintui" long-name="ImagePrint UI" filter="s60" purpose="optional">
<unit bldFile="mw/usbservices/usbuis/imageprintui/group"/>
</component>
-<component name="usbsettingsapp" long-name="USB Settings Application" introduced="^4" filter="s60">
+<component name="usbsettingsapp" long-name="USB Settings Application" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/usbservices/usbuis/usbsettingsapp" proFile="usbsettingsapp.pro" qmakeArgs="-r"/>
</component>
-<component name="usbindicatorplugin" long-name="USB Indicator Plugin" introduced="^4" filter="s60" plugin="Y">
+<component name="usbindicatorplugin" long-name="USB Indicator Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/usbservices/usbuis/usbindicatorplugin" proFile="usbindicatorplugin.pro" qmakeArgs="-r"/>
</component>
</collection>
</block>
-<block name="imghandling" level="specific" long-name="Image Handling" levels="lib util if">
+<block name="imghandling" level="specific" levels="lib util if" long-name="Image Handling">
<collection name="imagehandling_plat" long-name="Image Handling Platform Interfaces" level="if">
-<component name="image_handling_library_api" long-name="Image Handling Library API" filter="s60" class="api">
+<component name="image_handling_library_api" long-name="Image Handling Library API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imghandling/imagehandling_plat/image_handling_library_api/group"/>
</component>
-<component name="3gp_library_api" long-name="3GP Library API" filter="s60" class="api">
+<component name="3gp_library_api" long-name="3GP Library API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imghandling/imagehandling_plat/3gp_library_api/group"/>
</component>
-<component name="thumbnailmanager_api" long-name="Thumbnail Manager API" filter="s60" class="api">
+<component name="thumbnailmanager_api" long-name="Thumbnail Manager API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/imghandling/imagehandling_plat/thumbnailmanager_api/group" filter="!test"/>
</component>
</collection>
<collection name="imagehandlinglib" long-name="Image Handling Library" level="lib">
<!-- collection is really a component, need to move down a directory -->
-<component name="ihl" filter="s60" long-name="IHL">
+<component name="ihl" long-name="IHL" filter="s60" purpose="optional">
<unit bldFile="mw/imghandling/imagehandlinglib/group"/>
</component>
</collection>
<collection name="imagehandlingutilities" long-name="Image Handling Utilities" level="util">
-<component name="thumbnailmanager" filter="s60" long-name="Thumbnail Manager">
+<component name="thumbnailmanager" long-name="Thumbnail Manager" filter="s60" purpose="optional">
<unit bldFile="mw/imghandling/imagehandlingutilities/thumbnailmanager/group"/>
</component>
-<component name="thumbnailmanagerqt" filter="s60" long-name="Thumbnail Manager Qt" introduced="^4">
+<component name="thumbnailmanagerqt" long-name="Thumbnail Manager Qt" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/imghandling/imagehandlingutilities/thumbnailmanager/thumbnailmanagerqt" filter="!test" proFile="thumbnailmanagerqt.pro" qmakeArgs="-r"/>
</component>
</collection>
</block>
-<block name="metadatasrv" level="specific" long-name="Legacy Metadata Services" levels="plugin framework server generic specific">
+<block name="metadatasrv" level="specific" levels="plugin framework server generic specific" long-name="Legacy Metadata Services">
<collection name="metadatasrv_pub" long-name="Legacy Metadata Services Public Interfaces" level="specific">
-<component name="media_fetch_api" long-name="Media Fetch API" filter="s60" class="api">
+<component name="media_fetch_api" long-name="Media Fetch API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/metadatasrv/metadatasrv_pub/media_fetch_api/group"/>
</component>
</collection>
<collection name="metadatasrv_plat" long-name="Legacy Metadata Services Platform Interfaces" level="specific">
-<component name="media_fetch_implementation_api" long-name="Media Fetch Implementation API" filter="s60" class="api">
+<component name="media_fetch_implementation_api" long-name="Media Fetch Implementation API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/metadatasrv/metadatasrv_plat/media_fetch_implementation_api/group"/>
</component>
</collection>
<collection name="mediamanagementutilities" long-name="Media Management Utilities" level="generic">
-<component name="mediafetch" filter="s60" long-name="Media Fetch">
+<component name="mediafetch" long-name="Media Fetch" filter="s60" purpose="optional">
<unit bldFile="mw/metadatasrv/mediamanagementutilities/mediafetch/group"/>
</component>
</collection>
</block>
-<block name="mds" level="specific" long-name="Metadata Services" levels="mgr eng server int">
+<block name="mds" level="specific" levels="mgr eng server int" long-name="Metadata Services">
<collection name="mds_plat" long-name="Metadata Services Platform Interfaces" level="int">
-<component name="context_engine_plugin_api" long-name="Context Engine Plugin API" introduced="^2" filter="s60" class="api">
+<component name="context_engine_plugin_api" long-name="Context Engine Plugin API" introduced="^2" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mds/mds_plat/context_engine_plugin_api/group" filter="!test"/>
</component>
-<component name="harvester_framework_api" long-name="Harvester Framework API" introduced="^2" filter="s60" class="api">
+<component name="harvester_framework_api" long-name="Harvester Framework API" introduced="^2" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mds/mds_plat/harvester_framework_api/group" filter="!test"/>
<!-- can only have one unit with the same filter, #include the following from the previous unit -->
</component>
-<component name="location_manager_api" long-name="Location Manager API" introduced="^2" filter="s60" class="api">
+<component name="location_manager_api" long-name="Location Manager API" introduced="^2" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mds/mds_plat/location_manager_api/group" filter="!test"/>
</component>
-<component name="metadata_engine_api" long-name="Metadata Engine API" introduced="^2" filter="s60" class="api">
+<component name="metadata_engine_api" long-name="Metadata Engine API" introduced="^2" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mds/mds_plat/metadata_engine_api/group" filter="!test"/>
</component>
-<component name="content_listing_framework_collection_manager_api" long-name="Content Listing Framework Collection Manager API" introduced="^2" filter="s60" class="api">
+<component name="content_listing_framework_collection_manager_api" long-name="Content Listing Framework Collection Manager API" introduced="^2" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mds/mds_plat/content_listing_framework_collection_manager_api/group" filter="!test"/>
</component>
-<component name="content_listing_framework_extended_api" long-name="Content Listing Framework Extended API" introduced="^2" filter="s60" class="api">
+<component name="content_listing_framework_extended_api" long-name="Content Listing Framework Extended API" introduced="^2" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mds/mds_plat/content_listing_framework_extended_api/group"/>
</component>
</collection>
<collection name="mds_pub" long-name="Metadata Services Public Interfaces" level="int">
-<component name="content_listing_framework_api" long-name="Content Listing Framework API" introduced="^2" filter="s60" class="api">
+<component name="content_listing_framework_api" long-name="Content Listing Framework API" introduced="^2" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mds/mds_pub/content_listing_framework_api/group" filter="!test"/>
</component>
</collection>
<collection name="metadataengine" long-name="Metadata Engine" level="eng">
-<component name="metadataengine_common" filter="s60" long-name="Metadata Engine Common" introduced="^2">
+<component name="metadataengine_common" long-name="Metadata Engine Common" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/mds/metadataengine/common/group"/>
</component>
-<component name="metadataengine_server" filter="s60" long-name="Metadata Engine Server" introduced="^2">
+<component name="metadataengine_server" long-name="Metadata Engine Server" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/mds/metadataengine/server/group"/>
</component>
-<component name="metadataengine_client" filter="s60" long-name="Metadata Engine Client" introduced="^2">
+<component name="metadataengine_client" long-name="Metadata Engine Client" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/mds/metadataengine/client/group"/>
</component>
-<component name="metadataengine_build" filter="s60" long-name="Metadata Engine Build" introduced="^2">
+<component name="metadataengine_build" long-name="Metadata Engine Build" introduced="^2" filter="s60" purpose="optional">
<!--make this collection a single component, or split this bld.inf into the other units -->
<unit bldFile="mw/mds/metadataengine/group"/>
</component>
</collection>
<collection name="locationmanager" long-name="Location Manager" level="mgr">
-<component name="geoconverter" filter="s60" long-name="Geoconverter" introduced="^4">
-<unit bldFile="mw/mds/locationmanager/geoconverter/group"/>
-</component>
-<component name="geo_tagcreator" filter="s60" long-name="Geo Tag Creator" introduced="^4">
-<unit bldFile="mw/mds/locationmanager/tagcreator/group"/>
-</component>
-<component name="reversegeocode" filter="s60" long-name="Reverse Geocode" introduced="^4">
-<unit bldFile="mw/mds/locationmanager/ReverseGeocode/group"/>
-</component>
-<component name="reversegeocoderplugin" filter="s60" long-name="Reverse Geo-Coder Plugin" introduced="^4" plugin="Y">
-<unit bldFile="mw/mds/locationmanager/ReverseGeoCoderPlugin/group"/>
-</component>
-<component name="geotagger" filter="s60" long-name="Geo Tagger" introduced="^4">
-<unit bldFile="mw/mds/locationmanager/geotagger/group"/>
-</component>
-<component name="locationtrail" filter="s60" long-name="Location Trail" introduced="^2">
+<component name="locationtrail" long-name="Location Trail" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/mds/locationmanager/locationtrail/group"/>
</component>
-<component name="locationmanager_server" filter="s60" long-name="Location Manager Server" introduced="^2">
+<component name="locationmanager_server" long-name="Location Manager Server" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/mds/locationmanager/server/group"/>
</component>
-<component name="locationmanager_client" filter="s60" long-name="Location Manager Client" introduced="^2">
+<component name="locationmanager_client" long-name="Location Manager Client" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/mds/locationmanager/client/group"/>
</component>
-<component name="locationmanager_build" filter="s60" long-name="Location Manager Build" introduced="^2">
+<component name="locationmanager_build" long-name="Location Manager Build" introduced="^2" filter="s60" purpose="optional">
<!--make this collection a single component, or split this bld.inf into the other units -->
<unit bldFile="mw/mds/locationmanager/group"/>
</component>
</collection>
<collection name="contextengine" long-name="Context Engine" level="eng">
-<component name="contextengine_plugins" filter="s60" long-name="Context Engine Plugins" introduced="^2" plugin="Y">
+<component name="contextengine_plugins" long-name="Context Engine Plugins" introduced="^2" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/mds/contextengine/plugins/group"/>
</component>
-<component name="contextengine_build" filter="s60" long-name="Context Engine Build" introduced="^2">
+<component name="contextengine_build" long-name="Context Engine Build" introduced="^2" filter="s60" purpose="optional">
<!--make this collection a single component, or make this unit self-contained -->
<unit bldFile="mw/mds/contextengine/group"/>
</component>
</collection>
<collection name="harvester" long-name="Harvester" level="eng">
-<component name="blacklistclient" filter="s60" long-name="Blacklist Client" introduced="^2">
+<component name="blacklistclient" long-name="Blacklist Client" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/mds/harvester/blacklistclient/group"/>
</component>
-<component name="blacklistserver" filter="s60" long-name="Blacklist Server" introduced="^2">
+<component name="blacklistserver" long-name="Blacklist Server" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/mds/harvester/blacklistserver/group"/>
</component>
-<component name="harvester_common" filter="s60" long-name="Harvester Common" introduced="^2">
+<component name="harvester_common" long-name="Harvester Common" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/mds/harvester/common/group"/>
</component>
-<component name="composerplugins" filter="s60" long-name="Composer Plugins" introduced="^2" plugin="Y">
+<component name="composerplugins" long-name="Composer Plugins" introduced="^2" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/mds/harvester/composerplugins/group"/>
</component>
-<component name="harvesterplugins" filter="s60" long-name="Harvester Plugins" introduced="^2" plugin="Y">
+<component name="harvesterplugins" long-name="Harvester Plugins" introduced="^2" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/mds/harvester/harvesterplugins/group"/>
</component>
-<component name="monitorplugins" filter="s60" long-name="Monitor Plugins" introduced="^2" plugin="Y">
+<component name="monitorplugins" long-name="Monitor Plugins" introduced="^2" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/mds/harvester/monitorplugins/group"/>
</component>
-<component name="harvester_server" filter="s60" long-name="Harvester Server" introduced="^2">
+<component name="harvester_server" long-name="Harvester Server" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/mds/harvester/server/group"/>
</component>
-<component name="harvester_client" filter="s60" long-name="Harvester Client" introduced="^2">
+<component name="harvester_client" long-name="Harvester Client" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/mds/harvester/client/group"/>
</component>
-<component name="harvester_build" filter="s60" long-name="Harvester Build" introduced="^2">
+<component name="harvester_build" long-name="Harvester Build" introduced="^2" filter="s60" purpose="optional">
<!-- split these exports into the other components -->
<unit bldFile="mw/mds/harvester/group"/>
</component>
</collection>
<collection name="watchdog" long-name="Watchdog" level="server">
<!-- collection is really a component. Move down a directory -->
-<component name="mdswatchdog" filter="s60" long-name="Metadata Watchdog" introduced="^2">
+<component name="mdswatchdog" long-name="Metadata Watchdog" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/mds/watchdog/group"/>
</component>
</collection>
<collection name="clfwrapper" long-name="Content Listing Framework Wrapper" level="int">
<!-- collection is really a component. Move down a directory -->
-<component name="clfwrapper_build" filter="s60" long-name="CLF Wrapper Build" introduced="^2">
+<component name="clfwrapper_build" long-name="CLF Wrapper Build" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/mds/clfwrapper/group"/>
</component>
</collection>
<collection name="mds_info" long-name="Metadata Services Info" level="int">
-<component name="mds_build" filter="s60" long-name="Metadata Services Build" introduced="^2">
+<component name="mds_build" long-name="Metadata Services Build" introduced="^2" filter="s60" purpose="optional">
<!-- consider distributiing this into the rest of the components in the package -->
<unit bldFile="mw/mds/group"/>
</component>
</collection>
</block>
-<block name="videoutils" level="specific" long-name="Video Utils" levels="eng util if">
+<block name="videoutils" level="specific" levels="eng util if" long-name="Video Utils">
<collection name="videoutils_plat" long-name="Video Utils Platform Interfaces" level="if">
-<component name="videoscheduler_api" long-name="Video Scheduler API" filter="s60" class="api">
+<component name="videoscheduler_api" long-name="Video Scheduler API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/videoutils/videoutils_plat/videoscheduler_api/group"/>
</component>
-<component name="videoplayer_constants_api" long-name="Videoplayer Constants API" filter="s60" class="api">
+<component name="videoplayer_constants_api" long-name="Videoplayer Constants API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/videoutils/videoutils_plat/videoplayer_constants_api/group"/>
</component>
</collection>
<collection name="videoscheduler" long-name="Video Scheduler" level="util">
<!-- don't build these -->
-<component name="schedulerclient" filter="s60" long-name="Video Scheduler Client"/>
-<component name="schedulerserver" filter="s60" long-name="Video Scheduler Server"/>
+<component name="schedulerclient" long-name="Video Scheduler Client" filter="s60" purpose="optional"/>
+<component name="schedulerserver" long-name="Video Scheduler Server" filter="s60" purpose="optional"/>
</collection>
</block>
-<block name="mmmw" level="generic" long-name="Multimedia Middleware" levels="plugin framework server generic specific">
+<block name="mmmw" level="generic" levels="plugin framework server generic specific" long-name="Multimedia Middleware">
<collection name="mmmw_plat" long-name="Multimedia Middleware Platform Interfaces" level="specific">
-<component name="multimedia_data_source_api" long-name="Multimedia Data Source API" filter="s60" class="api">
+<component name="multimedia_data_source_api" long-name="Multimedia Data Source API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/multimedia_data_source_api/group"/>
</component>
-<component name="enhanced_media_client_api" long-name="Enhanced Media Client API" filter="s60" class="api">
+<component name="enhanced_media_client_api" long-name="Enhanced Media Client API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/enhanced_media_client_api/group" filter="!test"/>
</component>
-<component name="stream_control_custom_command_api" long-name="Stream Control Custom Command API" filter="s60" class="api">
+<component name="stream_control_custom_command_api" long-name="Stream Control Custom Command API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/stream_control_custom_command_api/group"/>
</component>
-<component name="emc_buffer_source_api" long-name="EMC Buffer Source API" filter="s60" class="api">
+<component name="emc_buffer_source_api" long-name="EMC Buffer Source API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/emc_buffer_source_api/group"/>
</component>
-<component name="emc_file_source_api" long-name="EMC File Source API" filter="s60" class="api">
+<component name="emc_file_source_api" long-name="EMC File Source API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/emc_file_source_api/group"/>
</component>
-<component name="audio_metadata_reader_api" long-name="Audio MetaData Reader API" filter="s60" class="api">
+<component name="audio_metadata_reader_api" long-name="Audio MetaData Reader API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/audio_metadata_reader_api/group" filter="!test"/>
</component>
-<component name="emc_volume_effect_api" long-name="EMC Volume Effect API" filter="s60" class="api">
+<component name="emc_volume_effect_api" long-name="EMC Volume Effect API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/emc_volume_effect_api/group"/>
</component>
-<component name="emc_balance_effect_api" long-name="EMC Balance Effect API" filter="s60" class="api">
+<component name="emc_balance_effect_api" long-name="EMC Balance Effect API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/emc_balance_effect_api/group"/>
</component>
-<component name="emc_descriptor_source_api" long-name="EMC Descriptor Source API" filter="s60" class="api">
+<component name="emc_descriptor_source_api" long-name="EMC Descriptor Source API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/emc_descriptor_source_api/group"/>
</component>
-<component name="emc_drm_config_intfc_api" long-name="EMC DRM Config Intfc API" filter="s60" class="api">
+<component name="emc_drm_config_intfc_api" long-name="EMC DRM Config Intfc API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/emc_drm_config_intfc_api/group"/>
</component>
-<component name="voip_audio_services_api" long-name="VoIP Audio Services" filter="s60" class="api">
+<component name="voip_audio_services_api" long-name="VoIP Audio Services" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/voip_audio_services_api/group" filter="!test"/>
</component>
-<component name="configuration_components_factory_api" long-name="Configuration Components Factory API" filter="s60" class="api">
+<component name="configuration_components_factory_api" long-name="Configuration Components Factory API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/configuration_components_factory_api/group"/>
</component>
-<component name="audio_output_control_utility_api" long-name="Audio Output Control Utility API" filter="s60" class="api">
+<component name="audio_output_control_utility_api" long-name="Audio Output Control Utility API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/audio_output_control_utility_api/group" filter="!test"/>
</component>
-<component name="audio_output_control_utility_proxy_api" long-name="Audio Output Control Utility Proxy API" filter="s60" class="api">
+<component name="audio_output_control_utility_proxy_api" long-name="Audio Output Control Utility Proxy API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/audio_output_control_utility_proxy_api/group"/>
</component>
-<component name="emc_audio_effects_api" long-name="EMC Audio Effects API" filter="s60" class="api">
+<component name="emc_audio_effects_api" long-name="EMC Audio Effects API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/emc_audio_effects_api/group"/>
</component>
-<component name="call_audio_control_api" long-name="Call AudioControl API" filter="s60" class="api">
+<component name="call_audio_control_api" long-name="Call AudioControl API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/call_audio_control_api/group" filter="!test"/>
</component>
-<component name="radio_utilities_api" long-name="Radio Utilities API" filter="s60" class="api">
+<component name="radio_utilities_api" long-name="Radio Utilities API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/radio_utilities_api/group" filter="!test"/>
</component>
-<component name="radio_preset_utilities_api" long-name="Radio Preset Utilities API" filter="s60" class="api">
+<component name="radio_preset_utilities_api" long-name="Radio Preset Utilities API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/radio_preset_utilities_api/group"/>
</component>
-<component name="radio_monitor_api" long-name="Radio Monitor API" filter="s60" class="api">
+<component name="radio_monitor_api" long-name="Radio Monitor API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/radio_monitor_api/group"/>
</component>
-<component name="thumbnail_engine_api" long-name="Thumbnail Engine API" filter="s60" class="api">
+<component name="thumbnail_engine_api" long-name="Thumbnail Engine API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/thumbnail_engine_api/group" filter="!test"/>
</component>
-<component name="telephony_multimedia_service_api" long-name="Telephony Multimedia Service API" filter="s60" class="api">
+<component name="telephony_multimedia_service_api" long-name="Telephony Multimedia Service API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/telephony_multimedia_service_api/group" filter="!test"/>
</component>
-<component name="openmax_al_api" long-name="OpenMAX AL API" filter="s60" introduced="^4" class="api">
+<component name="openmax_al_api" long-name="OpenMAX AL API" introduced="^4" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/openmax_al_api/group" filter="!test"/>
</component>
-<component name="openmax_al_ext_api" long-name="OpenMAX AL Extensions API" filter="s60" introduced="^4" class="api">
+<component name="openmax_al_ext_api" long-name="OpenMAX AL Extensions API" introduced="^4" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/openmax_al_ext_api/group"/>
</component>
-<component name="system_tone_service_api" long-name="System Tone Service API" filter="s60" introduced="^4" class="api">
+<component name="system_tone_service_api" long-name="System Tone Service API" introduced="^4" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/system_tone_service_api/group"/>
</component>
</collection>
<collection name="khronosfws" long-name="Khronos Frameworks" level="framework">
-<component name="openmax_al" filter="s60" long-name="OpenMAX AL" introduced="^4">
+<component name="openmax_al" long-name="OpenMAX AL" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/mmmw/khronosfws/openmax_al/group"/>
</component>
</collection>
<collection name="mmfenh" long-name="MMF Enhancements" level="generic">
-<component name="advancedaudiocontroller" filter="s60" long-name="Advanced Audio Controllers" plugin="Y">
+<component name="advancedaudiocontroller" long-name="Advanced Audio Controllers" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/mmmw/mmfenh/advancedaudiocontroller/group"/>
</component>
-<component name="audiooutputcontrolutility" filter="s60" long-name="Audio Output Control Utility">
+<component name="audiooutputcontrolutility" long-name="Audio Output Control Utility" filter="s60" purpose="optional">
<unit bldFile="mw/mmmw/mmfenh/audiooutputcontrolutility/group"/>
</component>
-<component name="configurationcomponentsfactory" filter="s60" long-name="Configuration Components Factory">
+<component name="configurationcomponentsfactory" long-name="Configuration Components Factory" filter="s60" purpose="optional">
<unit bldFile="mw/mmmw/mmfenh/configurationcomponentsfactory/group"/>
</component>
-<component name="enhancedaudioplayerutility" filter="s60" long-name="Enhanced Audio Player Utility">
+<component name="enhancedaudioplayerutility" long-name="Enhanced Audio Player Utility" filter="s60" purpose="optional">
<unit bldFile="mw/mmmw/mmfenh/enhancedaudioplayerutility/group"/>
</component>
-<component name="enhancedmediaclient" filter="s60" long-name="Enhanced Media Client">
+<component name="enhancedmediaclient" long-name="Enhanced Media Client" filter="s60" purpose="optional">
<unit bldFile="mw/mmmw/mmfenh/enhancedmediaclient/group"/>
</component>
-<component name="profilesettingsmonitor" filter="s60" long-name="Profile Settings Monitor">
+<component name="profilesettingsmonitor" long-name="Profile Settings Monitor" filter="s60" purpose="optional">
<unit bldFile="mw/mmmw/mmfenh/profilesettingsmonitor/group"/>
</component>
-<component name="mmfenh_test" filter="s60,test,module_test,pref_test" long-name="MMF Enhancements Tests" purpose="development"/>
+<component name="mmfenh_test" long-name="MMF Enhancements Tests" filter="s60,test,module_test,pref_test" purpose="development"/>
</collection>
<collection name="mmserv" long-name="Multimedia Services" level="specific">
-<component name="callaudiocontrol" filter="s60" long-name="Call Audio Control">
+<component name="callaudiocontrol" long-name="Call Audio Control" filter="s60" purpose="optional">
<unit bldFile="mw/mmmw/mmserv/callaudiocontrol/group"/>
</component>
-<component name="metadatautility" filter="s60" long-name="Metadata Utility">
+<component name="metadatautility" long-name="Metadata Utility" filter="s60" purpose="optional">
<unit bldFile="mw/mmmw/mmserv/metadatautility/group"/>
</component>
-<component name="radioutility" filter="s60" long-name="Radio Utility">
+<component name="radioutility" long-name="Radio Utility" filter="s60" purpose="optional">
<unit bldFile="mw/mmmw/mmserv/radioutility/group"/>
</component>
-<component name="thumbnailengine" filter="s60" long-name="Thumbnail Engine" introduced="^2">
+<component name="thumbnailengine" long-name="Thumbnail Engine" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/mmmw/mmserv/thumbnailengine/group"/>
</component>
-<component name="tms" filter="s60" long-name="Telephony Multimedia Service" introduced="^3">
+<component name="tms" long-name="Telephony Multimedia Service" introduced="^3" filter="s60" purpose="optional">
<unit bldFile="mw/mmmw/mmserv/tms/group"/>
</component>
-<component name="voipaudioservices" filter="s60" long-name="VoIP Audio Services">
+<component name="voipaudioservices" long-name="VoIP Audio Services" filter="s60" purpose="optional">
<unit bldFile="mw/mmmw/mmserv/voipaudioservices/group"/>
</component>
-<component name="lib3gpextparser" filter="s60" long-name="3GP Extension Metadata Parser Library">
+<component name="lib3gpextparser" long-name="3GP Extension Metadata Parser Library" filter="s60" purpose="optional">
<unit bldFile="mw/mmmw/mmserv/metadatautility/3GPExtParserLib_stub/group"/>
</component>
-<component name="sts" long-name="System Tone Service" filter="s60" introduced="^4">
+<component name="sts" long-name="System Tone Service" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/mmmw/mmserv/sts/group"/>
</component>
</collection>
@@ -5524,309 +5459,265 @@
</component>
</collection>
</block>
-<block name="gstreamer" level="generic" long-name="GStreamer" levels="plugin core api">
-<!-- Uncomment all units when configuration is in place. All currently #included from gstreamer_build -->
-<!-- structure matches planned directory layout -->
-<collection name="gstreamerfw" long-name="GStreamer Framework" level="core">
-<component name="gstreamer_core" long-name="GStreamer Core" introduced="^3" class="placeholder">
-<!--<unit bldFile="gstreamer_core/group"/>-->
-</component>
-</collection>
-<collection name="gst_plugins" long-name="GStreamer Plugins" level="plugin">
-<component name="gst_plugins_base" long-name="GStreamer Base Plugins" introduced="^3" class="placeholder">
-<!--<unit bldFile="gst_plugins_base/group"/>-->
-</component>
-<component name="gst_plugins_good" long-name="GStreamer Good Plugins" introduced="^3" class="placeholder">
-<!--<unit bldFile="gst_plugins_good/group"/>-->
-</component>
-<component name="gst_plugins_symbian" filter="s60" long-name="GStreamer Sybmian Plugins" introduced="^3" class="placeholder">
-<!--<unit bldFile="gst_plugins_symbian/group" filter="!test"/>-->
-<!-- add ,pref_test,TA_GSTREAMER filters later -->
-</component>
-</collection>
-<collection name="gstregistrygenerator" long-name="GStreamer Registry Generator" level="core">
-<!-- collection is really a component. Move down an directory -->
-<component name="gstregistrygenerator_build" filter="s60" long-name="GStreamer Registry Generator Build" introduced="^3" class="placeholder">
-<!-- <unit bldFile="gstregistrygenerator/group"/>-->
-</component>
-</collection>
-<collection name="gst_test_apps" long-name="GStreamer Test Applications" level="api">
-<component name="gst_player" filter="s60" long-name="GStreamer Player" introduced="^3" purpose="development" class="placeholder">
-<!-- <unit bldFile="gst_test_apps/gst_player/group"/>-->
-</component>
-</collection>
-<collection name="gstreamer_info" long-name="GStreamer Info" level="api">
-<component name="gstreamer_build" filter="s60" long-name="GStreamer Build" introduced="^3">
-<!-- make this a ROM component or split up instead? -->
-<unit bldFile="mw/gstreamer/group"/>
-</component>
-</collection>
-</block>
-<block name="helix" level="generic" long-name="Helix" levels="plugin framework server generic specific">
+<block name="helix" level="generic" levels="plugin framework server generic specific" long-name="Helix">
<collection name="helix_ren" long-name="Helix Engine" level="framework">
<!-- what does "ren" stand for? -->
-<component name="helix_stub" filter="s60" long-name="Helix Stub" introduced="^2" class="api">
+<component name="helix_stub" long-name="Helix Stub" introduced="^2" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/helix/helix_ren/helix_stub/group"/>
</component>
</collection>
</block>
-<block name="camerasrv" level="specific" long-name="Camera Services" levels="plugin fw api">
+<block name="camerasrv" level="specific" levels="plugin fw api" long-name="Camera Services">
<collection name="camerasrv_plat" long-name="Camera Services Platform Interfaces" level="api">
-<component name="media_recorder_sink_api" long-name="Media Recorder Sink API" filter="s60" class="api">
+<component name="media_recorder_sink_api" long-name="Media Recorder Sink API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/camerasrv/camerasrv_plat/media_recorder_sink_api/group"/>
</component>
-<component name="custom_onboard_camera_api" long-name="Custom Onboard Camera API" filter="s60" class="api">
+<component name="custom_onboard_camera_api" long-name="Custom Onboard Camera API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/camerasrv/camerasrv_plat/custom_onboard_camera_api/group"/>
</component>
-<component name="imaging_configuration_manager_api" long-name="Imaging Configuration Manager API" filter="s60" class="api">
+<component name="imaging_configuration_manager_api" long-name="Imaging Configuration Manager API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/camerasrv/camerasrv_plat/imaging_configuration_manager_api/group" filter="!test"/>
</component>
-<component name="media_recorder_api" long-name="Media Recorder API" filter="s60" class="api">
+<component name="media_recorder_api" long-name="Media Recorder API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/camerasrv/camerasrv_plat/media_recorder_api/group" filter="!test"/>
</component>
-<component name="3gp_file_composer_api" long-name="3GP File Composer API" filter="s60" class="api">
+<component name="3gp_file_composer_api" long-name="3GP File Composer API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/camerasrv/camerasrv_plat/3gp_file_composer_api/group"/>
</component>
</collection>
<collection name="camcordermmfplugin" long-name="Camcorder MMF Plugin" level="plugin">
<!-- collection is really a component. Should move down a directory -->
-<component name="camcordermmfplugin_build" filter="s60" long-name="Camcorder MMF Plugin Build" plugin="Y">
+<component name="camcordermmfplugin_build" long-name="Camcorder MMF Plugin Build" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/camerasrv/camcordermmfplugin/build"/>
</component>
</collection>
<collection name="configmanagers" long-name="Config Managers" level="api">
-<component name="imagingconfigmanager" filter="s60" long-name="Imaging Config Manager">
+<component name="imagingconfigmanager" long-name="Imaging Config Manager" filter="s60" purpose="optional">
<unit bldFile="mw/camerasrv/configmanagers/imagingconfigmanager/group"/>
</component>
</collection>
<collection name="camerasrv_info" long-name="Camera Services Info" level="api">
-<component name="camerasrv_build" filter="s60" long-name="Camera Services Build">
+<component name="camerasrv_build" long-name="Camera Services Build" filter="s60" purpose="optional">
<!-- should split into individual bld.infs -->
<unit bldFile="mw/camerasrv/group"/>
</component>
</collection>
</block>
-<block name="mmappfw" level="specific" long-name="Multimedia App Framework" levels="fw utils if">
+<block name="mmappfw" level="specific" levels="fw utils if" long-name="Multimedia App Framework">
<collection name="mmappfw_plat" long-name="Multimedia App Framework Platform Interfaces" level="if">
-<component name="collection_helper_api" long-name="Collection Helper API" introduced="^1" filter="s60" class="api">
+<component name="collection_helper_api" long-name="Collection Helper API" introduced="^1" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/collection_helper_api/group"/>
</component>
-<component name="harvester_collection_mediator_api" long-name="Harvester Collection Mediator API" introduced="^1" filter="s60" class="api">
+<component name="harvester_collection_mediator_api" long-name="Harvester Collection Mediator API" introduced="^1" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/harvester_collection_mediator_api/group"/>
</component>
-<component name="harvester_metadata_extractor_api" long-name="Harvester Metadata Extractor API" introduced="^1" filter="s60" class="api">
+<component name="harvester_metadata_extractor_api" long-name="Harvester Metadata Extractor API" introduced="^1" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/harvester_metadata_extractor_api/group"/>
</component>
-<component name="harvester_server_api" long-name="Harvester Server API" introduced="^1" filter="s60" class="api">
+<component name="harvester_server_api" long-name="Harvester Server API" introduced="^1" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/harvester_server_api/group"/>
</component>
-<component name="harvester_utility_api" long-name="Harvester Utility API" introduced="^1" filter="s60" class="api">
+<component name="harvester_utility_api" long-name="Harvester Utility API" introduced="^1" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/harvester_utility_api/group"/>
</component>
-<component name="playlist_engine_api" long-name="Playlist Engine API" introduced="^1" filter="s60" class="api">
+<component name="playlist_engine_api" long-name="Playlist Engine API" introduced="^1" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/playlist_engine_api/group"/>
</component>
-<component name="mtp_keys_api" long-name="MTP Keys API" introduced="^1" filter="s60" class="api">
+<component name="mtp_keys_api" long-name="MTP Keys API" introduced="^1" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/mtp_keys_api/group"/>
</component>
-<component name="mpx_collection_common_definition_api" long-name="MPX Collection Common Definition API" introduced="^1" filter="s60" class="api">
+<component name="mpx_collection_common_definition_api" long-name="MPX Collection Common Definition API" introduced="^1" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/mpx_collection_common_definition_api/group"/>
</component>
-<component name="mpx_collection_utility_api" long-name="MPX Collection Utility API" introduced="^1" filter="s60" class="api">
+<component name="mpx_collection_utility_api" long-name="MPX Collection Utility API" introduced="^1" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/mpx_collection_utility_api/group"/>
</component>
-<component name="mpx_common_api" long-name="MPX Common API" introduced="^1" filter="s60" class="api">
+<component name="mpx_common_api" long-name="MPX Common API" introduced="^1" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/mpx_common_api/group"/>
</component>
-<component name="mpx_common_definition_api" long-name="MPX Common Definition API" introduced="^1" filter="s60" class="api">
+<component name="mpx_common_definition_api" long-name="MPX Common Definition API" introduced="^1" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/mpx_common_definition_api/group"/>
</component>
-<component name="mpx_playback_common_definition_api" long-name="MPX Playback Common Definition API" introduced="^1" filter="s60" class="api">
+<component name="mpx_playback_common_definition_api" long-name="MPX Playback Common Definition API" introduced="^1" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/mpx_playback_common_definition_api/group"/>
</component>
-<component name="mpx_playback_utility_api" long-name="MPX Playback Utility API" introduced="^1" filter="s60" class="api">
+<component name="mpx_playback_utility_api" long-name="MPX Playback Utility API" introduced="^1" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/mpx_playback_utility_api/group"/>
</component>
-<component name="mpx_base_view_plugins_api" long-name="MPX Base View Plugins API" introduced="^1" filter="s60" class="api">
+<component name="mpx_base_view_plugins_api" long-name="MPX Base View Plugins API" introduced="^1" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/mpx_base_view_plugins_api/group"/>
</component>
-<component name="mpx_view_utility_api" long-name="MPX View Utility API" introduced="^1" filter="s60" class="api">
+<component name="mpx_view_utility_api" long-name="MPX View Utility API" introduced="^1" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/mpx_view_utility_api/group"/>
</component>
-<component name="mpx_albumart_utility_api" long-name="MPX Album Art Utility API" introduced="^1" filter="s60" class="api">
+<component name="mpx_albumart_utility_api" long-name="MPX Album Art Utility API" introduced="^1" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/mpx_albumart_utility_api/group"/>
</component>
-<component name="media_player_settings_engine_api" long-name="Media Player Settings Engine API" introduced="^1" filter="s60" class="api">
+<component name="media_player_settings_engine_api" long-name="Media Player Settings Engine API" introduced="^1" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/media_player_settings_engine_api/group"/>
</component>
-<component name="mpx_backstepping_utility_api" long-name="MPX Backstepping Utility API" introduced="^1" filter="s60" class="api">
-<unit bldFile="mw/mmappfw/mmappfw_plat/mpx_backstepping_utility_api/group"/>
-</component>
-<component name="asx_parser_api" long-name="ASX Parser API" introduced="^1" filter="s60" class="api">
+<component name="asx_parser_api" long-name="ASX Parser API" introduced="^1" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/asx_parser_api/group"/>
</component>
-<component name="playback_helper_api" long-name="Playback Helper API" introduced="^1" filter="s60" class="api">
+<component name="playback_helper_api" long-name="Playback Helper API" introduced="^1" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/playback_helper_api/group"/>
</component>
-<component name="videoplaylist_utility_api" long-name="Video Playlist Utility API" introduced="^1" filter="s60" class="api">
+<component name="videoplaylist_utility_api" long-name="Video Playlist Utility API" introduced="^1" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/videoplaylist_utility_api/group"/>
</component>
-<component name="qt_telephony_multimedia_service_api" long-name="Qt Telephony Multimedia Service API" introduced="^4" filter="s60" class="api">
+<component name="qt_telephony_multimedia_service_api" long-name="Qt Telephony Multimedia Service API" introduced="^4" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/mmappfw/mmappfw_plat/qt_telephony_multimedia_service_api/group"/>
</component>
</collection>
<collection name="mpx" long-name="Multimedia Player" level="fw">
-<component name="commonframework" filter="s60" long-name="MPX Common Framework" introduced="^1">
+<component name="commonframework" long-name="MPX Common Framework" introduced="^1" filter="s60" purpose="optional">
<unit bldFile="mw/mmappfw/mpx/commonframework/group"/>
</component>
-<component name="playbackframework" filter="s60" long-name="MPX Playback Framework" introduced="^1">
+<component name="playbackframework" long-name="MPX Playback Framework" introduced="^1" filter="s60" purpose="optional">
<unit bldFile="mw/mmappfw/mpx/playbackframework/group"/>
</component>
-<component name="mpxcollectionfw" filter="s60" long-name="MPX Collection Framework" introduced="^1">
+<component name="mpxcollectionfw" long-name="MPX Collection Framework" introduced="^1" filter="s60" purpose="optional">
<unit bldFile="mw/mmappfw/mpx/collectionframework/group"/>
</component>
-<component name="mpxviewfw" filter="s60" long-name="MPX View Framework" introduced="^1">
+<component name="mpxviewfw" long-name="MPX View Framework" introduced="^1" filter="s60" purpose="optional">
<unit bldFile="mw/mmappfw/mpx/viewframework/group"/>
</component>
-<component name="mpxviewframeworkqt" long-name="MPX View Framework Qt" filter="s60" introduced="^4">
+<component name="mpxviewframeworkqt" long-name="MPX View Framework Qt" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="mw/mmappfw/mpx/mpxviewframeworkqt" proFile="mpxviewframeworkqt.pro" qmakeArgs="-r -config rom"/>
</component>
-<component name="mpx_build" filter="s60" long-name="MPX Build" introduced="^1">
+<component name="mpx_build" long-name="MPX Build" introduced="^1" filter="s60" purpose="optional">
<!-- Move the export to another component or remove the #includes from this one -->
<unit bldFile="mw/mmappfw/mpx/group"/>
</component>
</collection>
<collection name="mmappcomponents" long-name="Multimedia App Components" level="utils">
-<component name="mmappcomponents_build" filter="s60" long-name="Multimedia App Components Build" introduced="^1">
-<!-- needed for #ifdefs and hrh include. Need to #include the .hrh file in each bld.inf
+<component name="mmappcomponents_build" long-name="Multimedia App Components Build" introduced="^1" filter="s60" purpose="optional">
+<!-- needed for #ifdefs and hrh include. Need to #include the .hrh file in each bld.inf
Can remove this once configuration is in place-->
<unit bldFile="mw/mmappfw/mmappcomponents/group"/>
</component>
-<component name="collectionhelper" filter="s60" long-name="Media Player Collection Helper" introduced="^1">
+<component name="collectionhelper" long-name="Media Player Collection Helper" introduced="^1" filter="s60" purpose="optional">
<unit bldFile="mw/mmappfw/mmappcomponents/collectionhelper/group"/>
</component>
-<component name="playlistengine" filter="s60" long-name="Playlist Engine" introduced="^1">
+<component name="playlistengine" long-name="Playlist Engine" introduced="^1" filter="s60" purpose="optional">
<unit bldFile="mw/mmappfw/mmappcomponents/playlistengine/group"/>
</component>
-<component name="mpxharvester" filter="s60" long-name="Media Player Harvester" introduced="^1">
+<component name="mpxharvester" long-name="Media Player Harvester" introduced="^1" filter="s60" purpose="optional">
<unit bldFile="mw/mmappfw/mmappcomponents/harvester/group"/>
</component>
-<component name="mmappcommonui" filter="s60" long-name="Multimedia App Common UI" introduced="^1">
+<component name="mmappcommonui" long-name="Multimedia App Common UI" introduced="^1" filter="s60" purpose="optional">
<unit bldFile="mw/mmappfw/mmappcomponents/mmappcommonui/group"/>
</component>
-<component name="mediaplayersettingsengine" filter="s60" long-name="Media Player Settings Engine" introduced="^1">
+<component name="mediaplayersettingsengine" long-name="Media Player Settings Engine" introduced="^1" filter="s60" purpose="optional">
<unit bldFile="mw/mmappfw/mmappcomponents/mediaplayersettingsengine/group"/>
</component>
-<component name="audiofetcher" filter="s60" long-name="Audio Fetcher" introduced="^1" plugin="Y">
-<unit bldFile="mw/mmappfw/mmappcomponents/audiofetcher/group"/>
-</component>
-<component name="asxparser" filter="s60" long-name="ASX Parser" introduced="^1">
+<component name="asxparser" long-name="ASX Parser" introduced="^1" filter="s60" purpose="optional">
<unit bldFile="mw/mmappfw/mmappcomponents/asxparser/group"/>
</component>
-<component name="playbackhelper" filter="s60" long-name="Playback Helper" introduced="^3">
+<component name="playbackhelper" long-name="Playback Helper" introduced="^3" filter="s60" purpose="optional">
<unit bldFile="mw/mmappfw/mmappcomponents/playbackhelper/group"/>
</component>
-<component name="videoplaylistutility" filter="s60" long-name="Video Playlist Utility" introduced="^3">
+<component name="videoplaylistutility" long-name="Video Playlist Utility" introduced="^3" filter="s60" purpose="optional">
<unit bldFile="mw/mmappfw/mmappcomponents/videoplaylistutility/group"/>
</component>
-<component name="mmmtpdataprovider" filter="s60" long-name="Multimedia MTP Data Provider" introduced="^3">
+<component name="mmmtpdataprovider" long-name="Multimedia MTP Data Provider" introduced="^3" filter="s60" purpose="optional">
<unit bldFile="mw/mmappfw/mmappcomponents/mmmtpdataprovider/group"/>
</component>
</collection>
<collection name="qtms" long-name="Qt Telephony Multimedia Services" level="fw">
-<component name="qtms_build" filter="s60" long-name="Qt Telephony Multimedia Services Build" introduced="^4">
+<component name="qtms_build" long-name="Qt Telephony Multimedia Services Build" introduced="^4" filter="s60" purpose="optional">
<!-- Collection is really a component. Move down a dir -->
<unit bldFile="mw/mmappfw/qtms" proFile="qtmsapi.pro" qmakeArgs="-r -config rom"/>
</component>
</collection>
<collection name="mmappfw_info" long-name="Multimedia App Framework Info" level="if">
-<component name="mmappfw_build" filter="s60" long-name="Multimedia App Framework Build" introduced="^1">
+<component name="mmappfw_build" long-name="Multimedia App Framework Build" introduced="^1" filter="s60" purpose="optional">
<!-- Move the export to another component or remove the #includes from this one -->
<unit bldFile="mw/mmappfw/group"/>
</component>
-<component name="mmappfw_test" filter="s60,test,api_test,pref_test" long-name="Multimedia App Framework Test" purpose="development" introduced="^1"/>
+<component name="mmappfw_test" long-name="Multimedia App Framework Test" introduced="^1" filter="s60,test,api_test,pref_test" purpose="development"/>
</collection>
</block>
-<block name="hgwidgets" level="specific" long-name="Multimedia Widgets" levels="framework service api">
+<block name="hgwidgets" level="specific" levels="framework service api" long-name="Multimedia Widgets">
<collection name="hgwidgets_plat" long-name="Multimedia Widgets Platform Interfaces" level="api">
-<component name="ganeswidgets_api" long-name="Ganes Widgets API" introduced="^4" class="api placeholder">
+<component name="ganeswidgets_api" long-name="Ganes Widgets API" introduced="^4" purpose="optional" class="api placeholder">
<!-- should separate out unit -->
</component>
-<component name="hgcacheproxymodel_api" long-name="Hg Cache Proxy Model API" introduced="^4" class="api placeholder">
+<component name="hgcacheproxymodel_api" long-name="Hg Cache Proxy Model API" introduced="^4" purpose="optional" class="api placeholder">
<!-- should separate out unit -->
</component>
-<component name="hgwidgets_plat_build" long-name="Multimedia Widgets Platform Interfaces Build" introduced="^4" class="api">
+<component name="hgwidgets_plat_build" long-name="Multimedia Widgets Platform Interfaces Build" introduced="^4" purpose="optional" class="api">
<!-- break this up into separate components -->
<unit bldFile="mw/hgwidgets/hgwidgets_plat" proFile="hgwidgets_plat.pro"/>
</component>
</collection>
<collection name="ganeswidgets" long-name="Ganes Widgets" level="service">
<!-- really a component, should move down a dir level and have a unit -->
-<component name="ganeswidgets_build" long-name="Ganes Widgets Build" introduced="^4" filter="build_as_app">
+<component name="ganeswidgets_build" long-name="Ganes Widgets Build" introduced="^4" filter="build_as_app" purpose="optional">
<unit bldFile="mw/hgwidgets/ganeswidgets" proFile="ganeswidgets.pro"/>
</component>
</collection>
<collection name="hgcacheproxymodel" long-name="Hurriganes Cache Proxy Model" level="framework">
<!-- really a component, should move down a dir level and have a unit -->
-<component name="hgcacheproxymodel_build" long-name="Hurriganes Cache Proxy Model Build" introduced="^4">
+<component name="hgcacheproxymodel_build" long-name="Hurriganes Cache Proxy Model Build" introduced="^4" purpose="optional">
<unit bldFile="mw/hgwidgets/hgcacheproxymodel" proFile="hgcacheproxymodel.pro"/>
</component>
</collection>
</block>
-<block name="inputmethods" level="generic" long-name="Input Methods" levels="plugin engine framework api">
+<block name="inputmethods" level="generic" levels="plugin engine framework api" long-name="Input Methods">
<collection name="inputmethods_pub" long-name="Input Methods Public Interfaces" level="api">
-<component name="ptiengine_iti_api" long-name="PTI Engine API" filter="s60" class="api">
+<component name="ptiengine_iti_api" long-name="PTI Engine API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/inputmethods/inputmethods_pub/ptiengine_iti_api/group"/>
</component>
-<component name="optical_character_recognition_api" long-name="Optical Character Recognition API" filter="s60" class="api">
+<component name="optical_character_recognition_api" long-name="Optical Character Recognition API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/inputmethods/inputmethods_pub/optical_character_recognition_api/group"/>
</component>
-<component name="input_language_info_api" long-name="Input Language Info API" filter="s60" class="api">
+<component name="input_language_info_api" long-name="Input Language Info API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/inputmethods/inputmethods_pub/input_language_info_api/group"/>
</component>
</collection>
<collection name="inputmethods_plat" long-name="Input Methods Platform Interfaces" level="api">
-<component name="pen_input_server_api" long-name="Pen Input Server API" filter="s60" class="api">
+<component name="pen_input_server_api" long-name="Pen Input Server API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/inputmethods/inputmethods_plat/pen_input_server_api/group"/>
</component>
-<component name="ptiengine_hwr_api" long-name="PTI Engine Handwriting Recognition API" filter="s60" class="api">
+<component name="ptiengine_hwr_api" long-name="PTI Engine Handwriting Recognition API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/inputmethods/inputmethods_plat/ptiengine_hwr_api/group"/>
</component>
-<component name="aknfep_settings_api" long-name="Avkon FEP Settings API" filter="s60" class="api">
+<component name="aknfep_settings_api" long-name="Avkon FEP Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/inputmethods/inputmethods_plat/aknfep_settings_api/group"/>
</component>
-<component name="aknfep_status_api" long-name="Avkon FEP Status API" filter="s60" class="api">
+<component name="aknfep_status_api" long-name="Avkon FEP Status API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/inputmethods/inputmethods_plat/aknfep_status_api/group"/>
</component>
-<component name="ptiengine_key_definations_api" long-name="PTI Engine Key Definitions API" filter="s60" class="api">
+<component name="ptiengine_key_definations_api" long-name="PTI Engine Key Definitions API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/inputmethods/inputmethods_plat/ptiengine_key_definations_api/group"/>
</component>
-<component name="aknfep_definitions_api" long-name="Avkon FEP Definitions API" filter="s60" class="api">
+<component name="aknfep_definitions_api" long-name="Avkon FEP Definitions API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/inputmethods/inputmethods_plat/aknfep_definitions_api/group"/>
</component>
-<component name="aknfep_pen_support_api" long-name="Avkon FEP Pen Support API" filter="s60" class="api">
+<component name="aknfep_pen_support_api" long-name="Avkon FEP Pen Support API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/inputmethods/inputmethods_plat/aknfep_pen_support_api/group"/>
</component>
-<component name="ptiengine_indic_definitions_api" long-name="PTI Engine Indic Definitions API" filter="s60" class="api">
+<component name="ptiengine_indic_definitions_api" long-name="PTI Engine Indic Definitions API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/inputmethods/inputmethods_plat/ptiengine_indic_definitions_api/group"/>
</component>
-<component name="aknfep_uiinterface_api" long-name="Avkon FEP UI Interface API" filter="s60" class="api">
+<component name="aknfep_uiinterface_api" long-name="Avkon FEP UI Interface API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/inputmethods/inputmethods_plat/aknfep_uiinterface_api/group"/>
</component>
</collection>
<collection name="textinput" long-name="Text Input" level="framework">
-<component name="ptienginev2" filter="s60" long-name="Predictive Text Input Engine">
+<component name="ptienginev2" long-name="Predictive Text Input Engine" filter="s60" purpose="optional">
<unit bldFile="mw/inputmethods/textinput/ptienginev2/group"/>
</component>
-<component name="akninputlanguage" filter="s60" long-name="Avkon Input Language">
+<component name="akninputlanguage" long-name="Avkon Input Language" filter="s60" purpose="optional">
<unit bldFile="mw/inputmethods/textinput/akninputlanguage/group"/>
</component>
-<component name="peninputarc" filter="s60" long-name="Pen Input Arc">
+<component name="peninputarc" long-name="Pen Input Arc" filter="s60" purpose="optional">
<unit bldFile="mw/inputmethods/textinput/peninputarc/group"/>
</component>
</collection>
<collection name="fep" long-name="FEP" level="engine">
-<component name="aknfep" filter="s60" long-name="Avkon FEP" plugin="Y">
+<component name="aknfep" long-name="Avkon FEP" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/inputmethods/fepstub/group"/>
</component>
<component name="frontendprocessor" long-name="Front End Processor" purpose="mandatory">
@@ -5839,574 +5730,571 @@
</component>
</collection>
</block>
-<block name="qt" level="generic" long-name="Qt" levels="tool mw app">
+<block name="qt" level="generic" levels="tool mw app" long-name="Qt">
<collection name="qtconf" long-name="Qt Config" level="tool">
-<component name="qt_deviceconfiguration" long-name="Qt Device Configuration" filter="qt_tools" introduced="^2" class="config tool">
+<component name="qt_deviceconfiguration" long-name="Qt Device Configuration" introduced="^2" filter="qt_tools" purpose="optional" class="config tool">
<unit bldFile="mw/qt/src/s60installs/deviceconfiguration"/>
</component>
</collection>
<collection name="qt_info" long-name="Qt Info" level="mw">
-<component name="qt_build" long-name="Qt Build" introduced="^2">
-<unit bldFile="mw/qt" proFile="projects.pro" qmakeArgs="-r"/>
+<component name="qt_build" long-name="Qt Build" introduced="^2" purpose="optional">
+<unit bldFile="mw/qt/." proFile="projects.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="qtdemos" long-name="Qt Demos" level="app"/>
<collection name="qtexamples" long-name="Qt Examples" level="app"/>
<collection name="qt_tests" long-name="Qt Tests" level="app"/>
</block>
-<block name="qtextensions" level="generic" long-name="Qt Extensions" levels="tool mw app">
+<block name="qtmobility" level="generic" levels="tool mw app" long-name="Qt Mobility">
+<collection name="qtmobility_collection" long-name="Qt Mobility collection" level="app">
+<component name="qtmobility_build" long-name="Qt Mobility Build" introduced="^4" purpose="optional">
+<!-- break this up into the above collections-->
+<unit bldFile="mw/qtmobility/." proFile="qtmobility.pro" qmakeArgs="-r"/>
+</component>
+</collection>
+</block>
+<block name="qtextensions" level="generic" levels="tool mw app" long-name="Qt Extensions">
<collection name="qtecomplugins" long-name="Qt ECom Plugins" level="app">
-<component name="qtecomplugins_build" filter="qtecomplugins" long-name="Qt ECom Plugin" purpose="development" introduced="^4" plugin="Y">
+<component name="qtecomplugins_build" long-name="Qt ECom Plugin" introduced="^4" filter="qtecomplugins" purpose="development" plugin="Y">
<unit bldFile="mw/qtextensions/qtecomplugins" proFile="qtecomplugins.pro" qmakeArgs="-r"/>
</component>
-<component name="qtextensions_examples" filter="qtextensionsexamples,build_as_app" long-name="Qt ECom Plugin Examples" purpose="development" introduced="^4">
+<component name="qtextensions_examples" long-name="Qt ECom Plugin Examples" introduced="^4" filter="qtextensionsexamples,build_as_app" purpose="development">
<unit bldFile="mw/qtextensions/qtecomplugins/examples" proFile="examples.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="qthighway" long-name="Qt Highway" level="app">
-<component name="qthighway_build" filter="qthighway" long-name="Qt Highway" purpose="development" introduced="^4">
+<component name="qthighway_build" long-name="Qt Highway" introduced="^4" filter="qthighway" purpose="development">
<unit bldFile="mw/qtextensions/qthighway" proFile="qthighway.pro" qmakeArgs="-r"/>
</component>
-<component name="qthighway_examples" filter="qtextensionsexamples,build_as_app" long-name="Qt Highway Examples" purpose="development" introduced="^4">
+<component name="qthighway_examples" long-name="Qt Highway Examples" introduced="^4" filter="qtextensionsexamples,build_as_app" purpose="development">
<unit bldFile="mw/qtextensions/qthighway/examples" proFile="examples.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="qtmobileextensions" long-name="Qt Mobile Extensions" level="app">
-<component name="qtmobileextensions_build" filter="qtextension" long-name="Qt Mobile Extensions" purpose="development" introduced="^4">
+<component name="qtmobileextensions_build" long-name="Qt Mobile Extensions" introduced="^4" filter="qtextension" purpose="development">
<unit bldFile="mw/qtextensions/qtmobileextensions" proFile="qtmobileextensions.pro" qmakeArgs="-r"/>
</component>
-<component name="qtmobileextensions_examples" filter="qtextensionsexamples,build_as_app" long-name="Qt Mobile Extensions Examples" purpose="development" introduced="^4">
+<component name="qtmobileextensions_examples" long-name="Qt Mobile Extensions Examples" introduced="^4" filter="qtextensionsexamples,build_as_app" purpose="development">
<unit bldFile="mw/qtextensions/qtmobileextensions/examples" proFile="examples.pro" qmakeArgs="-r"/>
</component>
</collection>
-<collection name="qtmobility" long-name="Qt Mobility" level="mw">
-<component name="qtmobility_build" filter="qtmobility" long-name="Qt Mobility" purpose="development" introduced="^4">
-<unit bldFile="mw/qtextensions/qtmobility" proFile="qtmobility.pro" qmakeArgs="-r"/>
-</component>
-<component name="qtmobility_examples" filter="qtextensionsexamples,build_as_app" long-name="Qt Mobility Examples" purpose="development" introduced="^4">
-<unit bldFile="mw/qtextensions/qtmobility/examples" proFile="examples.pro" qmakeArgs="-r"/>
-</component>
-</collection>
-<collection name="qhbstyle" level="mw" long-name="Qt Orbit Style">
-<component name="qhbstyle_build" long-name="Qt Orbit Style Build" introduced="^4">
-<unit bldFile="mw/qtextensions/qhbstyle" qmakeArgs="-r" proFile="qhbstyle.pro"/>
+<collection name="qhbstyle" long-name="Qt Orbit Style" level="mw">
+<component name="qhbstyle_build" long-name="Qt Orbit Style Build" introduced="^4" purpose="optional">
+<unit bldFile="mw/qtextensions/qhbstyle" proFile="qhbstyle.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="qtextensions_info" long-name="Qt Extensions Info" level="app">
-<component name="qtextensions_conf" long-name="Qt Extensions Confgure" introduced="^4" filter="qt_tools" class="config">
+<component name="qtextensions_conf" long-name="Qt Extensions Confgure" introduced="^4" filter="qt_tools" purpose="optional" class="config">
<unit bldFile="mw/qtextensions/group"/>
</component>
-<component name="qtextensions_build" long-name="Qt Extensions Build" introduced="^4">
+<component name="qtextensions_build" long-name="Qt Extensions Build" introduced="^4" purpose="optional">
<!-- break this up into the above collections-->
-<unit bldFile="mw/qtextensions" proFile="qtextensions.pro" qmakeArgs="-r"/>
+<unit bldFile="mw/qtextensions/." proFile="qtextensions.pro" qmakeArgs="-r"/>
</component>
</collection>
</block>
-<block name="hb" level="generic" long-name="Orbit" levels="engine test api">
+<block name="hb" level="generic" levels="engine test api" long-name="Orbit">
<collection name="hb_info" long-name="Orbit Info" level="api">
-<component name="hb_build" long-name="Orbit Build" introduced="^4">
+<component name="hb_build" long-name="Orbit Build" introduced="^4" purpose="optional">
<!-- should break this down into actual components -->
-<unit bldFile="mw/hb" proFile="hb.pro" qmakeArgs="-r MMP_RULES+=EXPORTUNFROZEN"/>
+<unit bldFile="mw/hb/." proFile="hb.pro" qmakeArgs="-r MMP_RULES+=EXPORTUNFROZEN"/>
</component>
</collection>
</block>
-<block name="classicui" level="generic" long-name="Classic UI" levels="base support server generic specific">
+<block name="classicui" level="generic" levels="base support server generic specific" long-name="Classic UI">
<collection name="classicui_plat" long-name="Classic UI Platform Interfaces" level="specific">
-<component name="signal_pane_api" long-name="Signal Pane API" filter="s60" class="api">
+<component name="signal_pane_api" long-name="Signal Pane API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/signal_pane_api/group" filter="!test"/>
</component>
-<component name="global_popup_priority_controller_api" long-name="Global Popup Priority Controller API" filter="s60" class="api">
+<component name="global_popup_priority_controller_api" long-name="Global Popup Priority Controller API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/global_popup_priority_controller_api/group" filter="!test"/>
</component>
-<component name="item_finder_api" long-name="Item Finder API" filter="s60" class="api">
+<component name="item_finder_api" long-name="Item Finder API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/item_finder_api/group" filter="!test"/>
</component>
-<component name="avkon_fonts_api" long-name="Avkon Fonts API" filter="s60" class="api">
+<component name="avkon_fonts_api" long-name="Avkon Fonts API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/avkon_fonts_api/group" filter="!test"/>
</component>
-<component name="extended_utilities_api" long-name="Extended Utilities API" filter="s60" class="api">
+<component name="extended_utilities_api" long-name="Extended Utilities API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_utilities_api/group" filter="!test"/>
</component>
-<component name="extended_aiw_criteria_api" long-name="Extended AIW Criteria API" filter="s60" class="api">
+<component name="extended_aiw_criteria_api" long-name="Extended AIW Criteria API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_aiw_criteria_api/group" filter="!test"/>
</component>
-<component name="volume_popup_api" long-name="Volume Popup API" filter="s60" class="api">
+<component name="volume_popup_api" long-name="Volume Popup API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/volume_popup_api/group" filter="!test"/>
</component>
-<component name="avkon_secondary_display_support_api" long-name="AVKON Secondary Display Support API" filter="s60" class="api">
+<component name="avkon_secondary_display_support_api" long-name="AVKON Secondary Display Support API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/avkon_secondary_display_support_api/group" filter="!test"/>
</component>
-<component name="extended_setting_pages_api" long-name="Extended Setting Pages API" filter="s60" class="api">
+<component name="extended_setting_pages_api" long-name="Extended Setting Pages API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_setting_pages_api/group" filter="!test"/>
</component>
-<component name="extended_lists_api" long-name="Extended Lists API" filter="s60" class="api">
+<component name="extended_lists_api" long-name="Extended Lists API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_lists_api/group" filter="!test"/>
</component>
-<component name="input_block_api" long-name="Input Block API" filter="s60" class="api">
+<component name="input_block_api" long-name="Input Block API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/input_block_api/group" filter="!test"/>
</component>
-<component name="avkon_ui_server_api" long-name="AVKON UI Server API" filter="s60" class="api">
+<component name="avkon_ui_server_api" long-name="AVKON UI Server API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/avkon_ui_server_api/group" filter="!test"/>
</component>
-<component name="number_grouping_api" long-name="Number Grouping API" filter="s60" class="api">
-<unit bldFile="mw/classicui/classicui_plat/number_grouping_api/group" filter="!test"/>
-</component>
-<component name="extended_status_pane_api" long-name="Extended Status Pane API" filter="s60" class="api">
+<component name="extended_status_pane_api" long-name="Extended Status Pane API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_status_pane_api/group" filter="!test"/>
</component>
-<component name="extended_notifiers_api" long-name="Extended Notifiers API" filter="s60" class="api">
+<component name="extended_notifiers_api" long-name="Extended Notifiers API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_notifiers_api/group" filter="!test"/>
</component>
-<component name="task_list_api" long-name="Task List API" filter="s60" class="api">
+<component name="task_list_api" long-name="Task List API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/task_list_api/group" filter="!test"/>
</component>
-<component name="key_event_utilities_api" long-name="Key Event Utilities API" filter="s60" class="api">
+<component name="key_event_utilities_api" long-name="Key Event Utilities API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/key_event_utilities_api/group"/>
</component>
-<component name="emergency_call_support_api" long-name="Emergency Call Support API" filter="s60" class="api">
+<component name="emergency_call_support_api" long-name="Emergency Call Support API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/emergency_call_support_api/group" filter="!test"/>
</component>
-<component name="extended_dialogs_api" long-name="Extended Dialogs API" filter="s60" class="api">
+<component name="extended_dialogs_api" long-name="Extended Dialogs API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_dialogs_api/group"/>
</component>
-<component name="legacy_ui_framework_headers_api" long-name="Legacy UI Framework Headers API" filter="s60" class="api">
+<component name="legacy_ui_framework_headers_api" long-name="Legacy UI Framework Headers API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/legacy_ui_framework_headers_api/group"/>
</component>
-<component name="extended_editors_api" long-name="Extended Editors API" filter="s60" class="api">
+<component name="extended_editors_api" long-name="Extended Editors API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_editors_api/group" filter="!test"/>
</component>
-<component name="alarm_api" long-name="Alarm API" filter="s60" class="api">
+<component name="alarm_api" long-name="Alarm API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/alarm_api/group" filter="!test"/>
</component>
-<component name="aiw_service_interface_base_api" long-name="AIW Service Interface Base API" filter="s60" class="api">
+<component name="aiw_service_interface_base_api" long-name="AIW Service Interface Base API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/aiw_service_interface_base_api/group" filter="!test"/>
</component>
-<component name="list_effects_api" long-name="List Effects API" filter="s60" class="api">
+<component name="list_effects_api" long-name="List Effects API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/list_effects_api/group" filter="!test"/>
</component>
-<component name="find_item_ui_api" long-name="Find Item UI API" filter="s60" class="api">
+<component name="find_item_ui_api" long-name="Find Item UI API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/find_item_ui_api/group" filter="!test"/>
</component>
-<component name="server_application_services_api" long-name="Server Application Services API" filter="s60" class="api">
+<component name="server_application_services_api" long-name="Server Application Services API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/server_application_services_api/group" filter="!test"/>
</component>
-<component name="common_ui_settings_api" long-name="Common UI Settings API" filter="s60" class="api">
+<component name="common_ui_settings_api" long-name="Common UI Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/common_ui_settings_api/group"/>
</component>
-<component name="aiw_service_interface_menu_api" long-name="AIW Service Interface Menu API" filter="s60" class="api">
+<component name="aiw_service_interface_menu_api" long-name="AIW Service Interface Menu API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/aiw_service_interface_menu_api/group" filter="!test"/>
</component>
-<component name="eikon_server_extension_client_api" long-name="EIKON Server Extension Client API" filter="s60" class="api">
+<component name="eikon_server_extension_client_api" long-name="EIKON Server Extension Client API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/eikon_server_extension_client_api/group" filter="!test"/>
</component>
-<component name="skinnable_clock_api" long-name="Skinnable Clock API" filter="s60" class="api">
+<component name="skinnable_clock_api" long-name="Skinnable Clock API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/skinnable_clock_api/group" filter="!test"/>
</component>
-<component name="battery_pane_api" long-name="Battery Pane API" filter="s60" class="api">
+<component name="battery_pane_api" long-name="Battery Pane API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/battery_pane_api/group" filter="!test"/>
</component>
-<component name="fep_document_navigation_api" long-name="FEP Document Navigation API" filter="s60" class="api">
+<component name="fep_document_navigation_api" long-name="FEP Document Navigation API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/fep_document_navigation_api/group"/>
</component>
-<component name="memory_card_ui_api" long-name="Memory Card UI API" filter="s60" class="api">
+<component name="memory_card_ui_api" long-name="Memory Card UI API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/memory_card_ui_api/group" filter="!test"/>
</component>
-<component name="avkon_status_api" long-name="AVKON Status API" filter="s60" class="api">
+<component name="avkon_status_api" long-name="AVKON Status API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/avkon_status_api/group"/>
</component>
-<component name="application_switching_api" long-name="Application Switching API" filter="s60" class="api">
+<component name="application_switching_api" long-name="Application Switching API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/application_switching_api/group" filter="!test"/>
</component>
-<component name="avkon_localised_texts_api" long-name="AVKON Localised Texts API" filter="s60" class="api">
+<component name="avkon_localised_texts_api" long-name="AVKON Localised Texts API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/avkon_localised_texts_api/group"/>
</component>
-<component name="avkon_secondary_display_api" long-name="AVKON Secondary Display API" filter="s60" class="api">
+<component name="avkon_secondary_display_api" long-name="AVKON Secondary Display API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/avkon_secondary_display_api/group"/>
</component>
-<component name="extended_animation_api" long-name="Extended Animation API" filter="s60" class="api">
+<component name="extended_animation_api" long-name="Extended Animation API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_animation_api/group" filter="!test"/>
</component>
-<component name="extended_notes_api" long-name="Extended Notes API" filter="s60" class="api">
+<component name="extended_notes_api" long-name="Extended Notes API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_notes_api/group" filter="!test"/>
</component>
-<component name="text_scroller_api" long-name="Text Scroller API" filter="s60" class="api">
+<component name="text_scroller_api" long-name="Text Scroller API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/text_scroller_api/group" filter="!test"/>
</component>
-<component name="custom_cursors_api" long-name="Custom Cursors API" filter="s60" class="api">
+<component name="custom_cursors_api" long-name="Custom Cursors API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/custom_cursors_api/group" filter="!test"/>
</component>
-<component name="global_window_priorities_api" long-name="Global Window Priorities API" filter="s60" class="api">
+<component name="global_window_priorities_api" long-name="Global Window Priorities API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/global_window_priorities_api/group"/>
</component>
-<component name="extended_indicators_api" long-name="Extended Indicators API" filter="s60" class="api">
+<component name="extended_indicators_api" long-name="Extended Indicators API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_indicators_api/group" filter="!test"/>
</component>
-<component name="special_character_table_api" long-name="Special Character Table API" filter="s60" class="api">
+<component name="special_character_table_api" long-name="Special Character Table API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/special_character_table_api/group" filter="!test"/>
</component>
-<component name="avkon_settings_api" long-name="AVKON Settings API" filter="s60" class="api">
+<component name="avkon_settings_api" long-name="AVKON Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/avkon_settings_api/group"/>
</component>
-<component name="extended_sounds_api" long-name="Extended Sounds API" filter="s60" class="api">
+<component name="extended_sounds_api" long-name="Extended Sounds API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_sounds_api/group"/>
</component>
-<component name="themes_settings_api" long-name="Themes Settings API" filter="s60" class="api">
+<component name="themes_settings_api" long-name="Themes Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/themes_settings_api/group"/>
</component>
-<component name="media_shared_document_api" long-name="Media Shared Document API" filter="s60" class="api">
+<component name="media_shared_document_api" long-name="Media Shared Document API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/media_shared_document_api/group" filter="!test"/>
</component>
-<component name="extended_queries_api" long-name="Extended Queries API" filter="s60" class="api">
+<component name="extended_queries_api" long-name="Extended Queries API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_queries_api/group"/>
</component>
-<component name="phone_number_text_utilities_api" long-name="Phone Number Text Utilities API" filter="s60" class="api">
+<component name="phone_number_text_utilities_api" long-name="Phone Number Text Utilities API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/phone_number_text_utilities_api/group" filter="!test"/>
</component>
-<component name="extended_scroller_api" long-name="Extended Scroller API" filter="s60" class="api">
+<component name="extended_scroller_api" long-name="Extended Scroller API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_scroller_api/group"/>
</component>
-<component name="key_rotator_api" long-name="Key Rotator API" filter="s60" class="api">
+<component name="key_rotator_api" long-name="Key Rotator API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/key_rotator_api/group" filter="!test"/>
</component>
-<component name="extended_grids_api" long-name="Extended Grids API" filter="s60" class="api">
+<component name="extended_grids_api" long-name="Extended Grids API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_grids_api/group" filter="!test"/>
</component>
-<component name="generic_parameter_api" long-name="Generic Parameter API" filter="s60" class="api">
+<component name="generic_parameter_api" long-name="Generic Parameter API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/generic_parameter_api/group" filter="!test"/>
</component>
-<component name="indicator_touch_observer_api" long-name="Indicator Touch Observer API" filter="s60" class="api">
+<component name="indicator_touch_observer_api" long-name="Indicator Touch Observer API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/indicator_touch_observer_api/group"/>
</component>
-<component name="popup_form_api" long-name="Popup Form API" filter="s60" class="api">
+<component name="popup_form_api" long-name="Popup Form API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/popup_form_api/group" filter="!test"/>
</component>
-<component name="stylus_activated_popup_api" long-name="Stylus Activated Pop-up API" filter="s60" class="api">
+<component name="stylus_activated_popup_api" long-name="Stylus Activated Pop-up API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/stylus_activated_popup_api/group" filter="!test"/>
</component>
-<component name="indicator_plugin_api" long-name="Indicator Plugin API" filter="s60" class="api">
+<component name="indicator_plugin_api" long-name="Indicator Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/indicator_plugin_api/group" filter="!test"/>
</component>
-<component name="layout_configuration_api" long-name="Layout Configuration API" filter="s60" class="api">
+<component name="layout_configuration_api" long-name="Layout Configuration API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/layout_configuration_api/group" filter="!test"/>
</component>
-<component name="common_file_dialogs_filter_factory_api" long-name="Common File Dialogs Filter Factory API" filter="s60" class="api">
+<component name="common_file_dialogs_filter_factory_api" long-name="Common File Dialogs Filter Factory API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/common_file_dialogs_filter_factory_api/group"/>
</component>
-<component name="avkon_anim_dll_api" long-name="AVKON Anim DLL API" filter="s60" class="api">
+<component name="avkon_anim_dll_api" long-name="AVKON Anim DLL API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/avkon_anim_dll_api/group"/>
</component>
-<component name="extended_initialization_api" long-name="Extended Initialization API" filter="s60" class="api">
+<component name="extended_initialization_api" long-name="Extended Initialization API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_initialization_api/group" filter="!test"/>
</component>
-<component name="long_tap_animation_api" long-name="Long Tap Animation API" filter="s60" class="api">
+<component name="long_tap_animation_api" long-name="Long Tap Animation API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/long_tap_animation_api/group" filter="!test"/>
</component>
-<component name="extended_ui_framework_definitions_api" long-name="Extended UI Framework Definitions API" filter="s60" class="api">
+<component name="extended_ui_framework_definitions_api" long-name="Extended UI Framework Definitions API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_ui_framework_definitions_api/group"/>
</component>
-<component name="extended_buttons_api" long-name="Extended Buttons API" filter="s60" class="api">
+<component name="extended_buttons_api" long-name="Extended Buttons API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_buttons_api/group" filter="!test"/>
</component>
-<component name="aiw_provider_utility_api" long-name="AIW Provider Utility API" filter="s60" class="api">
+<component name="aiw_provider_utility_api" long-name="AIW Provider Utility API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/aiw_provider_utility_api/group" filter="!test"/>
</component>
-<component name="transition_effect_parameters_api" long-name="Transition Effect Parameters API" filter="s60" class="api">
+<component name="transition_effect_parameters_api" long-name="Transition Effect Parameters API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/transition_effect_parameters_api/group" filter="!test"/>
</component>
-<component name="extended_input_capabilities_api" long-name="Extended Input Capabilities API" filter="s60" class="api">
+<component name="extended_input_capabilities_api" long-name="Extended Input Capabilities API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_input_capabilities_api/group" filter="!test"/>
</component>
-<component name="uikon_status_api" long-name="UIKON Status API" filter="s60" class="api">
+<component name="uikon_status_api" long-name="UIKON Status API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/uikon_status_api/group"/>
</component>
-<component name="transition_effect_utilities_api" long-name="Transition Effect Utilities API" filter="s60" class="api">
+<component name="transition_effect_utilities_api" long-name="Transition Effect Utilities API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/transition_effect_utilities_api/group" filter="!test"/>
</component>
-<component name="pointer_event_modifier_api" long-name="Pointer Event Modifier API" filter="s60" class="api">
+<component name="pointer_event_modifier_api" long-name="Pointer Event Modifier API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/pointer_event_modifier_api/group" filter="!test"/>
</component>
-<component name="avkon_testability_api" long-name="AVKON Testability API" filter="s60" class="api">
+<component name="avkon_testability_api" long-name="AVKON Testability API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/avkon_testability_api/group"/>
</component>
-<component name="ode_api" long-name="Ode API" filter="s60" class="api">
+<component name="ode_api" long-name="Ode API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/ode_api/group"/>
</component>
-<component name="physics_api" long-name="Physics API" filter="s60" class="api">
+<component name="physics_api" long-name="Physics API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/physics_api/group"/>
</component>
-<component name="touch_pane_api" long-name="Touch Pane API" filter="s60" class="api">
+<component name="touch_pane_api" long-name="Touch Pane API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/touch_pane_api/group" filter="!test"/>
</component>
-<component name="touch_pane_observer_api" long-name="Touch Pane Observer API" filter="s60" class="api">
+<component name="touch_pane_observer_api" long-name="Touch Pane Observer API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/touch_pane_observer_api/group"/>
</component>
-<component name="alternate_fs_api" long-name="Alternate FS API" filter="s60" class="api">
+<component name="alternate_fs_api" long-name="Alternate FS API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/alternate_fs_api/group"/>
</component>
-<component name="discreet_popup_api" long-name="Discreet Popup API" filter="s60" class="api">
+<component name="discreet_popup_api" long-name="Discreet Popup API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/discreet_popup_api/group"/>
</component>
-<component name="extended_options_menu_api" long-name="Extended Options Menu API" filter="s60" class="api">
+<component name="extended_options_menu_api" long-name="Extended Options Menu API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_options_menu_api/group" filter="!test"/>
</component>
-<component name="directory_localizer_api" long-name="Directory Localizer API" filter="s60" class="api">
+<component name="directory_localizer_api" long-name="Directory Localizer API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/directory_localizer_api/group"/>
</component>
-<component name="findutil_api" long-name="Find Util API" filter="s60" class="api">
+<component name="findutil_api" long-name="Find Util API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/findutil_api/group"/>
</component>
-<component name="input_frame_api" long-name="Input Frame API" filter="s60" class="api">
+<component name="input_frame_api" long-name="Input Frame API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/input_frame_api/group" filter="!test"/>
</component>
-<component name="window_server_event_observer_api" long-name="Window Server Event Observer API" filter="s60" class="api">
+<component name="window_server_event_observer_api" long-name="Window Server Event Observer API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/window_server_event_observer_api/group" filter="!test"/>
</component>
-<component name="application_framework_api" long-name="Application Framework API" filter="s60" class="api">
+<component name="application_framework_api" long-name="Application Framework API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/application_framework_api/group" filter="!test"/>
</component>
-<component name="scroller_api" long-name="Scroller API" filter="s60" class="api">
+<component name="scroller_api" long-name="Scroller API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/scroller_api/group" filter="!test"/>
</component>
-<component name="ui_framework_utilities_api" long-name="UI Framework Utilities API" filter="s60" class="api">
+<component name="ui_framework_utilities_api" long-name="UI Framework Utilities API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/ui_framework_utilities_api/group" filter="!test"/>
</component>
-<component name="ui_framework_definitions_api" long-name="UI Framework Definitions API" filter="s60" class="api">
+<component name="ui_framework_definitions_api" long-name="UI Framework Definitions API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/ui_framework_definitions_api/group" filter="!test"/>
</component>
-<component name="buttons_api" long-name="Buttons API" filter="s60" class="api">
+<component name="buttons_api" long-name="Buttons API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/buttons_api/group" filter="!test"/>
</component>
-<component name="queries_api" long-name="Queries API" filter="s60" class="api">
+<component name="queries_api" long-name="Queries API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/queries_api/group" filter="!test"/>
</component>
-<component name="aiw_generic_parameter_api" long-name="AIW Generic Parameter API" filter="s60" class="api">
+<component name="aiw_generic_parameter_api" long-name="AIW Generic Parameter API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/aiw_generic_parameter_api/group" filter="!test"/>
</component>
-<component name="editors_api" long-name="Editors API" filter="s60" class="api">
+<component name="editors_api" long-name="Editors API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/editors_api/group" filter="!test"/>
</component>
-<component name="common_file_dialogs_api" long-name="Common File Dialogs API" filter="s60" class="api">
+<component name="common_file_dialogs_api" long-name="Common File Dialogs API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/common_file_dialogs_api/group"/>
</component>
-<component name="dialog_shutter_api" long-name="Dialog Shutter API" filter="s60" class="api">
+<component name="dialog_shutter_api" long-name="Dialog Shutter API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/dialog_shutter_api/group" filter="!test"/>
</component>
-<component name="fonts_api" long-name="Fonts API" filter="s60" class="api">
+<component name="fonts_api" long-name="Fonts API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/fonts_api/group" filter="!test"/>
</component>
-<component name="screen_clearer_api" long-name="Screen Clearer API" filter="s60" class="api">
+<component name="screen_clearer_api" long-name="Screen Clearer API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/screen_clearer_api/group" filter="!test"/>
</component>
-<component name="notifiers_api" long-name="Notifiers API" filter="s60" class="api">
+<component name="notifiers_api" long-name="Notifiers API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/notifiers_api/group" filter="!test"/>
</component>
-<component name="notes_api" long-name="Notes API" filter="s60" class="api">
+<component name="notes_api" long-name="Notes API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/notes_api/group" filter="!test"/>
</component>
-<component name="status_pane_api" long-name="Status Pane API" filter="s60" class="api">
+<component name="status_pane_api" long-name="Status Pane API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/status_pane_api/group" filter="!test"/>
</component>
-<component name="base_controls_api" long-name="Base Controls API" filter="s60" class="api">
+<component name="base_controls_api" long-name="Base Controls API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/base_controls_api/group" filter="!test"/>
</component>
-<component name="grids_api" long-name="Grids API" filter="s60" class="api">
+<component name="grids_api" long-name="Grids API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/grids_api/group" filter="!test"/>
</component>
-<component name="context_pane_api" long-name="Context Pane API" filter="s60" class="api">
+<component name="context_pane_api" long-name="Context Pane API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/context_pane_api/group" filter="!test"/>
</component>
-<component name="lists_api" long-name="Lists API" filter="s60" class="api">
+<component name="lists_api" long-name="Lists API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/lists_api/group" filter="!test"/>
</component>
-<component name="popups_api" long-name="Popups API" filter="s60" class="api">
+<component name="popups_api" long-name="Popups API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/popups_api/group" filter="!test"/>
</component>
-<component name="misc_controls_api" long-name="Misc Controls API" filter="s60" class="api">
+<component name="misc_controls_api" long-name="Misc Controls API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/misc_controls_api/group" filter="!test"/>
</component>
-<component name="keylock_api" long-name="Keylock API" filter="s60" class="api">
+<component name="keylock_api" long-name="Keylock API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/keylock_api/group" filter="!test"/>
</component>
-<component name="options_menu_api" long-name="Options Menu API" filter="s60" class="api">
+<component name="options_menu_api" long-name="Options Menu API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/options_menu_api/group" filter="!test"/>
</component>
-<component name="hierarchical_lists_api" long-name="Hierarchical Lists API" filter="s60" class="api">
+<component name="hierarchical_lists_api" long-name="Hierarchical Lists API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/hierarchical_lists_api/group" filter="!test"/>
</component>
-<component name="navigation_pane_api" long-name="Navigation Pane API" filter="s60" class="api">
+<component name="navigation_pane_api" long-name="Navigation Pane API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/navigation_pane_api/group" filter="!test"/>
</component>
-<component name="tabs_api" long-name="Tabs API" filter="s60" class="api">
+<component name="tabs_api" long-name="Tabs API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/tabs_api/group" filter="!test"/>
</component>
-<component name="title_pane_touch_observer_api" long-name="Title Pane Touch Observer API" filter="s60" class="api">
+<component name="title_pane_touch_observer_api" long-name="Title Pane Touch Observer API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/title_pane_touch_observer_api/group"/>
</component>
-<component name="choice_list_api" long-name="Choice List API" filter="s60" class="api">
+<component name="choice_list_api" long-name="Choice List API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/choice_list_api/group" filter="!test"/>
</component>
-<component name="info_popup_note_api" long-name="Info Popup Note API" filter="s60" class="api">
+<component name="info_popup_note_api" long-name="Info Popup Note API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/info_popup_note_api/group" filter="!test"/>
</component>
-<component name="setting_pages_api" long-name="Setting Pages API" filter="s60" class="api">
+<component name="setting_pages_api" long-name="Setting Pages API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/setting_pages_api/group" filter="!test"/>
</component>
-<component name="screen_mode_api" long-name="Screen Mode API" filter="s60" class="api">
+<component name="screen_mode_api" long-name="Screen Mode API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/screen_mode_api/group" filter="!test"/>
</component>
-<component name="indicators_api" long-name="Indicators API" filter="s60" class="api">
+<component name="indicators_api" long-name="Indicators API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/indicators_api/group" filter="!test"/>
</component>
-<component name="error_ui_api" long-name="Error UI API" filter="s60" class="api">
+<component name="error_ui_api" long-name="Error UI API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/error_ui_api/group" filter="!test"/>
</component>
-<component name="animation_api" long-name="Animation API" filter="s60" class="api">
+<component name="animation_api" long-name="Animation API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/animation_api/group" filter="!test"/>
</component>
-<component name="searchfield_api" long-name="Searchfield API" filter="s60" class="api">
+<component name="searchfield_api" long-name="Searchfield API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/searchfield_api/group" filter="!test"/>
</component>
-<component name="labels_api" long-name="Labels API" filter="s60" class="api">
+<component name="labels_api" long-name="Labels API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/labels_api/group" filter="!test"/>
</component>
-<component name="hotkeys_api" long-name="Hotkeys API" filter="s60" class="api">
+<component name="hotkeys_api" long-name="Hotkeys API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/hotkeys_api/group" filter="!test"/>
</component>
-<component name="initialization_api" long-name="Initialization API" filter="s60" class="api">
+<component name="initialization_api" long-name="Initialization API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/initialization_api/group" filter="!test"/>
</component>
-<component name="volume_control_api" long-name="Volume Control API" filter="s60" class="api">
+<component name="volume_control_api" long-name="Volume Control API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/volume_control_api/group" filter="!test"/>
</component>
-<component name="title_pane_api" long-name="Title Pane API" filter="s60" class="api">
+<component name="title_pane_api" long-name="Title Pane API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/title_pane_api/group" filter="!test"/>
</component>
-<component name="sounds_api" long-name="Sounds API" filter="s60" class="api">
+<component name="sounds_api" long-name="Sounds API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/sounds_api/group" filter="!test"/>
</component>
-<component name="aiw_service_handler_api" long-name="AIW Service Handler API" filter="s60" class="api">
+<component name="aiw_service_handler_api" long-name="AIW Service Handler API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/aiw_service_handler_api/group" filter="!test"/>
</component>
-<component name="aiw_criteria_api" long-name="AIW Criteria API" filter="s60" class="api">
+<component name="aiw_criteria_api" long-name="AIW Criteria API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/aiw_criteria_api/group" filter="!test"/>
</component>
-<component name="touch_ui_utilities_api" long-name="Touch UI Utilities API" filter="s60" class="api">
+<component name="touch_ui_utilities_api" long-name="Touch UI Utilities API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/touch_ui_utilities_api/group" filter="!test"/>
</component>
-<component name="generic_button_api" long-name="Generic Button API" filter="s60" class="api">
+<component name="generic_button_api" long-name="Generic Button API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/generic_button_api/group" filter="!test"/>
</component>
-<component name="form_api" long-name="Form API" filter="s60" class="api">
+<component name="form_api" long-name="Form API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/form_api/group" filter="!test"/>
</component>
-<component name="uikon_core_controls" long-name="Uikon Core Controls" filter="s60" class="api">
+<component name="uikon_core_controls" long-name="Uikon Core Controls" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/uikon_core_controls/group" filter="!test"/>
</component>
-<component name="calendar_api" long-name="Calendar API" filter="s60" class="api">
+<component name="calendar_api" long-name="Calendar API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/calendar_api/group"/>
</component>
-<component name="toolbar_api" long-name="Toolbar API" filter="s60" class="api">
+<component name="toolbar_api" long-name="Toolbar API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/toolbar_api/group" filter="!test"/>
</component>
-<component name="server_application_api" long-name="Server Application API" filter="s60" class="api">
+<component name="server_application_api" long-name="Server Application API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/server_application_api/group"/>
</component>
-<component name="slider_api" long-name="Slider API" filter="s60" class="api">
+<component name="slider_api" long-name="Slider API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/slider_api/group" filter="!test"/>
</component>
-<component name="private_ui_framework_api" long-name="Private UI Framework API" filter="s60" class="api">
+<component name="private_ui_framework_api" long-name="Private UI Framework API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/private_ui_framework_api/group" filter="!test"/>
</component>
-<component name="dialogs_api" long-name="Dialogs API" filter="s60" class="api">
+<component name="dialogs_api" long-name="Dialogs API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/dialogs_api/group" filter="!test"/>
</component>
-<component name="document_handler_api" long-name="Document handler API" filter="s60" class="api">
+<component name="document_handler_api" long-name="Document handler API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/document_handler_api/group"/>
</component>
-<component name="images_api" long-name="Images API" filter="s60" class="api">
+<component name="images_api" long-name="Images API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/images_api/group" filter="!test"/>
</component>
-<component name="stylus_popup_menu_api" long-name="Stylus Pop-up Menu API" filter="s60" class="api">
+<component name="stylus_popup_menu_api" long-name="Stylus Pop-up Menu API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/stylus_popup_menu_api/group" filter="!test"/>
</component>
-<component name="information_preview_popup_api" long-name="Information Preview Popup API" filter="s60" class="api">
+<component name="information_preview_popup_api" long-name="Information Preview Popup API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/information_preview_popup_api/group" filter="!test"/>
</component>
-<component name="intermediate_state_api" long-name="Intermediate State API" filter="s60" class="api">
+<component name="intermediate_state_api" long-name="Intermediate State API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/intermediate_state_api/group"/>
</component>
-<component name="help_launcher_api" long-name="Help Launcher API" filter="s60" class="api">
+<component name="help_launcher_api" long-name="Help Launcher API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/classicui/classicui_plat/help_launcher_api/group"/>
</component>
</collection>
<collection name="ode" long-name="Open Dynamics Engine" level="support">
<!-- the collection is really a component. Move down a directory.-->
-<component name="ode_build" filter="s60" long-name="ODE">
+<component name="ode_build" long-name="ODE" filter="s60" purpose="optional">
<unit bldFile="mw/classicui/ode/group"/>
</component>
</collection>
<collection name="uifw" long-name="UI Framework" level="server">
-<component name="uiklaf" filter="s60" long-name="Uikon Look-and-Feel">
+<component name="uiklaf" long-name="Uikon Look-and-Feel" filter="s60" purpose="optional">
<unit bldFile="mw/classicui/uifw/uiklaf/group"/>
</component>
-<component name="eikctl" filter="s60" long-name="Eikon Controls">
+<component name="eikctl" long-name="Eikon Controls" filter="s60" purpose="optional">
<unit bldFile="mw/classicui/uifw/eikctl/group"/>
</component>
-<component name="avkon" filter="s60" long-name="Avkon">
+<component name="avkon" long-name="Avkon" filter="s60" purpose="optional">
<!-- can only have one unit. Split into 3 components, or #include all from same bld.inf -->
<unit bldFile="mw/classicui/uifw/avkon/aknphysics/group"/>
<unit bldFile="mw/classicui/uifw/avkon/group"/>
<unit bldFile="mw/classicui/uifw/avkon/aknconf/group"/>
</component>
-<component name="eikstd" filter="s60" long-name="Eikon Standard">
+<component name="eikstd" long-name="Eikon Standard" filter="s60" purpose="optional">
<unit bldFile="mw/classicui/uifw/eikstd/group"/>
</component>
-<component name="aknglobalui" filter="s60" long-name="Avkon Global UI">
+<component name="aknglobalui" long-name="Avkon Global UI" filter="s60" purpose="optional">
<unit bldFile="mw/classicui/uifw/aknglobalui/group"/>
</component>
-<component name="ganes" filter="s60" long-name="Ganes">
+<component name="ganes" long-name="Ganes" filter="s60" purpose="optional">
<unit bldFile="mw/classicui/uifw/ganes/group"/>
</component>
</collection>
<collection name="commonuis" long-name="Common UIs" level="specific">
-<component name="commonui" filter="s60" long-name="Common UI">
+<component name="commonui" long-name="Common UI" filter="s60" purpose="optional">
<unit bldFile="mw/classicui/commonuis/commonui/group"/>
</component>
-<component name="commondialogs" filter="s60" long-name="Common Dialogs">
+<component name="commondialogs" long-name="Common Dialogs" filter="s60" purpose="optional">
<unit bldFile="mw/classicui/commonuis/commondialogs/group"/>
</component>
</collection>
<collection name="applicationinterworkingfw" long-name="Application Interworking Framework" level="generic">
-<component name="aifwservicehandler" filter="s60" long-name="Application Interworking Service Handler">
+<component name="aifwservicehandler" long-name="Application Interworking Service Handler" filter="s60" purpose="optional">
<unit bldFile="mw/classicui/applicationinterworkingfw/servicehandler/group"/>
</component>
</collection>
<collection name="commonadapter" long-name="Common Adapter" level="support">
<!-- the collection is really a component. Move down a directory.-->
-<component name="commonadapter_build" filter="s60" long-name="Common Adapter Build">
+<component name="commonadapter_build" long-name="Common Adapter Build" filter="s60" purpose="optional">
<unit bldFile="mw/classicui/commonadapter/group"/>
</component>
</collection>
<collection name="akntouchgesturefw" long-name="Avkon Touch Gesture Framework" level="generic">
<!-- the collection is really a component. Move down a directory.-->
-<component name="akntouchgesturefw_build" filter="s60" long-name="Avkon Touch Gesture Framework Build" introduced="^3">
+<component name="akntouchgesturefw_build" long-name="Avkon Touch Gesture Framework Build" introduced="^3" filter="s60" purpose="optional">
<unit bldFile="mw/classicui/akntouchgesturefw/group"/>
</component>
</collection>
<collection name="uiutils" long-name="UI Utils" level="specific">
-<component name="localizer" filter="s60" long-name="Directory Localizer">
+<component name="localizer" long-name="Directory Localizer" filter="s60" purpose="optional">
<unit bldFile="mw/classicui/uiutils/localizer/group"/>
</component>
-<component name="findutil" filter="s60" long-name="Find Utility">
+<component name="findutil" long-name="Find Utility" filter="s60" purpose="optional">
<unit bldFile="mw/classicui/uiutils/findutil/group"/>
</component>
-<component name="gamerecognizer" filter="s60" long-name="Game Recognizer" plugin="Y">
+<component name="gamerecognizer" long-name="Game Recognizer" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/classicui/uiutils/gamerecognizer/group"/>
</component>
-<component name="aknjapanesereading" filter="s60" long-name="Avkon Japanese Reading">
+<component name="aknjapanesereading" long-name="Avkon Japanese Reading" filter="s60" purpose="optional">
<unit bldFile="mw/classicui/uiutils/aknjapanesereading/group"/>
</component>
-<component name="hlplch" long-name="Help Launcher" filter="s60,bldfirst">
+<component name="hlplch" long-name="Help Launcher" filter="s60,bldfirst" purpose="optional">
<unit bldFile="mw/classicui/uiutils/hlplch/group"/>
</component>
</collection>
@@ -6415,7 +6303,7 @@
<unit bldFile="mw/classicui/commonuisupport/uikon/group" mrp="mw/classicui/commonuisupport/uikon/group/app-framework_uikon.mrp"/>
</component>
<component name="uikon_ncp" long-name="Uikon (NCP)" introduced="S^4" purpose="mandatory">
-<unit bldFile="mw/classicui/commonuisupport/uikon_ncp/group"/>
+<unit bldFile="mw/classicui/commonuisupport/uikon/group_ncp"/>
</component>
<component name="errorresolverdata" long-name="Error Resolver Data" purpose="mandatory">
<unit bldFile="mw/classicui/commonuisupport/errorresolverdata/group" mrp="mw/classicui/commonuisupport/errorresolverdata/group/app-framework_errorresgt.mrp"/>
@@ -6457,444 +6345,444 @@
</component>
</collection>
</block>
-<block name="svgt" level="generic" long-name="SVG Tiny" levels="util ui">
+<block name="svgt" level="generic" levels="util ui" long-name="SVG Tiny">
<collection name="svgt_plat" long-name="SVG Tiny Platform Interfaces" level="ui">
-<component name="svgt_api" long-name="SVGT API" introduced="9.2" filter="s60" class="api">
+<component name="svgt_api" long-name="SVGT API" introduced="9.2" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/svgt/svgt_plat/svgt_api/group"/>
</component>
-<component name="nvg_api" long-name="NVG API" introduced="9.2" filter="s60" class="api">
+<component name="nvg_api" long-name="NVG API" introduced="9.2" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/svgt/svgt_plat/nvg_api/group"/>
</component>
</collection>
<collection name="svgtopt" long-name="SVG-T Engine" level="util">
-<component name="svgtopt_build" filter="s60" long-name="SVG Engine" introduced="9.2">
+<component name="svgtopt_build" long-name="SVG Engine" introduced="9.2" filter="s60" purpose="optional">
<!-- component is at collection level. Needs to be moved down a directory -->
<unit bldFile="mw/svgt/svgtopt/group"/>
</component>
-<component name="svgtplugin" filter="s60" long-name="SVG Plugin" introduced="9.2" plugin="Y">
+<component name="svgtplugin" long-name="SVG Plugin" introduced="9.2" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/svgt/svgtopt/svgtplugin/group"/>
</component>
</collection>
</block>
-<block name="uiaccelerator" level="generic" long-name="UI Accelerator" levels="plugin framework server ex if">
+<block name="uiaccelerator" level="generic" levels="plugin framework server ex if" long-name="UI Accelerator">
<collection name="uiaccelerator_plat" long-name="UI Accelerator Platform Interfaces" level="if">
-<component name="alf_core_toolkit_api" long-name="ALF Core Toolkit API" filter="s60" class="api">
+<component name="alf_core_toolkit_api" long-name="ALF Core Toolkit API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uiaccelerator/uiaccelerator_plat/alf_core_toolkit_api/group"/>
</component>
-<component name="alf_visual_api" long-name="ALF Visual API" filter="s60" class="api">
+<component name="alf_visual_api" long-name="ALF Visual API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uiaccelerator/uiaccelerator_plat/alf_visual_api/group"/>
</component>
-<component name="alf_extended_visual_api" long-name="ALF Extended Visual API" filter="s60" class="api">
+<component name="alf_extended_visual_api" long-name="ALF Extended Visual API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uiaccelerator/uiaccelerator_plat/alf_extended_visual_api/group"/>
</component>
-<component name="alf_extension_api" long-name="ALF Extension API" filter="s60" class="api">
+<component name="alf_extension_api" long-name="ALF Extension API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uiaccelerator/uiaccelerator_plat/alf_extension_api/group"/>
</component>
-<component name="alf_tracing_api" long-name="ALF Tracing API" filter="s60" class="api">
+<component name="alf_tracing_api" long-name="ALF Tracing API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uiaccelerator/uiaccelerator_plat/alf_tracing_api/group"/>
</component>
-<component name="alf_client_server_api" long-name="ALF Client Server API" filter="s60" class="api">
+<component name="alf_client_server_api" long-name="ALF Client Server API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uiaccelerator/uiaccelerator_plat/alf_client_server_api/group"/>
</component>
</collection>
<collection name="uiacceltk" long-name="UI Accelerator Toolkit" level="framework">
-<component name="hitchcock" filter="s60" long-name="Hitchcock">
+<component name="hitchcock" long-name="Hitchcock" filter="s60" purpose="optional">
<unit bldFile="mw/uiaccelerator/uiacceltk/hitchcock/group"/>
</component>
-<component name="uiacceltk_build" filter="s60" long-name="UI Accelerator Toolkit Build">
+<component name="uiacceltk_build" long-name="UI Accelerator Toolkit Build" filter="s60" purpose="optional">
<!-- move into the other component, or remove the #include and make this UI Accelerator Toolkit ROM-->
<unit bldFile="mw/uiaccelerator/uiacceltk/group"/>
</component>
</collection>
<collection name="uiaccelerator_test" long-name="UI Accelerator Test" level="ex"/>
</block>
-<block name="uiresources" level="generic" long-name="UI Resources" levels="compile plugin framework server generic data">
+<block name="uiresources" level="generic" levels="compile plugin framework server generic data" long-name="UI Resources">
<!-- are the custom filters below needed? -->
<collection name="uiresources_pub" long-name="UI Resources Public Interfaces" level="data">
-<component name="pictograph_api" long-name="Pictograph API" filter="s60" class="api">
+<component name="pictograph_api" long-name="Pictograph API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uiresources/uiresources_pub/pictograph_api/group" filter="!test"/>
</component>
-<component name="skins_api" long-name="Skins API" filter="s60" class="api">
+<component name="skins_api" long-name="Skins API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uiresources/uiresources_pub/skins_api/group" filter="!test"/>
</component>
-<component name="font_definition_api" long-name="Font Definition API" filter="s60" class="api">
+<component name="font_definition_api" long-name="Font Definition API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uiresources/uiresources_pub/font_definition_api/group" filter="!test"/>
</component>
-<component name="graphics_api" long-name="Graphics API" filter="s60" class="api">
+<component name="graphics_api" long-name="Graphics API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uiresources/uiresources_pub/graphics_api/group" filter="!test"/>
</component>
-<component name="scalable_icons_api" long-name="Scalable Icons API" filter="s60" class="api">
+<component name="scalable_icons_api" long-name="Scalable Icons API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uiresources/uiresources_pub/scalable_icons_api/group"/>
</component>
-<component name="layout_id_definitions_api" long-name="Layout ID Definitions API" filter="s60" class="api">
+<component name="layout_id_definitions_api" long-name="Layout ID Definitions API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uiresources/uiresources_pub/layout_id_definitions_api/group"/>
</component>
</collection>
<collection name="uiresources_plat" long-name="UI Resources Platform Interfaces" level="data">
-<component name="layout_system_private_api" long-name="Layout System Private API" filter="s60" class="api">
+<component name="layout_system_private_api" long-name="Layout System Private API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/layout_system_private_api/group" filter="!test"/>
</component>
-<component name="layout_data_api" long-name="Layout Data API" filter="s60" class="api">
+<component name="layout_data_api" long-name="Layout Data API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/layout_data_api/group" filter="!test"/>
</component>
-<component name="cdl_api" long-name="CDL API" filter="s60" class="api">
+<component name="cdl_api" long-name="CDL API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/cdl_api/group" filter="!test"/>
</component>
-<component name="extended_skins_api" long-name="Extended Skins API" filter="s60" class="api">
+<component name="extended_skins_api" long-name="Extended Skins API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/extended_skins_api/group" filter="!test"/>
</component>
-<component name="tfx_server_controller_plugin_api" long-name="TFX Server Controller Plug-in API" filter="s60" class="api">
+<component name="tfx_server_controller_plugin_api" long-name="TFX Server Controller Plug-in API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/tfx_server_controller_plugin_api/group"/>
</component>
-<component name="extended_fonts_api" long-name="Extended Fonts API" filter="s60" class="api">
+<component name="extended_fonts_api" long-name="Extended Fonts API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/extended_fonts_api/group" filter="!test"/>
</component>
-<component name="graphic_configuration_api" long-name="Graphic Configuration API" filter="s60" class="api">
+<component name="graphic_configuration_api" long-name="Graphic Configuration API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/graphic_configuration_api/group" filter="!test"/>
</component>
-<component name="mif_header_cdl_api" long-name="MIF Header CDL API" filter="s60" class="api">
+<component name="mif_header_cdl_api" long-name="MIF Header CDL API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/mif_header_cdl_api/group"/>
</component>
-<component name="personalisation_and_skins_settings_api" long-name="Personalisation and Skins Settings API" filter="s60" class="api">
+<component name="personalisation_and_skins_settings_api" long-name="Personalisation and Skins Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/personalisation_and_skins_settings_api/group"/>
</component>
-<component name="tfx_effect_setup_plugin_api" long-name="TFX Effect Setup Plug-in API" filter="s60" class="api">
+<component name="tfx_effect_setup_plugin_api" long-name="TFX Effect Setup Plug-in API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/tfx_effect_setup_plugin_api/group"/>
</component>
-<component name="mifconv_definitions_api" long-name="Mifconv Definitions API" filter="s60" class="api">
+<component name="mifconv_definitions_api" long-name="Mifconv Definitions API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/mifconv_definitions_api/group"/>
</component>
-<component name="wallpaper_configuration_api" long-name="Wallpaper Configuration API" filter="s60" class="api">
+<component name="wallpaper_configuration_api" long-name="Wallpaper Configuration API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/wallpaper_configuration_api/group"/>
</component>
-<component name="language_code_definitions_api" long-name="Language Code Definitions API" filter="s60" class="api">
+<component name="language_code_definitions_api" long-name="Language Code Definitions API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/language_code_definitions_api/group"/>
</component>
-<component name="skins_image_attributes_api" long-name="Skins Image Attributes API" filter="s60" class="api">
+<component name="skins_image_attributes_api" long-name="Skins Image Attributes API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/skins_image_attributes_api/group" filter="!test"/>
</component>
-<component name="private_user_area_code_definitions_api" long-name="Private User Area Code Definitions API" filter="s60" class="api">
+<component name="private_user_area_code_definitions_api" long-name="Private User Area Code Definitions API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/private_user_area_code_definitions_api/group"/>
</component>
-<component name="tfx_server_plugin_ids_api" long-name="TFX Server Plug-in IDs API" filter="s60" class="api">
+<component name="tfx_server_plugin_ids_api" long-name="TFX Server Plug-in IDs API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uiresources/uiresources_plat/tfx_server_plugin_ids_api/group"/>
</component>
</collection>
<collection name="uiresources_info" long-name="UI Resources Info" level="data">
-<component name="uiresources_test" filter="s60,test,api_test" long-name="UI Resources Tests" purpose="development"/>
+<component name="uiresources_test" long-name="UI Resources Tests" filter="s60,test,api_test" purpose="development"/>
</collection>
<collection name="uigraphics" long-name="UI Graphics" level="generic">
-<component name="bitmaps2" filter="s60" long-name="Bitmaps 2" class="config">
+<component name="bitmaps2" long-name="Bitmaps 2" filter="s60" purpose="optional" class="config">
<unit bldFile="mw/uiresources/uigraphics/bitmaps2/group"/>
</component>
-<component name="icons" filter="s60" long-name="Icons" class="config">
+<component name="icons" long-name="Icons" filter="s60" purpose="optional" class="config">
<unit bldFile="mw/uiresources/uigraphics/icons/group"/>
</component>
-<component name="variatedbitmaps" filter="s60" long-name="Variated Bitmaps" class="config">
+<component name="variatedbitmaps" long-name="Variated Bitmaps" filter="s60" purpose="optional" class="config">
<unit bldFile="mw/uiresources/uigraphics/variatedbitmaps/group"/>
</component>
-<component name="aknicon" filter="s60" long-name="Avkon Icon Framework">
+<component name="aknicon" long-name="Avkon Icon Framework" filter="s60" purpose="optional">
<unit bldFile="mw/uiresources/uigraphics/aknicon/group"/>
</component>
-<component name="nvgrenderstage" filter="sf_build" long-name="NVG Render Stage">
+<component name="nvgrenderstage" long-name="NVG Render Stage" filter="sf_build" purpose="optional">
<unit bldFile="mw/uiresources/uigraphics/nvgrenderstage/group"/>
</component>
</collection>
<collection name="layouts" long-name="Layouts" level="plugin">
-<component name="cdl" filter="s60" long-name="Customization Definition Language">
+<component name="cdl" long-name="Customization Definition Language" filter="s60" purpose="optional">
<!-- can only have one unit. Need to #include them or split into multiple components -->
<unit bldFile="mw/uiresources/layouts/cdl/cdlengine/group"/>
<unit bldFile="mw/uiresources/layouts/cdl/cdlserver/group"/>
</component>
-<component name="aknlayout2" filter="s60" long-name="Avkon Layout 2">
+<component name="aknlayout2" long-name="Avkon Layout 2" filter="s60" purpose="optional">
<unit bldFile="mw/uiresources/layouts/aknlayout2/group"/>
</component>
</collection>
<collection name="skins" long-name="Skins" level="data">
-<component name="aknskincontent" filter="s60" long-name="Avkon Skin Content" class="config">
+<component name="aknskincontent" long-name="Avkon Skin Content" filter="s60" purpose="optional" class="config">
<unit bldFile="mw/uiresources/skins/aknskincontent/group"/>
</component>
-<component name="aknskins" filter="s60" long-name="Avkon Skin Compiler">
+<component name="aknskins" long-name="Avkon Skin Compiler" filter="s60" purpose="optional">
<unit bldFile="mw/uiresources/skins/aknskins/group"/>
</component>
</collection>
<collection name="pictographs" long-name="Pictographs" level="data">
-<component name="aknpictograph" filter="s60" long-name="Avkon Pictograph">
+<component name="aknpictograph" long-name="Avkon Pictograph" filter="s60" purpose="optional">
<unit bldFile="mw/uiresources/pictographs/aknpictograph/group"/>
</component>
</collection>
<collection name="locales" long-name="Locales" level="framework">
-<component name="locales_build" filter="s60" long-name="Locales Build">
+<component name="locales_build" long-name="Locales Build" filter="s60" purpose="optional">
<unit bldFile="mw/uiresources/locales/loce32"/>
</component>
</collection>
<collection name="uiconfig" long-name="UI Config" level="server">
-<component name="s60config" filter="s60" long-name="S60 UI Config">
+<component name="s60config" long-name="S60 UI Config" filter="s60" purpose="optional">
<unit bldFile="mw/uiresources/uiconfig/s60config/group"/>
</component>
</collection>
<collection name="fontsupport" long-name="Font Support" level="generic">
-<component name="fontprovider" filter="s60" long-name="Font Provider">
+<component name="fontprovider" long-name="Font Provider" filter="s60" purpose="optional">
<unit bldFile="mw/uiresources/fontsupport/fontprovider/group"/>
</component>
-<!-- R&D materials, should be Nokia only: exports S60 fonts, removes freetype
- <component id="s60_fonts" filter="s60" name="S60 Fonts">
- <unit bldFile="fontsupport/fontutils/group"/>
- </component>
+<!-- R&D materials, should be Nokia only: exports S60 fonts, removes freetype
+ <component id="s60_fonts" filter="s60" name="S60 Fonts">
+ <unit bldFile="fontsupport/fontutils/group"/>
+ </component>
-->
-<component name="fontutils" filter="sf_build" long-name="Font Utils">
+<component name="fontutils" long-name="Font Utils" filter="sf_build" purpose="optional">
<unit bldFile="mw/uiresources/fontsupport/fontutils/FontUtils/group"/>
</component>
</collection>
<collection name="helpthemes" long-name="Help Themes" level="data">
<!-- collection is really a component. Need to move down a directory -->
-<component name="helpthemes_build" filter="s60" long-name="Help Themes Build" class="config">
+<component name="helpthemes_build" long-name="Help Themes Build" filter="s60" purpose="optional" class="config">
<unit bldFile="mw/uiresources/helpthemes/group"/>
</component>
</collection>
</block>
-<block name="hapticsservices" level="generic" long-name="Haptics Services" levels="fw server api">
+<block name="hapticsservices" level="generic" levels="fw server api" long-name="Haptics Services">
<collection name="hapticsservices_plat" long-name="Haptics Services Platform Interfaces" level="api">
-<component name="tacticon_api" long-name="Tacticon API" introduced="^1" filter="s60" class="api">
+<component name="tacticon_api" long-name="Tacticon API" introduced="^1" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/hapticsservices/hapticsservices_plat/tacticon_api/group"/>
</component>
-<component name="tactile_feedback_core_api" long-name="Tactile Feedback Core API" introduced="^1" filter="s60" class="api">
+<component name="tactile_feedback_core_api" long-name="Tactile Feedback Core API" introduced="^1" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/hapticsservices/hapticsservices_plat/tactile_feedback_core_api/group"/>
</component>
-<component name="tactile_feedback_server_api" long-name="Tactile Feedback Server API" introduced="^1" filter="s60" class="api">
+<component name="tactile_feedback_server_api" long-name="Tactile Feedback Server API" introduced="^1" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/hapticsservices/hapticsservices_plat/tactile_feedback_server_api/group"/>
</component>
</collection>
<collection name="hapticsservices_pub" long-name="Haptics Services Public Interfaces" level="api">
-<component name="tactile_feedback_client_api" long-name="Tactile Feedback Client API" introduced="^1" filter="s60" class="api">
+<component name="tactile_feedback_client_api" long-name="Tactile Feedback Client API" introduced="^1" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/hapticsservices/hapticsservices_pub/tactile_feedback_client_api/group"/>
</component>
</collection>
<collection name="tacticonserver" long-name="Tacticon Server" level="server">
<!-- collection is really a component. Move down a directory -->
-<component name="tacticonserver_build" filter="s60" long-name="Tacticon Server Build" introduced="^3">
+<component name="tacticonserver_build" long-name="Tacticon Server Build" introduced="^3" filter="s60" purpose="optional">
<unit bldFile="mw/hapticsservices/tacticonserver/group"/>
<!-- clients and servers are suauly the same component. Consider moving pluign to a separate component if needed -->
</component>
</collection>
<collection name="tactilefeedback" long-name="Tactile Feedback" level="fw">
-<component name="tactilearearegistry" filter="s60" long-name="Tactile Area Registry" introduced="^1">
+<component name="tactilearearegistry" long-name="Tactile Area Registry" introduced="^1" filter="s60" purpose="optional">
<unit bldFile="mw/hapticsservices/tactilefeedback/tactilearearegistry/group"/>
</component>
-<component name="tactilefeedbackresolver" filter="s60" long-name="Tactile Feedback Resolver" introduced="^1">
+<component name="tactilefeedbackresolver" long-name="Tactile Feedback Resolver" introduced="^1" filter="s60" purpose="optional">
<unit bldFile="mw/hapticsservices/tactilefeedback/tactilefeedbackresolver/group"/>
</component>
-<component name="tactileclickplugin" filter="s60" long-name="Tactile Click Plugin" introduced="^1" plugin="Y">
+<component name="tactileclickplugin" long-name="Tactile Click Plugin" introduced="^1" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/hapticsservices/tactilefeedback/tactileclickplugin/group"/>
</component>
-<component name="tactilefeedbackclient" filter="s60" long-name="Tactile Feedback Client" introduced="^1">
+<component name="tactilefeedbackclient" long-name="Tactile Feedback Client" introduced="^1" filter="s60" purpose="optional">
<unit bldFile="mw/hapticsservices/tactilefeedback/tactilefeedbackclient/group"/>
</component>
-<component name="tactileactionplugin" filter="s60" long-name="Tactile Action Plugin" introduced="^1" plugin="Y">
+<component name="tactileactionplugin" long-name="Tactile Action Plugin" introduced="^1" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/hapticsservices/tactilefeedback/tactileactionplugin/group"/>
</component>
-<component name="tactilefeedback_build" filter="s60" long-name="Tactile Feedback Build" introduced="^1">
+<component name="tactilefeedback_build" long-name="Tactile Feedback Build" introduced="^1" filter="s60" purpose="optional">
<!-- consider moving IBY to one fo the above components -->
<unit bldFile="mw/hapticsservices/tactilefeedback/group"/>
</component>
</collection>
</block>
-<block name="platformthemes" level="specific" long-name="Platform Themes" levels="framework generic ui">
+<block name="platformthemes" level="specific" levels="framework generic ui" long-name="Platform Themes">
<collection name="platformthemes_info" long-name="Platform Themes Info">
-<component name="platformthemes_build" long-name="Platform Themes Build">
+<component name="platformthemes_build" long-name="Platform Themes Build" purpose="optional">
<!-- no real structure in this package. Should break into collections / components -->
-<unit bldFile="mw/platformthemes" proFile="platformthemes.pro"/>
+<unit bldFile="mw/platformthemes/." proFile="platformthemes.pro"/>
</component>
</collection>
</block>
-<block name="gsprofilesrv" level="generic" long-name="General Settings and Profiles Services" levels="system plugin framework server generic specific">
+<block name="gsprofilesrv" level="generic" levels="system plugin framework server generic specific" long-name="General Settings and Profiles Services">
<collection name="gsprofilesrv_pub" long-name="GS and Profiles Services Public Interfaces" level="specific">
-<component name="profiles_engine_active_profile_settings_api" long-name="Profiles Engine Active Profile Settings API" filter="s60" class="api">
+<component name="profiles_engine_active_profile_settings_api" long-name="Profiles Engine Active Profile Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/gsprofilesrv/gsprofilesrv_pub/profiles_engine_active_profile_settings_api/group"/>
</component>
-<component name="profiles_engine_wrapper_api" long-name="Profiles Engine Wrapper API" filter="s60" class="api">
+<component name="profiles_engine_wrapper_api" long-name="Profiles Engine Wrapper API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/gsprofilesrv/gsprofilesrv_pub/profiles_engine_wrapper_api/group"/>
</component>
</collection>
<collection name="gsprofilesrv_plat" long-name="GS and Profiles Services Platform Interfaces" level="specific">
-<component name="ftuwizardmodel_api" long-name="FTU Wizard Model API" filter="bldfirst,s60" class="api">
+<component name="ftuwizardmodel_api" long-name="FTU Wizard Model API" filter="bldfirst,s60" purpose="optional" class="api">
<unit bldFile="mw/gsprofilesrv/gsprofilesrv_plat/ftuwizardmodel_api" proFile="ftuwizardmodel_api.pro" qmakeArgs="-r -config rom"/>
</component>
-<component name="profiles_engine_api" long-name="Profiles Engine API" filter="s60" class="api">
+<component name="profiles_engine_api" long-name="Profiles Engine API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/gsprofilesrv/gsprofilesrv_plat/profiles_engine_api/group"/>
</component>
-<component name="settings_uis_cenrep_collection_api" long-name="Settings UIs CenRep Collection API" filter="s60" class="api">
+<component name="settings_uis_cenrep_collection_api" long-name="Settings UIs CenRep Collection API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/gsprofilesrv/gsprofilesrv_plat/settings_uis_cenrep_collection_api/group"/>
</component>
</collection>
<collection name="ftuwizardmodel" long-name="FTU Wizard Model" level="generic">
-<component name="ftuwizardmodel_build" long-name="FTU Wizardmodel Build" filter="bldfirst">
+<component name="ftuwizardmodel_build" long-name="FTU Wizardmodel Build" filter="bldfirst" purpose="optional">
<unit bldFile="mw/gsprofilesrv/ftuwizardmodel" proFile="ftuwizardmodel.pro" qmakeArgs="-r -config rom"/>
</component>
</collection>
<collection name="controlpanel" long-name="Control Panel" level="generic">
-<component name="controlpanel_rom" long-name="Control Panel ROM" filter="s60" class="placeholder">
-<!-- Need to create a real .pro file for this
+<component name="controlpanel_rom" long-name="Control Panel ROM" filter="s60" purpose="optional" class="placeholder">
+<!-- Need to create a real .pro file for this
<unit bldFile="controlpanel/rom" qt:proFile="cp_rom.pri" qt:qmakeArgs="-r -config rom"/> -->
</component>
-<component name="controlpanel_config" long-name="Control Panel Config" filter="s60" introduced="^4" class="config placeholder">
-<!-- Need to create a real .pro file for this
+<component name="controlpanel_config" long-name="Control Panel Config" introduced="^4" filter="s60" purpose="optional" class="config placeholder">
+<!-- Need to create a real .pro file for this
<unit bldFile="controlpanel/conf" qt:proFile="conf.pri" qt:qmakeArgs="-r -config rom"/> -->
</component>
-<component name="controlpanel_source" long-name="Control Panel Source" filter="s60" class="placeholder">
-<!-- Uncomment when controlpanel_build is removed
+<component name="controlpanel_source" long-name="Control Panel Source" filter="s60" purpose="optional" class="placeholder">
+<!-- Uncomment when controlpanel_build is removed
<unit bldFile="controlpanel/src" qt:qmakeArgs="-r -config rom" qt:proFile="src.pro"/> -->
</component>
-<component name="controlpanel_build" long-name="Control Panel Build" filter="s60">
+<component name="controlpanel_build" long-name="Control Panel Build" filter="s60" purpose="optional">
<!-- need to make included .pri file into a real .pro file -->
-<unit bldFile="mw/gsprofilesrv/controlpanel" qmakeArgs="-r -config rom" proFile="controlpanel.pro"/>
+<unit bldFile="mw/gsprofilesrv/controlpanel" proFile="controlpanel.pro" qmakeArgs="-r -config rom"/>
</component>
</collection>
<collection name="profilesservices" long-name="Profiles Services" level="server">
-<component name="profileengine" filter="s60" long-name="Profile Engine" introduced="9.1">
+<component name="profileengine" long-name="Profile Engine" introduced="9.1" filter="s60" purpose="optional">
<unit bldFile="mw/gsprofilesrv/profilesservices/profileengine/group"/>
</component>
</collection>
</block>
-<block name="homescreensrv" level="specific" long-name="Home Screen Services" levels="plugin framework server generic specific">
+<block name="homescreensrv" level="specific" levels="plugin framework server generic specific" long-name="Home Screen Services">
<collection name="hswidgetmodel" long-name="Home Screen Widget Model" level="framework">
-<component name="hswidgetmodel_build" long-name="Home Screen Widget Model Build" introduced="^4">
-<unit bldFile="mw/homescreensrv/hswidgetmodel" qmakeArgs="-r" proFile="hswidgetmodel.pro"/>
+<component name="hswidgetmodel_build" long-name="Home Screen Widget Model Build" introduced="^4" purpose="optional">
+<unit bldFile="mw/homescreensrv/hswidgetmodel" proFile="hswidgetmodel.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="contentstorage" long-name="Content Storage" level="framework">
-<component name="cautils" long-name="Content Arsenal Utils" introduced="^4">
-<unit bldFile="mw/homescreensrv/contentstorage/cautils" qmakeArgs="-r" proFile="cautils.pro"/>
-</component>
-<component name="contentstorage_build" long-name="Content Storage Build" introduced="^4">
-<unit bldFile="mw/homescreensrv/contentstorage/group" qmakeArgs="-r" proFile="group.pro"/>
-</component>
-<component name="casrv/calocalizerscanner" long-name="Content Arsenal Server Localizer Scanner" introduced="^4">
-<unit bldFile="mw/homescreensrv/contentstorage/casrv/calocalizerscanner" qmakeArgs="-r" proFile="calocalizerscanner.pro"/>
-</component>
-<component name="cahandler" long-name="Content Arsenal Handler" introduced="^4">
-<unit bldFile="mw/homescreensrv/contentstorage/cahandler" qmakeArgs="-r" proFile="cahandler.pro"/>
-</component>
-<component name="caclient" long-name="Content Arsenal Client" introduced="^4">
-<unit bldFile="mw/homescreensrv/contentstorage/caclient" qmakeArgs="-r" proFile="caclient.pro"/>
-</component>
-<component name="casoftwareregistry" long-name="Content Arsenal Software Registry" introduced="^4">
-<unit bldFile="mw/homescreensrv/contentstorage/casoftwareregistry" qmakeArgs="-r" proFile="casoftwareregistry.pro"/>
+<component name="cautils" long-name="Content Arsenal Utils" introduced="^4" purpose="optional">
+<unit bldFile="mw/homescreensrv/contentstorage/cautils" proFile="cautils.pro" qmakeArgs="-r"/>
+</component>
+<component name="contentstorage_build" long-name="Content Storage Build" introduced="^4" purpose="optional">
+<unit bldFile="mw/homescreensrv/contentstorage/group" proFile="group.pro" qmakeArgs="-r"/>
+</component>
+<component name="casrv/calocalizerscanner" long-name="Content Arsenal Server Localizer Scanner" introduced="^4" purpose="optional">
+<unit bldFile="mw/homescreensrv/contentstorage/casrv/calocalizerscanner" proFile="calocalizerscanner.pro" qmakeArgs="-r"/>
+</component>
+<component name="cahandler" long-name="Content Arsenal Handler" introduced="^4" purpose="optional">
+<unit bldFile="mw/homescreensrv/contentstorage/cahandler" proFile="cahandler.pro" qmakeArgs="-r"/>
+</component>
+<component name="caclient" long-name="Content Arsenal Client" introduced="^4" purpose="optional">
+<unit bldFile="mw/homescreensrv/contentstorage/caclient" proFile="caclient.pro" qmakeArgs="-r"/>
+</component>
+<component name="casoftwareregistry" long-name="Content Arsenal Software Registry" introduced="^4" purpose="optional">
+<unit bldFile="mw/homescreensrv/contentstorage/casoftwareregistry" proFile="casoftwareregistry.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="homescreensrv_plat" long-name="Home Screen Services Platform Interfaces" level="specific">
-<component name="homescreensrv_plat_build" long-name="Home Screen Services Platform Interfaces build" introduced="^4">
-<unit bldFile="mw/homescreensrv/homescreensrv_plat" qmakeArgs="-r" proFile="homescreensrv_plat.pro"/>
-</component>
-<component name="menu_sat_interface_api" long-name="Menu SAT Interface API" filter="s60" class="api"/>
-<component name="contentstorage_api" long-name="Content Storage API" filter="s60" introduced="^4" class="api"/>
-<component name="hswidgetmodel_api" long-name="HS Widget Model API" filter="s60" introduced="^4" class="api"/>
-<component name="homescreen_information_api" long-name="Homescreen Information API" filter="s60" introduced="^4" class="api"/>
+<component name="homescreensrv_plat_build" long-name="Home Screen Services Platform Interfaces build" introduced="^4" purpose="optional">
+<unit bldFile="mw/homescreensrv/homescreensrv_plat" proFile="homescreensrv_plat.pro" qmakeArgs="-r"/>
+</component>
+<component name="menu_sat_interface_api" long-name="Menu SAT Interface API" filter="s60" purpose="optional" class="api"/>
+<component name="contentstorage_api" long-name="Content Storage API" introduced="^4" filter="s60" purpose="optional" class="api"/>
+<component name="hswidgetmodel_api" long-name="HS Widget Model API" introduced="^4" filter="s60" purpose="optional" class="api"/>
+<component name="homescreen_information_api" long-name="Homescreen Information API" introduced="^4" filter="s60" purpose="optional" class="api"/>
</collection>
<collection name="hsactivityfw" long-name="Activity Framework" level="fw">
-<component name="hsactivityfw_build" long-name="Activity Framework Build" introduced="^4">
-<unit bldFile="mw/homescreensrv/activityfw" qmakeArgs="-r" proFile="activityfw.pro"/>
+<component name="hsactivityfw_build" long-name="Activity Framework Build" introduced="^4" purpose="optional">
+<unit bldFile="mw/homescreensrv/activityfw" proFile="activityfw.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="tstaskmonitor" long-name="Task Switcher Task Monitor" level="fw">
<!-- move collection down to a component directory or split up into component .pro files -->
-<component name="tstaskmonitor_build" long-name="Task Switcher Task Monitor Build" introduced="^4">
-<unit bldFile="mw/homescreensrv/tstaskmonitor" qmakeArgs="-r" proFile="tstaskmonitor.pro"/>
+<component name="tstaskmonitor_build" long-name="Task Switcher Task Monitor Build" introduced="^4" purpose="optional">
+<unit bldFile="mw/homescreensrv/tstaskmonitor" proFile="tstaskmonitor.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="hsappkeyhandler" long-name="HS Appplication Key Handler" level="server">
-<component name="hsappkeyhandler_build" long-name="Appplication Key Handler Build" introduced="^4">
-<unit bldFile="mw/homescreensrv/hsappkeyhandler" qmakeArgs="-r" proFile="hsappkeyhandler.pro"/>
+<component name="hsappkeyhandler_build" long-name="Appplication Key Handler Build" introduced="^4" purpose="optional">
+<unit bldFile="mw/homescreensrv/hsappkeyhandler" proFile="hsappkeyhandler.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="tsdevicedialog" long-name="Task Switcher Device Dialog" level="plugin">
-<component name="tsdevicedialog_build" long-name="Task Switcher Device Dialog Build" introduced="^4">
+<component name="tsdevicedialog_build" long-name="Task Switcher Device Dialog Build" introduced="^4" purpose="optional">
<!-- break this up into real components -->
-<unit bldFile="mw/homescreensrv/tsdevicedialog" qmakeArgs="-r" proFile="tsdevicedialog.pro"/>
+<unit bldFile="mw/homescreensrv/tsdevicedialog" proFile="tsdevicedialog.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="homescreensrv_info" long-name="Home Screen Services Info" level="specific">
-<component name="homescreensrvconf" long-name="Home Screen Services Config" introduced="^4" class="config">
-<unit bldFile="mw/homescreensrv" qmakeArgs="-r" proFile="homescreensrv_exports_to_rom.pri"/>
-</component>
-<component name="homescreensrvrom" long-name="Home Screen Services ROM" introduced="^4">
+<component name="homescreensrvconf" long-name="Home Screen Services Config" introduced="^4" purpose="optional" class="config">
+<unit bldFile="mw/homescreensrv/." proFile="homescreensrv_exports_to_rom.pri" qmakeArgs="-r"/>
+</component>
+<component name="homescreensrvrom" long-name="Home Screen Services ROM" introduced="^4" purpose="optional">
<unit bldFile="mw/homescreensrv/group"/>
</component>
</collection>
</block>
-<block name="homescreensrvlegacy" level="generic" long-name="Legacy Home Screen Services" levels="plugin framework server generic specific">
+<block name="homescreensrvlegacy" level="generic" levels="plugin framework server generic specific" long-name="Legacy Home Screen Services">
<collection name="homescreensrvlegacy_plat" long-name="Legacy Home Screen Services Platform Interfaces" level="specific">
-<component name="ai_content_model_api" long-name="AI Content Model API" filter="s60" class="api">
+<component name="ai_content_model_api" long-name="AI Content Model API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/homescreensrvlegacy/ai_content_model_api/group" proFile="group.pro"/>
</component>
-<component name="ai_plugin_information_api" long-name="AI Plug-in Information API" filter="s60" class="api">
+<component name="ai_plugin_information_api" long-name="AI Plug-in Information API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/homescreensrvlegacy/ai_plugin_information_api/group" proFile="group.pro"/>
</component>
-<component name="content_harvester_plugin_api" long-name="Content Harvester Plugin API " filter="s60" class="api">
+<component name="content_harvester_plugin_api" long-name="Content Harvester Plugin API " filter="s60" purpose="optional" class="api">
<unit bldFile="mw/homescreensrvlegacy/content_harvester_plugin_api/group"/>
</component>
</collection>
</block>
-<block name="appinstall" level="generic" long-name="Application Installation" levels="tool framework generic api">
+<block name="appinstall" level="generic" levels="tool framework generic api" long-name="Application Installation">
<collection name="appinstall_plat" long-name="Application Installation Platform Interfaces" level="api">
-<component name="iaupdate_api" long-name="IA Update API" filter="s60" class="api">
+<component name="iaupdate_api" long-name="IA Update API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appinstall/appinstall_plat/iaupdate_api/group"/>
</component>
-<component name="task_plugin_api" long-name="Task Plugin API" filter="s60" class="api">
+<component name="task_plugin_api" long-name="Task Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appinstall/appinstall_plat/task_plugin_api/group"/>
</component>
-<component name="sw_installer_common_ui_api" long-name="SW Installer Common UI API" filter="s60" class="api">
+<component name="sw_installer_common_ui_api" long-name="SW Installer Common UI API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appinstall/appinstall_plat/sw_installer_common_ui_api/group"/>
</component>
-<component name="sw_installer_launcher_api" long-name="SW Installer Launcher API" filter="s60" class="api">
+<component name="sw_installer_launcher_api" long-name="SW Installer Launcher API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appinstall/appinstall_plat/sw_installer_launcher_api/group"/>
</component>
-<component name="task_management_api" long-name="Task Management API" filter="s60" class="api">
+<component name="task_management_api" long-name="Task Management API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appinstall/appinstall_plat/task_management_api/group"/>
</component>
-<component name="sw_installer_ui_plugin_api" long-name="SW Installer UI Plugin API" filter="s60" class="api">
+<component name="sw_installer_ui_plugin_api" long-name="SW Installer UI Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appinstall/appinstall_plat/sw_installer_ui_plugin_api/group"/>
</component>
-<component name="sw_installer_cr_keys" long-name="SW Installer CR Keys" filter="s60" class="api">
+<component name="sw_installer_cr_keys" long-name="SW Installer CR Keys" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appinstall/appinstall_plat/sw_installer_cr_keys/group"/>
</component>
-<component name="sw_installer_ps_keys" long-name="SW Installer PS Keys" filter="s60" class="api">
+<component name="sw_installer_ps_keys" long-name="SW Installer PS Keys" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appinstall/appinstall_plat/sw_installer_ps_keys/group"/>
</component>
-<component name="sifui_api" long-name="STIF UI API" filter="s60" class="api">
+<component name="sifui_api" long-name="STIF UI API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appinstall/appinstall_plat/sifui_api/group"/>
</component>
</collection>
<collection name="appinstall_pub" long-name="Application Installation Public Interfaces" level="api">
-<component name="startup_list_management_api" long-name="Startup List Management API" filter="s60" class="api">
+<component name="startup_list_management_api" long-name="Startup List Management API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/appinstall/appinstall_pub/startup_list_management_api/group"/>
</component>
</collection>
<collection name="ncdengine" long-name="Nokia Content Discover" level="framework">
-<component name="ncdengine_build" filter="s60" long-name="NCD Engine" introduced="^1">
+<component name="ncdengine_build" long-name="NCD Engine" introduced="^1" filter="s60" purpose="optional">
<unit bldFile="mw/appinstall/ncdengine/engine" proFile="engine.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="appinstaller" long-name="Application Installer" level="generic">
-<component name="appinstui" filter="s60" long-name="Application Installer UI" introduced="^2">
+<component name="appinstui" long-name="Application Installer UI" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/appinstall/appinstaller/appinstui/group"/>
</component>
-<component name="appinstui_qt" filter="s60" long-name="Application Installer Qt UI" introduced="^2">
+<component name="appinstui_qt" long-name="Application Installer Qt UI" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/appinstall/appinstaller/appinstui" proFile="appinstui.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="iaupdateapi_stub" long-name="IA Update API Stub" level="api">
<!-- the collection is really a component. Move down a directory.-->
-<component name="iaupdateapi_stub_build" long-name="IA Update API Stub Build" filter="s60" introduced="^2">
+<component name="iaupdateapi_stub_build" long-name="IA Update API Stub Build" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/appinstall/iaupdateapi_stub/group"/>
</component>
</collection>
<collection name="iaupdate" long-name="Independent Apps Update" level="api">
<!-- Should reorganise into actual components -->
-<component name="iad" long-name="Independent App delivery" filter="s60" introduced="^4" purpose="development">
+<component name="iad" long-name="Independent App delivery" introduced="^4" filter="s60" purpose="development">
<unit bldFile="mw/appinstall/iaupdate" proFile="iaupdate.pro" qmakeArgs="-r"/>
</component>
-<component name="iaupdate_build" filter="s60" long-name="IA Update Build" introduced="^2">
+<component name="iaupdate_build" long-name="IA Update Build" introduced="^2" filter="s60" purpose="optional">
<unit bldFile="mw/appinstall/iaupdate/group"/>
</component>
</collection>
@@ -6925,7 +6813,7 @@
</component>
</collection>
<collection name="secureswitools" long-name="Secure Software Install Tools" level="tool">
-<component name="makekeys" long-name="MakeKeys" filter="gt" introduced="6.0" purpose="optional" class="PC">
+<component name="makekeys" long-name="MakeKeys" introduced="6.0" filter="gt" purpose="optional" class="PC">
<unit bldFile="mw/appinstall/secureswitools/makekeys/group" mrp="mw/appinstall/secureswitools/makekeys/group/security_makekeys.mrp"/>
</component>
<component name="swianalysistoolkit" long-name="SWI Analysis Toolkit" purpose="development" class="PC">
@@ -6944,216 +6832,210 @@
</component>
</collection>
</block>
-<block name="serviceapifw" level="specific" long-name="Service API Framework" levels="plugin framework server generic specific">
+<block name="serviceapifw" level="specific" levels="plugin framework server generic specific" long-name="Service API Framework">
<collection name="serviceapifw_pub" long-name="Service API Framework Public Interfaces" level="specific"/>
<collection name="serviceapifw_plat" long-name="Service API Framework Platform Interfaces" level="specific">
-<component name="rtsecuritymanager_common_api" long-name="Runtime Security Manager Common API" filter="s60" class="api">
+<component name="rtsecuritymanager_common_api" long-name="Runtime Security Manager Common API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/serviceapifw/serviceapifw_plat/rtsecuritymanager_common_api/group"/>
</component>
-<component name="rtsecuritymanager_utility_api" long-name="Runtime Security Manager Utility API" filter="s60" class="api">
+<component name="rtsecuritymanager_utility_api" long-name="Runtime Security Manager Utility API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/serviceapifw/serviceapifw_plat/rtsecuritymanager_utility_api/group"/>
</component>
-<component name="rtsecuritymanager_client_api" long-name="Runtime Security Manager Client API" filter="s60" class="api">
+<component name="rtsecuritymanager_client_api" long-name="Runtime Security Manager Client API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/serviceapifw/serviceapifw_plat/rtsecuritymanager_client_api/group"/>
</component>
-<component name="liw_provider_utility_api" long-name="LIW Provider Utility API" filter="s60" class="api">
+<component name="liw_provider_utility_api" long-name="LIW Provider Utility API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/serviceapifw/serviceapifw_plat/liw_provider_utility_api/group"/>
</component>
-<component name="liw_service_interface_base_api" long-name="LIW Service Interface Base API" filter="s60" class="api">
+<component name="liw_service_interface_base_api" long-name="LIW Service Interface Base API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/serviceapifw/serviceapifw_plat/liw_service_interface_base_api/group"/>
</component>
-<component name="liw_service_interface_menu_api" long-name="LIW Service Interface Menu API" filter="s60" class="api">
+<component name="liw_service_interface_menu_api" long-name="LIW Service Interface Menu API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/serviceapifw/serviceapifw_plat/liw_service_interface_menu_api/group"/>
</component>
-<component name="liw_criteria_api" long-name="LIW Criteria API" filter="s60" class="api">
+<component name="liw_criteria_api" long-name="LIW Criteria API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/serviceapifw/serviceapifw_plat/liw_criteria_api/group"/>
</component>
-<component name="liw_generic_parameter_api" long-name="LIW Generic Parameter API" filter="s60" class="api">
+<component name="liw_generic_parameter_api" long-name="LIW Generic Parameter API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/serviceapifw/serviceapifw_plat/liw_generic_parameter_api/group"/>
</component>
-<component name="liw_service_handler_api" long-name="LIW Service Handler API" filter="s60" class="api">
+<component name="liw_service_handler_api" long-name="LIW Service Handler API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/serviceapifw/serviceapifw_plat/liw_service_handler_api/group"/>
</component>
</collection>
<collection name="rtsecuritymanager" long-name="Runtime Security Manager" level="server">
-<component name="rtsecuritymanagerutil" filter="s60" long-name="Runtime Security Manager Util">
+<component name="rtsecuritymanagerutil" long-name="Runtime Security Manager Util" filter="s60" purpose="optional">
<unit bldFile="mw/serviceapifw/rtsecuritymanager/rtsecuritymanagerutil/group"/>
</component>
-<component name="rtsecuritymanagerserver" filter="s60" long-name="Runtime Security Manager Server">
+<component name="rtsecuritymanagerserver" long-name="Runtime Security Manager Server" filter="s60" purpose="optional">
<unit bldFile="mw/serviceapifw/rtsecuritymanager/rtsecuritymanagerserver/group"/>
</component>
-<component name="rtsecuritymanagerclient" filter="s60" long-name="Runtime Security Manager Client">
+<component name="rtsecuritymanagerclient" long-name="Runtime Security Manager Client" filter="s60" purpose="optional">
<unit bldFile="mw/serviceapifw/rtsecuritymanager/rtsecuritymanagerclient/group"/>
</component>
-<component name="rtsecuritymanager_build" filter="s60" long-name="Runtime Security Manager Build">
+<component name="rtsecuritymanager_build" long-name="Runtime Security Manager Build" filter="s60" purpose="optional">
<!-- Move the export to the appropriate components, or make this a ROM component by removing the #includes -->
<unit bldFile="mw/serviceapifw/rtsecuritymanager/group"/>
</component>
</collection>
<collection name="languageinterworkingfw" long-name="Language Interworking Framework" level="framework">
-<component name="lifwservicehandler" filter="s60" long-name="Service Handler">
+<component name="lifwservicehandler" long-name="Service Handler" filter="s60" purpose="optional">
<unit bldFile="mw/serviceapifw/languageinterworkingfw/servicehandler/group"/>
</component>
</collection>
</block>
-<block name="serviceapi" level="specific" long-name="Service API" levels="os mw1 mw2 app">
+<block name="serviceapi" level="specific" levels="os mw1 mw2 app" long-name="Service API">
<!-- should break up this collection into something meaningful -->
<collection name="serviceproviders" long-name="Service Providers" level="mw1">
<!-- are commented out components to be removed? -->
-<component name="sapi_contacts_vpbk" long-name="Contacts Phonebook SAPI" filter="s60" plugin="Y" class="placeholder">
+<component name="sapi_contacts_vpbk" long-name="Contacts Phonebook SAPI" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!--<unit bldFile="serviceproviders/sapi_contacts_vpbk/group"/>-->
</component>
-<component name="sapi_location" long-name="Location SAPI" filter="s60" plugin="Y">
+<component name="sapi_location" long-name="Location SAPI" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_location/group"/>
</component>
-<component name="sapi_mediamanagement" long-name="Media Management SAPI" filter="s60" plugin="Y">
+<component name="sapi_mediamanagement" long-name="Media Management SAPI" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_mediamanagement/group"/>
</component>
-<component name="sapi_landmarks" long-name="Landmarks SAPI" filter="s60" plugin="Y">
+<component name="sapi_landmarks" long-name="Landmarks SAPI" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_landmarks/group"/>
</component>
-<component name="sapi_messaging" long-name="Messaging SAPI" filter="s60" plugin="Y" class="placeholder">
+<component name="sapi_messaging" long-name="Messaging SAPI" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!-- <unit bldFile="serviceproviders/sapi_messaging/group"/> -->
</component>
-<component name="sapi_applicationmanager" long-name="Application Manager SAPI" filter="s60" plugin="Y" class="placeholder">
+<component name="sapi_applicationmanager" long-name="Application Manager SAPI" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!-- <unit bldFile="serviceproviders/sapi_applicationmanager/group"/>-->
</component>
-<component name="sapi_calendar" long-name="Calendar SAPI" filter="s60" plugin="Y" class="placeholder">
+<component name="sapi_calendar" long-name="Calendar SAPI" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!-- <unit bldFile="serviceproviders/sapi_calendar/group"/> -->
</component>
-<component name="sapi_logging" long-name="Logging SAPI" filter="s60" plugin="Y">
+<component name="sapi_logging" long-name="Logging SAPI" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_logging/group"/>
</component>
-<component name="sapi_sensor" long-name="Sensor SAPI" filter="s60" plugin="Y">
+<component name="sapi_sensor" long-name="Sensor SAPI" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_sensor/group"/>
</component>
-<component name="sapi_sysinfo" long-name="Sysinfo SAPI" filter="s60" plugin="Y">
+<component name="sapi_sysinfo" long-name="Sysinfo SAPI" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_sysinfo/group"/>
</component>
-<component name="sapi_serviceregistry" long-name="Service Registry SAPI" filter="s60" plugin="Y">
+<component name="sapi_serviceregistry" long-name="Service Registry SAPI" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_serviceregistry/group"/>
</component>
-<component name="jsapi" long-name="Javascript API" filter="s60" plugin="Y">
+<component name="jsapi" long-name="Javascript API" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/jsapi/group"/>
</component>
-<component name="serviceproviders_build" filter="s60" long-name="Service API Build">
+<component name="serviceproviders_build" long-name="Service API Build" filter="s60" purpose="optional">
<!-- distribute the exports or make this a ROM component by removing the #includes -->
<unit bldFile="mw/serviceapi/serviceproviders/group"/>
</component>
</collection>
</block>
-<block name="browser" level="specific" long-name="Browser" levels="plugin utils support main">
+<block name="browser" level="specific" levels="plugin utils support main" long-name="Browser">
<collection name="bookmarksengine" long-name="Bookmarks Engine" level="support">
-<component name="bookmarksengine_build" long-name="Bookmarks Engine Build" introduced="^4">
+<component name="bookmarksengine_build" long-name="Bookmarks Engine Build" introduced="^4" purpose="optional">
<unit bldFile="mw/browser/bookmarksengine" proFile="bookmarksengine.pro"/>
</component>
</collection>
</block>
-<block name="web" level="specific" long-name="Web" levels="plugin utils server generic specific">
+<block name="web" level="specific" levels="plugin utils server generic specific" long-name="Web">
<collection name="web_pub" long-name="Web Public Interfaces" level="specific">
-<component name="browser_control_api" long-name="Browser Control API" filter="s60" class="api">
+<component name="browser_control_api" long-name="Browser Control API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/web/web_pub/browser_control_api/group"/>
</component>
-<component name="download_mgr_client_api" long-name="Download Manager Client API" filter="s60" class="api">
+<component name="download_mgr_client_api" long-name="Download Manager Client API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/web/web_pub/download_mgr_client_api/group"/>
</component>
-<component name="download_mgr_ui_api" long-name="Download Manager UI Library API" filter="s60" class="api">
+<component name="download_mgr_ui_api" long-name="Download Manager UI Library API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/web/web_pub/download_mgr_ui_api/group"/>
</component>
-<component name="favourites_engine_api" long-name="Favourites Engine API" filter="s60" class="api">
+<component name="favourites_engine_api" long-name="Favourites Engine API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/web/web_pub/favourites_engine_api/group"/>
</component>
-<component name="browser_plugin_api" long-name="Browser Plug-in API" filter="s60" class="api">
+<component name="browser_plugin_api" long-name="Browser Plug-in API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/web/web_pub/browser_plugin_api/group"/>
</component>
-<component name="settings_api" long-name="Settings API" filter="s60" class="api">
+<component name="settings_api" long-name="Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/web/web_pub/settings_api/group"/>
</component>
</collection>
<collection name="web_plat" long-name="Web Platform Interfaces" level="specific">
-<component name="aiw_browser_provider_api" long-name="AIW Browser Provider API" filter="s60" class="api">
+<component name="aiw_browser_provider_api" long-name="AIW Browser Provider API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/web/web_plat/aiw_browser_provider_api/group"/>
</component>
-<component name="browser_dialogs_provider_api" long-name="Browser Dialogs Provider API" filter="s60" class="api">
+<component name="browser_dialogs_provider_api" long-name="Browser Dialogs Provider API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/web/web_plat/browser_dialogs_provider_api/group"/>
</component>
-<component name="browser_platform_api" long-name="Browser Platform API" filter="s60" class="api">
+<component name="browser_platform_api" long-name="Browser Platform API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/web/web_plat/browser_platform_api/group"/>
</component>
-<component name="cod_handler_api" long-name="COD Handler API" filter="s60" class="api">
+<component name="cod_handler_api" long-name="COD Handler API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/web/web_plat/cod_handler_api/group"/>
</component>
-<component name="connection_manager_api" long-name="Connection Manager API" filter="s60" class="api">
+<component name="connection_manager_api" long-name="Connection Manager API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/web/web_plat/connection_manager_api/group"/>
</component>
-<component name="download_mgr_client_api_extn" long-name="Download Manager Client API Extension" filter="s60" class="api">
+<component name="download_mgr_client_api_extn" long-name="Download Manager Client API Extension" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/web/web_plat/download_mgr_client_api_extn/group"/>
</component>
-<component name="feeds_engine_api" long-name="Feeds Engine API" filter="s60" class="api">
+<component name="feeds_engine_api" long-name="Feeds Engine API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/web/web_plat/feeds_engine_api/group"/>
</component>
-<component name="launcher_api" long-name="Launcher API" filter="s60" class="api">
+<component name="launcher_api" long-name="Launcher API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/web/web_plat/launcher_api/group"/>
</component>
-<component name="multipart_parser_api" long-name="Multipart Parser API" filter="s60" class="api">
-<unit bldFile="mw/web/web_plat/multipart_parser_api/group"/>
-</component>
-<component name="recent_url_store_api" long-name="Recent URL Store API" filter="s60" class="api">
+<component name="recent_url_store_api" long-name="Recent URL Store API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/web/web_plat/recent_url_store_api/group"/>
</component>
-<component name="rt_gesturehelper_api" long-name="Runtime Gesture Helper API" filter="s60" introduced="^4" class="api">
+<component name="rt_gesturehelper_api" long-name="Runtime Gesture Helper API" introduced="^4" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/web/web_plat/rt_gesturehelper_api/group"/>
</component>
-<component name="scheme_handler_plugin_api" long-name="Scheme Handler Plugin API" filter="s60" class="api">
+<component name="scheme_handler_plugin_api" long-name="Scheme Handler Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/web/web_plat/scheme_handler_plugin_api/group"/>
</component>
-<component name="scriptable_plugin_api" long-name="Scriptable Plugin API" filter="s60" class="api">
+<component name="scriptable_plugin_api" long-name="Scriptable Plugin API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/web/web_plat/scriptable_plugin_api/group"/>
</component>
-<component name="webutils_api" long-name="Web Utils API" filter="s60" class="api">
+<component name="webutils_api" long-name="Web Utils API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/web/web_plat/webutils_api/group"/>
</component>
-<component name="widget_registry_api" long-name="Widget Registry API" filter="s60" class="api">
+<component name="widget_registry_api" long-name="Widget Registry API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/web/web_plat/widget_registry_api/group"/>
</component>
</collection>
<collection name="browserutilities" long-name="Browser Utilities" level="utils">
-<component name="browserdialogsprovider" filter="s60" long-name="Browser Dialogs Provider">
+<component name="browserdialogsprovider" long-name="Browser Dialogs Provider" filter="s60" purpose="optional">
<unit bldFile="mw/web/browserutilities/browserdialogsprovider/group"/>
</component>
-<component name="recenturlstore" filter="s60" long-name="Recent URL Store">
+<component name="recenturlstore" long-name="Recent URL Store" filter="s60" purpose="optional">
<unit bldFile="mw/web/browserutilities/recenturlstore/group"/>
</component>
-<component name="downloadmgr" filter="s60" long-name="Download Manager">
+<component name="downloadmgr" long-name="Download Manager" filter="s60" purpose="optional">
<unit bldFile="mw/web/browserutilities/downloadmgr/group"/>
</component>
-<component name="connectionmanager" filter="s60" long-name="Connection Manager">
+<component name="connectionmanager" long-name="Connection Manager" filter="s60" purpose="optional">
<unit bldFile="mw/web/browserutilities/connectionmanager/group"/>
</component>
-<component name="browsertelservice" filter="s60" long-name="Browser Telephony Service">
+<component name="browsertelservice" long-name="Browser Telephony Service" filter="s60" purpose="optional">
<unit bldFile="mw/web/browserutilities/browsertelservice/group"/>
</component>
-<component name="favouritesengine" filter="s60" long-name="Favourites Engine">
+<component name="favouritesengine" long-name="Favourites Engine" filter="s60" purpose="optional">
<unit bldFile="mw/web/browserutilities/favouritesengine/group"/>
</component>
-<component name="feedsengine" filter="s60" long-name="Feeds Engine">
+<component name="feedsengine" long-name="Feeds Engine" filter="s60" purpose="optional">
<unit bldFile="mw/web/browserutilities/feedsengine/group"/>
</component>
-<component name="multipartparser" filter="s60" long-name="Multipart Parser">
-<unit bldFile="mw/web/browserutilities/multipartparser/group"/>
-</component>
-<component name="schemehandler" filter="s60" long-name="Scheme Handler">
+<component name="schemehandler" long-name="Scheme Handler" filter="s60" purpose="optional">
<unit bldFile="mw/web/browserutilities/schemehandler/group"/>
</component>
-<component name="webutils" filter="s60" long-name="Web Utils">
+<component name="webutils" long-name="Web Utils" filter="s60" purpose="optional">
<unit bldFile="mw/web/browserutilities/webutils/group"/>
</component>
-<component name="aiwbrowserprovider" filter="s60" long-name="AIW Browser Provider" plugin="Y">
+<component name="aiwbrowserprovider" long-name="AIW Browser Provider" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/web/browserutilities/aiwbrowserprovider/group"/>
</component>
</collection>
<collection name="webengine" long-name="Web Engine" level="server">
-<component name="osswebengine" filter="s60" long-name="OSS Web Engine">
+<component name="osswebengine" long-name="OSS Web Engine" filter="s60" purpose="optional">
<!-- can only have one unit. Either split into multiple components or #include from a single main bld.inf -->
<unit bldFile="mw/web/webengine/osswebengine/cache/group"/>
<unit bldFile="mw/web/webengine/osswebengine/memorymanager/group"/>
@@ -7161,207 +7043,201 @@
<unit bldFile="mw/web/webengine/osswebengine/webkit/s60/group"/>
<unit bldFile="mw/web/webengine/osswebengine/webkit/s60/group/javascriptcore"/>
</component>
-<component name="webkitutils" filter="s60" long-name="WebKit Utils">
+<component name="webkitutils" long-name="WebKit Utils" filter="s60" purpose="optional">
<unit bldFile="mw/web/webengine/webkitutils/group"/>
</component>
-<component name="pagescaler" filter="s60" long-name="Page Scaler">
+<component name="pagescaler" long-name="Page Scaler" filter="s60" purpose="optional">
<unit bldFile="mw/web/webengine/pagescaler/group"/>
</component>
-<component name="webwidgetinstaller" filter="s60" long-name="Widget Installer">
+<component name="webwidgetinstaller" long-name="Widget Installer" filter="s60" purpose="optional">
<unit bldFile="mw/web/webengine/widgetinstaller/group"/>
</component>
-<component name="widgetregistry" filter="s60" long-name="Widget Registry">
+<component name="widgetregistry" long-name="Widget Registry" filter="s60" purpose="optional">
<unit bldFile="mw/web/webengine/widgetregistry/group"/>
</component>
-<component name="device" filter="s60" long-name="Device">
+<component name="device" long-name="Device" filter="s60" purpose="optional">
<!-- this needs a more meaningful name -->
<unit bldFile="mw/web/webengine/device/group"/>
</component>
-<component name="widgetengine" filter="s60" long-name="Widget Engine">
+<component name="widgetengine" long-name="Widget Engine" filter="s60" purpose="optional">
<unit bldFile="mw/web/webengine/widgetengine/group"/>
</component>
-<component name="web_memoryplugin" long-name="Memory Plugin" filter="s60" plugin="Y">
+<component name="web_memoryplugin" long-name="Memory Plugin" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/web/webengine/memoryplugin/group"/>
</component>
-<component name="widgetmemoryplugin" filter="s60" long-name="Widget Memory Plugin" plugin="Y">
+<component name="widgetmemoryplugin" long-name="Widget Memory Plugin" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/web/webengine/widgetmemoryplugin/group"/>
</component>
-<component name="widgetbackuprestore" filter="s60" long-name="Widget Backup and Restore">
+<component name="widgetbackuprestore" long-name="Widget Backup and Restore" filter="s60" purpose="optional">
<unit bldFile="mw/web/webengine/widgetbackuprestore/group"/>
</component>
-<component name="browserrecognizers" filter="s60" long-name="Browser Recognizers" plugin="Y">
+<component name="browserrecognizers" long-name="Browser Recognizers" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/web/webengine/browserrecognizers/group"/>
</component>
-<component name="wrtharvester" filter="s60" long-name="Web Runtime Harvester" plugin="Y">
+<component name="wrtharvester" long-name="Web Runtime Harvester" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/web/webengine/wrtharvester/group"/>
</component>
</collection>
<collection name="codhandler" long-name="Content Object Descriptor Handler" level="specific">
-<component name="codeng" filter="s60" long-name="COD Engine">
+<component name="codeng" long-name="COD Engine" filter="s60" purpose="optional">
<unit bldFile="mw/web/codhandler/codeng/group"/>
</component>
-<component name="codui" filter="s60" long-name="COD UI">
+<component name="codui" long-name="COD UI" filter="s60" purpose="optional">
<unit bldFile="mw/web/codhandler/codui/group"/>
</component>
-<component name="codrecog" filter="s60" long-name="COD Recogniser" plugin="Y">
+<component name="codrecog" long-name="COD Recogniser" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/web/codhandler/codrecog/group"/>
</component>
-<component name="codviewer" filter="s60" long-name="COD Viewer">
+<component name="codviewer" long-name="COD Viewer" filter="s60" purpose="optional">
<unit bldFile="mw/web/codhandler/codviewer/group"/>
</component>
-<component name="ddrecog" filter="s60" long-name="Download Descriptor Recogniser" plugin="Y">
+<component name="ddrecog" long-name="Download Descriptor Recogniser" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/web/codhandler/ddrecog/group"/>
</component>
-<component name="ddviewer" filter="s60" long-name="Download Descriptor Viewer">
+<component name="ddviewer" long-name="Download Descriptor Viewer" filter="s60" purpose="optional">
<unit bldFile="mw/web/codhandler/ddviewer/group"/>
</component>
-<component name="coddownload" filter="s60" long-name="COD Download">
+<component name="coddownload" long-name="COD Download" filter="s60" purpose="optional">
<unit bldFile="mw/web/codhandler/coddownload/group"/>
</component>
-<component name="roapapp" filter="s60" long-name="ROAP Application">
+<component name="roapapp" long-name="ROAP Application" filter="s60" purpose="optional">
<unit bldFile="mw/web/codhandler/roapapp/group"/>
</component>
-<component name="codhandler_build" filter="s60" long-name="COD Handler Build">
-<!-- Exports need to go into another component or make this self-contained.
+<component name="codhandler_build" long-name="COD Handler Build" filter="s60" purpose="optional">
+<!-- Exports need to go into another component or make this self-contained.
#included .hrh file needs to be #included in each of the other components -->
<unit bldFile="mw/web/codhandler/group"/>
</component>
</collection>
<collection name="widgets" long-name="Web Widget Framework" level="generic">
-<component name="widgetrecognizer" filter="s60" long-name="Widget Recognizer" plugin="Y">
+<component name="widgetrecognizer" long-name="Widget Recognizer" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/web/widgets/widgetrecognizer/group"/>
</component>
-<component name="widgetinstaller" filter="s60" long-name="Widget Installer UI" plugin="Y">
+<component name="widgetinstaller" long-name="Widget Installer UI" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/web/widgets/widgetinstaller/group"/>
</component>
-<component name="widgetlauncher" filter="s60" long-name="Widget Launcher">
+<component name="widgetlauncher" long-name="Widget Launcher" filter="s60" purpose="optional">
<unit bldFile="mw/web/widgets/widgetlauncher/group"/>
</component>
-<component name="widgetapp" filter="s60" long-name="Widget UI">
+<component name="widgetapp" long-name="Widget UI" filter="s60" purpose="optional">
<unit bldFile="mw/web/widgets/widgetapp/group"/>
</component>
-<component name="widgetpreinstaller" filter="s60" long-name="Widget Pre-Installer">
-<unit bldFile="mw/web/widgets/widgetpreinstaller/group"/>
-</component>
-<component name="widgetstartup" filter="s60" long-name="Widget Startup">
-<unit bldFile="mw/web/widgets/widgetstartup/group"/>
-</component>
</collection>
</block>
-<block name="websrv" level="generic" long-name="Web Services" levels="plugin framework server generic specific">
+<block name="websrv" level="generic" levels="plugin framework server generic specific" long-name="Web Services">
<collection name="websrv_pub" long-name="Web Services Public Interfaces" level="specific">
-<component name="web_service_description_api" long-name="Web Service Description API" filter="s60" class="api">
+<component name="web_service_description_api" long-name="Web Service Description API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/websrv/websrv_pub/web_service_description_api/group"/>
</component>
-<component name="web_service_connection_api" long-name="Web Service Connection API" filter="s60" class="api">
+<component name="web_service_connection_api" long-name="Web Service Connection API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/websrv/websrv_pub/web_service_connection_api/group"/>
</component>
-<component name="web_service_manager_api" long-name="Web Service Manager API" filter="s60" class="api">
+<component name="web_service_manager_api" long-name="Web Service Manager API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/websrv/websrv_pub/web_service_manager_api/group"/>
</component>
-<component name="hostlet_connection_api" long-name="Hostlet Connection API" filter="s60" class="api">
+<component name="hostlet_connection_api" long-name="Hostlet Connection API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/websrv/websrv_pub/hostlet_connection_api/group"/>
</component>
-<component name="web_service_messaging_api" long-name="Web Service Messaging API" filter="s60" class="api">
+<component name="web_service_messaging_api" long-name="Web Service Messaging API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/websrv/websrv_pub/web_service_messaging_api/group"/>
</component>
-<component name="xml_extensions_api" long-name="XML Extensions API" filter="s60" class="api">
+<component name="xml_extensions_api" long-name="XML Extensions API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/websrv/websrv_pub/xml_extensions_api/group"/>
</component>
-<component name="xml_fragment_api" long-name="XML Fragment API" filter="s60" class="api">
+<component name="xml_fragment_api" long-name="XML Fragment API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/websrv/websrv_pub/xml_fragment_api/group"/>
</component>
</collection>
<collection name="webservices" long-name="Web Services Framework" level="generic">
<!-- consider breaking this collection into more meaningful subsets -->
-<component name="wsnotifierplugins" filter="s60" long-name="WS Notifier Plugins" plugin="Y">
+<component name="wsnotifierplugins" long-name="WS Notifier Plugins" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/websrv/webservices/wsnotifierplugins/group"/>
</component>
-<component name="wslogger" filter="s60" long-name="WS Logger">
+<component name="wslogger" long-name="WS Logger" filter="s60" purpose="optional">
<unit bldFile="mw/websrv/webservices/wslogger/group"/>
</component>
-<component name="wsxml" filter="s60" long-name="WS XML Extensions">
+<component name="wsxml" long-name="WS XML Extensions" filter="s60" purpose="optional">
<unit bldFile="mw/websrv/webservices/wsxml/group"/>
</component>
-<component name="wsutils" filter="s60" long-name="WS Utils">
+<component name="wsutils" long-name="WS Utils" filter="s60" purpose="optional">
<unit bldFile="mw/websrv/webservices/wsutils/group"/>
</component>
-<component name="wsfragment" filter="s60" long-name="WS Fragment">
+<component name="wsfragment" long-name="WS Fragment" filter="s60" purpose="optional">
<unit bldFile="mw/websrv/webservices/wsfragment/group"/>
</component>
-<component name="wsdescription" filter="s60" long-name="WS Service Description">
+<component name="wsdescription" long-name="WS Service Description" filter="s60" purpose="optional">
<unit bldFile="mw/websrv/webservices/wsdescription/group"/>
</component>
-<component name="wsconnection" filter="s60" long-name="WS Service Connection">
+<component name="wsconnection" long-name="WS Service Connection" filter="s60" purpose="optional">
<unit bldFile="mw/websrv/webservices/wsconnection/group"/>
</component>
-<component name="wsmessages" filter="s60" long-name="WS Messages">
+<component name="wsmessages" long-name="WS Messages" filter="s60" purpose="optional">
<unit bldFile="mw/websrv/webservices/wsmessages/group"/>
</component>
-<component name="wscredentialmanager" filter="s60" long-name="WS Credential Manager">
+<component name="wscredentialmanager" long-name="WS Credential Manager" filter="s60" purpose="optional">
<unit bldFile="mw/websrv/webservices/wscredentialmanager/group"/>
</component>
-<component name="wsframework" filter="s60" long-name="WS Framework">
+<component name="wsframework" long-name="WS Framework" filter="s60" purpose="optional">
<unit bldFile="mw/websrv/webservices/wsframework/group"/>
</component>
-<component name="wshttpchanneltransportplugin" filter="s60" long-name="WS HTTP Channel Transport Plugin" plugin="Y">
+<component name="wshttpchanneltransportplugin" long-name="WS HTTP Channel Transport Plugin" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/websrv/webservices/wshttpchanneltransportplugin/group"/>
</component>
-<component name="wsconnectionagent" filter="s60" long-name="WS Connection Agent">
+<component name="wsconnectionagent" long-name="WS Connection Agent" filter="s60" purpose="optional">
<unit bldFile="mw/websrv/webservices/wsconnectionagent/group"/>
</component>
-<component name="wsprovider" filter="s60" long-name="WS Provider">
+<component name="wsprovider" long-name="WS Provider" filter="s60" purpose="optional">
<unit bldFile="mw/websrv/webservices/wsprovider/group"/>
</component>
-<component name="wshostletconnection" filter="s60" long-name="WS Hostlet Connection">
+<component name="wshostletconnection" long-name="WS Hostlet Connection" filter="s60" purpose="optional">
<unit bldFile="mw/websrv/webservices/wshostletconnection/group"/>
</component>
-<component name="wsmanager" filter="s60" long-name="WS Service Manager">
+<component name="wsmanager" long-name="WS Service Manager" filter="s60" purpose="optional">
<unit bldFile="mw/websrv/webservices/wsmanager/group"/>
</component>
-<component name="wsidentitymanager" filter="s60" long-name="WS Identity Manager">
+<component name="wsidentitymanager" long-name="WS Identity Manager" filter="s60" purpose="optional">
<unit bldFile="mw/websrv/webservices/wsidentitymanager/group"/>
</component>
-<component name="idwsfplugin" filter="s60" long-name="ID-WSF Plugin" plugin="Y">
+<component name="idwsfplugin" long-name="ID-WSF Plugin" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/websrv/webservices/idwsfplugin/group"/>
</component>
-<component name="wsibasicplugin" filter="s60" long-name="WS-I Basic Plugin" plugin="Y">
+<component name="wsibasicplugin" long-name="WS-I Basic Plugin" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/websrv/webservices/wsibasicplugin/group"/>
</component>
-<component name="wsrestplugin" filter="s60" long-name="WS REST Plugin" plugin="Y">
+<component name="wsrestplugin" long-name="WS REST Plugin" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/websrv/webservices/wsrestplugin/group"/>
</component>
-<component name="idwsfsecuritymechanism" filter="s60" long-name="ID-WSF Security Mechanism">
+<component name="idwsfsecuritymechanism" long-name="ID-WSF Security Mechanism" filter="s60" purpose="optional">
<unit bldFile="mw/websrv/webservices/idwsfsecuritymechanism/group"/>
</component>
-<component name="wspasswordtransforms" filter="s60" long-name="WS Password Transforms">
+<component name="wspasswordtransforms" long-name="WS Password Transforms" filter="s60" purpose="optional">
<unit bldFile="mw/websrv/webservices/wspasswordtransforms/group"/>
</component>
-<component name="wscore" filter="s60" long-name="WS Core Service Manager">
+<component name="wscore" long-name="WS Core Service Manager" filter="s60" purpose="optional">
<unit bldFile="mw/websrv/webservices/wscore/group"/>
</component>
-<component name="wslocaltransportplugin" filter="s60" long-name="WS Local Transport Plugin" plugin="Y">
+<component name="wslocaltransportplugin" long-name="WS Local Transport Plugin" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/websrv/webservices/wslocaltransportplugin/group"/>
</component>
-<component name="wshostlettransportplugin" filter="s60" long-name="WS Hostlet Transport Plugin" plugin="Y">
+<component name="wshostlettransportplugin" long-name="WS Hostlet Transport Plugin" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="mw/websrv/webservices/wshostlettransportplugin/group"/>
</component>
-<component name="wsstar" filter="s60" long-name="WS Star">
+<component name="wsstar" long-name="WS Star" filter="s60" purpose="optional">
<!-- can only have one unit. Need to split into separate components or #include from a single bld.inf -->
<unit bldFile="mw/websrv/webservices/wsstar/wsstarpolicy/group"/>
<unit bldFile="mw/websrv/webservices/wsstar/wsstarplugin/group"/>
<unit bldFile="mw/websrv/webservices/wsstar/wsstarmessagehandlers/group"/>
</component>
-<component name="wsoviplugin" filter="s60" long-name="WS Ovi Plugin">
+<component name="wsoviplugin" long-name="WS Ovi Plugin" filter="s60" purpose="optional">
<unit bldFile="mw/websrv/webservices/wsoviplugin/group"/>
</component>
-<component name="webservices_build" filter="s60" long-name="Web Services Build">
+<component name="webservices_build" long-name="Web Services Build" filter="s60" purpose="optional">
<!-- need to split into self-contained components -->
<unit bldFile="mw/websrv/webservices/group"/>
</component>
</collection>
<collection name="websrv_info" long-name="Web Services Info" level="specific">
-<component name="websrv_bld" filter="s60" long-name="Web Services Build">
+<component name="websrv_bld" long-name="Web Services Build" filter="s60" purpose="optional">
<!-- need to include common .hrh in each unit -->
<unit bldFile="mw/websrv/group"/>
</component>
@@ -7370,308 +7246,308 @@
<block name="webruntime" level="specific" long-name="Web Runtime">
<!-- need to break up this package into collections and components -->
<collection name="webruntime_info" long-name="Web Runtime Info">
-<component name="webruntime_build" long-name="Web Runtime Build" introduced="^4">
-<unit bldFile="mw/webruntime" proFile="cwrt.pro" qmakeArgs=""what+=qtsfw" "what+=tenone" "what+=usif" "what+=services" "what+=wrtlite" "what+=exportiby""/>
+<component name="webruntime_build" long-name="Web Runtime Build" introduced="^4" purpose="optional">
+<unit bldFile="mw/webruntime/." proFile="cwrt.pro" qmakeArgs=""what+=qtsfw" "what+=tenone" "what+=usif" "what+=services" "what+=wrtlite" "what+=exportiby""/>
</component>
</collection>
</block>
<block name="platformtools" level="generic" long-name="Platform Tools">
<collection name="gfxconversion" long-name="Graphics Conversion">
-<component name="bmconv_s60" filter="s60" long-name="S60 Bitmap Converter" class="placeholder PC">
+<component name="bmconv_s60" long-name="S60 Bitmap Converter" filter="s60" purpose="optional" class="placeholder PC">
<!-- Removed bmconv from builds <unit bldFile="gfxconversion/bmconv_s60/group"/> -->
</component>
-<component name="mifconv" filter="s60" long-name="Multi Icon File Converter" class="PC">
+<component name="mifconv" long-name="Multi Icon File Converter" filter="s60" purpose="optional" class="PC">
<unit bldFile="mw/platformtools/gfxconversion/mifconv/group"/>
</component>
</collection>
</block>
-<block name="uitools" level="specific" long-name="UI Tools" levels="compile encode tool if">
+<block name="uitools" level="specific" levels="compile encode tool if" long-name="UI Tools">
<collection name="uitools_pub" long-name="UI Tools Public Interfaces" level="if">
-<component name="third_party_bitmap_palette_api" long-name="Third Party Bitmap Palette API" filter="s60" class="api">
+<component name="third_party_bitmap_palette_api" long-name="Third Party Bitmap Palette API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uitools/uitools_pub/third_party_bitmap_palette_api/group"/>
</component>
</collection>
<collection name="uitools_plat" long-name="UI Tools Platform Interfaces" level="if">
-<component name="uitools_cdl_api" long-name="CDL API" filter="s60" class="api">
+<component name="uitools_cdl_api" long-name="CDL API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uitools/uitools_plat/cdl_api/group"/>
</component>
-<component name="uitools_layout_system_private_api" long-name="Layout System Private API" filter="s60" class="api">
+<component name="uitools_layout_system_private_api" long-name="Layout System Private API" filter="s60" purpose="optional" class="api">
<unit bldFile="mw/uitools/uitools_plat/layout_system_private_api/group"/>
</component>
</collection>
<collection name="cdlcompilertoolkit" long-name="CDL Compiler Toolkit" level="compile">
<!-- collection is actually a component. Needs to be moved down a directory -->
-<component name="cdlcompilertoolkit_build" filter="s60" long-name="CDL Compiler Toolkit Build">
+<component name="cdlcompilertoolkit_build" long-name="CDL Compiler Toolkit Build" filter="s60" purpose="optional">
<unit bldFile="mw/uitools/cdlcompilertoolkit/group"/>
</component>
</collection>
<collection name="cdlcompiler" long-name="CDL Compiler" level="compile">
<!-- collection is actually a component. Needs to be moved down a directory -->
-<component name="cdlcompiler_build" filter="s60" long-name="CDL Compiler Build">
+<component name="cdlcompiler_build" long-name="CDL Compiler Build" filter="s60" purpose="optional">
<unit bldFile="mw/uitools/cdlcompiler/group"/>
</component>
</collection>
<collection name="gfxtools" long-name="Graphics Tools" level="tool">
-<component name="color" filter="s60" long-name="Bitmap Colour Palette" class="PC">
+<component name="color" long-name="Bitmap Colour Palette" filter="s60" purpose="optional" class="PC">
<unit bldFile="mw/uitools/gfxtools/color/group"/>
</component>
</collection>
<collection name="aknlayoutcompiler" long-name="Avkon Layout Compiler" level="compile">
<!-- collection is actually a component. Needs to be moved down a directory -->
-<component name="aknlayoutcompiler_build" filter="s60" long-name="Avkon Layout Compiler Build">
+<component name="aknlayoutcompiler_build" long-name="Avkon Layout Compiler Build" filter="s60" purpose="optional">
<unit bldFile="mw/uitools/aknlayoutcompiler/group"/>
</component>
</collection>
<collection name="skincompiler" long-name="Skin Compiler" level="compile">
-<component name="aknskindesccompiler" filter="s60" long-name="Avkon Skin Descriptor Compiler">
+<component name="aknskindesccompiler" long-name="Avkon Skin Descriptor Compiler" filter="s60" purpose="optional">
<unit bldFile="mw/uitools/skincompiler/AknSkinDescCompiler/group"/>
</component>
</collection>
<collection name="reszip" long-name="Resource Zip" level="encode">
<!-- collection is actually a component. Needs to be moved down a directory -->
-<component name="reszip_build" filter="s60" long-name="Resource Zip Build">
+<component name="reszip_build" long-name="Resource Zip Build" filter="s60" purpose="optional">
<unit bldFile="mw/uitools/reszip/group"/>
</component>
</collection>
<collection name="toollibraries" long-name="Tool Libraries" level="tool"/>
<collection name="svgtencoder" long-name="SVGT Encoder" level="encode">
-<component name="svgtenc" filter="s60" long-name="Standalone SVGT Encoder" class="PC">
+<component name="svgtenc" long-name="Standalone SVGT Encoder" filter="s60" purpose="optional" class="PC">
<unit bldFile="mw/uitools/svgtencoder/svgtenc/standalone/group"/>
</component>
</collection>
</block>
</layer>
<layer name="app" long-name="Applications" levels="services apps">
-<block name="location" level="apps" long-name="Location Apps" levels="ui events loc api">
+<block name="location" level="apps" levels="ui events loc api" long-name="Location Apps">
<collection name="location_plat" long-name="Location Apps Platform Interfaces" level="api">
-<component name="location_picker_service_api" long-name="Location Picker Service API" introduced="^4" filter="s60" class="api">
+<component name="location_picker_service_api" long-name="Location Picker Service API" introduced="^4" filter="s60" purpose="optional" class="api">
<unit bldFile="app/location/location_plat" proFile="location_plat.pro"/>
</component>
</collection>
<collection name="locationpickerservice" long-name="Location Picker Service" level="loc">
<!--collection is really a component. Should move down a directory -->
-<component name="locationpickerservice_build" filter="s60" long-name="Location Picker Service Build" introduced="^4">
+<component name="locationpickerservice_build" long-name="Location Picker Service Build" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/location/locationpickerservice" proFile="locationpickerservice.pro"/>
</component>
</collection>
<collection name="locationdataharvester" long-name="Location Data Harvester" level="events">
<!--collection is really a component. Should move down a directory -->
-<component name="locationdataharvester_build" long-name="Location Data Harvester Build" filter="s60" introduced="^4">
+<component name="locationdataharvester_build" long-name="Location Data Harvester Build" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/location/locationdataharvester" proFile="locationdataharvester.pro"/>
</component>
</collection>
</block>
<!-- pending removal -->
-<block name="phone" level="apps" span="2" long-name="Phone Apps" levels="engine plugin ui app">
+<block name="phone" level="apps" span="2" levels="engine plugin ui app" long-name="Phone Apps">
<collection name="phoneapp" long-name="Phone Application" level="app">
-<component name="blacklist" filter="s60" long-name="Phone Blacklist Clearing" plugin="Y">
+<component name="blacklist" long-name="Phone Blacklist Clearing" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="app/phone/phoneapp/blacklist/group"/>
</component>
-<component name="phoneuicontrol" filter="s60" long-name="Phone UI Control">
+<component name="phoneuicontrol" long-name="Phone UI Control" filter="s60" purpose="optional">
<unit bldFile="app/phone/phoneapp/phoneuicontrol/group"/>
</component>
-<component name="phoneuistates" filter="s60" long-name="Phone UI States">
+<component name="phoneuistates" long-name="Phone UI States" filter="s60" purpose="optional">
<unit bldFile="app/phone/phoneapp/phoneuistates/group"/>
</component>
-<component name="phoneuiutils" filter="s60" long-name="Phone UI Utils">
+<component name="phoneuiutils" long-name="Phone UI Utils" filter="s60" purpose="optional">
<unit bldFile="app/phone/phoneapp/phoneuiutils/group"/>
</component>
-<component name="silenceactionplugin" filter="s60" long-name="Silence Action Plugin" plugin="Y">
+<component name="silenceactionplugin" long-name="Silence Action Plugin" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="app/phone/phoneapp/silenceactionplugin/group"/>
</component>
-<component name="phonemediatorcenter" filter="s60" long-name="Phone Mediator Center">
+<component name="phonemediatorcenter" long-name="Phone Mediator Center" filter="s60" purpose="optional">
<unit bldFile="app/phone/phoneapp/phonemediatorcenter/group"/>
</component>
-<component name="phoneuiview2" filter="s60" long-name="Phone UI View">
+<component name="phoneuiview2" long-name="Phone UI View" filter="s60" purpose="optional">
<unit bldFile="app/phone/phoneapp/phoneuiview2" proFile="phoneuiview2.pro"/>
</component>
-<component name="phoneuiqtviewadapter" filter="s60" long-name="Phone UI Qt View Adapter" introduced="^4" plugin="Y">
+<component name="phoneuiqtviewadapter" long-name="Phone UI Qt View Adapter" introduced="^4" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="app/phone/phoneapp/phoneuiqtviewadapter" proFile="phoneuiqtviewadapter.pro"/>
</component>
-<component name="phonestringloader" filter="s60" long-name="Phone String Loader" introduced="^4">
+<component name="phonestringloader" long-name="Phone String Loader" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/phone/phoneapp/phonestringloader" proFile="phonestringloader.pro"/>
</component>
-<component name="phoneui2" filter="s60" long-name="Phone UI">
+<component name="phoneui2" long-name="Phone UI" filter="s60" purpose="optional">
<unit bldFile="app/phone/phoneapp/phoneui2" proFile="phoneui2.pro"/>
</component>
</collection>
<collection name="phoneengine" long-name="Phone Engine" level="engine">
-<component name="phonecntfinder2" filter="s60" long-name="Phone Contact Finder">
+<component name="phonecntfinder2" long-name="Phone Contact Finder" filter="s60" purpose="optional">
<unit bldFile="app/phone/phoneengine/phonecntfinder2" proFile="phonecntfinder2.pro"/>
</component>
-<component name="audiohandling" filter="s60" long-name="Phone Audio Handling">
+<component name="audiohandling" long-name="Phone Audio Handling" filter="s60" purpose="optional">
<unit bldFile="app/phone/phoneengine/audiohandling/group"/>
</component>
-<component name="callhandling" filter="s60" long-name="Call Handling">
+<component name="callhandling" long-name="Call Handling" filter="s60" purpose="optional">
<unit bldFile="app/phone/phoneengine/callhandling/group"/>
</component>
-<component name="contacthandling2" filter="s60" long-name="Phone Contact Handling">
+<component name="contacthandling2" long-name="Phone Contact Handling" filter="s60" purpose="optional">
<unit bldFile="app/phone/phoneengine/contacthandling2/group"/>
</component>
-<component name="loghandling" filter="s60" long-name="Phone Log Handling">
+<component name="loghandling" long-name="Phone Log Handling" filter="s60" purpose="optional">
<unit bldFile="app/phone/phoneengine/loghandling/group"/>
</component>
-<component name="engineinfo" filter="s60" long-name="Phone Engine Info">
+<component name="engineinfo" long-name="Phone Engine Info" filter="s60" purpose="optional">
<unit bldFile="app/phone/phoneengine/engineinfo/group"/>
</component>
-<component name="phonemodel" filter="s60" long-name="Phone Model">
+<component name="phonemodel" long-name="Phone Model" filter="s60" purpose="optional">
<unit bldFile="app/phone/phoneengine/phonemodel" proFile="phonemodel.pro"/>
</component>
-<component name="servicehandling" filter="s60" long-name="Phone Service Handling">
+<component name="servicehandling" long-name="Phone Service Handling" filter="s60" purpose="optional">
<unit bldFile="app/phone/phoneengine/servicehandling/group"/>
</component>
-<component name="phoneservices" filter="s60" long-name="Phone Server" introduced="^4">
+<component name="phoneservices" long-name="Phone Server" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/phone/phoneengine/phoneservices" proFile="phoneservices.pro"/>
</component>
</collection>
<collection name="phoneuis" long-name="Phone UIs" level="ui">
-<component name="bubblemanager2" filter="s60" long-name="Phone Bubble Manager">
+<component name="bubblemanager2" long-name="Phone Bubble Manager" filter="s60" purpose="optional">
<unit bldFile="app/phone/phoneuis/bubblemanager2" proFile="bubblemanager2.pro"/>
</component>
-<component name="telephonydevicemode" filter="s60" long-name="Telephony Device Mode">
+<component name="telephonydevicemode" long-name="Telephony Device Mode" filter="s60" purpose="optional">
<unit bldFile="app/phone/phoneuis/telephonydevicemode/group"/>
</component>
</collection>
<collection name="phone_plat" long-name="Phone Apps Platform Interfaces" level="app">
-<component name="3d_ringing_tone_enabler_api" long-name="3D Ringing Tone Enabler API" filter="s60" class="api">
+<component name="3d_ringing_tone_enabler_api" long-name="3D Ringing Tone Enabler API" filter="s60" purpose="optional" class="api">
<unit bldFile="app/phone/phone_plat/3d_ringing_tone_enabler_api/group"/>
</component>
-<component name="telephony_comms_information_api" long-name="Telephony Comms Information API" filter="s60" class="api">
+<component name="telephony_comms_information_api" long-name="Telephony Comms Information API" filter="s60" purpose="optional" class="api">
<unit bldFile="app/phone/phone_plat/telephony_comms_information_api/group"/>
</component>
-<component name="telephony_information_api" long-name="Telephony Information API" filter="s60" class="api">
+<component name="telephony_information_api" long-name="Telephony Information API" filter="s60" purpose="optional" class="api">
<unit bldFile="app/phone/phone_plat/telephony_information_api/group"/>
</component>
-<component name="telephony_device_mode_api" long-name="Telephony Device Mode API" filter="s60" class="api">
+<component name="telephony_device_mode_api" long-name="Telephony Device Mode API" filter="s60" purpose="optional" class="api">
<unit bldFile="app/phone/phone_plat/telephony_device_mode_api/group"/>
</component>
-<component name="telephony_remote_party_information_api" long-name="Telephony Remote Party Information API" filter="s60" class="api">
+<component name="telephony_remote_party_information_api" long-name="Telephony Remote Party Information API" filter="s60" purpose="optional" class="api">
<unit bldFile="app/phone/phone_plat/telephony_remote_party_information_api/group"/>
</component>
-<component name="telephony_video_mailbox_settings_api" long-name="Telephony Video Mailbox Settings API" filter="s60" class="api">
+<component name="telephony_video_mailbox_settings_api" long-name="Telephony Video Mailbox Settings API" filter="s60" purpose="optional" class="api">
<unit bldFile="app/phone/phone_plat/telephony_video_mailbox_settings_api/group"/>
</component>
-<component name="telephony_microphone_mute_status_api" long-name="Telephony Microphone Mute Status API" filter="s60" class="api">
+<component name="telephony_microphone_mute_status_api" long-name="Telephony Microphone Mute Status API" filter="s60" purpose="optional" class="api">
<unit bldFile="app/phone/phone_plat/telephony_microphone_mute_status_api/group"/>
</component>
-<component name="telephony_logging_extension_api" long-name="Telephony Logging Extension API" filter="s60" class="api">
+<component name="telephony_logging_extension_api" long-name="Telephony Logging Extension API" filter="s60" purpose="optional" class="api">
<unit bldFile="app/phone/phone_plat/telephony_logging_extension_api/group"/>
</component>
-<component name="telephony_matching_extension_api" long-name="Telephony Matching Extension API" filter="s60" class="api">
+<component name="telephony_matching_extension_api" long-name="Telephony Matching Extension API" filter="s60" purpose="optional" class="api">
<unit bldFile="app/phone/phone_plat/telephony_matching_extension_api/group"/>
</component>
-<component name="phone_application_commands_api" long-name="Phone Application Commands API" filter="s60" class="api">
+<component name="phone_application_commands_api" long-name="Phone Application Commands API" filter="s60" purpose="optional" class="api">
<unit bldFile="app/phone/phone_plat/phone_application_commands_api/group"/>
</component>
-<component name="phone_application_voip_commands_api" long-name="Phone Application VOIP Commands API" filter="s60" class="api">
+<component name="phone_application_voip_commands_api" long-name="Phone Application VOIP Commands API" filter="s60" purpose="optional" class="api">
<unit bldFile="app/phone/phone_plat/phone_application_voip_commands_api/group"/>
</component>
-<component name="phone_telephony_menu_extension_api" long-name="Telephony Menu Extension API" filter="s60" class="api">
+<component name="phone_telephony_menu_extension_api" long-name="Telephony Menu Extension API" filter="s60" purpose="optional" class="api">
<unit bldFile="app/phone/phone_plat/telephony_menu_extension_api/group"/>
</component>
-<component name="phone_telephony_mediator_api" long-name="Telephony Mediator API" filter="s60" class="api">
+<component name="phone_telephony_mediator_api" long-name="Telephony Mediator API" filter="s60" purpose="optional" class="api">
<unit bldFile="app/phone/phone_plat/telephony_mediator_api/group"/>
</component>
-<component name="video_telephony_mediator_api" long-name="Video Telephony Mediator API" filter="s60" class="api">
+<component name="video_telephony_mediator_api" long-name="Video Telephony Mediator API" filter="s60" purpose="optional" class="api">
<unit bldFile="app/phone/phone_plat/video_telephony_mediator_api/group"/>
</component>
-<component name="video_telephony_control_mediator_api" long-name="Video Telephony Control Mediator API" filter="s60" introduced="^4" class="api">
+<component name="video_telephony_control_mediator_api" long-name="Video Telephony Control Mediator API" introduced="^4" filter="s60" purpose="optional" class="api">
<unit bldFile="app/phone/phone_plat/video_telephony_control_mediator_api/group"/>
</component>
</collection>
<collection name="phoneplugins" long-name="Phone Plugins" level="plugin">
-<component name="csplugin" filter="s60" long-name="Circuit Switched Plugin" introduced="^4" plugin="Y">
+<component name="csplugin" long-name="Circuit Switched Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="app/phone/phoneplugins/csplugin/group"/>
</component>
-<component name="dialerwidgetplugin" filter="s60" long-name="Dialer Widget Plugin" introduced="^4" plugin="Y">
+<component name="dialerwidgetplugin" long-name="Dialer Widget Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="app/phone/phoneplugins/dialerwidgetplugin" proFile="dialerwidgetplugin.pro"/>
</component>
-<component name="infowidgetplugin" filter="s60" long-name="Info Widget Plugin" introduced="^4" plugin="Y">
+<component name="infowidgetplugin" long-name="Info Widget Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="app/phone/phoneplugins/infowidgetplugin" proFile="infowidgetplugin.pro"/>
</component>
-<component name="phoneindicatorplugin" filter="s60" long-name="Phone Indicator Plugin" introduced="^4" plugin="Y">
+<component name="phoneindicatorplugin" long-name="Phone Indicator Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="app/phone/phoneplugins/phoneindicatorplugin" proFile="phoneindicatorplugin.pro"/>
</component>
</collection>
<collection name="phonesettings" long-name="Phone Settings" level="plugin">
-<component name="cpphonesettingsplugins" filter="s60" long-name="CP Phone Settings Plugins" introduced="^4" plugin="Y">
+<component name="cpphonesettingsplugins" long-name="CP Phone Settings Plugins" introduced="^4" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="app/phone/phonesettings/cpphonesettingsplugins" proFile="cpphonesettingsplugins.pro"/>
</component>
</collection>
</block>
-<block name="recents" level="apps" long-name="Recent Events" levels="engine support ui api">
+<block name="recents" level="apps" levels="engine support ui api" long-name="Recent Events">
<collection name="recents_plat" long-name="Recent Events Platform Interfaces" level="api">
-<component name="logs_services_api" long-name="Logs Services API" filter="s60" introduced="^4" class="api"/>
-<component name="logs_engine_api" long-name="Logs Engine API" filter="s60" introduced="^4" class="api"/>
-<component name="logs_timers_api" long-name="Logs Timers API" filter="s60" class="api"/>
-<component name="logs_engine_api_extensions" long-name="Logs Engine API Extensions" filter="s60" class="api"/>
+<component name="logs_services_api" long-name="Logs Services API" introduced="^4" filter="s60" purpose="optional" class="api"/>
+<component name="logs_engine_api" long-name="Logs Engine API" introduced="^4" filter="s60" purpose="optional" class="api"/>
+<component name="logs_timers_api" long-name="Logs Timers API" filter="s60" purpose="optional" class="api"/>
+<component name="logs_engine_api_extensions" long-name="Logs Engine API Extensions" filter="s60" purpose="optional" class="api"/>
</collection>
<collection name="logsui" long-name="Logs UI" level="ui">
<!-- split into actual components -->
-<component name="logsservices" filter="s60" long-name="Logs Services" introduced="^4" class="placeholder">
+<component name="logsservices" long-name="Logs Services" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!-- <unit bldFile="logsui/logsservices" qt:proFile="logsui.pro"/> -->
</component>
-<component name="logscntfinder" filter="s60" long-name="Logs Contact finder" class="placeholder">
+<component name="logscntfinder" long-name="Logs Contact finder" filter="s60" purpose="optional" class="placeholder">
<!--<unit bldFile="logsui/logscntfinder" qt:proFile="logscntfinder.pro"/> -->
</component>
-<component name="logsengine" filter="s60" long-name="Logs Engine" introduced="^4" class="placeholder">
+<component name="logsengine" long-name="Logs Engine" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!--<unit bldFile="logsui/logsengine" qt:proFile="logsengine.pro"/> -->
</component>
-<component name="logsapp" filter="s60" long-name="Logs Application" class="placeholder">
+<component name="logsapp" long-name="Logs Application" filter="s60" purpose="optional" class="placeholder">
<!--<unit bldFile="logsui/logsengine" qt:proFile="logsengine.pro"/> -->
</component>
-<component name="logsui_build" filter="s60" long-name="Logs UI Build">
+<component name="logsui_build" long-name="Logs UI Build" filter="s60" purpose="optional">
<unit bldFile="app/recents/logsui" proFile="logsui.pro"/>
</component>
</collection>
</block>
-<block name="settingsuis" level="services" long-name="Settings UIs" levels="plugin ui">
+<block name="settingsuis" level="services" levels="plugin ui" long-name="Settings UIs">
<collection name="controlpanelplugins" long-name="Control Panel Plugins" level="plugin">
-<component name="themeplugin" filter="s60" long-name="Theme Plugin" introduced="^4">
+<component name="themeplugin" long-name="Theme Plugin" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/settingsuis/controlpanelplugins/themeplugin" proFile="themeplugin.pro" qmakeArgs="-r -config rom"/>
</component>
</collection>
<collection name="controlpanelui" long-name="Control Panel UI" level="ui">
<!-- collection is really a component, move down a dir -->
-<component name="controlpanelui_build" filter="s60" long-name="Control Panel UI Build" introduced="^4">
+<component name="controlpanelui_build" long-name="Control Panel UI Build" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/settingsuis/controlpanelui" proFile="controlpanelui.pro" qmakeArgs="-r -config rom"/>
</component>
</collection>
</block>
-<block name="contentcontrol" level="services" long-name="Content Control Daemons" levels="plugin framework app">
+<block name="contentcontrol" level="services" levels="plugin framework app" long-name="Content Control Daemons">
<collection name="contentctrl_plat" long-name="Content Control Daemons Platforn Interfaces" level="app">
-<component name="ds_contactsdatastoreextension_api" long-name="DS Contacts Data Store Extension API" filter="s60" introduced="^4" class="api">
+<component name="ds_contactsdatastoreextension_api" long-name="DS Contacts Data Store Extension API" introduced="^4" filter="s60" purpose="optional" class="api">
<unit bldFile="app/contentcontrol/contentctrl_plat/ds_contactsdatastoreextension_api/group"/>
</component>
-<component name="ds_data_modification_api" long-name="DS Data Modification API" filter="s60" introduced="^3" class="api">
+<component name="ds_data_modification_api" long-name="DS Data Modification API" introduced="^3" filter="s60" purpose="optional" class="api">
<unit bldFile="app/contentcontrol/contentctrl_plat/ds_data_modification_api/group"/>
</component>
</collection>
<collection name="connectivitymodules" long-name="Connectivity Modules" level="framework">
-<component name="secon" filter="s60" long-name="Service Controllers">
+<component name="secon" long-name="Service Controllers" filter="s60" purpose="optional">
<unit bldFile="app/contentcontrol/connectivitymodules/secon/group"/>
</component>
</collection>
<collection name="dsdcmoadapter" long-name="Data Sync DCMO Adapter" level="plugin">
<!-- Component at wrong rank, should move down a directory -->
-<component name="dsdcmoadapter_build" filter="s60" long-name="Data Sync Control DCMO Adapter">
+<component name="dsdcmoadapter_build" long-name="Data Sync Control DCMO Adapter" filter="s60" purpose="optional">
<unit bldFile="app/contentcontrol/dsdcmoadapter/group"/>
</component>
</collection>
<collection name="omads" long-name="OMA Data Sync" level="app">
-<component name="omads_build" filter="s60" long-name="OMA DS Build">
+<component name="omads_build" long-name="OMA DS Build" filter="s60" purpose="optional">
<unit bldFile="app/contentcontrol/omads/group"/>
<!-- need to remove #include and rename and OMA DS ROM -->
</component>
-<component name="omadsextensions" filter="s60" long-name="OMA DS Extensions" plugin="Y">
+<component name="omadsextensions" long-name="OMA DS Extensions" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="app/contentcontrol/omads/omadsextensions/group"/>
</component>
-<component name="omadsextensions_qt" filter="s60" long-name="OMA DS Qt Extensions" plugin="Y">
+<component name="omadsextensions_qt" long-name="OMA DS Qt Extensions" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="app/contentcontrol/omads/omadsextensions" proFile="omadsextensions.pro"/>
</component>
</collection>
</block>
-<block name="firsttimeuse" level="apps" long-name="First Time Use" levels="support services ui app">
+<block name="firsttimeuse" level="apps" levels="support services ui app" long-name="First Time Use">
<!-- these empty collections are really components. Move down a directory and supply units -->
<collection name="ftuapplication" long-name="First Time Use Application" level="app"/>
<collection name="fturuntimeservices" long-name="First Time Use Runtime Services" level="services"/>
@@ -7679,208 +7555,208 @@
<collection name="stateproviders" long-name="State Providers" level="support"/>
<collection name="runtimeproviders" long-name="Runtime Providers" level="support"/>
<collection name="firsttimeuse_info" long-name="First Time Use Info" level="ui">
-<component name="firsttimeuse_build" long-name="First Time Use Build">
-<unit bldFile="app/firsttimeuse" proFile="ftu.pro" qmakeArgs="-r -config rom"/>
+<component name="firsttimeuse_build" long-name="First Time Use Build" purpose="optional">
+<unit bldFile="app/firsttimeuse/." proFile="ftu.pro" qmakeArgs="-r -config rom"/>
</component>
</collection>
</block>
-<block name="devicecontrol" level="services" long-name="Device Control Daemons" levels="support mid app">
+<block name="devicecontrol" level="services" levels="support mid app" long-name="Device Control Daemons">
<collection name="devicemgmtdialogsplugin" long-name="Device Management Dialogs Plugin" level="support">
<!-- need to put component at the proper directory level -->
-<component name="devicemanagementnotifiersplugin" long-name="Device Management Notifiers Plugin" filter="s60" introduced="^4" plugin="Y">
+<component name="devicemanagementnotifiersplugin" long-name="Device Management Notifiers Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="app/devicecontrol/devicemgmtdialogsplugin" proFile="devicemgmtdialogsplugin.pro"/>
</component>
</collection>
<collection name="devicemgmtindicatorsplugin" long-name="Device Management Indicators Plugin" level="support">
<!-- collection is really a component. Need to move down a dir -->
-<component name="devicemgmtindicatorsplugin_build" long-name="Device Management Indicators Plugin Build" filter="s60" introduced="^4" plugin="Y">
+<component name="devicemgmtindicatorsplugin_build" long-name="Device Management Indicators Plugin Build" introduced="^4" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="app/devicecontrol/devicemgmtindicatorsplugin" proFile="devicemgmtindicatorsplugin.pro"/>
</component>
</collection>
<collection name="deviceupdatesui" long-name="Device Updates UI" level="app">
-<component name="deviceupdates" long-name="Device Updates" filter="s60" introduced="^4">
+<component name="deviceupdates" long-name="Device Updates" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/devicecontrol/deviceupdatesui/deviceupdates" proFile="deviceupdates.pro"/>
</component>
-<component name="deviceupdatesplugin" long-name="Device Updates Plugin" filter="s60" introduced="^4" plugin="Y">
+<component name="deviceupdatesplugin" long-name="Device Updates Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="app/devicecontrol/deviceupdatesui/deviceupdatesplugin" proFile="deviceupdatesplugin.pro"/>
</component>
-<component name="deviceupdatesqtsp" long-name="Device Updates Qt Service Provider" filter="s60" introduced="^4">
+<component name="deviceupdatesqtsp" long-name="Device Updates Qt Service Provider" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/devicecontrol/deviceupdatesui/deviceupdatesqtsp" proFile="deviceupdatesqtsp.pro"/>
</component>
</collection>
<collection name="clientprovisioning" long-name="Client Provisioning" level="mid">
-<component name="cpqtsp" long-name="Client Provisioning Qt Service Provider" filter="s60" introduced="^4">
+<component name="cpqtsp" long-name="Client Provisioning Qt Service Provider" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/devicecontrol/clientprovisioning/cpqtsp" proFile="cpqtsp.pro"/>
</component>
</collection>
<collection name="applicationmanagement" long-name="Applicaton Management" level="mid">
-<component name="applicationmgmtserver" long-name="Applicaton Management Server" filter="s60" introduced="^4">
+<component name="applicationmgmtserver" long-name="Applicaton Management Server" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/devicecontrol/applicationmanagement/server" proFile="server.pro"/>
</component>
-<component name="applicationmgmt_build" long-name="Applicaton Management Build" filter="s60" introduced="^4">
+<component name="applicationmgmt_build" long-name="Applicaton Management Build" introduced="^4" filter="s60" purpose="optional">
<!-- need to break up into components or move down a directory -->
<unit bldFile="app/devicecontrol/applicationmanagement/group"/>
</component>
</collection>
<collection name="omadmadapters" long-name="OMA DM Adapters" level="support">
-<component name="omadmadapters_build" long-name="OMA DM Adapters Build" filter="s60">
+<component name="omadmadapters_build" long-name="OMA DM Adapters Build" filter="s60" purpose="optional">
<!-- need to split IBY into the components or make this a ROM component -->
<unit bldFile="app/devicecontrol/omadmadapters/bld"/>
</component>
-<component name="devinfo" long-name="Device Info" filter="s60">
+<component name="devinfo" long-name="Device Info" filter="s60" purpose="optional">
<unit bldFile="app/devicecontrol/omadmadapters/devinfo/bld"/>
</component>
-<component name="devdetail" long-name="Device Detail" filter="s60">
+<component name="devdetail" long-name="Device Detail" filter="s60" purpose="optional">
<unit bldFile="app/devicecontrol/omadmadapters/devdetail/bld"/>
</component>
-<component name="syncmldm" long-name="SyncML DM" filter="s60">
+<component name="syncmldm" long-name="SyncML DM" filter="s60" purpose="optional">
<unit bldFile="app/devicecontrol/omadmadapters/syncmldm/bld"/>
</component>
-<component name="syncmldm12" long-name="SyncML DM 1.2" filter="s60">
+<component name="syncmldm12" long-name="SyncML DM 1.2" filter="s60" purpose="optional">
<unit bldFile="app/devicecontrol/omadmadapters/syncmldm12/bld"/>
</component>
-<component name="omadm_browseradapter" long-name="Browser Adapter" filter="s60" plugin="Y" class="placeholder">
+<component name="omadm_browseradapter" long-name="Browser Adapter" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!-- <unit bldFile="omadmadapters/browseradapter/bld"/> -->
</component>
-<component name="omadm_streamingadapter" long-name="Streaming Adapter" filter="s60" plugin="Y">
+<component name="omadm_streamingadapter" long-name="Streaming Adapter" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="app/devicecontrol/omadmadapters/streamingadapter/bld"/>
</component>
-<component name="globalwlansettings" long-name="Global WLAN Settings" filter="s60">
+<component name="globalwlansettings" long-name="Global WLAN Settings" filter="s60" purpose="optional">
<unit bldFile="app/devicecontrol/omadmadapters/globalwlansettings/group"/>
</component>
-<component name="nsmldminternet" filter="s60">
+<component name="nsmldminternet" filter="s60" purpose="optional">
<unit bldFile="app/devicecontrol/omadmadapters/nsmldminternet/group"/>
</component>
-<component name="nsmldmalwaysonadapter" long-name="Always Online Device Management Adapter" filter="s60" introduced="9.1" plugin="Y">
+<component name="nsmldmalwaysonadapter" long-name="Always Online Device Management Adapter" introduced="9.1" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="app/devicecontrol/omadmadapters/nsmldmalwaysonadapter/group"/>
</component>
-<component name="nsmldmbmadapter" long-name="NSML DM BM Adapter" filter="s60" plugin="Y">
+<component name="nsmldmbmadapter" long-name="NSML DM BM Adapter" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="app/devicecontrol/omadmadapters/nsmldmbmadapter/group"/>
</component>
-<component name="connmoadapter" long-name="Connection Management Object Adapter" filter="s60" plugin="Y">
+<component name="connmoadapter" long-name="Connection Management Object Adapter" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="app/devicecontrol/omadmadapters/connmoadapter/group"/>
</component>
-<component name="syncmlds" long-name="SyncML Data Sync" filter="s60">
+<component name="syncmlds" long-name="SyncML Data Sync" filter="s60" purpose="optional">
<unit bldFile="app/devicecontrol/omadmadapters/syncmlds/bld"/>
</component>
-<component name="omadm_email" long-name="OMA DM Email" filter="s60">
+<component name="omadm_email" long-name="OMA DM Email" filter="s60" purpose="optional">
<unit bldFile="app/devicecontrol/omadmadapters/email/bld"/>
</component>
-<component name="omadm_mms" long-name="OMA DM MMS" filter="s60">
+<component name="omadm_mms" long-name="OMA DM MMS" filter="s60" purpose="optional">
<unit bldFile="app/devicecontrol/omadmadapters/mms/bld"/>
</component>
-<component name="omadm_fota" long-name="OMA DM FOTA" filter="s60">
+<component name="omadm_fota" long-name="OMA DM FOTA" filter="s60" purpose="optional">
<unit bldFile="app/devicecontrol/omadmadapters/fota/bld"/>
</component>
-<component name="omadm_imps" long-name="OMA DM IMPS" filter="s60">
+<component name="omadm_imps" long-name="OMA DM IMPS" filter="s60" purpose="optional" class="placeholder">
<!-- <unit bldFile="omadmadapters/imps/bld"/> -->
</component>
-<component name="dcmodmadapter" long-name="DC Management Object DM Adapter" filter="s60" plugin="Y">
+<component name="dcmodmadapter" long-name="DC Management Object DM Adapter" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="app/devicecontrol/omadmadapters/dcmodmadapter/group"/>
</component>
</collection>
<collection name="omadcmoadapters" long-name="OMA DC Management Object Adapters" level="support">
-<component name="omadcmoadapters_build" long-name="OMA DCMA Adapters Build" filter="s60" introduced="^4">
+<component name="omadcmoadapters_build" long-name="OMA DCMA Adapters Build" introduced="^4" filter="s60" purpose="optional">
<!-- need to break up into components -->
<unit bldFile="app/devicecontrol/omadcmoadapters/group"/>
</component>
</collection>
<collection name="omacpadapters" long-name="OMA Client Provisioning Adapters" level="support">
-<component name="omacpadapters_build" long-name="OMA CP Adapters Build" filter="s60" introduced="^4">
+<component name="omacpadapters_build" long-name="OMA CP Adapters Build" introduced="^4" filter="s60" purpose="optional">
<!-- need to break up into components -->
<unit bldFile="app/devicecontrol/omacpadapters/bld"/>
</component>
</collection>
</block>
<block name="printing" level="services" long-name="Printing"/>
-<block name="files" level="apps" long-name="File Manager Apps" levels="support apps">
+<block name="files" level="apps" levels="support apps" long-name="File Manager Apps">
<collection name="filemanager" long-name="File Manager" level="apps">
-<component name="filemanager_plat" long-name="File Manager Platform Interfaces" filter="s60" introduced="^4" class="api"/>
-<component name="fmbkupengine" filter="s60,bldfirst" long-name="File Manager Backup Engine" introduced="^4">
+<component name="filemanager_plat" long-name="File Manager Platform Interfaces" introduced="^4" filter="s60" purpose="optional" class="api"/>
+<component name="fmbkupengine" long-name="File Manager Backup Engine" introduced="^4" filter="s60,bldfirst" purpose="optional">
<unit bldFile="app/files/filemanager/src/fmbkupengine/group"/>
</component>
-<component name="fmfiledialog" filter="s60,bldfirst" long-name="File Manager File Dialog" introduced="^4">
+<component name="fmfiledialog" long-name="File Manager File Dialog" introduced="^4" filter="s60,bldfirst" purpose="optional">
<unit bldFile="app/files/filemanager/src/fmfiledialog" proFile="fmfiledialog.pro" qmakeArgs="-r -config rom"/>
</component>
-<component name="filemanager_build" filter="s60" long-name="File Manager Build">
+<component name="filemanager_build" long-name="File Manager Build" filter="s60" purpose="optional">
<!-- break this up into components or move down a directory -->
-<unit bldFile="app/files/filemanager" qmakeArgs="-r" proFile="filemanager.pro"/>
+<unit bldFile="app/files/filemanager" proFile="filemanager.pro" qmakeArgs="-r"/>
</component>
</collection>
</block>
-<block name="search" level="apps" long-name="Search Apps" levels="eng base app api">
+<block name="search" level="apps" levels="eng base app api" long-name="Search Apps">
<collection name="search_info" long-name="Search Info" level="base">
-<component name="search_build" long-name="Search Build" introduced="^4">
+<component name="search_build" long-name="Search Build" introduced="^4" purpose="optional">
<unit bldFile="app/search/group"/>
</component>
</collection>
<collection name="search_plat" long-name="Search Platform Interfaces" level="api">
-<component name="search_plat_build" long-name="Search Platform Interfaces Build" introduced="^4" class="api">
+<component name="search_plat_build" long-name="Search Platform Interfaces Build" introduced="^4" purpose="optional" class="api">
<unit bldFile="app/search/search_plat" proFile="search_plat.pro"/>
</component>
</collection>
<collection name="onlinesearchproviders" long-name="Online Search Providers" level="eng">
-<component name="onlinesearchproviders_build" long-name="Online Search Providers Build" introduced="^4">
+<component name="onlinesearchproviders_build" long-name="Online Search Providers Build" introduced="^4" purpose="optional">
<unit bldFile="app/search/onlinesearchproviders" proFile="onlinesearchproviders.pro"/>
</component>
</collection>
<collection name="search_harvesterplugins" long-name="Search Harvester Plugins" level="base">
-<component name="search_qtemailfetcher" long-name="Search Qt Email Fetcher" introduced="^4" plugin="Y">
+<component name="search_qtemailfetcher" long-name="Search Qt Email Fetcher" introduced="^4" purpose="optional" plugin="Y">
<unit bldFile="app/search/harvesterplugins/messaging/email/qtemailfetcher" proFile="qtemailfetcher.pro"/>
</component>
</collection>
<collection name="searchui" long-name="Search UI" level="app">
-<component name="searchui_build" long-name="Search UI Build" introduced="^4">
+<component name="searchui_build" long-name="Search UI Build" introduced="^4" purpose="optional">
<unit bldFile="app/search/searchui" proFile="searchui.pro"/>
</component>
</collection>
</block>
-<block name="contacts" level="apps" span="2" long-name="Contacts Apps" levels="engine support services plugin ui">
+<block name="contacts" level="apps" span="2" levels="engine support services plugin ui" long-name="Contacts Apps">
<collection name="contacts_plat" long-name="Contacts Apps Platform Interfaces" level="ui">
-<component name="qt_mobility_contacts_api" long-name="Qt Mobility Contacts API" filter="s60" introduced="^4" class="api"/>
+<component name="qt_mobility_contacts_api" long-name="Qt Mobility Contacts API" introduced="^4" filter="s60" purpose="optional" class="api"/>
</collection>
<collection name="phonebookui" long-name="Phonebook UI" level="ui">
-<component name="cnthistorymodel" filter="s60" long-name="Contacts History Model" introduced="^4" class="placeholder">
+<component name="cnthistorymodel" long-name="Contacts History Model" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!--<unit bldFile="phonebookui/cnthistorymodel" qt:proFile="cnthistorymodel.pro"/> -->
</component>
-<component name="pbkcommonui" filter="s60" long-name="Phonebook Common UI" introduced="^4" class="placeholder">
+<component name="pbkcommonui" long-name="Phonebook Common UI" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!--<unit bldFile="phonebookui/pbkcommonui" qt:proFile="pbkcommonui.pro"/> -->
</component>
-<component name="phonebookapp" filter="s60" long-name="Phonebook Application" introduced="^4" class="placeholder">
+<component name="phonebookapp" long-name="Phonebook Application" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!--<unit bldFile="phonebookui/phonebookapp" qt:proFile="phonebookapp.pro"/> -->
</component>
-<component name="phonebookservices" filter="s60" long-name="Phonebook Services" introduced="^4" class="placeholder">
+<component name="phonebookservices" long-name="Phonebook Services" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!--<unit bldFile="phonebookui/phonebookservices" qt:proFile="phonebookservices.pro"/> -->
</component>
-<component name="phonebookui_build" filter="s60" long-name="Phonebook UI Build" introduced="^4">
+<component name="phonebookui_build" long-name="Phonebook UI Build" introduced="^4" filter="s60" purpose="optional">
<!-- break up into components -->
<unit bldFile="app/contacts/phonebookui" proFile="phonebookui.pro"/>
</component>
</collection>
<collection name="phonebookengines" long-name="Phonebook Engines" level="engine">
-<component name="cntfindplugin" filter="s60" long-name="Contacts Find Plugin" introduced="^2" plugin="Y">
+<component name="cntfindplugin" long-name="Contacts Find Plugin" introduced="^2" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="app/contacts/phonebookengines/cntfindplugin" proFile="cntfindplugin.pro"/>
</component>
-<component name="cntsortplugin" filter="s60" long-name="Contacts Sort Plugin" introduced="^2" plugin="Y">
+<component name="cntsortplugin" long-name="Contacts Sort Plugin" introduced="^2" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="app/contacts/phonebookengines/cntsortplugin" proFile="cntsortplugin.pro"/>
</component>
-<component name="qtcontactsmobility" filter="s60" long-name="Qt Contacts Mobility" introduced="^4" plugin="Y" class="placeholder">
+<component name="qtcontactsmobility" long-name="Qt Contacts Mobility" introduced="^4" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!-- need to move to this actual dir rather than including something from another collection -->
<!-- <unit bldFile="qtcontactsmobility" qt:proFile="qtcontactsmobility.pro"/> -->
</component>
-<component name="cntlistmodel" filter="s60" long-name="Contact List Model" introduced="^4">
+<component name="cntlistmodel" long-name="Contact List Model" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/contacts/phonebookengines/cntlistmodel" proFile="cntlistmodel.pro"/>
</component>
-<component name="cntactions" filter="s60" long-name="Contacts Actions" introduced="^4">
+<component name="cntactions" long-name="Contacts Actions" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/contacts/phonebookengines/cntactions" proFile="cntactions.pro"/>
</component>
-<component name="cntmaptileservice" filter="s60" long-name="Contacts Map Tile Service" introduced="^4">
+<component name="cntmaptileservice" long-name="Contacts Map Tile Service" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/contacts/phonebookengines/cntmaptileservice" proFile="cntmaptileservice.pro"/>
</component>
-<component name="cntsimutility" filter="s60" long-name="Contacts SIM Utility" introduced="^4">
+<component name="cntsimutility" long-name="Contacts SIM Utility" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/contacts/phonebookengines/cntsimutility" proFile="cntsimutility.pro"/>
</component>
-<component name="cntimageutility" long-name="Contacts Image Utility" filter="s60" introduced="^4">
+<component name="cntimageutility" long-name="Contacts Image Utility" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/contacts/phonebookengines/cntimageutility" proFile="cntimageutility.pro"/>
</component>
</collection>
@@ -7888,21 +7764,21 @@
<component name="phonebooksync" long-name="Phonebook Sync" purpose="optional" plugin="Y">
<unit bldFile="app/contacts/pimprotocols/phonebooksync/group" mrp="app/contacts/pimprotocols/phonebooksync/group/telephony_phbksync.mrp"/>
</component>
-<component name="pbap" filter="s60" long-name="Bluetooth PBAP" introduced="9.2" purpose="optional">
+<component name="pbap" long-name="Bluetooth PBAP" introduced="9.2" filter="s60" purpose="optional">
<unit bldFile="app/contacts/pimprotocols/pbap/group" mrp="app/contacts/pimprotocols/pbap/group/bluetooth_accesshost.mrp"/>
</component>
</collection>
<collection name="presencecache" long-name="Presence Cache" level="support">
-<component name="presencecachesymbian" filter="s60" long-name="Presence Cache Symbian" introduced="^4">
+<component name="presencecachesymbian" long-name="Presence Cache Symbian" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/contacts/presencecache/presencecachesymbian" proFile="presencecachesymbian.pro"/>
</component>
-<component name="presencecacheqt" filter="s60" long-name="Presence Cache Qt" introduced="^4">
+<component name="presencecacheqt" long-name="Presence Cache Qt" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/contacts/presencecache/presencecacheqt" proFile="presencecacheqt.pro"/>
</component>
</collection>
<collection name="contactwidgethsplugin" long-name="Contact Widget Homescreen Plugin" level="plugin">
<!-- collection is really a component, move down a directory -->
-<component name="contactwidgethsplugin_build" long-name="Contact Widget Homescreen Plugin Build" introduced="^4">
+<component name="contactwidgethsplugin_build" long-name="Contact Widget Homescreen Plugin Build" introduced="^4" purpose="optional">
<unit bldFile="app/contacts/contactwidgethsplugin" proFile="contactwidgethsplugin.pro"/>
</component>
</collection>
@@ -7912,119 +7788,119 @@
</component>
</collection>
</block>
-<block name="organizer" level="apps" span="2" long-name="Organizer Application Suite" levels="support services engine ui app">
+<block name="organizer" level="apps" span="2" levels="support services engine ui app" long-name="Organizer Application Suite">
<collection name="organizer_pub" long-name="Organizer Application Suite Public Interfaces" level="app">
-<component name="calendar_interim_utils2_api" long-name="Calendar Interim Utils 2 API" filter="s60" class="api">
+<component name="calendar_interim_utils2_api" long-name="Calendar Interim Utils 2 API" filter="s60" purpose="optional" class="api">
<!-- move into own .pro file -->
<unit bldFile="app/organizer/organizer_pub" proFile="organizer_pub.pro"/>
</component>
</collection>
<collection name="organizer_plat" long-name="Organizer Application Suite Platform Interfaces" level="app">
-<component name="organizer_plat_build" long-name="Organizer Application Suite Platform Interface Build" filter="s60" class="api">
+<component name="organizer_plat_build" long-name="Organizer Application Suite Platform Interface Build" filter="s60" purpose="optional" class="api">
<!-- break up into individual .pro files, move the above metaxmls to those components -->
<unit bldFile="app/organizer/organizer_plat" proFile="organizer_plat.pro"/>
</component>
-<component name="agenda_versit_2_api" long-name="Agenda Versit 2 API" filter="s60" class="api placeholder">
+<component name="agenda_versit_2_api" long-name="Agenda Versit 2 API" filter="s60" purpose="optional" class="api placeholder">
<!-- <unit bldFile="organizer_plat/agenda_versit_2_api/group"/>-->
</component>
-<component name="calendar_exporter_api" long-name="Calendar Exporter API" filter="s60" class="api placeholder">
+<component name="calendar_exporter_api" long-name="Calendar Exporter API" filter="s60" purpose="optional" class="api placeholder">
<!--<unit bldFile="organizer_plat/calendar_exporter_api/group"/>-->
</component>
-<component name="calendar_importer_api" long-name="Calendar Importer API" filter="s60" class="api placeholder">
+<component name="calendar_importer_api" long-name="Calendar Importer API" filter="s60" purpose="optional" class="api placeholder">
<!--<unit bldFile="organizer_plat/calendar_importer_api/group"/>-->
</component>
-<component name="calendar_launcher_api" long-name="Calendar Launcher API" filter="s60" class="api placeholder">
+<component name="calendar_launcher_api" long-name="Calendar Launcher API" filter="s60" purpose="optional" class="api placeholder">
<!--<unit bldFile="organizer_plat/calendar_launcher_api/group"/> -->
</component>
-<component name="agenda_interface_api" long-name="Agenda Interface API" filter="s60" introduced="^4" class="api"/>
-<component name="calendar_editor_api" long-name="Calendar Editor API" filter="s60" introduced="^4" class="api"/>
-<component name="notes_editor_api" long-name="Notes Editor API" filter="s60" introduced="^4" class="api"/>
-<component name="clock_settingsview_plugin_api" long-name="Clock Settings View Plugin API" filter="s60" introduced="^4" class="api"/>
+<component name="agenda_interface_api" long-name="Agenda Interface API" introduced="^4" filter="s60" purpose="optional" class="api"/>
+<component name="calendar_editor_api" long-name="Calendar Editor API" introduced="^4" filter="s60" purpose="optional" class="api"/>
+<component name="notes_editor_api" long-name="Notes Editor API" introduced="^4" filter="s60" purpose="optional" class="api"/>
+<component name="clock_settingsview_plugin_api" long-name="Clock Settings View Plugin API" introduced="^4" filter="s60" purpose="optional" class="api"/>
</collection>
<collection name="agendainterface" long-name="Agenda Interface" level="services">
<!-- collection is really a component, should move down a directory -->
-<component name="agendainterface_build" filter="s60" long-name="Agenda Interface Build">
+<component name="agendainterface_build" long-name="Agenda Interface Build" filter="s60" purpose="optional">
<unit bldFile="app/organizer/agendainterface" proFile="agendainterface.pro"/>
</component>
</collection>
<collection name="calendarui" long-name="Calendar UI" level="ui">
-<component name="commonutils" filter="s60" long-name="Calendar Common Utils">
+<component name="commonutils" long-name="Calendar Common Utils" filter="s60" purpose="optional">
<unit bldFile="app/organizer/calendarui/commonutils" proFile="commonutils.pro"/>
</component>
-<component name="calenlauncher" filter="s60" long-name="Calendar Launcher">
+<component name="calenlauncher" long-name="Calendar Launcher" filter="s60" purpose="optional">
<unit bldFile="app/organizer/calendarui/calenlauncher" proFile="calenlauncher.pro"/>
</component>
-<component name="caleneditor" filter="s60" long-name="Calendar Editor" introduced="^4">
+<component name="caleneditor" long-name="Calendar Editor" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/organizer/calendarui/caleneditor" proFile="caleneditor.pro"/>
</component>
-<component name="agendaeventviewer" filter="s60" long-name="Agenda Event Viewer" introduced="^4">
+<component name="agendaeventviewer" long-name="Agenda Event Viewer" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/organizer/calendarui/agendaeventviewer" proFile="agendaeventviewer.pro"/>
</component>
-<component name="globaldata" filter="s60" long-name="Calendar Global Data">
+<component name="globaldata" long-name="Calendar Global Data" filter="s60" purpose="optional">
<unit bldFile="app/organizer/calendarui/globaldata" proFile="globaldata.pro"/>
</component>
-<component name="settings" filter="s60" long-name="Calendar Settings">
+<component name="settings" long-name="Calendar Settings" filter="s60" purpose="optional">
<unit bldFile="app/organizer/calendarui/settings" proFile="settings.pro"/>
</component>
-<component name="calenplugins" filter="s60" long-name="Calendar Plugins" introduced="^4" plugin="Y">
+<component name="calenplugins" long-name="Calendar Plugins" introduced="^4" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="app/organizer/calendarui/calenplugins" proFile="calenplugins.pro"/>
</component>
-<component name="customisationmanager" filter="s60" long-name="Calendar Customisation Manager">
+<component name="customisationmanager" long-name="Calendar Customisation Manager" filter="s60" purpose="optional">
<unit bldFile="app/organizer/calendarui/customisationmanager" proFile="customisationmanager.pro"/>
</component>
-<component name="calendarui_views" filter="s60" long-name="Calendar Views">
+<component name="calendarui_views" long-name="Calendar Views" filter="s60" purpose="optional">
<unit bldFile="app/organizer/calendarui/views" proFile="views.pro"/>
</component>
-<component name="calendarui_controller" filter="s60" long-name="Calendar Controller">
+<component name="calendarui_controller" long-name="Calendar Controller" filter="s60" purpose="optional">
<unit bldFile="app/organizer/calendarui/controller" proFile="controller.pro"/>
</component>
-<component name="calendarui_application" filter="s60" long-name="Calendar Application">
+<component name="calendarui_application" long-name="Calendar Application" filter="s60" purpose="optional">
<unit bldFile="app/organizer/calendarui/application" proFile="application.pro"/>
</component>
-<component name="regionalplugins" long-name="Regional Plugins" filter="s60" introduced="^4" plugin="Y">
+<component name="regionalplugins" long-name="Regional Plugins" introduced="^4" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="app/organizer/calendarui/regionalplugins" proFile="regionalplugins.pro"/>
</component>
-<component name="calenviewerservice" long-name="Calendar Viewer Service" filter="s60" introduced="^4" plugin="Y">
+<component name="calenviewerservice" long-name="Calendar Viewer Service" introduced="^4" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="app/organizer/calendarui/calenviewerservice" proFile="calenviewerservice.pro"/>
</component>
-<component name="caldav" filter="sf_build" long-name="CalDAV" introduced="^3" plugin="Y" class="placeholder">
+<component name="caldav" long-name="CalDAV" introduced="^3" filter="sf_build" purpose="optional" plugin="Y" class="placeholder">
<!-- not yet delivered in S^4 <unit bldFile="calendarui/caldav/group"/>-->
</component>
</collection>
<collection name="notes" long-name="Notes" level="ui">
-<component name="notes_build" filter="s60" long-name="Notes Build" introduced="^4">
+<component name="notes_build" long-name="Notes Build" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/organizer/notes" proFile="notes.pro"/>
</component>
</collection>
<collection name="calendarengines" long-name="Calendar Engines" level="engine">
-<component name="versit2" filter="s60" long-name="Versit 2 iCal Parser" introduced="9.2">
+<component name="versit2" long-name="Versit 2 iCal Parser" introduced="9.2" filter="s60" purpose="optional">
<unit bldFile="app/organizer/calendarengines/versit2/group"/>
</component>
-<component name="agnversit2" filter="s60" long-name="Versit 2 Agenda Interface" introduced="9.2" plugin="Y">
+<component name="agnversit2" long-name="Versit 2 Agenda Interface" introduced="9.2" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="app/organizer/calendarengines/agnversit2/group"/>
</component>
-<component name="caleninterimutils" filter="s60" long-name="Calendar Interim Utils" introduced="9.1">
+<component name="caleninterimutils" long-name="Calendar Interim Utils" introduced="9.1" filter="s60" purpose="optional">
<unit bldFile="app/organizer/calendarengines/caleninterimutils/group"/>
</component>
-<component name="calenimp" filter="s60" long-name="Calendar Import Wrapper" introduced="7.0s">
+<component name="calenimp" long-name="Calendar Import Wrapper" introduced="7.0s" filter="s60" purpose="optional">
<unit bldFile="app/organizer/calendarengines/calenimp/group"/>
</component>
-<component name="caldavsrv" filter="sf_build" long-name="CalDAV Server" introduced="^3" class="placeholder">
+<component name="caldavsrv" long-name="CalDAV Server" introduced="^3" filter="sf_build" purpose="optional" class="placeholder">
<!-- Not yet delivered in S^4 <unit bldFile="calendarengines/caldav/group"/> -->
</component>
</collection>
<collection name="clock" long-name="Clock" level="app">
<!-- uncomment unit when block_build is split up-->
-<component name="clockengines" filter="s60" long-name="Clock Engines" class="placeholder">
+<component name="clockengines" long-name="Clock Engines" filter="s60" purpose="optional" class="placeholder">
<!--<unit bldFile="clock/clockengines" qt:proFile="clockengines.pro"/> -->
</component>
-<component name="clockmw" filter="s60" long-name="Clock Middleware" introduced="^4" class="placeholder">
+<component name="clockmw" long-name="Clock Middleware" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!--<unit bldFile="clock/clockmw" qt:proFile="clockmw.pro"/>-->
</component>
-<component name="clockui" filter="s60" long-name="Clock UI" class="placeholder">
+<component name="clockui" long-name="Clock UI" filter="s60" purpose="optional" class="placeholder">
<!--<unit bldFile="clock/clockui" qt:proFile="clockui.pro"/>-->
</component>
-<component name="clock_build" filter="s60" long-name="Clock Build">
+<component name="clock_build" long-name="Clock Build" filter="s60" purpose="optional">
<!-- make exports into a component, or just move to one of the above components, then remove this and uncomment the above -->
<unit bldFile="app/organizer/clock" proFile="clock.pro"/>
</component>
@@ -8053,7 +7929,7 @@
</collection>
<collection name="alarmui" long-name="Alarm UI" level="app">
<!-- collection is really a component, should move down a directory -->
-<component name="alarmui_build" filter="s60" long-name="Alarm UI Build">
+<component name="alarmui_build" long-name="Alarm UI Build" filter="s60" purpose="optional">
<unit bldFile="app/organizer/alarmui" proFile="alarmui.pro"/>
</component>
</collection>
@@ -8063,53 +7939,53 @@
</component>
</collection>
</block>
-<block name="calendarwidget" level="apps" long-name="Calendar Widget" levels="build app">
+<block name="calendarwidget" level="apps" levels="build app" long-name="Calendar Widget">
<collection name="calendarwidget_info" long-name="Calendar Widget Info" level="build">
-<component name="calendarwidget_rom" long-name="Calendar Widget ROM" filter="dfs_build" introduced="^4">
+<component name="calendarwidget_rom" long-name="Calendar Widget ROM" introduced="^4" filter="dfs_build" purpose="optional">
<!-- remove subdirs and put exports into a real bld.inf -->
-<unit bldFile="app/calendarwidget" proFile="calendarwidget.pro" qmakeArgs="-r"/>
+<unit bldFile="app/calendarwidget/." proFile="calendarwidget.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="calendarwidgetinstaller" long-name="Calendar Widget Installer" level="build">
<!-- collection is really a component, need to move down a directory -->
-<component name="calendarwidgetinstaller_build" long-name="Calendar Widget Installer Build" filter="dfs_build" introduced="^4" class="placeholder">
-<!-- built by calendarwidget_rom
+<component name="calendarwidgetinstaller_build" long-name="Calendar Widget Installer Build" introduced="^4" filter="dfs_build" purpose="optional" class="placeholder">
+<!-- built by calendarwidget_rom
<unit bldFile="calendarwidgetinstaller" qt:qmakeArgs="-r" qt:proFile="calendarwidgetinstaller.pro"/> -->
</component>
</collection>
<collection name="calendarwidgetplugin" long-name="Calendar Widget Plugin" level="app">
<!-- collection is really a component, need to move down a directory -->
-<component name="calendarwidgetplugin_build" long-name="Calendar Widget Plugin Build" filter="dfs_build" introduced="^4" plugin="Y" class="placeholder">
-<!-- built by calendarwidget_rom
+<component name="calendarwidgetplugin_build" long-name="Calendar Widget Plugin Build" introduced="^4" filter="dfs_build" purpose="optional" plugin="Y" class="placeholder">
+<!-- built by calendarwidget_rom
<unit bldFile="calendarwidgetplugin" qt:qmakeArgs="-r" qt:proFile="calendarwidgetplugin.pro"/> -->
</component>
-<component name="calendarwidgetplugin_test" long-name="Calendar Widget Plugin Test" filter="dfs_build" introduced="^4">
-<unit bldFile="app/calendarwidget/calendarwidgetplugin/tsrc" qmakeArgs="-r" proFile="tsrc.pro"/>
+<component name="calendarwidgetplugin_test" long-name="Calendar Widget Plugin Test" introduced="^4" filter="dfs_build" purpose="optional">
+<unit bldFile="app/calendarwidget/calendarwidgetplugin/tsrc" proFile="tsrc.pro" qmakeArgs="-r"/>
</component>
</collection>
</block>
-<block name="messaging" level="apps" span="2" long-name="Messaging Apps" levels="plugin eng base app api">
+<block name="messaging" level="apps" span="2" levels="plugin eng base app api" long-name="Messaging Apps">
<collection name="msg_plat" long-name="Messaging Apps Platform APIs" level="api">
-<component name="messaging_media_resolver_api" long-name="Messaging Media Resolver API" filter="s60" class="api"/>
-<component name="mms_application_api" long-name="MMS Application API" filter="s60" class="api"/>
-<component name="mms_codec_client_api" long-name="MMS Codec Client API" filter="s60" class="api"/>
-<component name="mms_conformance_api" long-name="MMS Conformance API" filter="s60" class="api"/>
-<component name="mms_engine_settings_api" long-name="MMS Engine Settings API" filter="s60" class="api"/>
-<component name="mms_server_settings_api" long-name="MMS Server Settings API" filter="s60" class="api"/>
-<component name="conversation_services_client_api" long-name="Conversation Services Client API" filter="s60" introduced="^4" class="api"/>
-<component name="conversation_services_plugin_api" long-name="Conversation Services Plugin API" filter="s60" introduced="^4" class="api"/>
-<component name="conversation_services_utilities_api" long-name="Conversation Services Utilities API" filter="s60" introduced="^4" class="api"/>
-<component name="shareui_api" long-name="Share UI API" filter="s60" introduced="^4" class="api"/>
-<component name="messaging_history_api" long-name="Messaging History API" filter="s60" introduced="^4" class="api"/>
-<component name="msg_plat_build" long-name="Messaging Apps Platform APIs Build" filter="s60" introduced="^4" class="api">
+<component name="messaging_media_resolver_api" long-name="Messaging Media Resolver API" filter="s60" purpose="optional" class="api"/>
+<component name="mms_application_api" long-name="MMS Application API" filter="s60" purpose="optional" class="api"/>
+<component name="mms_codec_client_api" long-name="MMS Codec Client API" filter="s60" purpose="optional" class="api"/>
+<component name="mms_conformance_api" long-name="MMS Conformance API" filter="s60" purpose="optional" class="api"/>
+<component name="mms_engine_settings_api" long-name="MMS Engine Settings API" filter="s60" purpose="optional" class="api"/>
+<component name="mms_server_settings_api" long-name="MMS Server Settings API" filter="s60" purpose="optional" class="api"/>
+<component name="conversation_services_client_api" long-name="Conversation Services Client API" introduced="^4" filter="s60" purpose="optional" class="api"/>
+<component name="conversation_services_plugin_api" long-name="Conversation Services Plugin API" introduced="^4" filter="s60" purpose="optional" class="api"/>
+<component name="conversation_services_utilities_api" long-name="Conversation Services Utilities API" introduced="^4" filter="s60" purpose="optional" class="api"/>
+<component name="shareui_api" long-name="Share UI API" introduced="^4" filter="s60" purpose="optional" class="api"/>
+<component name="messaging_history_api" long-name="Messaging History API" introduced="^4" filter="s60" purpose="optional" class="api"/>
+<component name="msg_plat_build" long-name="Messaging Apps Platform APIs Build" introduced="^4" filter="s60" purpose="optional" class="api">
<!-- break this up into the above units and replace their base attributes with bldFile, etc -->
<unit bldFile="app/messaging/msg_plat" proFile="msg_plat.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="msg_pub" long-name="Messaging Apps Public APIs" level="api">
-<component name="mms_client_mtm_api" long-name="MMS Client MTM API" filter="s60" class="api"/>
-<component name="msg_smil_dtd_api" long-name="Messaging SMIL DTD API" filter="s60" introduced="^4" class="api"/>
-<component name="msg_pub_build" long-name="Messaging Apps Public APIs Build" filter="s60" introduced="^4" class="api">
+<component name="mms_client_mtm_api" long-name="MMS Client MTM API" filter="s60" purpose="optional" class="api"/>
+<component name="msg_smil_dtd_api" long-name="Messaging SMIL DTD API" introduced="^4" filter="s60" purpose="optional" class="api"/>
+<component name="msg_pub_build" long-name="Messaging Apps Public APIs Build" introduced="^4" filter="s60" purpose="optional" class="api">
<!-- break this up into the above units and replace their base attributes with bldFile, etc -->
<unit bldFile="app/messaging/msg_pub" proFile="msg_pub.pro" qmakeArgs="-r"/>
</component>
@@ -8120,11 +7996,11 @@
</component>
</collection>
<collection name="messagingappbase" long-name="Messaging App Base" level="base">
-<component name="messagingappbase_build" filter="s60" long-name="Messaging App Base Build" introduced="^4">
+<component name="messagingappbase_build" long-name="Messaging App Base Build" introduced="^4" filter="s60" purpose="optional">
<!-- break this up into the below components -->
<unit bldFile="app/messaging/messagingappbase" proFile="messagingappbase.pro" qmakeArgs="-r"/>
</component>
-<component name="msgmedia" filter="s60" long-name="Message Media"/>
+<component name="msgmedia" long-name="Message Media" filter="s60" purpose="optional"/>
<component name="smilparser" long-name="SMIL Parser" introduced="7.0s" purpose="optional">
<unit bldFile="app/messaging/messagingappbase/smilparser/GROUP" mrp="app/messaging/messagingappbase/smilparser/GROUP/messaging_gmxml.mrp"/>
</component>
@@ -8133,40 +8009,40 @@
</component>
</collection>
<collection name="mmsengine" long-name="MMS Engine" level="eng">
-<component name="mmsconninit" filter="s60" long-name="MMS Connection Initiator" class="placeholder">
+<component name="mmsconninit" long-name="MMS Connection Initiator" filter="s60" purpose="optional" class="placeholder">
<!-- <unit bldFile="mmsengine/mmsconninit/bld"/> -->
</component>
-<component name="genutils" filter="s60" long-name="General Utils" class="placeholder">
+<component name="genutils" long-name="General Utils" filter="s60" purpose="optional" class="placeholder">
<!-- <unit bldFile="mmsengine/genutils/bld"/> -->
</component>
-<component name="mmsserversettings" filter="s60" long-name="MMS Server Settings" class="placeholder">
+<component name="mmsserversettings" long-name="MMS Server Settings" filter="s60" purpose="optional" class="placeholder">
<!-- <unit bldFile="mmsengine/mmsserversettings/bld"/> -->
</component>
-<component name="mmsmessage" filter="s60" long-name="MMS Message" class="placeholder">
+<component name="mmsmessage" long-name="MMS Message" filter="s60" purpose="optional" class="placeholder">
<!-- <unit bldFile="mmsengine/mmsmessage/bld"/> -->
</component>
-<component name="mmshttptransport" filter="s60" long-name="MMS HTTP Transport" class="placeholder">
+<component name="mmshttptransport" long-name="MMS HTTP Transport" filter="s60" purpose="optional" class="placeholder">
<!-- <unit bldFile="mmsengine/mmshttptransport/bld"/> -->
</component>
-<component name="mmscodec" filter="s60" long-name="MMS Codec" class="placeholder">
+<component name="mmscodec" long-name="MMS Codec" filter="s60" purpose="optional" class="placeholder">
<!-- <unit bldFile="mmsengine/mmscodec/bld"/> -->
</component>
-<component name="mmsserver" filter="s60" long-name="MMS Server" class="placeholder">
+<component name="mmsserver" long-name="MMS Server" filter="s60" purpose="optional" class="placeholder">
<!-- <unit bldFile="mmsengine/mmsserver/bld"/> -->
</component>
-<component name="clientmtm" filter="s60" long-name="MMS Client MTM" plugin="Y" class="placeholder">
+<component name="clientmtm" long-name="MMS Client MTM" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!-- <unit bldFile="mmsengine/clientmtm/bld"/> -->
</component>
-<component name="mmswatcher" filter="s60" long-name="MMS Watcher" plugin="Y" class="placeholder">
+<component name="mmswatcher" long-name="MMS Watcher" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!-- <unit bldFile="mmsengine/mmswatcher/bld"/> -->
</component>
-<component name="mmspushhandler" filter="s60" long-name="MMS Push Handler" plugin="Y" class="placeholder">
+<component name="mmspushhandler" long-name="MMS Push Handler" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!-- <unit bldFile="mmsengine/mmspushhandler/bld"/> -->
</component>
-<component name="applicationadapter" filter="s60" long-name="MMS Application Adapter" class="placeholder">
+<component name="applicationadapter" long-name="MMS Application Adapter" filter="s60" purpose="optional" class="placeholder">
<!-- <unit bldFile="mmsengine/applicationadapter/bld"/> -->
</component>
-<component name="mmscodecclient" filter="s60" long-name="MMS Codec Client" class="placeholder">
+<component name="mmscodecclient" long-name="MMS Codec Client" filter="s60" purpose="optional" class="placeholder">
<!-- <unit bldFile="mmsengine/mmscodecclient/bld"/> -->
</component>
<component name="mmssettings" long-name="MMS Settings" introduced="9.2" purpose="optional">
@@ -8175,46 +8051,46 @@
<component name="mmsconf" long-name="MMS Configuration" purpose="optional">
<unit bldFile="app/messaging/mmsengine/mmsconf" mrp="app/messaging/mmsengine/mmsconf/messaging_mmssettings-config.mrp"/>
</component>
-<component name="mmsengine_build" filter="s60" long-name="MMS Engine Build">
+<component name="mmsengine_build" long-name="MMS Engine Build" filter="s60" purpose="optional">
<!-- this should be broken up into the individual other components -->
<unit bldFile="app/messaging/mmsengine" proFile="mmsengine.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="messagingapp" long-name="Messaging Application" level="app">
-<component name="messaging_conf" filter="s60" long-name="Messaging Application Configuration" introduced="^4" class="config">
+<component name="messaging_conf" long-name="Messaging Application Configuration" introduced="^4" filter="s60" purpose="optional" class="config">
<unit bldFile="app/messaging/messagingapp/conf" proFile="messaging_conf.pro" qmakeArgs="-r"/>
</component>
-<component name="msgutils" filter="s60" long-name="Messaging Utils" introduced="^4">
+<component name="msgutils" long-name="Messaging Utils" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/messaging/messagingapp/msgutils" proFile="msgutils.pro" qmakeArgs="-r"/>
</component>
-<component name="msgappfw" filter="s60" long-name="Messaging Application Framework" introduced="^4">
+<component name="msgappfw" long-name="Messaging Application Framework" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/messaging/messagingapp/msgappfw" proFile="msgappfw.pro" qmakeArgs="-r"/>
</component>
-<component name="msgsettings" filter="s60" long-name="Messaging Settings" introduced="^4">
+<component name="msgsettings" long-name="Messaging Settings" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/messaging/messagingapp/msgsettings" proFile="msgsettings.pro" qmakeArgs="-r"/>
</component>
-<component name="msgnotifications" filter="s60" long-name="Messaging Notifications" introduced="^4">
+<component name="msgnotifications" long-name="Messaging Notifications" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/messaging/messagingapp/msgnotifications" proFile="msgnotifications.pro" qmakeArgs="-r"/>
</component>
-<component name="smartmessaging" filter="s60" long-name="Smart Messaging">
+<component name="smartmessaging" long-name="Smart Messaging" filter="s60" purpose="optional">
<unit bldFile="app/messaging/messagingapp/smartmessaging" proFile="smartmessaging.pro" qmakeArgs="-r"/>
</component>
-<component name="shareui" filter="s60" long-name="Shared UI" introduced="^4">
+<component name="shareui" long-name="Shared UI" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/messaging/messagingapp/shareui" proFile="shareui.pro" qmakeArgs="-r"/>
</component>
-<component name="msgui" filter="s60" long-name="Messaging UI" introduced="^4">
+<component name="msgui" long-name="Messaging UI" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/messaging/messagingapp/msgui" proFile="msgui.pro" qmakeArgs="-r"/>
</component>
-<component name="msgservices" filter="s60" long-name="Messaging Services" introduced="^4">
+<component name="msgservices" long-name="Messaging Services" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/messaging/messagingapp/msgservices" proFile="msgservices.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="email" long-name="Email" level="plugin">
<!-- use commonemail instead -->
-<component name="pop3andsmtpmtm" long-name="POP3 and SMTP MTM" purpose="optional" deprecated="^3" plugin="Y">
+<component name="pop3andsmtpmtm" long-name="POP3 and SMTP MTM" deprecated="^3" purpose="optional" plugin="Y">
<unit bldFile="app/messaging/email/pop3andsmtpmtm/group" mrp="app/messaging/email/pop3andsmtpmtm/group/messaging_email.mrp"/>
</component>
-<component name="imap4mtm" long-name="IMAP4 MTM" introduced="9.2" purpose="optional" deprecated="^3" plugin="Y">
+<component name="imap4mtm" long-name="IMAP4 MTM" introduced="9.2" deprecated="^3" purpose="optional" plugin="Y">
<unit bldFile="app/messaging/email/imap4mtm/group" mrp="app/messaging/email/imap4mtm/group/messaging_email_imap.mrp"/>
</component>
</collection>
@@ -8224,577 +8100,577 @@
</component>
</collection>
</block>
-<block name="commonemail" level="apps" span="2" long-name="Email Apps" levels="service support ui app">
+<block name="commonemail" level="apps" span="2" levels="service support ui app" long-name="Email Apps">
<!-- need to resolve the qt parts into proper components, then uncomment the units -->
<collection name="email_plat" long-name="Email Apps Platform Interfaces" level="app">
-<component name="nmail_client_api" long-name="NMail Client API" filter="s60" introduced="^4" class="api placeholder">
+<component name="nmail_client_api" long-name="NMail Client API" introduced="^4" filter="s60" purpose="optional" class="api placeholder">
<!--<unit bldFile="email_plat/nmail_client_api" qt:proFile="nmail_client_api.pro"/> -->
</component>
-<component name="email_services_api" long-name="Email Services API" filter="s60" introduced="^4" class="api placeholder">
+<component name="email_services_api" long-name="Email Services API" introduced="^4" filter="s60" purpose="optional" class="api placeholder">
<!--<unit bldFile="email_plat/email_services_api" qt:proFile="email_services_api.pro"/> -->
</component>
-<component name="nmail_settings_api" long-name="NMail Settings API" filter="s60" introduced="^4" class="api placeholder">
+<component name="nmail_settings_api" long-name="NMail Settings API" introduced="^4" filter="s60" purpose="optional" class="api placeholder">
<!--<unit bldFile="email_plat/nmail_settings_api" qt:proFile="nmail_settings_api.pro"/> -->
</component>
-<component name="email_client_api" long-name="EMail Client API" filter="s60" introduced="^4" class="api placeholder">
+<component name="email_client_api" long-name="EMail Client API" introduced="^4" filter="s60" purpose="optional" class="api placeholder">
<!--<unit bldFile="email_plat/email_client_api" qt:proFile="email_client_api.pro"/> -->
</component>
</collection>
<collection name="emailservices" long-name="Email Services" level="service">
-<component name="nmailbase" filter="s60" long-name="NMail Base" introduced="^4" class="placeholder">
+<component name="nmailbase" long-name="NMail Base" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!-- <unit bldFile="emailservices/nmailbase" qt:proFile="nmailbase.pro"/> -->
</component>
-<component name="emailcommon" filter="s60" long-name="Email Common" introduced="^4" class="placeholder">
+<component name="emailcommon" long-name="Email Common" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!-- <unit bldFile="emailservices/emailcommon" qt:proFile="emailcommon.pro"/>-->
</component>
-<component name="emailframework" filter="s60" long-name="Email Framework" introduced="^2" class="placeholder">
+<component name="emailframework" long-name="Email Framework" introduced="^2" filter="s60" purpose="optional" class="placeholder">
<!-- <unit bldFile="emailservices/emailframework" qt:proFile="emailframework.pro"/>-->
</component>
-<component name="emailstore" filter="s60" long-name="Email Store" introduced="^2" class="placeholder">
+<component name="emailstore" long-name="Email Store" introduced="^2" filter="s60" purpose="optional" class="placeholder">
<!-- <unit bldFile="emailservices/emailstore" qt:proFile="emailstore.pro"/>-->
</component>
-<component name="nmclientapi" filter="s60" long-name="Nmail Client API" introduced="^4" class="placeholder">
+<component name="nmclientapi" long-name="Nmail Client API" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!-- <unit bldFile="emailservices/nmclientapi" qt:proFile="nmclientapi.pro"/>-->
</component>
-<component name="nmailagent" filter="s60" long-name="Nmail Agent" introduced="^4" class="placeholder">
+<component name="nmailagent" long-name="Nmail Agent" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!-- <unit bldFile="emailservices/nmailagent" qt:proFile="nmailagent.pro"/>-->
</component>
-<component name="nmutilities" filter="s60" long-name="Nmail Utilities" introduced="^4" class="placeholder">
+<component name="nmutilities" long-name="Nmail Utilities" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!-- <unit bldFile="emailservices/nmutilities" qt:proFile="nmutilities.pro"/> -->
</component>
</collection>
<collection name="ipsservices" long-name="IMAP/POP/SMTP Services" level="service">
-<component name="ipssosplugin" filter="s60" long-name="IPS SOS Plugin" introduced="^2" plugin="Y" class="placeholder">
+<component name="ipssosplugin" long-name="IPS SOS Plugin" introduced="^2" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!-- SOS? Consider spelling it out since the abbreviation is ambiguous -->
<!--<unit bldFile="ipsservices/ipssosplugin" qt:proFile="ipssosplugin.pro" />-->
</component>
-<component name="nmimapclientplugin" filter="s60" long-name="NM IMAP Client Plugin" introduced="^4" plugin="Y" class="placeholder">
+<component name="nmimapclientplugin" long-name="NM IMAP Client Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!--<unit bldFile="ipsservices/nmimapclientplugin" qt:proFile="nmimapclientplugin.pro"/>-->
</component>
-<component name="nmipsmtms" filter="s60" long-name="NM IPS Client Plugin" introduced="^4" plugin="Y" class="placeholder">
+<component name="nmipsmtms" long-name="NM IPS Client Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!-- <unit bldFile="ipsservices/nmipsmtms" qt:proFile="nmipsmtms.pro"/>-->
</component>
-<component name="nmipssettings" filter="s60" long-name="NM IPS Settings" introduced="^4" class="placeholder">
+<component name="nmipssettings" long-name="NM IPS Settings" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!-- <unit bldFile="ipsservices/nmipssettings" qt:proFile="nmipssettings.pro"/>-->
</component>
-<component name="ipsservices_build" filter="s60" long-name="IPS Services Build" introduced="^2" class="placeholder">
+<component name="ipsservices_build" long-name="IPS Services Build" introduced="^2" filter="s60" purpose="optional" class="placeholder">
<!--<unit bldFile="ipsservices" qt:proFile="ipsservices.pro"/> -->
<!-- can the exports be broken up into the other components or made a config component?-->
</component>
</collection>
<collection name="emailuis" long-name="Email UIs" level="app">
-<component name="nmailuiengine" filter="s60" long-name="Nmail UI Engine" introduced="^4" class="placeholder">
+<component name="nmailuiengine" long-name="Nmail UI Engine" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!-- <unit bldFile="emailuis/nmailuiengine" qt:proFile="nmailuiengine.pro"/> -->
</component>
-<component name="nmailuiwidgets" filter="s60" long-name="Nmail UI Widgets" introduced="^4" class="placeholder">
+<component name="nmailuiwidgets" long-name="Nmail UI Widgets" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!-- <unit bldFile="emailuis/nmailuiwidgets" qt:proFile="nmailuiwidgets.pro"/> -->
</component>
-<component name="nmailuiwidgetsplugin" filter="s60" long-name="Nmail UI Widgets Plugin" introduced="^4" plugin="Y" class="placeholder">
+<component name="nmailuiwidgetsplugin" long-name="Nmail UI Widgets Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!-- <unit bldFile="emailuis/nmailuiwidgetsplugin" qt:proFile="nmailuiwidgetsplugin.pro"/> -->
</component>
-<component name="nmsettingui" filter="s60" long-name="Nmail Setting UI" introduced="^4" plugin="Y" class="placeholder">
+<component name="nmsettingui" long-name="Nmail Setting UI" introduced="^4" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!-- <unit bldFile="emailuis/nmsettingui" qt:proFile="nmsettingui.pro"/> -->
</component>
-<component name="nmailcpplugin" filter="s60" long-name="Nmail CP Plugin" introduced="^4" plugin="Y" class="placeholder">
+<component name="nmailcpplugin" long-name="Nmail CP Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!-- <unit bldFile="emailuis/nmailcpplugin" qt:proFile="nmailcpplugin.pro"/> -->
</component>
-<component name="nmailui" filter="s60" long-name="Nmail UI" introduced="^4" class="placeholder">
+<component name="nmailui" long-name="Nmail UI" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!-- <unit bldFile="emailuis/nmailui" qt:proFile="nmailui.pro"/> -->
</component>
-<component name="nmindicatorplugin" filter="s60" long-name="Nmail Indicator Plugin" introduced="^4" plugin="Y" class="placeholder">
+<component name="nmindicatorplugin" long-name="Nmail Indicator Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!-- <unit bldFile="emailuis/nmindicatorplugin" qt:proFile="nmindicatorplugin.pro"/> -->
</component>
-<component name="nmframeworkadapter" filter="s60" long-name="Nmail Framework Adapter" introduced="^4" plugin="Y" class="placeholder">
+<component name="nmframeworkadapter" long-name="Nmail Framework Adapter" introduced="^4" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!-- <unit bldFile="emailuis/nmframeworkadapter" qt:proFile="nmframeworkadapter.pro"/> -->
</component>
</collection>
<collection name="commonemail_info" long-name="Email Apps Info" level="app">
-<component name="commonemail_build" long-name="Email Apps Build" introduced="^4">
+<component name="commonemail_build" long-name="Email Apps Build" introduced="^4" purpose="optional">
<!-- split into actual components -->
-<unit bldFile="app/commonemail" proFile="nmail.pro" qmakeArgs="-r"/>
+<unit bldFile="app/commonemail/." proFile="nmail.pro" qmakeArgs="-r"/>
</component>
</collection>
</block>
<block name="camera" level="apps" long-name="Camera Apps">
<collection name="camerauis" long-name="Camera UIs">
-<component name="cameraxui" filter="s60" long-name="CameraX UIs">
+<component name="cameraxui" long-name="CameraX UIs" filter="s60" purpose="optional">
<unit bldFile="app/camera/camerauis/cameraxui" filter="!test" proFile="camerax.pro"/>
</component>
</collection>
</block>
<block name="imgeditor" level="apps" long-name="Image Editor"/>
<block name="videoeditor" level="apps" long-name="Video Editor"/>
-<block name="videoplayer" level="apps" long-name="Video Player Apps" levels="support plugin util apps">
+<block name="videoplayer" level="apps" levels="support plugin util apps" long-name="Video Player Apps">
<collection name="videoplayer_plat" long-name="Video Player Apps Platform Interfaces" level="apps">
-<component name="videoplayer_startup_api" long-name="Video Player Startup API" filter="s60" class="api">
+<component name="videoplayer_startup_api" long-name="Video Player Startup API" filter="s60" purpose="optional" class="api">
<unit bldFile="app/videoplayer/videoplayer_plat/videoplayer_startup_api/group"/>
</component>
-<component name="videocollection_api" long-name="Video Collection API" filter="s60" class="api">
+<component name="videocollection_api" long-name="Video Collection API" filter="s60" purpose="optional" class="api">
<unit bldFile="app/videoplayer/videoplayer_plat/videocollection_api/group"/>
</component>
</collection>
<collection name="videocollection" long-name="Video Collection" level="util">
-<component name="mpxmyvideoscollection" filter="s60" long-name="MPX My Videos Collection" introduced="^3">
+<component name="mpxmyvideoscollection" long-name="MPX My Videos Collection" introduced="^3" filter="s60" purpose="optional">
<unit bldFile="app/videoplayer/videocollection/mpxmyvideoscollection/group" filter="!test"/>
</component>
-<component name="videocollectionwrapper" filter="s60" long-name="Video Collection Wrapper" introduced="^4">
+<component name="videocollectionwrapper" long-name="Video Collection Wrapper" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/videoplayer/videocollection/videocollectionwrapper" proFile="videocollectionwrapper.pro" qmakeArgs="-r"/>
</component>
-<component name="videocollectionview" filter="s60" long-name="Video Collection View" introduced="^4">
+<component name="videocollectionview" long-name="Video Collection View" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/videoplayer/videocollection/videocollectionview" proFile="videocollectionview.pro" qmakeArgs="-r"/>
</component>
-<component name="videofiledetailsview" filter="s60" long-name="Video File Details View" introduced="^4">
+<component name="videofiledetailsview" long-name="Video File Details View" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/videoplayer/videocollection/videofiledetailsview" proFile="videofiledetailsview.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="mediasettings" long-name="Media Settings" level="support">
-<component name="mediasettingsengine" filter="s60" long-name="Media Settings Engine">
+<component name="mediasettingsengine" long-name="Media Settings Engine" filter="s60" purpose="optional">
<unit bldFile="app/videoplayer/mediasettings/mediasettingsengine/group"/>
</component>
-<component name="videosettingsplugin" filter="s60" long-name="Video Settings Plugin" plugin="Y">
+<component name="videosettingsplugin" long-name="Video Settings Plugin" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="app/videoplayer/mediasettings/videosettingsplugin" proFile="videosettingsplugin.pro"/>
</component>
</collection>
<collection name="videoplayerapp" long-name="Video Player App" level="apps">
-<component name="videoplayerengine" long-name="Video Player Engine" filter="s60" introduced="^4">
+<component name="videoplayerengine" long-name="Video Player Engine" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/videoplayer/videoplayerapp/videoplayerengine" proFile="videoplayerengine.pro" qmakeArgs="-r"/>
</component>
-<component name="hbvideoplayer" filter="s60" long-name="Video Player" introduced="^4">
+<component name="hbvideoplayer" long-name="Video Player" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/videoplayer/videoplayerapp/videoplayer" proFile="videoplayer.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="videoplayback" long-name="Video Playback Plugins" level="plugin">
-<component name="hbvideoplaybackview" filter="s60" long-name="HB Video Playback View" introduced="^4" plugin="Y">
+<component name="hbvideoplaybackview" long-name="HB Video Playback View" introduced="^4" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="app/videoplayer/videoplayback/hbvideoplaybackview" proFile="hbvideoplaybackview.pro" qmakeArgs="-r"/>
</component>
-<component name="hbvideoplaybackviewplugin" filter="s60" long-name="HB Video Playback View Plugin" introduced="^4" plugin="Y">
+<component name="hbvideoplaybackviewplugin" long-name="HB Video Playback View Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="app/videoplayer/videoplayback/hbvideoplaybackviewplugin" proFile="hbvideoplaybackviewplugin.pro" qmakeArgs="-r"/>
</component>
-<component name="videohelix" long-name="Video Helix" filter="s60" introduced="^3" plugin="Y">
+<component name="videohelix" long-name="Video Helix" introduced="^3" filter="s60" purpose="optional" plugin="Y">
<unit bldFile="app/videoplayer/videoplayback/videohelix/group" filter="!test"/>
</component>
</collection>
</block>
-<block name="photos" level="apps" long-name="Photos" levels="util support ui app">
+<block name="photos" level="apps" levels="util support ui app" long-name="Photos">
<collection name="photos_group" long-name="Photos Group" level="support">
-<component name="photos_group_build" filter="s60" long-name="Photos Group Build" introduced="^4" class="placeholder">
+<component name="photos_group_build" long-name="Photos Group Build" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!--<unit bldFile="group" qt:proFile="group.pro"/> -->
</component>
</collection>
<collection name="photos_loggers" long-name="Photos Loggers" level="util">
-<component name="photos_loggerqt" filter="s60" long-name="Photos Logger Qt" introduced="^4" class="placeholder">
+<component name="photos_loggerqt" long-name="Photos Logger Qt" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!--<unit bldFile="loggers/loggerqt" qt:proFile="loggerqt.pro"/> -->
</component>
</collection>
<collection name="photos_commonutilities" long-name="Photos Common Utilities" level="util">
-<component name="photos_externalutility" filter="s60" long-name="Photos External Utility" introduced="^4" class="placeholder">
+<component name="photos_externalutility" long-name="Photos External Utility" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!--<unit bldFile="commonutilities/externalutility" qt:proFile="externalutility.pro"/> -->
</component>
-<component name="imagedecoderwrapper" filter="s60" long-name="Image Decoder Wrapper" introduced="^4" class="placeholder">
+<component name="imagedecoderwrapper" long-name="Image Decoder Wrapper" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!--<unit bldFile="commonutilities/imagedecoderwrapper" qt:proFile="imagedecoderwrapper.pro"/> -->
</component>
</collection>
<collection name="photos_ui" long-name="Photos UI" level="ui">
<!-- need to move exports from ui.pro into separate .pro or bld.inf -->
-<component name="detailscustomwidget " filter="s60" long-name="Details Custom Widget" introduced="^4" class="placeholder">
+<component name="detailscustomwidget" long-name="Details Custom Widget" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!--<unit bldFile="ui/detailscustomwidget " qt:proFile="detailscustomwidget .pro"/> -->
</component>
-<component name="photos_uiengine" filter="s60" long-name="Photos UI Engine" introduced="^4" class="placeholder">
+<component name="photos_uiengine" long-name="Photos UI Engine" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!--<unit bldFile="ui/uiengine" qt:proFile="uiengine.pro"/> -->
</component>
-<component name="photos_commandhandlers" filter="s60" long-name="Photos Command Handlers" introduced="^4" class="placeholder">
+<component name="photos_commandhandlers" long-name="Photos Command Handlers" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!--<unit bldFile="ui/commandhandlers" qt:proFile="commandhandlers.pro"/> -->
</component>
-<component name="photos_viewutilities" filter="s60" long-name="Photos View Utilities" introduced="^4" class="placeholder">
+<component name="photos_viewutilities" long-name="Photos View Utilities" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!--<unit bldFile="ui/viewutilities" qt:proFile="commandhandlers.pro"/> -->
</component>
-<component name="photos_widgets" filter="s60" long-name="Photos Widgets" introduced="^4" class="placeholder">
+<component name="photos_widgets" long-name="Photos Widgets" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!--<unit bldFile="ui/widgets" qt:proFile="widgets.pro"/> -->
</component>
-<component name="photos_views" filter="s60" long-name="Photos Views" introduced="^4" class="placeholder">
+<component name="photos_views" long-name="Photos Views" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!--<unit bldFile="ui/views" qt:proFile="views.pro"/> -->
</component>
-<component name="photos_viewmanagement" filter="s60" long-name="Photos View Management" introduced="^4" class="placeholder">
+<component name="photos_viewmanagement" long-name="Photos View Management" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!--<unit bldFile="ui/viewmanagement" qt:proFile="viewmanagement.pro"/> -->
</component>
</collection>
<collection name="photos_main" long-name="Photos Main" level="support">
-<component name="photos_main_build" filter="s60" long-name="Photos Main Build" introduced="^4" class="placeholder">
+<component name="photos_main_build" long-name="Photos Main Build" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!--<unit bldFile="main" qt:proFile="main.pro"/> -->
</component>
</collection>
<collection name="gallery" long-name="Gallery" level="ui">
-<component name="gallery_build" filter="s60" long-name="Gallery Build" introduced="^4" class="placeholder">
+<component name="gallery_build" long-name="Gallery Build" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!--<unit bldFile="gallery" qt:proFile="gallery.pro"/> -->
</component>
</collection>
<collection name="imageviewerapp" long-name="Image Viewer App" level="support">
-<component name="imageviewerapp_build" filter="s60" long-name="Image Viewer App Build" introduced="^4" class="placeholder">
+<component name="imageviewerapp_build" long-name="Image Viewer App Build" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!--<unit bldFile="imageviewerapp" qt:proFile="imageviewerapp.pro"/> -->
</component>
</collection>
<collection name="photos_info" long-name="Photos Info" level="support">
-<component name="photos_build" filter="s60" long-name="Photos Build" introduced="^4">
+<component name="photos_build" long-name="Photos Build" introduced="^4" filter="s60" purpose="optional">
<!-- split this up into the above components -->
-<unit bldFile="app/photos" proFile="photos.pro"/>
+<unit bldFile="app/photos/." proFile="photos.pro"/>
</component>
</collection>
</block>
-<block name="musicplayer" level="apps" long-name="Music Player Apps" levels="plugins support engine app">
+<block name="musicplayer" level="apps" levels="plugins support engine app" long-name="Music Player Apps">
<!-- move the rom .pri files into their components and uncomment the units -->
-<collection name="mpdata " long-name="Music Player Data" level="support">
+<collection name="mpdata" long-name="Music Player Data" level="support">
<!-- collection is really a component, move down a directory -->
-<component name="mpdata_build" filter="s60" long-name="Music Player Data Build" introduced="^4" class="placeholder">
+<component name="mpdata_build" long-name="Music Player Data Build" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!-- <unit bldFile="mpdata" qt:proFile="mpdata.pro" qt:qmakeArgs="-r -config rom"/> -->
</component>
</collection>
-<collection name="mpengine " long-name="Music Player Engine" level="engine">
+<collection name="mpengine" long-name="Music Player Engine" level="engine">
<!-- collection is really a component, move down a directory -->
-<component name="mpengine_build" filter="s60" long-name="Music Player Engine Build" introduced="^4" class="placeholder">
+<component name="mpengine_build" long-name="Music Player Engine Build" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!-- <unit bldFile="mpengine" qt:proFile="mpengine.pro" qt:qmakeArgs="-r -config rom"/> -->
</component>
</collection>
-<collection name="musicplayer_utilities " long-name="Music Player Utilities" level="support">
-<component name="mpnowplayingbanner" filter="s60" long-name="MP Now Playing Banner" introduced="^4" class="placeholder">
+<collection name="musicplayer_utilities" long-name="Music Player Utilities" level="support">
+<component name="mpnowplayingbanner" long-name="MP Now Playing Banner" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!-- <unit bldFile="utilities/mpnowplayingbanner" qt:proFile="mpnowplayingbanner.pro" qt:qmakeArgs="-r -config rom"/> -->
</component>
-<component name="mpsettingsmanager" filter="s60" long-name="MP Settings Manager" introduced="^4" class="placeholder">
+<component name="mpsettingsmanager" long-name="MP Settings Manager" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!-- <unit bldFile="utilities/mpsettingsmanager" qt:proFile="mpsettingsmanager.pro" qt:qmakeArgs="-r -config rom"/> -->
</component>
</collection>
-<collection name="musicservices " long-name="Music Services" level="support">
+<collection name="musicservices" long-name="Music Services" level="support">
<!-- collection is really a component, move down a directory -->
-<component name="musicservices_build" filter="s60" long-name="Music Services Build" introduced="^4" class="placeholder">
+<component name="musicservices_build" long-name="Music Services Build" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!-- <unit bldFile="musicservices" qt:proFile="musicservices.pro" qt:qmakeArgs="-r -config rom"/> -->
</component>
</collection>
-<collection name="musicplayer_app " long-name="Music Player Application" level="app">
+<collection name="musicplayer_app" long-name="Music Player Application" level="app">
<!-- collection is really a component, move down a directory -->
-<component name="musicplayer_app_build" filter="s60" long-name="Music Player Application Build" introduced="^4" class="placeholder">
+<component name="musicplayer_app_build" long-name="Music Player Application Build" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!-- <unit bldFile="app" qt:proFile="app.pro" qt:qmakeArgs="-r -config rom"/> -->
</component>
</collection>
<collection name="mpviewplugins" long-name="Music Player View Plugins" level="plugins">
-<component name="mpcollectionviewplugin" filter="s60" long-name="MP Collection View Plugin" introduced="^4" plugin="Y" class="placeholder">
+<component name="mpcollectionviewplugin" long-name="MP Collection View Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!--<unit bldFile="mpviewplugins/mpcollectionviewplugin" qt:proFile="mpcollectionviewplugin.pro" qt:qmakeArgs="-r -config rom"/> -->
</component>
-<component name="mpplaybackviewplugin" filter="s60" long-name="MP Playback View Plugin" introduced="^4" plugin="Y" class="placeholder">
+<component name="mpplaybackviewplugin" long-name="MP Playback View Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!--<unit bldFile="mpviewplugins/mpplaybackviewplugin" qt:proFile="mpplaybackviewplugin.pro" qt:qmakeArgs="-r -config rom"/> -->
</component>
-<component name="mpsettingsviewplugin" filter="s60" long-name="MP Settings View Plugin" introduced="^4" plugin="Y" class="placeholder">
+<component name="mpsettingsviewplugin" long-name="MP Settings View Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!--<unit bldFile="mpviewplugins/mpsettingsviewplugin" qt:proFile="mpsettingsviewplugin.pro" qt:qmakeArgs="-r -config rom"/> -->
</component>
-<component name="mpdetailsviewplugin" filter="s60" long-name="MP Details View Plugin" introduced="^4" plugin="Y" class="placeholder">
+<component name="mpdetailsviewplugin" long-name="MP Details View Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!--<unit bldFile="mpviewplugins/mpdetailsviewplugin" qt:proFile="mpdetailsviewplugin.pro" qt:qmakeArgs="-r -config rom"/> -->
</component>
-<component name="mpmediawallviewplugin" filter="s60" long-name="MP Media Wall View Plugin" introduced="^4" plugin="Y" class="placeholder">
+<component name="mpmediawallviewplugin" long-name="MP Media Wall View Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!--<unit bldFile="mpviewplugins/mpmediawallviewplugin" qt:proFile="mpmediawallviewplugin.pro" qt:qmakeArgs="-r -config rom"/> -->
</component>
</collection>
<collection name="musicwidgetplugin" long-name="Music Widget Plugin" level="plugins">
-<component name="musicwidgetplugin_build" filter="s60" long-name="Music Widget Plugin" introduced="^4" plugin="Y" class="placeholder">
+<component name="musicwidgetplugin_build" long-name="Music Widget Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!--<unit bldFile="musicwidgetplugin" qt:proFile="musicwidgetplugin.pro" qt:qmakeArgs="-r -config rom"/> -->
</component>
</collection>
<collection name="mpserviceplugins" long-name="Music Player Service Plugins" level="plugins">
-<component name="audioeffects" filter="s60" long-name="Audio Effects" introduced="^4" plugin="Y" class="placeholder">
+<component name="audioeffects" long-name="Audio Effects" introduced="^4" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!--<unit bldFile="mpserviceplugins/audioeffects/group"/>-->
</component>
-<component name="localaudio" filter="s60" long-name="Local Audio" introduced="^4" plugin="Y" class="placeholder">
+<component name="localaudio" long-name="Local Audio" introduced="^4" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!--<unit bldFile="mpserviceplugins/localaudio/group"/>-->
</component>
<!-- Note: it's called SQLite, not SQLLite, just the one "L" -->
-<component name="mpxsqlitedbcommon" filter="s60" long-name="MPX SQLite Database Common" introduced="^4" class="placeholder">
+<component name="mpxsqlitedbcommon" long-name="MPX SQLite Database Common" introduced="^4" filter="s60" purpose="optional" class="placeholder">
<!--<unit bldFile="mpserviceplugins/mpxsqlitedbcommon/group"/>-->
</component>
-<component name="mpxsqlitedbhgplugin" filter="s60" long-name="MPX SQLite Database Hg Plugin" introduced="^4" plugin="Y" class="placeholder">
+<component name="mpxsqlitedbhgplugin" long-name="MPX SQLite Database Hg Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!--<unit bldFile="mpserviceplugins/mpxsqlitedbhgplugin/group"/>-->
</component>
-<component name="mpxsqlitedbplugin" filter="s60" long-name="MPX SQLite Database Plugin" introduced="^4" plugin="Y" class="placeholder">
+<component name="mpxsqlitedbplugin" long-name="MPX SQLite Database Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!--<unit bldFile="mpserviceplugins/mpxsqlitedbplugin/group"/>-->
</component>
-<component name="mpxsqlitepodcastdbplugin" filter="s60" long-name="MPX SQLlite Podcast Database Plugin" introduced="^4" plugin="Y" class="placeholder">
+<component name="mpxsqlitepodcastdbplugin" long-name="MPX SQLlite Podcast Database Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!--<unit bldFile="mpserviceplugins/mpxsqlitepodcastdbplugin/group"/>-->
</component>
-<component name="mpxinmemoryplugin" filter="s60" long-name="MPX In-Memory Plugin" introduced="^4" plugin="Y" class="placeholder">
+<component name="mpxinmemoryplugin" long-name="MPX In-Memory Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!--<unit bldFile="mpserviceplugins/mpxinmemoryplugin/group"/>-->
</component>
-<component name="m3uplaylistplugin" filter="s60" long-name="M3U Playlist Plugin" introduced="^4" plugin="Y" class="placeholder">
+<component name="m3uplaylistplugin" long-name="M3U Playlist Plugin" introduced="^4" filter="s60" purpose="optional" plugin="Y" class="placeholder">
<!--<unit bldFile="mpserviceplugins/mpxsqlitepodcastdbplugin/group"/>-->
</component>
</collection>
<collection name="musicplayer_info" long-name="Music Player Apps Info" level="app">
-<component name="musicplayer_build" filter="s60" long-name="Music Player Build">
+<component name="musicplayer_build" long-name="Music Player Build" filter="s60" purpose="optional">
<!-- break up into individual components. ROM includes should be in their components -->
-<unit bldFile="app/musicplayer" proFile="qtmusicplayer.pro" qmakeArgs="-r -config rom"/>
+<unit bldFile="app/musicplayer/." proFile="qtmusicplayer.pro" qmakeArgs="-r -config rom"/>
</component>
</collection>
</block>
-<block name="radio" level="apps" long-name="Radio Apps" levels="engine plugin ui">
+<block name="radio" level="apps" levels="engine plugin ui" long-name="Radio Apps">
<collection name="radioengine" long-name="Radio Engine" level="engine">
-<component name="radioengineutils" filter="s60" long-name="Radio Engine Utils" introduced="^4">
+<component name="radioengineutils" long-name="Radio Engine Utils" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/radio/radioengine/utils/group"/>
</component>
-<component name="radioenginesettings" filter="s60" long-name="Radio Engine Settings" introduced="^4">
+<component name="radioenginesettings" long-name="Radio Engine Settings" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/radio/radioengine/settings/group"/>
</component>
-<component name="radioengine_engine" filter="s60" long-name="Radio Engine" introduced="^4">
+<component name="radioengine_engine" long-name="Radio Engine" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/radio/radioengine/engine/group"/>
</component>
</collection>
<collection name="radioapp" long-name="Radio App" level="ui">
-<component name="radioenginewrapper" filter="s60" long-name="Radio Engine Wrapper" introduced="^4">
+<component name="radioenginewrapper" long-name="Radio Engine Wrapper" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/radio/radioapp/radioenginewrapper" proFile="radioenginewrapper.pro"/>
</component>
-<component name="radiopresetstorage" filter="s60" long-name="Radio Preset Storage" introduced="^4">
+<component name="radiopresetstorage" long-name="Radio Preset Storage" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/radio/radioapp/radiopresetstorage" proFile="radiopresetstorage.pro"/>
</component>
-<component name="radiouiengine" filter="s60" long-name="Radio UI Engine" introduced="^4">
+<component name="radiouiengine" long-name="Radio UI Engine" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/radio/radioapp/radiouiengine" proFile="radiouiengine.pro"/>
</component>
-<component name="radiowidgets" filter="s60" long-name="Radio Widgets" introduced="^4">
+<component name="radiowidgets" long-name="Radio Widgets" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/radio/radioapp/radiowidgets" proFile="radiowidgets.pro"/>
</component>
-<component name="radioapplication" filter="s60" long-name="Radio Application" introduced="^4">
+<component name="radioapplication" long-name="Radio Application" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/radio/radioapp/radioapplication" proFile="radioapplication.pro"/>
</component>
-<component name="radio_rom" filter="s60" long-name="Radio ROM" introduced="^4">
+<component name="radio_rom" long-name="Radio ROM" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/radio/rom"/>
</component>
</collection>
<collection name="radiohswidget" long-name="Radio Homescreen Widget" level="plugin">
<!-- collection is really a component. Move down a directory -->
-<component name="radiohswidget_build" filter="s60" long-name="Radio HS Widget Build" introduced="^4">
+<component name="radiohswidget_build" long-name="Radio HS Widget Build" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/radio/radiohswidget" proFile="radiohswidget.pro"/>
</component>
</collection>
</block>
-<block name="internetradio" level="apps" long-name="Internet Radio Apps" levels="engine server ui">
+<block name="internetradio" level="apps" levels="engine server ui" long-name="Internet Radio Apps">
<collection name="internetradio2_0" long-name="Internet Radio 2.0" level="ui">
<!-- collection is really a component. Move down a dir -->
-<component name="internetradio2_0_build" long-name="Internet Radio 2.0 Build">
+<component name="internetradio2_0_build" long-name="Internet Radio 2.0 Build" purpose="optional">
<unit bldFile="app/internetradio/internetradio2.0/group"/>
</component>
</collection>
<collection name="presetserver" long-name="Preset Server" level="server">
<!-- collection is really a component. Move down a dir -->
-<component name="presetserver_build" long-name="Preset Server Build">
+<component name="presetserver_build" long-name="Preset Server Build" purpose="optional">
<unit bldFile="app/internetradio/presetserver/group"/>
</component>
</collection>
<collection name="qtinternetradio" long-name="Qt Internet Radio">
-<component name="qtinternetradio_build" long-name="Qt Internet Radio Build">
+<component name="qtinternetradio_build" long-name="Qt Internet Radio Build" purpose="optional">
<!-- Move down a dir or break into components-->
<unit bldFile="app/internetradio/qtinternetradio" proFile="all.pro" qmakeArgs="-r -config rom"/>
</component>
</collection>
</block>
-<block name="podcatcher" level="apps" long-name="Podcatcher" levels="app">
+<block name="podcatcher" level="apps" levels="app" long-name="Podcatcher">
<collection name="podcatcher_info" long-name="Podcatcher" level="app">
-<component name="podcatcher_build" filter="sf_build" long-name="Podcatcher Build" introduced="^3">
+<component name="podcatcher_build" long-name="Podcatcher Build" introduced="^3" filter="sf_build" purpose="optional">
<!-- has exports from top level bld.inf -->
<unit bldFile="app/podcatcher/group"/>
</component>
-<component name="podcatcher_app" filter="sf_build" long-name="Podcatcher Application" introduced="^3">
+<component name="podcatcher_app" long-name="Podcatcher Application" introduced="^3" filter="sf_build" purpose="optional">
<unit bldFile="app/podcatcher/application/group"/>
</component>
-<component name="podcatcher_engine" filter="sf_build" long-name="Podcatcher Engine" introduced="^3">
+<component name="podcatcher_engine" long-name="Podcatcher Engine" introduced="^3" filter="sf_build" purpose="optional">
<unit bldFile="app/podcatcher/engine/group"/>
</component>
</collection>
</block>
-<block name="homescreen" level="apps" long-name="Home Screen Apps" levels="support task ss hs">
+<block name="homescreen" level="apps" levels="support task ss hs" long-name="Home Screen Apps">
<collection name="homescreen_test" long-name="Home Screen Test" level="support"/>
<collection name="homescreenapp" long-name="Home Screen Application" level="hs">
-<component name="hsutils" long-name="Home Screen Utils" introduced="^4">
+<component name="hsutils" long-name="Home Screen Utils" introduced="^4" purpose="optional">
<unit bldFile="app/homescreen/homescreenapp/hsutils" proFile="hsutils.pro" qmakeArgs="-r -config rom"/>
</component>
-<component name="hsdomainmodel" long-name="HS Domain Model" introduced="^4">
+<component name="hsdomainmodel" long-name="HS Domain Model" introduced="^4" purpose="optional">
<unit bldFile="app/homescreen/homescreenapp/hsdomainmodel" proFile="hsdomainmodel.pro" qmakeArgs="-r -config rom"/>
</component>
-<component name="hs_runtimeplugins" long-name="HS Runtime Plugins" introduced="^4" plugin="Y">
+<component name="hs_runtimeplugins" long-name="HS Runtime Plugins" introduced="^4" purpose="optional" plugin="Y">
<unit bldFile="app/homescreen/homescreenapp/runtimeplugins" proFile="runtimeplugins.pro" qmakeArgs="-r -config rom"/>
</component>
-<component name="hs_serviceproviders" long-name="HS Service Providers" introduced="^4" plugin="Y">
+<component name="hs_serviceproviders" long-name="HS Service Providers" introduced="^4" purpose="optional" plugin="Y">
<unit bldFile="app/homescreen/homescreenapp/serviceproviders" proFile="serviceproviders.pro" qmakeArgs="-r -config rom"/>
</component>
-<component name="hs_stateplugins" long-name="HS State Plugins" introduced="^4" plugin="Y">
+<component name="hs_stateplugins" long-name="HS State Plugins" introduced="^4" purpose="optional" plugin="Y">
<unit bldFile="app/homescreen/homescreenapp/stateplugins" proFile="stateplugins.pro" qmakeArgs="-r -config rom"/>
</component>
-<component name="hs_widgetplugins" long-name="HS Widget Plugins" introduced="^4" plugin="Y">
+<component name="hs_widgetplugins" long-name="HS Widget Plugins" introduced="^4" purpose="optional" plugin="Y">
<unit bldFile="app/homescreen/homescreenapp/widgetplugins" proFile="widgetplugins.pro" qmakeArgs="-r -config rom"/>
</component>
-<component name="hsapplication" long-name="Home Screen Application" introduced="^4">
+<component name="hsapplication" long-name="Home Screen Application" introduced="^4" purpose="optional">
<unit bldFile="app/homescreen/homescreenapp/hsapplication" proFile="hsapplication.pro" qmakeArgs="-r -config rom"/>
</component>
-<component name="hsmenuclientplugin" long-name="Home Screen Menu Client Plugin" introduced="^4" plugin="Y">
+<component name="hsmenuclientplugin" long-name="Home Screen Menu Client Plugin" introduced="^4" purpose="optional" plugin="Y">
<unit bldFile="app/homescreen/homescreenapp/hsmenuclientplugin" proFile="hsmenuclientplugin.pro" qmakeArgs="-r -config rom"/>
</component>
-<component name="hshomescreenclientplugin" long-name="HS Menu Client Plugin" introduced="^4" plugin="Y">
+<component name="hshomescreenclientplugin" long-name="HS Menu Client Plugin" introduced="^4" purpose="optional" plugin="Y">
<unit bldFile="app/homescreen/homescreenapp/hshomescreenclientplugin" proFile="hshomescreenclientplugin.pro" qmakeArgs="-r -config rom"/>
</component>
-<component name="hswidgetuninstaller" long-name="HS Widget Uninstaller" introduced="^4">
+<component name="hswidgetuninstaller" long-name="HS Widget Uninstaller" introduced="^4" purpose="optional">
<unit bldFile="app/homescreen/homescreenapp/hswidgetuninstaller" proFile="hswidgetuninstaller.pro" qmakeArgs="-r -config rom"/>
</component>
-<component name="homescreenapp_rom" long-name="Home Screen App ROM" introduced="^4">
+<component name="homescreenapp_rom" long-name="Home Screen App ROM" introduced="^4" purpose="optional">
<unit bldFile="app/homescreen/homescreenapp" proFile="homescreenapp_exports_to_rom.pri" qmakeArgs="-r -config rom"/>
</component>
</collection>
<collection name="screensaver" long-name="Screen Saver" level="ss">
<!-- break collection into components, or move down a dir and make it a component -->
-<component name="screensaver_build" long-name="Screen Saver Build">
+<component name="screensaver_build" long-name="Screen Saver Build" purpose="optional">
<unit bldFile="app/homescreen/screensaver" proFile="screensaver.pro" qmakeArgs="-r -config rom"/>
</component>
</collection>
</block>
-<block name="jrt" level="services" long-name="Java Runtime" levels="util generic rt ui">
+<block name="jrt" level="services" levels="util generic rt ui" long-name="Java Runtime">
<collection name="jrt_plat" long-name="JRT Platform Interfaces" level="ui">
-<component name="java_registry_api" long-name="Java Registry API" filter="s60" class="api">
+<component name="java_registry_api" long-name="Java Registry API" filter="s60" purpose="optional" class="api">
<unit bldFile="app/jrt/jrt_plat/java_registry_api/build"/>
</component>
-<component name="java_env_info_api" long-name="Java Environment Info API" filter="s60" class="api">
+<component name="java_env_info_api" long-name="Java Environment Info API" filter="s60" purpose="optional" class="api">
<unit bldFile="app/jrt/jrt_plat/java_env_info_api/build"/>
</component>
-<component name="java_debug_api" long-name="Java Debug API" filter="s60" class="api">
+<component name="java_debug_api" long-name="Java Debug API" filter="s60" purpose="optional" class="api">
<unit bldFile="app/jrt/jrt_plat/java_debug_api/build"/>
</component>
</collection>
<collection name="java_stubs" long-name="Java Stubs" level="rt">
-<component name="java_stubs_build" long-name="Build Native Java" filter="sf_build" introduced="^4">
+<component name="java_stubs_build" long-name="Build Native Java" introduced="^4" filter="sf_build" purpose="optional">
<unit bldFile="app/jrt/java_stubs/group"/>
</component>
</collection>
<collection name="build_nativejava" long-name="Build Native Java">
-<component name="nativejava" long-name="Build Native Java" filter="s60" introduced="^4">
+<component name="nativejava" long-name="Build Native Java" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/jrt/build/nativejava" filter="!sf_build" proFile="nativejava.pro" qmakeArgs="-r"/>
<unit bldFile="app/jrt/build/nativejava" filter="sf_build" proFile="nativejava.pro" qmakeArgs="-r RD_JAVA_SF_BUILD=1"/>
</component>
</collection>
<collection name="javacommons" long-name="Java Commons" level="generic">
-<component name="javacommons_build" filter="s60" long-name="JRT Build">
+<component name="javacommons_build" long-name="JRT Build" filter="s60" purpose="optional">
<unit bldFile="app/jrt/javacommons" filter="!sf_build" proFile="javacommons.pro" qmakeArgs="-r"/>
<unit bldFile="app/jrt/javacommons" filter="sf_build" proFile="javacommons.pro" qmakeArgs="-r RD_JAVA_SF_BUILD=1"/>
</component>
</collection>
<collection name="javaruntimes" long-name="Java Runtimes" level="rt">
-<component name="javaruntimes_build" filter="s60" long-name="JRT Build">
+<component name="javaruntimes_build" long-name="JRT Build" filter="s60" purpose="optional">
<unit bldFile="app/jrt/javaruntimes" filter="!sf_build" proFile="javaruntimes.pro" qmakeArgs="-r"/>
<unit bldFile="app/jrt/javaruntimes" filter="sf_build" proFile="javaruntimes.pro" qmakeArgs="-r RD_JAVA_SF_BUILD=1"/>
</component>
</collection>
<collection name="javauis" long-name="Java UIs" level="ui">
-<component name="javauis_build" filter="s60" long-name="JRT Build">
+<component name="javauis_build" long-name="JRT Build" filter="s60" purpose="optional">
<unit bldFile="app/jrt/javauis" filter="!sf_build" proFile="javauis.pro" qmakeArgs="-r"/>
<unit bldFile="app/jrt/javauis" filter="sf_build" proFile="javauis.pro" qmakeArgs="-r RD_JAVA_SF_BUILD=1"/>
</component>
</collection>
<collection name="javamanager" level="generic">
-<component name="javamanager_build" filter="s60" long-name="JRT Build">
+<component name="javamanager_build" long-name="JRT Build" filter="s60" purpose="optional">
<unit bldFile="app/jrt/javamanager" filter="!sf_build" proFile="javamanager.pro" qmakeArgs="-r"/>
<unit bldFile="app/jrt/javamanager" filter="sf_build" proFile="javamanager.pro" qmakeArgs="-r RD_JAVA_SF_BUILD=1"/>
</component>
</collection>
<collection name="javatools" long-name="Java Tools" level="util">
-<component name="javatools_build" filter="s60" long-name="JRT Build">
+<component name="javatools_build" long-name="JRT Build" filter="s60" purpose="optional">
<unit bldFile="app/jrt/javatools" filter="!sf_build" proFile="javatools.pro" qmakeArgs="-r"/>
<unit bldFile="app/jrt/javatools" filter="sf_build" proFile="javatools.pro" qmakeArgs="-r RD_JAVA_SF_BUILD=1"/>
</component>
</collection>
<collection name="javaextensions" long-name="Java Extensions" level="generic">
-<component name="javaextensions_build" filter="s60" long-name="JRT Build">
+<component name="javaextensions_build" long-name="JRT Build" filter="s60" purpose="optional">
<unit bldFile="app/jrt/javaextensions" filter="!sf_build" proFile="javaextensions.pro" qmakeArgs="-r"/>
<unit bldFile="app/jrt/javaextensions" filter="sf_build" proFile="javaextensions.pro" qmakeArgs="-r RD_JAVA_SF_BUILD=1"/>
</component>
</collection>
</block>
-<block name="browserui" level="services" long-name="Browser UI" levels="utils support ui">
+<block name="browserui" level="services" levels="utils support ui" long-name="Browser UI">
<collection name="browserui_info" long-name="Browser UI Info" level="ui">
-<component name="browserui_build" long-name="Bookmarks Engine Build" introduced="^4">
-<unit bldFile="app/browserui" proFile="browserui.pro"/>
+<component name="browserui_build" long-name="Bookmarks Engine Build" introduced="^4" purpose="optional">
+<unit bldFile="app/browserui/." proFile="browserui.pro"/>
</component>
</collection>
</block>
-<block name="conntools" level="services" long-name="Connectivity Tools" levels="config app">
+<block name="conntools" level="services" levels="config app" long-name="Connectivity Tools">
<collection name="nettools" long-name="Net Tools" level="app">
-<component name="conntest" filter="s60" long-name="Connection Test" purpose="development">
+<component name="conntest" long-name="Connection Test" filter="s60" purpose="development">
<unit bldFile="app/conntools/nettools/conntest/group"/>
</component>
</collection>
<collection name="emulatorlan" long-name="Emulator LAN" level="config">
<!-- component is actually a colleciton, should be moved down a directory -->
-<component name="emulatorlan_build" filter="s60" long-name="Emulator LAN Build" purpose="development" class="config">
+<component name="emulatorlan_build" long-name="Emulator LAN Build" filter="s60" purpose="development" class="config">
<unit bldFile="app/conntools/emulatorlan/group"/>
</component>
</collection>
</block>
-<block name="rndtools" level="services" long-name="R&D tools" levels="support generic test util">
+<block name="rndtools" level="services" levels="support generic test util" long-name="R&D tools">
<collection name="creator" long-name="Creator" level="support">
<!-- collection is really a component. Should move down a directory -->
-<component name="creator_build" filter="s60" long-name="Creator Tool" purpose="development" class="tool">
+<component name="creator_build" long-name="Creator Tool" filter="s60" purpose="development" class="tool">
<unit bldFile="app/rndtools/creator" proFile="creator.pro"/>
</component>
</collection>
<collection name="filebrowser" long-name="File Browser" level="util">
<!-- collection is really a component. Should move down a directory -->
-<component name="filebrowser_build" filter="s60" long-name="File Browser Build" purpose="development" class="tool">
+<component name="filebrowser_build" long-name="File Browser Build" filter="s60" purpose="development" class="tool">
<unit bldFile="app/rndtools/filebrowser" proFile="filebrowser.pro"/>
</component>
</collection>
<collection name="launcher" long-name="Launcher" level="util">
<!-- collection is really a component. Should move down a directory -->
-<component name="launcher_build" filter="s60" long-name="Launcher Utility" purpose="development" class="tool">
+<component name="launcher_build" long-name="Launcher Utility" filter="s60" purpose="development" class="tool">
<unit bldFile="app/rndtools/launcher" proFile="launcher.pro"/>
</component>
</collection>
<collection name="loadgen" long-name="Load Generator" level="test">
<!-- collection is really a component. Should move down a directory -->
-<component name="loadgen_build" filter="s60" long-name="Load Generator Application" purpose="development" class="tool">
+<component name="loadgen_build" long-name="Load Generator Application" filter="s60" purpose="development" class="tool">
<unit bldFile="app/rndtools/loadgen" proFile="loadgen.pro"/>
</component>
</collection>
<collection name="perfmon" long-name="Performance Monitor" level="test">
<!-- collection is really a component. Should move down a directory -->
-<component name="perfmon_build" filter="s60" long-name="Performance Monitor Tool" purpose="development" class="tool">
+<component name="perfmon_build" long-name="Performance Monitor Tool" filter="s60" purpose="development" class="tool">
<unit bldFile="app/rndtools/perfmon" proFile="perfmon.pro"/>
</component>
</collection>
<collection name="piprofilerui" long-name="Performance Investigator Profiler UI" level="generic">
<!-- collection is really a component. Should move down a directory -->
-<component name="piprofilerui_build" filter="s60" long-name="Performance Investigator Profiler UI Build" purpose="development" introduced="^4">
+<component name="piprofilerui_build" long-name="Performance Investigator Profiler UI Build" introduced="^4" filter="s60" purpose="development">
<unit bldFile="app/rndtools/piprofilerui" proFile="piprofilerui.pro"/>
</component>
</collection>
<collection name="screengrabber" long-name="Screen Grabber" level="util">
<!-- collection is really a component. Should move down a directory -->
-<component name="screengrabber_build" filter="s60" long-name="ScreenGrabber" purpose="development" class="tool">
+<component name="screengrabber_build" long-name="ScreenGrabber" filter="s60" purpose="development" class="tool">
<unit bldFile="app/rndtools/screengrabber" proFile="screengrabber.pro"/>
</component>
</collection>
<collection name="stifui" long-name="STIF UI" level="generic">
-<component name="stifui_avkon" filter="s60" long-name="STIF UI for Avkon" purpose="development">
+<component name="stifui_avkon" long-name="STIF UI for Avkon" filter="s60" purpose="development">
<unit bldFile="app/rndtools/stifui/avkon/group"/>
</component>
</collection>
<collection name="memspyui" long-name="Memspy UI" level="generic">
<!-- collection is really a component. Should move down a directory -->
-<component name="memspyui_build" filter="s60" long-name="Memspy UI Application" purpose="development" class="tool">
+<component name="memspyui_build" long-name="Memspy UI Application" filter="s60" purpose="development" class="tool">
<unit bldFile="app/rndtools/memspyui" proFile="memspyui.pro"/>
</component>
</collection>
<collection name="htiui" long-name="Harmonized Test Interface UI" level="generic">
-<component name="htiui_build" filter="s60" long-name="HTI UI Build" purpose="development">
+<component name="htiui_build" long-name="HTI UI Build" filter="s60" purpose="development">
<!-- should split up into individual components -->
<unit bldFile="app/rndtools/htiui/group"/>
</component>
-<component name="htiadminqt" filter="s60" long-name="HTI Admin Qt" purpose="development">
+<component name="htiadminqt" long-name="HTI Admin Qt" filter="s60" purpose="development">
<unit bldFile="app/rndtools/htiui/htiadminqt" proFile="HtiAdmin.pro"/>
</component>
</collection>
</block>
-<block name="helps" level="apps" span="2" long-name="Help Apps" levels="eng tools if ui">
+<block name="helps" level="apps" span="2" levels="eng tools if ui" long-name="Help Apps">
<collection name="userguide" long-name="User Guide" level="if">
<!-- collection is really a component. Move down a directory -->
-<component name="userguide_build" long-name="User Guide Build" filter="s60" introduced="^4">
+<component name="userguide_build" long-name="User Guide Build" introduced="^4" filter="s60" purpose="optional">
<unit bldFile="app/helps/userguide" proFile="Userguide.pro"/>
</component>
</collection>
@@ -8804,9 +8680,9 @@
</component>
</collection>
</block>
-<block name="techview" level="apps" span="2" long-name="Techview" levels="services ui utils apps1 apps2 apps3">
+<block name="techview" level="apps" span="2" levels="services ui utils apps1 apps2 apps3" long-name="Techview">
<collection name="buildverification" long-name="Build Verification" level="services">
-<component name="autosmoketest" long-name="Auto Smoke Test" filter="gt" purpose="development" introduced="9.1">
+<component name="autosmoketest" long-name="Auto Smoke Test" introduced="9.1" filter="gt" purpose="development">
<unit bldFile="app/techview/buildverification/autosmoketest/Group" mrp="app/techview/buildverification/autosmoketest/Group/testtools_autosmoketest.mrp"/>
</component>
<component name="smoketest" long-name="Smoke Test" filter="gt" purpose="development">