symbian4/single/sysdefs/system_model.surge.xml
author Dario Sestito <darios@symbian.org>
Mon, 19 Jul 2010 15:04:31 +0100
changeset 727 8ca09c65aee6
parent 695 91c59e5fbf27
child 742 f23494cc09c8
permissions -rw-r--r--
Add auto generated symbian4 system model (packages@a1746cf8f51f)

<?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">
<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">
<collection name="audiostubs" long-name="Audio Stubs" level="adaptation">
<component name="devsoundextensions_stubs" long-name="Devsound Extensions Stubs">
<unit bldFile="adaptation/stubs/audiostubs/devsoundextensions_stubs/group"/>
</component>
<component name="fmradiotunercontrolstub" long-name="FM Radio Tuner Control Stub">
<unit bldFile="adaptation/stubs/audiostubs/fmradiotunercontrolstub/group"/>
</component>
</collection>
<collection name="btaudioadaptation_stub" long-name="Bluetooth Audio Adaptation Stub" level="adaptation">
<component name="btaudioadaptation_stub_build" long-name="Bluetooth Audio Adaptation Stub Build" filter="oem_build">
<unit bldFile="adaptation/stubs/btaudioadaptation_stub/group"/>
</component>
</collection>
<collection name="drm_stubs" long-name="DRM Stubs" level="plugin">
<component name="drm_stubs_build" long-name="DRM Stubs Build">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="adaptation/stubs/systemswstubs/ddcaccessstub/group"/>
</component>
<component name="tvoutconfig" long-name="TV Out Config">
<unit bldFile="adaptation/stubs/systemswstubs/TVOutConfig/group" filter="oem_build"/>
</component>
<component name="accessorypolicyreference" long-name="Accessory Policy Reference">
<unit bldFile="adaptation/stubs/systemswstubs/accessorypolicyreference/group" filter="oem_build"/>
</component>
<component name="asyreference" long-name="ASY Reference" plugin="Y">
<unit bldFile="adaptation/stubs/systemswstubs/asyreference/group" filter="oem_build"/>
</component>
<component name="examplecommonisc" long-name="Example Common ISC">
<unit bldFile="adaptation/stubs/systemswstubs/examplecommonisc/group" filter="oem_build"/>
</component>
<component name="exampledsy" long-name="Example DSY">
<unit bldFile="adaptation/stubs/systemswstubs/exampledsy/group" filter="oem_build"/>
</component>
<component name="featuremanagerstub" long-name="Feature Manager Stub">
<unit bldFile="adaptation/stubs/systemswstubs/featuremanagerstub/group" filter="oem_build"/>
</component>
<component name="hwrmstubplugins" long-name="Hardware Resource Manager Stub Plugins" 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">
<unit bldFile="adaptation/stubs/systemswstubs/hwrmhapticsstubplugin/group" filter="oem_build"/>
</component>
<component name="sensorchannelsreference" long-name="Sensor Channels Reference">
<unit bldFile="adaptation/stubs/systemswstubs/sensorchannelsreference/group" filter="oem_build"/>
</component>
<component name="ssyreference" long-name="SSY Reference" plugin="Y">
<unit bldFile="adaptation/stubs/systemswstubs/ssyreference/group" filter="oem_build"/>
</component>
<component name="startupadaptationstub" long-name="Startup Adaptation Stub" plugin="Y">
<unit bldFile="adaptation/stubs/systemswstubs/startupadaptationstub/group" filter="oem_build"/>
</component>
<component name="tiltcompensationstub" long-name="Tilt Compensation Stub">
<unit bldFile="adaptation/stubs/systemswstubs/tiltcompensationstub/group" filter="oem_build"/>
</component>
<component name="tvoutbehaviour" long-name="TV Out Behaviour">
<unit bldFile="adaptation/stubs/systemswstubs/tvoutbehaviour/group" filter="oem_build"/>
</component>
<component name="wiredbearerreference" long-name="Wired Bearer Reference" 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">
<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">
<unit bldFile="adaptation/stubs/wlanhwinit_stub/group"/>
</component>
</collection>
</block>
<block name="beagleboard" level="low" long-name="Beagle Board" levels="hw-if">
<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">
<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">
<unit bldFile="adaptation/beagleboard/omap3530/kernel"/>
</component>
<component name="beagleboard_Baseport" long-name="Beagle Board Baseport" introduced="^3" purpose="optional" filter="sf_build">
<unit bldFile="adaptation/beagleboard/omap3530/beagleboard"/>
</component>
</collection>
</block>
<block name="qemu" level="low" long-name="QEMU and Baseport" levels="hw-if">
<collection name="qemu_baseport" long-name="Baseport" level="hw-if">
<component name="syborg" long-name="Syborg" introduced="^2" purpose="optional" filter="sf_build">
<unit bldFile="adaptation/qemu/baseport/syborg" mrp="adaptation/qemu/baseport/syborg/syborg.mrp"/>
</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">
<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"/>
</component>
</collection>
<collection name="bsptemplate" long-name="Board Support Package Template" level="hw-if">
<component name="asspandvariant" long-name="Template ASSP and Variant" introduced="6.0" purpose="development">
<unit bldFile="os/kernelhwsrv/bsptemplate/asspandvariant/template_variant" mrp="os/kernelhwsrv/bsptemplate/asspandvariant/base_template.mrp"/>
</component>
</collection>
<collection name="kernel" long-name="Kernel Architecture" level="adaptation">
<component name="eka" long-name="Kernel Architecture" introduced="8.0" purpose="mandatory">
<unit bldFile="os/kernelhwsrv/kernel/eka" mrp="os/kernelhwsrv/kernel/eka/base_e32.mrp"/>
</component>
</collection>
<collection name="kerneltest" long-name="Kernel Test" level="hw-if">
<component name="e32utils" long-name="E32 Utilities" purpose="development">
<unit bldFile="os/kernelhwsrv/kerneltest/e32utils/group" mrp="os/kernelhwsrv/kerneltest/e32utils/group/base_e32utils.mrp"/>
</component>
<component name="e32test" long-name="E32 Tests" purpose="development">
<unit bldFile="os/kernelhwsrv/kerneltest/e32test/group" mrp="os/kernelhwsrv/kerneltest/e32test/group/base_e32test.mrp"/>
</component>
<component name="f32test" long-name="File Server Tests" purpose="development">
<unit bldFile="os/kernelhwsrv/kerneltest/f32test/group" mrp="os/kernelhwsrv/kerneltest/f32test/group/base_f32test.mrp"/>
</component>
</collection>
<collection name="ldds" long-name="Logical Device Drivers" level="adaptation">
<component name="ethernetldd" long-name="Ethernet Drivers" purpose="optional">
<unit bldFile="os/kernelhwsrv/kernel/eka/drivers/ethernet" mrp="os/kernelhwsrv/kernel/eka/drivers/ethernet/base_e32_drivers_ethernet.mrp"/>
</component>
<component name="audioldd" long-name="Audio Drivers" introduced="8.1b" purpose="optional">
<unit bldFile="os/kernelhwsrv/kernel/eka/drivers/soundsc" mrp="os/kernelhwsrv/kernel/eka/drivers/soundsc/base_e32_drivers_sound.mrp"/>
</component>
<component name="serialldd" long-name="Serial Port Drivers" purpose="optional">
<unit bldFile="os/kernelhwsrv/kernel/eka/drivers/ecomm" mrp="os/kernelhwsrv/kernel/eka/drivers/ecomm/base_e32_drivers_ecomm.mrp"/>
</component>
<component name="legacydrivers" long-name="Legacy Drivers" purpose="optional">
<unit mrp="os/kernelhwsrv/kernel/eka/drivers/adc/base_e32_drivers_adc.mrp"/>
</component>
<component name="locmedia" long-name="Local Media Subsystem" introduced="8.1b" purpose="mandatory">
<!-- these are LDDs for storage media-->
<unit bldFile="os/kernelhwsrv/kernel/eka/drivers/locmedia" mrp="os/kernelhwsrv/kernel/eka/drivers/locmedia/base_e32_drivers_locmedia.mrp"/>
</component>
<component name="runmodedebugger" long-name="Run Mode Debugger" purpose="mandatory">
<unit bldFile="os/kernelhwsrv/kernel/eka/drivers/debug/group" mrp="os/kernelhwsrv/kernel/eka/drivers/debug/group/base_e32_drivers_debug.mrp"/>
</component>
<component name="btrace" long-name="Kernel Trace Tool" purpose="mandatory">
<unit bldFile="os/kernelhwsrv/kernel/eka/drivers/trace" mrp="os/kernelhwsrv/kernel/eka/drivers/trace/base_e32_drivers_trace.mrp"/>
</component>
<component name="cameraldd" long-name="Camera Drivers" introduced="^3" purpose="optional">
<unit bldFile="os/kernelhwsrv/kernel/eka/drivers/camerasc" mrp="os/kernelhwsrv/kernel/eka/drivers/camerasc/base_drivers_camerasc.mrp"/>
</component>
<component name="displayldd" long-name="Display Drivers" introduced="^3" purpose="optional">
<!-- owned and maintained by graphics package. To be moved there as soon as technical limitations are resolved -->
<unit bldFile="os/kernelhwsrv/kernel/eka/drivers/display" mrp="os/kernelhwsrv/kernel/eka/drivers/display/base_e32_drivers_display.mrp"/>
</component>
<component name="usbclientdrivers" long-name="USB Client Drivers" introduced="8.1b" purpose="optional">
<!-- owned and maintained by usb package. To be moved there as soon as technical limitations are resolved -->
<unit bldFile="os/kernelhwsrv/kernel/eka/drivers/usbc" mrp="os/kernelhwsrv/kernel/eka/drivers/usbc/base_e32_drivers_usbcli.mrp"/>
</component>
<component name="usbdescriptors" long-name="USB Descriptors" purpose="optional">
<!-- owned and maintained by usb package. To be moved there as soon as technical limitations are resolved -->
<unit bldFile="os/kernelhwsrv/kernel/eka/drivers/usbho/usbdescriptors" mrp="os/kernelhwsrv/kernel/eka/drivers/usbho/usbdescriptors/base_drivers_usbdescriptors.mrp"/>
</component>
<component name="usbdi_utils" long-name="USB DI Utils" purpose="optional">
<!-- owned and maintained by usb package. To be moved there as soon as technical limitations are resolved -->
<unit bldFile="os/kernelhwsrv/kernel/eka/drivers/usbho/usbdi_utils" mrp="os/kernelhwsrv/kernel/eka/drivers/usbho/usbdi_utils/base_drivers_usbdi_utils.mrp"/>
</component>
</collection>
<collection name="driversupport" long-name="Generic Driver Support" level="hw-if">
<component name="mediadrivers" long-name="Media Drivers" purpose="optional">
<!-- these are for storage media-->
<unit bldFile="os/kernelhwsrv/kernel/eka/drivers/media" mrp="os/kernelhwsrv/kernel/eka/drivers/media/base_e32_drivers_media.mrp"/>
</component>
<component name="genericboardsupport" long-name="Generic Board Support" purpose="optional">
<unit bldFile="os/kernelhwsrv/kernel/eka/drivers/bsp" mrp="os/kernelhwsrv/kernel/eka/drivers/bsp/base_e32_drivers_bsp.mrp"/>
</component>
</collection>
<collection name="userlibandfileserver" long-name="User Library and File Server" level="framework">
<component name="euser" long-name="User Library" purpose="mandatory">
<unit bldFile="os/kernelhwsrv/kernel/eka/euser" mrp="os/kernelhwsrv/kernel/eka/euser/base_e32_euser.mrp"/>
</component>
<component name="compsupp" long-name="RVCT Compiler Runtime Support" filter="gt" purpose="mandatory">
<unit bldFile="os/kernelhwsrv/kernel/eka/compsupp" mrp="os/kernelhwsrv/kernel/eka/compsupp/base_e32_compsupp.mrp"/>
</component>
<component name="compsupp_gcc" long-name="GCC Compiler Runtime Support" filter="gt,sf_build" purpose="mandatory">
<unit bldFile="os/kernelhwsrv/kernel/eka/compsupp/gcce"/>
</component>
<component name="fileserver" long-name="File Server" filter="gt" purpose="mandatory">
<unit bldFile="os/kernelhwsrv/userlibandfileserver/fileserver/group" mrp="os/kernelhwsrv/userlibandfileserver/fileserver/group/base_f32.mrp"/>
</component>
<component name="estart" long-name="Base Starter" filter="gt" purpose="optional">
<unit bldFile="os/kernelhwsrv/userlibandfileserver/fileserver/estart" mrp="os/kernelhwsrv/userlibandfileserver/fileserver/estart/base_f32_estart.mrp"/>
</component>
<component name="domainmgr" long-name="Domain Manager" introduced="8.1b" purpose="mandatory">
<unit bldFile="os/kernelhwsrv/userlibandfileserver/domainmgr/group" mrp="os/kernelhwsrv/userlibandfileserver/domainmgr/group/base_domain.mrp"/>
</component>
</collection>
<collection name="filesystems" long-name="File Systems" level="framework">
<component name="romfs" long-name="ROM File System" filter="gt" purpose="optional" plugin="Y">
<unit mrp="os/kernelhwsrv/userlibandfileserver/fileserver/srom/base_f32_srom.mrp"/>
</component>
<component name="rofs" long-name="ROFS" filter="gt" purpose="optional" plugin="Y">
<unit bldFile="os/kernelhwsrv/userlibandfileserver/fileserver/srofs" mrp="os/kernelhwsrv/userlibandfileserver/fileserver/srofs/base_f32_srofs.mrp"/>
</component>
<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">
<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">
<unit bldFile="os/kernelhwsrv/userlibandfileserver/fileserver/sfat32" mrp="os/kernelhwsrv/userlibandfileserver/fileserver/sfat32/base_f32_sfat32.mrp"/>
</component>
<component name="fatfs" long-name="FAT File System" filter="gt" purpose="optional" plugin="Y">
<unit bldFile="os/kernelhwsrv/userlibandfileserver/fileserver/sfat" mrp="os/kernelhwsrv/userlibandfileserver/fileserver/sfat/base_f32_sfat.mrp"/>
</component>
<component name="compfs" long-name="Composite File System" filter="gt" purpose="optional" plugin="Y">
<unit bldFile="os/kernelhwsrv/userlibandfileserver/fileserver/scomp" mrp="os/kernelhwsrv/userlibandfileserver/fileserver/scomp/base_f32_scomp.mrp"/>
</component>
</collection>
<collection name="halservices" long-name="HAL Services" level="framework">
<component name="hal" long-name="User-Side Hardware Abstraction" introduced="6.0" purpose="optional">
<unit bldFile="os/kernelhwsrv/halservices/hal" mrp="os/kernelhwsrv/halservices/hal/base_hal.mrp"/>
</component>
</collection>
<collection name="textmodeshell" long-name="Text Mode Shell" level="test">
<component name="e32wsrv" long-name="Text Window Server" purpose="optional">
<unit bldFile="os/kernelhwsrv/kernel/eka/ewsrv" mrp="os/kernelhwsrv/kernel/eka/ewsrv/base_e32_ewsrv.mrp"/>
</component>
<component name="textshell" long-name="Text Shell" filter="gt" purpose="development">
<unit bldFile="os/kernelhwsrv/userlibandfileserver/fileserver/etshell" mrp="os/kernelhwsrv/userlibandfileserver/fileserver/etshell/base_f32_eshell.mrp"/>
</component>
</collection>
<collection name="baseapitest" long-name="Base API Tests" level="test"/>
<collection name="kernelhwsrv_info" long-name="Kernel and Hardware Services Info" level="test">
<component name="kernelhwsrv_metadata" long-name="Kernel and Hardware Services Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/kernelhwsrv/kernelhwsrv_info/kernelhwsrv_metadata/kernelhwsrv_metadata.mrp"/>
</component>
</collection>
</block>
<block name="boardsupport" level="hw" long-name="Board Support" levels="bsp test 2 3 config">
<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"/>
</component>
</collection>
<collection name="haitest" long-name="HAI Test Suites" level="test">
<component name="bspsvs" long-name="BSP Verification Suite" introduced="^2" purpose="development">
<unit mrp="os/boardsupport/haitest/bspsvs/group/bspsvs.mrp"/>
</component>
</collection>
<collection name="boardsupport_info" long-name="Board Support Info" level="config">
<component name="boardsupport_metadata" long-name="Board Support Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/boardsupport/boardsupport_info/boardsupport_metadata/boardsupport_metadata.mrp"/>
</component>
</collection>
</block>
<block name="buildtools" level="hw" long-name="Build Tools" levels="bld mw fw ui">
<collection name="bldsystemtools" long-name="Build System Tools" level="bld">
<component name="sysdeftools" long-name="System Definition Tools" purpose="development" introduced="^2">
<unit mrp="os/buildtools/bldsystemtools/sysdeftools/group/sysdeftools.mrp"/>
</component>
<component name="commonbldutils" long-name="Common Utils" purpose="development">
<unit mrp="os/buildtools/bldsystemtools/commonbldutils/tools_utils_common.mrp"/>
</component>
</collection>
<collection name="toolsandutils" long-name="Tools and Utils" level="mw">
<component name="productionbldtools" long-name="Production Build Tools" filter="gt" purpose="development">
<unit mrp="os/buildtools/toolsandutils/productionbldtools/product_tools.mrp"/>
</component>
<component name="e32tools" long-name="E32 Tools" deprecated="^2" purpose="development" class="PC">
<unit bldFile="os/buildtools/toolsandutils/e32tools/group" mrp="os/buildtools/toolsandutils/e32tools/group/tools_e32tools.mrp"/>
</component>
<component name="autotest" long-name="Autotest" purpose="development">
<unit bldFile="os/buildtools/toolsandutils/autotest/group" mrp="os/buildtools/toolsandutils/autotest/group/tools_autotest.mrp"/>
</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>
</collection>
<collection name="imgtools_os" long-name="Image Tools" level="fw">
<component name="romkiteka2" long-name="ROMKIT EKA2" deprecated="^2" purpose="development">
<unit bldFile="os/buildtools/imgtools_os/romkiteka2/group" mrp="os/buildtools/imgtools_os/romkiteka2/group/tools_romkit.mrp"/>
</component>
</collection>
<collection name="misccomponents" long-name="Misc Components" level="mw">
<component name="emulatorlauncher" long-name="Emulator Launcher" filter="gt" purpose="development">
<unit bldFile="os/buildtools/misccomponents/emulatorlauncher/group" mrp="os/buildtools/misccomponents/emulatorlauncher/group/tools_sdk_eng_emulator_launcher.mrp"/>
</component>
</collection>
<collection name="buildtools_info" long-name="Build Tools Info" level="ui">
<component name="buildtools_metadata" long-name="Build Tools Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/buildtools/buildtools_info/buildtools_metadata/buildtools_metadata.mrp"/>
</component>
</collection>
</block>
<block name="ossrv" level="services" long-name="Generic OS Services" levels="physical-abstraction app-libs encoding translation data-services utilities">
<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">
<unit bldFile="os/ossrv/ossrv_pub/boost_apis/group"/>
</component>
<component name="cpp_wrappers" long-name="Cpp wrappers" filter="s60" 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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="os/ossrv/ossrv_pub/exceptions/group"/>
</component>
<component name="io_stream_api" long-name="I/O stream API" filter="s60" 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">
<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">
<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">
<unit bldFile="os/ossrv/ossrv_pub/memory/group"/>
</component>
<component name="no_namespace_headers" long-name="No Namespace Headers" filter="s60" 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">
<unit bldFile="os/ossrv/ossrv_pub/openc_headers/group"/>
</component>
<component name="openc_wrappers" long-name="OpenC wrappers" filter="s60" 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">
<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">
<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">
<unit bldFile="os/ossrv/ossrv_pub/standard_compressiondecompression_api/group"/>
</component>
<component name="stl" long-name="STL API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/stl/group"/>
</component>
<component name="thread_api" long-name="Thread API" filter="s60" 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">
<unit bldFile="os/ossrv/ossrv_pub/type_attributes/group"/>
</component>
<component name="typeinfo" long-name="Type Info API" filter="s60" class="api">
<unit bldFile="os/ossrv/ossrv_pub/typeinfo/group"/>
</component>
<component name="utility_apis" long-name="Utility APIs" filter="s60" 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">
<unit bldFile="os/ossrv/ossrv_pub/wide_character_classapis/group"/>
</component>
<component name="dbus_api" long-name="Dbus API" filter="s60" 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">
<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">
<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">
<unit bldFile="os/ossrv/stdlibs/libz/group"/>
</component>
<component name="libcrypt" filter="s60" long-name="Crypt Library">
<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">
<unit bldFile="os/ossrv/ssl/libcrypto/group"/>
</component>
<component name="libssl" filter="s60" purpose="development" long-name="SSL Library">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="os/ossrv/ofdbus/dbus/group"/>
</component>
<component name="dbus-glib" filter="s60" long-name="D-Bus GLib">
<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 
            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">
<unit bldFile="os/ossrv/utilitylibraries/libutils/group"/>
</component>
</collection>
<collection name="genericservices" long-name="Generic Services" level="utilities">
<component name="s60compatibilityheaders" long-name="S60 Compatibility Headers" filter="gt" purpose="optional">
<unit bldFile="os/ossrv/genericservices/s60compatibilityheaders/groupsymtb101sf" mrp="os/ossrv/genericservices/s60compatibilityheaders/groupsymtb101sf/tools_s60_header_compatsymtb101sf.mrp" version="tb101sf"/>
</component>
<component name="mimerecognitionfw" long-name="MIME Recognition Framework" purpose="mandatory">
<unit bldFile="os/ossrv/genericservices/mimerecognitionfw/group" mrp="os/ossrv/genericservices/mimerecognitionfw/group/app-framework_emime.mrp"/>
</component>
<component name="systemagent" long-name="System Agent" introduced="9.0" purpose="mandatory">
<unit bldFile="os/ossrv/genericservices/systemagent/group" mrp="os/ossrv/genericservices/systemagent/group/syslibs_sysagent2.mrp"/>
</component>
<component name="taskscheduler" long-name="Task Scheduler" introduced="6.0" purpose="optional">
<unit bldFile="os/ossrv/genericservices/taskscheduler/group" mrp="os/ossrv/genericservices/taskscheduler/group/syslibs_schsvr.mrp"/>
</component>
<component name="activebackupclient" long-name="Active Backup Client" purpose="optional">
<unit bldFile="os/ossrv/genericservices/activebackupclient/group" mrp="os/ossrv/genericservices/activebackupclient/group/connectivity_abclient.mrp"/>
</component>
<component name="syslibsdocs" long-name="Syslibs Documentation" purpose="development" class="doc">
<unit mrp="os/ossrv/genericservices/syslibsdocs/syslibs_documentation.mrp"/>
</component>
<component name="httputils" long-name="HTTP Utilities Library" introduced="6.2" purpose="optional">
<unit bldFile="os/ossrv/genericservices/httputils/group" mrp="os/ossrv/genericservices/httputils/group/application-protocols_inetprotutil.mrp"/>
</component>
</collection>
<collection name="syslibsapitest" long-name="SysLibs API Tests" level="utilities"/>
<collection name="compressionlibs" long-name="Compression Libraries" level="data-services">
<component name="ziplib" long-name="Zip Compression Library" introduced="6.0" purpose="mandatory">
<unit bldFile="os/ossrv/compressionlibs/ziplib/group" mrp="os/ossrv/compressionlibs/ziplib/group/syslibs_ezlib2.mrp"/>
</component>
</collection>
<collection name="genericopenlibs" long-name="Generic Open Libraries" level="translation">
<component name="cstdlib" long-name="C Standard Library" introduced="ER5" purpose="optional">
<unit bldFile="os/ossrv/genericopenlibs/cstdlib/group" mrp="os/ossrv/genericopenlibs/cstdlib/group/syslibs_stdlib.mrp"/>
</component>
<component name="cppstdlib" long-name="C++ Standard Library" introduced="^3" purpose="mandatory">
<unit bldFile="os/ossrv/genericopenlibs/cppstdlib/group" mrp="os/ossrv/genericopenlibs/cppstdlib/group/openenv_libstdcpp.mrp"/>
</component>
<component name="openenvcore" long-name="Open Environment Core" introduced="^2" purpose="mandatory">
<unit bldFile="os/ossrv/genericopenlibs/openenvcore/group" mrp="os/ossrv/genericopenlibs/openenvcore/group/openenv.mrp"/>
</component>
<component name="posixrealtimeextensions" long-name="POSIX Realtime Extensions" introduced="^3" purpose="optional">
<unit bldFile="os/ossrv/genericopenlibs/posixrealtimeextensions/group" mrp="os/ossrv/genericopenlibs/posixrealtimeextensions/group/oeaddons_librt.mrp"/>
</component>
<component name="liboil" long-name="Liboil" introduced="^4" purpose="optional">
<unit bldFile="os/ossrv/genericopenlibs/liboil/group" mrp="os/ossrv/genericopenlibs/liboil/group/oeaddons_liboil.mrp"/>
</component>
</collection>
<collection name="lowlevellibsandfws" long-name="Low Level Libraries and Frameworks" level="app-libs">
<component name="pluginfw" long-name="Plugin Framework" introduced="6.2" purpose="mandatory">
<unit bldFile="os/ossrv/lowlevellibsandfws/pluginfw/Group" mrp="os/ossrv/lowlevellibsandfws/pluginfw/Group/syslibs_ecom3.mrp" version="3"/>
</component>
<component name="apputils" long-name="Application Utilities" introduced="ER5" purpose="mandatory">
<unit bldFile="os/ossrv/lowlevellibsandfws/apputils/group" mrp="os/ossrv/lowlevellibsandfws/apputils/group/syslibs_bafl.mrp"/>
</component>
<component name="genericusabilitylib" long-name="Generic Usability Library" introduced="^3" purpose="mandatory">
<unit bldFile="os/ossrv/lowlevellibsandfws/genericusabilitylib/group" mrp="os/ossrv/lowlevellibsandfws/genericusabilitylib/group/syslibs_euserhl.mrp"/>
</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">
<!-- exports should be moved to individual components -->
<unit bldFile="os/ossrv/group"/>
</component>
<component name="ossrv_metadata" long-name="Generic OS Services Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/ossrv/ossrv_info/ossrv_metadata/ossrv_metadata.mrp"/>
</component>
</collection>
</block>
<block name="persistentdata" level="services" long-name="Persistent Data Services" levels="adaptation hw-if plugin framework server app-if">
<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"/>
</component>
<component name="featureregistry" long-name="Feature Registry" introduced="9.2" deprecated="^3" purpose="mandatory">
<unit bldFile="os/persistentdata/featuremgmt/featureregistry/group" mrp="os/persistentdata/featuremgmt/featureregistry/group/syslibs_featreg.mrp"/>
</component>
</collection>
<collection name="loggingservices" long-name="Logging Services" level="server">
<component name="eventlogger" long-name="Event Logger" introduced="6.0" purpose="optional">
<unit bldFile="os/persistentdata/loggingservices/eventlogger/group" mrp="os/persistentdata/loggingservices/eventlogger/group/syslibs_logeng.mrp"/>
</component>
<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">
<unit bldFile="os/persistentdata/loggingservices/rfilelogger/group" mrp="os/persistentdata/loggingservices/rfilelogger/group/testtools_utilities.mrp"/>
</component>
</collection>
<collection name="traceservices" long-name="Trace Services" level="server">
<component name="commsdebugutility" long-name="Comms Debug Utility" introduced="7.0s" purpose="optional">
<unit bldFile="os/persistentdata/traceservices/commsdebugutility/group" mrp="os/persistentdata/traceservices/commsdebugutility/group/comms-infras_commsdebugutility.mrp"/>
</component>
<component name="tracefw" long-name="Trace Framework" introduced="9.2" purpose="development">
<unit bldFile="os/persistentdata/traceservices/tracefw/ulogger/group" mrp="os/persistentdata/traceservices/tracefw/ulogger/group/tools_debug_trace.mrp"/>
</component>
</collection>
<collection name="persistentstorage" long-name="Persistent Storage" level="framework">
<component name="store" long-name="Store" purpose="optional">
<unit bldFile="os/persistentdata/persistentstorage/store/group" mrp="os/persistentdata/persistentstorage/store/group/syslibs_store.mrp"/>
</component>
<component name="dbms" long-name="DBMS" purpose="optional">
<unit bldFile="os/persistentdata/persistentstorage/dbms/group" mrp="os/persistentdata/persistentstorage/dbms/group/syslibs_dbms.mrp"/>
</component>
<component name="centralrepository" long-name="Central Repository" introduced="7.0s" purpose="mandatory">
<unit bldFile="os/persistentdata/persistentstorage/centralrepository/group" mrp="os/persistentdata/persistentstorage/centralrepository/group/syslibs_centralrepository.mrp"/>
</component>
<component name="sql" long-name="SQL" introduced="9.3" purpose="optional">
<unit bldFile="os/persistentdata/persistentstorage/sql/GROUP" mrp="os/persistentdata/persistentstorage/sql/GROUP/syslibs_sql.mrp"/>
</component>
<component name="sqlite3api" long-name="SQLite 3 API" introduced="^3" purpose="optional">
<unit bldFile="os/persistentdata/persistentstorage/sqlite3api/GROUP" mrp="os/persistentdata/persistentstorage/sqlite3api/GROUP/syslibs_sqlite3.mrp"/>
</component>
</collection>
<collection name="persistentdata_info" long-name="Persistent Data Services Info" level="app-if">
<component name="persistentdata_metadata" long-name="Persistent Data Services Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/persistentdata/persistentdata_info/persistentdata_metadata/persistentdata_metadata.mrp"/>
</component>
</collection>
</block>
<block name="devicesrv" level="services" long-name="Device Services" levels="adaptation hw-if plugin framework server app-if">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="os/devicesrv/devicesrv_pub/accessory_monitoring_api/group"/>
</component>
<component name="haptics_api" long-name="Haptics API" filter="s60" 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">
<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">
<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">
<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">
<unit bldFile="os/devicesrv/devicesrv_plat/mediator_command_initiator_api/group"/>
</component>
<component name="syslangutil_api" long-name="SysLangUtil API" filter="s60" 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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="os/devicesrv/devicesrv_plat/sensor_plugin_api/group"/>
</component>
<component name="accessory_api" long-name="Accessory API" filter="s60" 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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="os/devicesrv/devicesrv_plat/accessory_plugin_api/group"/>
</component>
<component name="sae_api" long-name="SAE API" filter="s60" 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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="os/devicesrv/devicesrv_plat/tspclientmapper_api/group"/>
</component>
<component name="powersave_api" long-name="Power Save API" filter="s60" 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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="os/devicesrv/devicesrv_plat/tv_out_behaviour_api/group"/>
</component>
</collection>
<collection name="accessoryservices" long-name="Accessory Services" level="framework">
<component name="accessorymonitor" filter="s60" long-name="Accessory Monitor">
<unit bldFile="os/devicesrv/accessoryservices/accessorymonitor/group"/>
</component>
<component name="accessoryremotecontrol" filter="s60" long-name="Accessory Remote Control">
<unit bldFile="os/devicesrv/accessoryservices/accessoryremotecontrol/group"/>
</component>
<component name="accessoryserver" filter="s60" long-name="Accessory Server">
<unit bldFile="os/devicesrv/accessoryservices/accessoryserver/group"/>
</component>
<component name="pluggeddisplay" filter="s60" long-name="Plugged Display" introduced="^3">
<unit bldFile="os/devicesrv/accessoryservices/pluggeddisplay/group"/>
</component>
<component name="headsetstatusapi" filter="s60" long-name="Headset Status API">
<unit bldFile="os/devicesrv/accessoryservices/headsetstatusapi/group"/>
</component>
<component name="tspclientmapper" filter="s60" long-name="TSP Client Mapper">
<unit bldFile="os/devicesrv/accessoryservices/tspclientmapper/group"/>
</component>
<component name="remotecontrolfw" long-name="Remote Control Framework" introduced="9.1" 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">
<unit bldFile="os/devicesrv/accessoryservices/gid_pc_tool/group"/>
</component>
</collection>
<collection name="commonservices" long-name="Common Services" level="app-if">
<component name="commonengine" filter="s60" long-name="Common Engine">
<unit bldFile="os/devicesrv/commonservices/commonengine/group"/>
</component>
<component name="commonengineresources" filter="s60" long-name="Common Engine Resources" class="config">
<unit bldFile="os/devicesrv/commonservices/commonengineresources/group"/>
</component>
<component name="platformenv" filter="s60" long-name="Platform Environment">
<unit bldFile="os/devicesrv/commonservices/platformenv/group"/>
</component>
<component name="sysutil" long-name="System Utilities" purpose="mandatory" introduced="ER5">
<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">
<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">
<unit bldFile="os/devicesrv/dosservices/commondsy/group"/>
</component>
<component name="dosserver" filter="s60" long-name="Domestic OS Server">
<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">
<unit bldFile="os/devicesrv/sensorservices/sensorserver/group"/>
</component>
<component name="orientationssy" filter="s60" long-name="Orientation SSY" plugin="Y">
<unit bldFile="os/devicesrv/sensorservices/orientationssy/group"/>
</component>
<component name="tiltcompensationssy" filter="s60" long-name="Tilt Compensation SSY" plugin="Y">
<unit bldFile="os/devicesrv/sensorservices/tiltcompensationssy/group"/>
</component>
<component name="sensordatacompensator" filter="s60" long-name="Sensor Data Compensator">
<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">
<unit bldFile="os/devicesrv/hwrmhaptics/hapticseffectdatagetterfw/group"/>
</component>
<component name="hapticspluginservice" filter="s60" long-name="Haptics Plugin Service">
<unit bldFile="os/devicesrv/hwrmhaptics/hapticspluginservice/group"/>
</component>
<component name="hapticspacketizer" filter="s60" long-name="Haptics Packetizer">
<unit bldFile="os/devicesrv/hwrmhaptics/hapticspacketizer/group"/>
</component>
<component name="hapticspluginmanager" filter="s60" long-name="Haptics Plugin Manager">
<unit bldFile="os/devicesrv/hwrmhaptics/hapticspluginmanager/group"/>
</component>
<component name="hapticsserver" filter="s60" long-name="Haptics Server">
<unit bldFile="os/devicesrv/hwrmhaptics/hapticsserver/group"/>
</component>
<component name="hapticsclient" filter="s60" long-name="Haptics Client">
<unit bldFile="os/devicesrv/hwrmhaptics/hapticsclient/group"/>
</component>
<component name="hwrmhaptics_build" filter="s60" long-name="HWRM Haptics Build">
<!-- 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">
<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">
<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">
<unit bldFile="os/devicesrv/resourcemgmt/hwrmfmtxwatcherplugin/group"/>
</component>
<component name="hwrmtargetmodifierplugin" filter="s60" long-name="HWRM Target Modifier Plugin" plugin="Y">
<!-- uncomment the unit when configuration is in place, it's currently #included from resourcemgmt_build, 
      		may need to  -->
<!-- <unit bldFile="resourcemgmt/hwrmtargetmodifierplugin/group"/> -->
</component>
<component name="vibractrl" filter="s60" long-name="Vibra Control" deprecated="9.1">
<unit bldFile="os/devicesrv/resourcemgmt/vibractrl/group"/>
</component>
<component name="hwresourcesmgr" long-name="Hardware Resources Manager" introduced="^2" 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" class="config">
<unit bldFile="os/devicesrv/resourcemgmt/hwresourcesmgrconfig" mrp="os/devicesrv/resourcemgmt/hwresourcesmgrconfig/telephony_hwrm-config.mrp"/>
</component>
<component name="resourcemgmt_build" filter="s60" long-name="Resource Management Build">
<!-- Move exports to a self-contained component.
         	This needs to be kept around until configuration is in place -->
<unit bldFile="os/devicesrv/resourcemgmt/group"/>
</component>
<component name="powerandmemorynotificationservice" long-name="Power and Memory Notification Service" introduced="6.0" 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">
<unit bldFile="os/devicesrv/sysstatemgmt/ssmmapperutility/group"/>
</component>
<component name="ssmpolicyplugins" filter="s60" long-name="SSM Policy Plugins" introduced="^3" plugin="Y">
<unit bldFile="os/devicesrv/sysstatemgmt/ssmpolicyplugins/group"/>
</component>
<component name="ssmutilityplugins" filter="s60" long-name="SSM Utility Plugins" introduced="^3" plugin="Y">
<unit bldFile="os/devicesrv/sysstatemgmt/ssmutilityplugins/group"/>
</component>
<component name="ssmcmdlists" filter="s60" long-name="SSM Command Lists" introduced="^3">
<unit bldFile="os/devicesrv/sysstatemgmt/ssmcmdlists/group"/>
</component>
<component name="ssmcustcmds" filter="s60" long-name="SSM Custom Commands" introduced="^3">
<unit bldFile="os/devicesrv/sysstatemgmt/ssmcustcmds/group"/>
</component>
<component name="syslangutil" filter="s60" long-name="System Language Utility" introduced="^3">
<unit bldFile="os/devicesrv/sysstatemgmt/syslangutil/group"/>
</component>
<component name="sysrestart" filter="s60" long-name="System Restart" introduced="^3">
<unit bldFile="os/devicesrv/sysstatemgmt/sysrestart/group"/>
</component>
<component name="sysuiprovider" filter="s60" long-name="System UI Provider" introduced="^3">
<unit bldFile="os/devicesrv/sysstatemgmt/sysuiprovider/group"/>
</component>
<component name="systemstarter" long-name="System Starter" introduced="9.1" deprecated="^3" 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">
<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" 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" plugin="Y">
<unit bldFile="os/devicesrv/sysstatemgmt/systemstatereferenceplugins/group" mrp="os/devicesrv/sysstatemgmt/systemstatereferenceplugins/group/app-framework_ssrefplugins.mrp"/>
</component>
</collection>
<collection name="resourceinterfaces" long-name="Resource Interfaces" level="hw-if">
<component name="fmtransmittercontrol" long-name="FM Transmitter Control" introduced="^3" purpose="optional">
<unit bldFile="os/devicesrv/resourceinterfaces/fmtransmittercontrol/group" mrp="os/devicesrv/resourceinterfaces/fmtransmittercontrol/group/telephony_hwrmfmtx.mrp"/>
</component>
</collection>
<collection name="systemhealthmanagement" long-name="System Health Management" level="server">
<component name="systemhealthmgr" long-name="System Health Manager" introduced="^3" purpose="optional">
<unit bldFile="os/devicesrv/systemhealthmanagement/systemhealthmgr/group" mrp="os/devicesrv/systemhealthmanagement/systemhealthmgr/group/app-framework_shma.mrp"/>
</component>
</collection>
<collection name="devicesrvapitest" long-name="Devices Services API Tests" level="app-if"/>
<collection name="devicesrv_info" long-name="Device Services Info" level="app-if">
<component name="devicesrv_metadata" long-name="Device Services Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/devicesrv/devicesrv_info/devicesrv_metadata/devicesrv_metadata.mrp"/>
</component>
</collection>
</block>
<block name="security" level="services" long-name="OS Security" levels="physical-abstraction plugins libraries management services utilities">
<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"/>
</component>
</collection>
<collection name="authorisation" long-name="Authorisation" level="utilities">
<component name="userpromptservice" long-name="User Prompt Service" introduced="^3" purpose="mandatory">
<unit bldFile="os/security/authorisation/userpromptservice/group" mrp="os/security/authorisation/userpromptservice/group/security_ups.mrp"/>
</component>
<component name="userpromptutils" long-name="User Prompt Utils" introduced="^3" purpose="optional">
<unit bldFile="os/security/authorisation/userpromptutils/group" mrp="os/security/authorisation/userpromptutils/group/security_ups_utils.mrp"/>
</component>
</collection>
<collection name="contentmgmt" long-name="Content Management" level="utilities">
<component name="contentaccessfwfordrm" long-name="Content Access Framework for DRM" introduced="9.1" purpose="mandatory">
<unit bldFile="os/security/contentmgmt/contentaccessfwfordrm/group" mrp="os/security/contentmgmt/contentaccessfwfordrm/group/security_caf2.mrp"/>
</component>
<component name="cafrecogniserconfig" long-name="CAF Recogniser Config" introduced="9.1" purpose="mandatory">
<unit bldFile="os/security/contentmgmt/cafrecogniserconfig" mrp="os/security/contentmgmt/cafrecogniserconfig/security_reccafconfig.mrp"/>
</component>
<component name="referencedrmagent" long-name="Reference DRM Agent" introduced="8.0" purpose="development">
<unit bldFile="os/security/contentmgmt/referencedrmagent/RefTestAgent/group" mrp="os/security/contentmgmt/referencedrmagent/RefTestAgent/group/security_rta.mrp"/>
</component>
<component name="cafstreamingsupport" long-name="CAF Streaming Support" introduced="^3" purpose="optional">
<unit bldFile="os/security/contentmgmt/cafstreamingsupport/group" mrp="os/security/contentmgmt/cafstreamingsupport/group/security_streamingcaf.mrp"/>
</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">
<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">
<unit bldFile="os/security/crypto/weakcryptospi/strong" mrp="os/security/crypto/weakcryptospi/group/security_cryptospi_strong.mrp"/>
</component>
</collection>
<collection name="cryptomgmtlibs" long-name="Crypto Management Libraries" level="management">
<component name="securityutils" long-name="Security Utils" introduced="8.0" purpose="optional">
<unit bldFile="os/security/cryptomgmtlibs/securityutils/group" mrp="os/security/cryptomgmtlibs/securityutils/group/security_common.mrp"/>
</component>
<component name="securitydocs" long-name="Security Documentation" purpose="development" class="doc">
<unit mrp="os/security/cryptomgmtlibs/securitydocs/security_documentation.mrp"/>
</component>
<component name="cryptotokenfw" long-name="Crypto Token Framework" introduced="7.0" purpose="optional">
<unit bldFile="os/security/cryptomgmtlibs/cryptotokenfw/group" mrp="os/security/cryptomgmtlibs/cryptotokenfw/group/security_cryptotokens.mrp"/>
</component>
<component name="securitycommonutils" long-name="Security Common Utils" introduced="8.0" purpose="mandatory">
<unit bldFile="os/security/cryptomgmtlibs/securitycommonutils/group" mrp="os/security/cryptomgmtlibs/securitycommonutils/group/security_commonutils.mrp"/>
</component>
</collection>
<collection name="securityanddataprivacytools" long-name="Security and Data Privacy Tools" level="services">
<component name="securityconfig" long-name="Security Config" introduced="9.1" purpose="optional">
<unit bldFile="os/security/securityanddataprivacytools/securityconfig/group" mrp="os/security/securityanddataprivacytools/securityconfig/group/security_config.mrp"/>
</component>
<component name="securitytools" long-name="Security Tools" introduced="^3" purpose="optional" class="PC">
<unit bldFile="os/security/securityanddataprivacytools/securitytools/group" mrp="os/security/securityanddataprivacytools/securitytools/group/security_tools.mrp"/>
</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">
<unit bldFile="os/security/cryptoplugins/cryptospiplugins/group" mrp="os/security/cryptoplugins/cryptospiplugins/group/security_cryptospi_plugins.mrp"/>
</component>
</collection>
<collection name="cryptoservices" long-name="Crypto Services" level="plugins">
<component name="certificateandkeymgmt" long-name="Certificate and Key Management" introduced="6.0" purpose="optional">
<unit bldFile="os/security/cryptoservices/certificateandkeymgmt/group" mrp="os/security/cryptoservices/certificateandkeymgmt/group/security_certman.mrp"/>
</component>
<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">
<unit mrp="os/security/cryptoservices/browserrootcertificates/browserrootcerts.mrp"/>
</component>
<component name="asnpkcs" long-name="ASN PKCS" introduced="8.0" purpose="optional">
<unit bldFile="os/security/cryptoservices/asnpkcs/group" mrp="os/security/cryptoservices/asnpkcs/group/security_asnpkcs.mrp"/>
</component>
</collection>
<collection name="security_info" long-name="OS Security Info" level="utilities">
<component name="security_metadata" long-name="OS Security Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/security/security_info/security_metadata/security_metadata.mrp"/>
</component>
</collection>
</block>
<block name="lbs" level="services" long-name="Locating Services" levels="hw-if data-acquisition adaptation management application-interface">
<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"/>
</component>
<component name="bluetoothgpspositioningmodule" long-name="Bluetooth GPS Positioning Module" introduced="^2" purpose="optional" plugin="Y">
<unit bldFile="os/lbs/datasourcemodules/bluetoothgpspositioningmodule/group" mrp="os/lbs/datasourcemodules/bluetoothgpspositioningmodule/group/lbs_bt_positioning_module.mrp"/>
</component>
<component name="simulationpositioningmodule" long-name="Simulation Positioning Module" introduced="^2" purpose="development" plugin="Y">
<unit bldFile="os/lbs/datasourcemodules/simulationpositioningmodule/group" mrp="os/lbs/datasourcemodules/simulationpositioningmodule/group/lbs_simulation_positioning_module.mrp"/>
</component>
<component name="gpspositioningmodule" long-name="GPS/A-GPS Positioning Module" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="os/lbs/datasourcemodules/gpspositioningmodule/group" mrp="os/lbs/datasourcemodules/gpspositioningmodule/group/lbs_agps_positioning_module.mrp"/>
</component>
<component name="networkpositioningmodule" long-name="Network Positioning Module" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="os/lbs/datasourcemodules/networkpositioningmodule/group" mrp="os/lbs/datasourcemodules/networkpositioningmodule/group/lbs_network_positioning_module.mrp"/>
</component>
<component name="locationapesuplpsy" long-name="APE SUPL Positioning Module" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="os/lbs/datasourcemodules/locationapesuplpsy/group" mrp="os/lbs/datasourcemodules/locationapesuplpsy/group/lbs_ape_supl_positioning_module.mrp"/>
</component>
</collection>
<collection name="datasourceadaptation" long-name="Data Source Adaptation" level="adaptation">
<component name="gpsdatasourceadaptation" long-name="GPS Data Source Adaptation" introduced="^2" purpose="optional" plugin="Y">
<unit bldFile="os/lbs/datasourceadaptation/gpsdatasourceadaptation/group" mrp="os/lbs/datasourceadaptation/gpsdatasourceadaptation/group/lbs_gps_data_source_adaptation.mrp"/>
</component>
</collection>
<collection name="locationrequestmgmt" long-name="Location Request Management" level="application-interface">
<component name="locationserver" long-name="Location Server" introduced="9.2" purpose="optional">
<unit bldFile="os/lbs/locationrequestmgmt/locationserver/group" mrp="os/lbs/locationrequestmgmt/locationserver/group/lbs_locationserver.mrp"/>
</component>
<component name="networkrequesthandler" long-name="Network Request Handler" introduced="9.2" purpose="optional">
<unit bldFile="os/lbs/locationrequestmgmt/networkrequesthandler/group" mrp="os/lbs/locationrequestmgmt/networkrequesthandler/group/lbs_networkrequesthandler.mrp"/>
</component>
</collection>
<collection name="lbstest" long-name="Locating Services Tests" level="application-interface">
<component name="locationprotocoltest" long-name="Location Protocol Tests" introduced="9.2" purpose="development" plugin="Y">
<unit bldFile="os/lbs/lbstest/locationprotocoltest/group" mrp="os/lbs/lbstest/locationprotocoltest/group/lbs_networktest.mrp"/>
</component>
</collection>
<collection name="locationmgmt" long-name="Location Management" level="management">
<component name="locmonitor" long-name="Location Monitor" introduced="^3" purpose="optional">
<unit bldFile="os/lbs/locationmgmt/locmonitor/lbslocmonitorserver/group" mrp="os/lbs/locationmgmt/locmonitor/lbslocmonitorserver/group/lbs_locationmonitor.mrp"/>
</component>
<component name="agpslocationmgr" long-name="A-GPS Location Manager" introduced="9.2" purpose="optional">
<unit bldFile="os/lbs/locationmgmt/agpslocationmgr/group" mrp="os/lbs/locationmgmt/agpslocationmgr/group/lbs_agpslocationmanager.mrp"/>
</component>
<component name="networklocationmgr" long-name="Network Location Manager" introduced="9.2" purpose="optional">
<unit bldFile="os/lbs/locationmgmt/networklocationmgr/group" mrp="os/lbs/locationmgmt/networklocationmgr/group/lbs_networklocationmanager.mrp"/>
</component>
<component name="locationcore" long-name="Location Core" introduced="9.2" purpose="optional">
<unit bldFile="os/lbs/locationmgmt/locationcore/group" mrp="os/lbs/locationmgmt/locationcore/group/lbs_admin.mrp"/>
</component>
<component name="networkgateway" long-name="Network Gateway" introduced="9.2" purpose="optional">
<unit bldFile="os/lbs/locationmgmt/networkgateway/group" mrp="os/lbs/locationmgmt/networkgateway/group/lbs_networkgateway.mrp"/>
</component>
</collection>
<collection name="networkprotocolmodules" long-name="Network Protocol Modules" level="adaptation">
<component name="privacyprotocolmodule" long-name="Privacy Protocol Module" introduced="^2" purpose="optional" plugin="Y">
<unit bldFile="os/lbs/networkprotocolmodules/privacyprotocolmodule/group" mrp="os/lbs/networkprotocolmodules/privacyprotocolmodule/group/lbs_privacyprotocolmodule.mrp"/>
</component>
<component name="suplproxyprotocolmodule" long-name="SUPL Proxy Protocol Module" introduced="^3" purpose="optional" plugin="Y">
<!-- hack for Foundation builds needed while collection is reorganised into proper components -->
<unit bldFile="os/lbs/networkprotocolmodules/suplproxyprotocolmodule/sfgroup" mrp="os/lbs/networkprotocolmodules/suplproxyprotocolmodule/group/lbs_suplproxyprotocolmodule.mrp"/>
</component>
<component name="suplprotocolmodule" long-name="SUPL Protocol Module" introduced="^2" deprecated="^2" purpose="optional" plugin="Y">
<!-- hack for Foundation builds needed while collection is reorganised into proper components -->
<unit bldFile="os/lbs/networkprotocolmodules/suplprotocolmodule/sfgroup" mrp="os/lbs/networkprotocolmodules/suplprotocolmodule/group/lbs_suplprotocolmodule.mrp"/>
</component>
<component name="suplrrlpasn1" filter="sf_build" long-name="SUPL RRLP ASN1 Parser">
<!-- hack for Foundation builds needed while collection is reorganised into proper components -->
<unit bldFile="os/lbs/networkprotocolmodules/common/suplrrlpasn1/group"/>
</component>
<component name="suplrrlpprotocol" long-name="SUPL RRLP Protocol Module">
<!-- hack for Foundation builds needed while collection is reorganised into proper components -->
<unit bldFile="os/lbs/networkprotocolmodules/suplcontrolplaneprotocols/common/suplrrlpprotocol/sfgroup"/>
</component>
</collection>
<collection name="lbsapitest" long-name="Location API Tests" level="application-interface"/>
<collection name="lbs_info" long-name="Locating Services Info" level="application-interface">
<component name="lbs_metadata" long-name="Locating Services Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/lbs/lbs_info/lbs_metadata/lbs_metadata.mrp"/>
</component>
</collection>
</block>
<block name="commsfw" level="services" long-name="Communications Framework" levels="server support framework process app-if">
<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"/>
</component>
</collection>
<collection name="commsconfig" long-name="Comms Config" level="process">
<component name="commsdatabase" long-name="Comms Database" purpose="mandatory">
<unit bldFile="os/commsfw/commsfwtools/preparedefaultcommsdatabase/group" mrp="os/commsfw/commsfwtools/preparedefaultcommsdatabase/group/comms-infras_commsdat.mrp"/>
</component>
<component name="commsdatabaseshim" long-name="Comms Database Shim" introduced="8.1" purpose="mandatory">
<unit bldFile="os/commsfw/commsconfig/commsdatabaseshim/group" mrp="os/commsfw/commsconfig/commsdatabaseshim/group/comms-infras_commdbshim.mrp"/>
</component>
</collection>
<collection name="datacommsserver" long-name="Data Comms Server" level="framework">
<component name="esockserver" long-name="ESock Server" purpose="mandatory">
<unit bldFile="os/commsfw/datacommsserver/esockserver/group" mrp="os/commsfw/datacommsserver/esockserver/group/comms-infras_esock.mrp" version="3"/>
</component>
<component name="networkingdialogapi" long-name="Networking Dialog API" introduced="6.1" purpose="optional">
<unit bldFile="os/commsfw/datacommsserver/networkingdialogapi/group" mrp="os/commsfw/datacommsserver/networkingdialogapi/group/networking_dialog.mrp"/>
</component>
<component name="networkingdialogstub" long-name="Networking Dialog Stub" introduced="6.1" purpose="optional">
<unit bldFile="os/commsfw/datacommsserver/networkingdialogapi/default" mrp="os/commsfw/datacommsserver/networkingdialogapi/default/networking_dialog_default.mrp"/>
</component>
<component name="networkcontroller" long-name="Network Controller" introduced="7.0s" purpose="optional" plugin="Y">
<unit bldFile="os/commsfw/datacommsserver/networkcontroller/group" mrp="os/commsfw/datacommsserver/networkcontroller/group/networking_netcon.mrp"/>
</component>
</collection>
<collection name="serialserver" long-name="Serial Server" level="server">
<component name="serialportcsy" long-name="Serial Port CSY" introduced="ER5" purpose="optional" plugin="Y">
<unit bldFile="os/commsfw/serialserver/serialportcsy" mrp="os/commsfw/serialserver/serialportcsy/ser-comms_serialportcsy.mrp"/>
</component>
<component name="packetloopbackcsy" long-name="Packet Loopback CSY" introduced="8.1" purpose="development">
<unit bldFile="os/commsfw/serialserver/packetloopbackcsy/group" mrp="os/commsfw/serialserver/packetloopbackcsy/group/PacketLoopbackCSY.mrp"/>
</component>
<component name="c32serialserver" long-name="C32 Serial Server" introduced="ER5" purpose="mandatory">
<unit bldFile="os/commsfw/serialserver/c32serialserver/group" mrp="os/commsfw/serialserver/c32serialserver/group/ser-comms_c32.mrp"/>
</component>
<component name="c32serialserverconfig" long-name="C32 Serial Server Config" introduced="ER5" purpose="mandatory" class="config">
<unit bldFile="os/commsfw/serialserver/c32serialserverconfig" mrp="os/commsfw/serialserver/c32serialserverconfig/ser-comms_c32-config.mrp"/>
</component>
<component name="c32serialserverdocs" long-name="C32 Serial Server Documentation" purpose="development" class="doc">
<unit mrp="os/commsfw/serialserver/c32serialserverdocs/ser-comms_documentation.mrp"/>
</component>
</collection>
<collection name="commsfwutils" long-name="Comms Framework Utilities" level="framework">
<component name="commsbufs" long-name="Comms Buffers" introduced="^3" purpose="mandatory">
<unit bldFile="os/commsfw/commsfwutils/commsbufs/group" mrp="os/commsfw/commsfwutils/commsbufs/group/comms-infras_commsbufs.mrp"/>
</component>
</collection>
<collection name="commsfw_info" long-name="Comms Framework Info" level="app-if">
<component name="commsinfrastructuredocs" long-name="Comms Infrastructure Documentation" introduced="7.0" purpose="development" class="doc">
<unit mrp="os/commsfw/commsfw_info/commsinfrastructuredocs/comms-infras_documentation.mrp"/>
</component>
<component name="commsfw_metadata" long-name="Communications Framework Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/commsfw/commsfw_info/commsfw_metadata/commsfw_metadata.mrp"/>
</component>
</collection>
<collection name="commsfwsupport" long-name="Comms Framework Support" level="support">
<component name="commselements" long-name="Comms Elements" introduced="8.0" purpose="mandatory">
<unit bldFile="os/commsfw/commsfwsupport/commselements/group" mrp="os/commsfw/commsfwsupport/commselements/group/comms-infras_elements.mrp"/>
</component>
</collection>
<collection name="commsinfrastructureapitest" long-name="Comms-Infras API Tests" level="app-if">
<component name="commsinfrastructuresvs" long-name="Comms Infrastructure Verification Suite" introduced="^3" purpose="development">
<unit mrp="os/commsfw/commsinfrastructureapitest/commsinfrastructuresvs/group/commsinfrastructuresvs.mrp"/>
</component>
</collection>
<collection name="commsfwtools" long-name="Comms Framework Tools" level="app-if">
<component name="preparedefaultcommsdatabase" long-name="Prepare Default Comms Database" filter="gt" purpose="mandatory" class="config PC">
<unit bldFile="os/commsfw/commsfwtools/preparedefaultcommsdatabase/defaultcommdb/group" mrp="os/commsfw/commsfwtools/preparedefaultcommsdatabase/defaultcommdb/group/comms-infras_defaultcommdb.mrp"/>
</component>
<component name="installdefaultcommsdatabase" long-name="Install Default Comms Database" purpose="mandatory" class="PC">
<unit bldFile="os/commsfw/commsfwtools/preparedefaultcommsdatabase/installdefaultcommdb/group" mrp="os/commsfw/commsfwtools/preparedefaultcommsdatabase/installdefaultcommdb/group/comms-infras_installdefaultcommdb.mrp" priority="1010"/>
</component>
<component name="commstools" long-name="Comms Tools" introduced="^3" purpose="development" class="PC">
<unit bldFile="os/commsfw/commsfwtools/commstools/group" mrp="os/commsfw/commsfwtools/commstools/group/comms-infras_tools.mrp"/>
</component>
</collection>
</block>
<block name="networkingsrv" level="services" long-name="Networking Services" levels="adaptation hw-if plugin framework server app-if">
<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"/>
</component>
</collection>
<collection name="tcpiputils" long-name="TCP/IP Utilities" level="plugin">
<component name="dnd" long-name="DND" introduced="7.0" purpose="mandatory">
<unit bldFile="os/networkingsrv/tcpiputils/dnd/group" mrp="os/networkingsrv/tcpiputils/dnd/group/networking_dnd.mrp"/>
</component>
<component name="dhcp" long-name="DHCP" introduced="8.0" purpose="optional">
<unit bldFile="os/networkingsrv/tcpiputils/dhcp/group" mrp="os/networkingsrv/tcpiputils/dhcp/group/networking_dhcp.mrp"/>
</component>
<component name="networkaddressandporttranslation" long-name="Network Address and Port Translation" introduced="^2" purpose="mandatory" plugin="Y">
<unit bldFile="os/networkingsrv/tcpiputils/networkaddressandporttranslation/group" mrp="os/networkingsrv/tcpiputils/networkaddressandporttranslation/group/networking_napt.mrp"/>
</component>
<component name="punycodeconv" long-name="Punycode Converter" introduced="^3" purpose="mandatory">
<unit bldFile="os/networkingsrv/tcpiputils/punycodeconv/group" mrp="os/networkingsrv/tcpiputils/punycodeconv/group/networking_punycodeconverter.mrp"/>
</component>
</collection>
<collection name="linklayercontrol" long-name="Link Layer Control" level="hw-if">
<component name="nullagt" long-name="NULL AGT" introduced="7.0s" purpose="optional" plugin="Y">
<unit bldFile="os/networkingsrv/linklayercontrol/nullagt/group" mrp="os/networkingsrv/linklayercontrol/nullagt/group/networking_nullagt.mrp"/>
</component>
<component name="genericscprparameters" long-name="Generic SCPR Parameters" introduced="^3" purpose="optional">
<unit bldFile="os/networkingsrv/linklayercontrol/genericscprparameters/group" mrp="os/networkingsrv/linklayercontrol/genericscprparameters/group/networking_genericscprparams.mrp"/>
</component>
<component name="mbmsparameters" long-name="MBMS Parameters" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="os/networkingsrv/linklayercontrol/mbmsparameters/group" mrp="os/networkingsrv/linklayercontrol/mbmsparameters/group/networking_mbmsparams.mrp"/>
</component>
<component name="networkinterfacemgr" long-name="Network Interface Manager" introduced="ER5U" purpose="mandatory">
<unit bldFile="os/networkingsrv/linklayercontrol/networkinterfacemgr/group" mrp="os/networkingsrv/linklayercontrol/networkinterfacemgr/group/comms-infras_nifman.mrp" version="2"/>
</component>
</collection>
<collection name="linklayerprotocols" long-name="Link Layer Protocols" level="hw-if">
<component name="ethernetnif" long-name="Ethernet NIF" purpose="optional" plugin="Y">
<unit bldFile="os/networkingsrv/linklayerprotocols/ethernetnif/group" mrp="os/networkingsrv/linklayerprotocols/ethernetnif/group/networking_ether802.mrp"/>
</component>
<component name="pppnif" long-name="PPP NIF" introduced="ER5" purpose="optional" plugin="Y">
<unit bldFile="os/networkingsrv/linklayerprotocols/pppnif/group" mrp="os/networkingsrv/linklayerprotocols/pppnif/group/networking_ppp.mrp" version="2"/>
</component>
<component name="slipnif" long-name="SLIP NIF" purpose="development" plugin="Y">
<unit bldFile="os/networkingsrv/linklayerprotocols/slipnif/group" mrp="os/networkingsrv/linklayerprotocols/slipnif/group/networking_slip.mrp"/>
</component>
<component name="tunnelnif" long-name="Tunnel NIF" introduced="7.0s" purpose="optional" plugin="Y">
<unit bldFile="os/networkingsrv/linklayerprotocols/tunnelnif/group" mrp="os/networkingsrv/linklayerprotocols/tunnelnif/group/networking_tunnelnif.mrp"/>
</component>
</collection>
<collection name="linklayerutils" long-name="Link Layer Utilities" level="hw-if">
<component name="packetlogger" long-name="Packet Logger" introduced="8.1" purpose="development">
<unit bldFile="os/networkingsrv/linklayerutils/packetlogger/group" mrp="os/networkingsrv/linklayerutils/packetlogger/group/networking_packetlogger.mrp"/>
</component>
</collection>
<collection name="networkcontrol" long-name="Network Control" level="plugin">
<component name="qoslib" long-name="QoS Library" introduced="7.0s" purpose="optional">
<unit bldFile="os/networkingsrv/networkcontrol/qoslib/group" mrp="os/networkingsrv/networkcontrol/qoslib/group/networking_qoslib.mrp"/>
</component>
<component name="pfqoslib" long-name="PF QoS Library" introduced="7.0s" purpose="optional">
<unit bldFile="os/networkingsrv/networkcontrol/pfqoslib/group" mrp="os/networkingsrv/networkcontrol/pfqoslib/group/networking_pfqoslib.mrp"/>
</component>
<component name="qosfwprt" long-name="QoS Framework PRT" introduced="7.0s" purpose="optional" plugin="Y">
<unit bldFile="os/networkingsrv/networkcontrol/qosfwconfig/qos/group" mrp="os/networkingsrv/networkcontrol/qosfwconfig/qos/group/networking_qos.mrp"/>
</component>
<component name="qosipscpr" long-name="QoS IP SCPR" purpose="optional" plugin="Y">
<unit bldFile="os/networkingsrv/networkcontrol/qosipscpr/group" mrp="os/networkingsrv/networkcontrol/qosipscpr/group/networking_qosipscpr.mrp"/>
</component>
<component name="ipnetworklayer" long-name="IP Network Layer" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="os/networkingsrv/networkcontrol/ipnetworklayer/group" mrp="os/networkingsrv/networkcontrol/ipnetworklayer/group/networking_ipproto.mrp"/>
</component>
<component name="iptransportlayer" long-name="IP Transport Layer" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="os/networkingsrv/networkcontrol/iptransportlayer/group" mrp="os/networkingsrv/networkcontrol/iptransportlayer/group/networking_iptransport.mrp"/>
</component>
<component name="commsuserpromptmgr" long-name="Comms User Prompt Manager" introduced="^3" purpose="mandatory">
<unit bldFile="os/networkingsrv/networkcontrol/commsuserpromptmgr/group" mrp="os/networkingsrv/networkcontrol/commsuserpromptmgr/group/networking_netups.mrp"/>
</component>
</collection>
<collection name="networkprotocols" long-name="Network Protocols" level="plugin">
<component name="ipeventnotifier" long-name="IP Event Notifier" introduced="8.1" purpose="mandatory" plugin="Y">
<unit bldFile="os/networkingsrv/networkprotocols/ipeventnotifier/group" mrp="os/networkingsrv/networkprotocols/ipeventnotifier/group/networking_ipeventnotifier.mrp"/>
</component>
<component name="tcpipv4v6prt" long-name="TCP/IPv4/v6 PRT" introduced="7.0" purpose="mandatory" plugin="Y">
<unit bldFile="os/networkingsrv/networkprotocols/tcpipv4v6prt/group" mrp="os/networkingsrv/networkprotocols/tcpipv4v6prt/group/networking_tcpip6.mrp"/>
</component>
<component name="iphook" long-name="IP Hook" introduced="7.0" purpose="mandatory">
<unit bldFile="os/networkingsrv/networkprotocols/iphook/inhook6/group" mrp="os/networkingsrv/networkprotocols/iphook/inhook6/group/networking_inhook6.mrp"/>
</component>
<component name="mobileip" long-name="Mobile IP" introduced="8.1" purpose="optional" plugin="Y">
<unit bldFile="os/networkingsrv/networkprotocols/mobileip/group" mrp="os/networkingsrv/networkprotocols/mobileip/group/networking_mobileip.mrp"/>
</component>
<component name="dnsproxy" long-name="DNS Proxy" introduced="^3" purpose="optional">
<unit bldFile="os/networkingsrv/networkprotocols/dnsproxy/group" mrp="os/networkingsrv/networkprotocols/dnsproxy/group/networking_dnsproxy.mrp"/>
</component>
</collection>
<collection name="networksecurity" long-name="Network Security" level="framework">
<component name="tls" long-name="TLS" introduced="6.0" purpose="mandatory">
<unit bldFile="os/networkingsrv/networksecurity/tls/group" mrp="os/networkingsrv/networksecurity/tls/group/networking_tls.mrp"/>
</component>
<component name="tlsprovider" long-name="TLS Provider" introduced="8.1" purpose="mandatory">
<unit bldFile="os/networkingsrv/networksecurity/tlsprovider/group" mrp="os/networkingsrv/networksecurity/tlsprovider/group/security_tlsprovider.mrp"/>
</component>
<component name="ipsec" long-name="IPsec" introduced="7.0" purpose="optional">
<unit bldFile="os/networkingsrv/networksecurity/ipsec/group" mrp="os/networkingsrv/networksecurity/ipsec/group/networking_ipsec.mrp"/>
</component>
</collection>
<collection name="networkingtestandutils" long-name="Networking Test and Utils" level="app-if">
<component name="networkingexamples" long-name="Networking Examples" introduced="7.0" purpose="development">
<unit bldFile="os/networkingsrv/networkingtestandutils/networkingexamples/examplecode/group" mrp="os/networkingsrv/networkingtestandutils/networkingexamples/examplecode/group/networking_examplecode.mrp"/>
</component>
</collection>
<collection name="networkingsrv_info" long-name="Networking Services Info" level="app-if">
<component name="networkingrom" long-name="Networking ROM" purpose="mandatory">
<!--  production component: contains the IBY files -->
<unit bldFile="os/networkingsrv/networkingsrv_info/networkingrom/group" mrp="os/networkingsrv/networkingsrv_info/networkingrom/group/networking_general.mrp"/>
</component>
<component name="networkingdocs" long-name="Networking Documentation" purpose="development" class="doc">
<unit mrp="os/networkingsrv/networkingsrv_info/networkingdocs/networking_documentation.mrp"/>
</component>
<component name="networkingsrv_metadata" long-name="Networking Services Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/networkingsrv/networkingsrv_info/networkingsrv_metadata/networkingsrv_metadata.mrp"/>
</component>
</collection>
<collection name="pppcompressionplugins" long-name="PPP Compression Plugins" level="plugin">
<component name="predictorcompression" long-name="Predictor Compression" introduced="6.0" purpose="optional" plugin="Y">
<unit bldFile="os/networkingsrv/pppcompressionplugins/predictorcompression/group" mrp="os/networkingsrv/pppcompressionplugins/predictorcompression/group/networking_predcomp.mrp"/>
</component>
</collection>
</block>
<block name="wlan" level="services" long-name="WLAN" levels="hw low mid high tools test">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="os/wlan/wlan_bearer/wlanpsmplugin/group"/>
</component>
<component name="wlanagent" filter="s60" long-name="WLAN Agent">
<unit bldFile="os/wlan/wlan_bearer/wlanagent/group"/>
</component>
<component name="wlandbif_cd" filter="s60" long-name="WLAN CommsDat interface">
<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">
<unit bldFile="os/wlan/wlan_bearer/wlanengine/wlan_symbian/wlanengine_symbian_3.1/group"/>
</component>
<component name="wlanldd" filter="s60" long-name="WLAN LDD">
<unit bldFile="os/wlan/wlan_bearer/wlanldd/wlan_symbian/wlanldd_symbian/group"/>
</component>
<component name="wlannwif" filter="s60" long-name="WLAN Network Interface">
<unit bldFile="os/wlan/wlan_bearer/wlannwif/group"/>
</component>
</collection>
<collection name="wlanapitest" long-name="WLAN API Tests" level="test"/>
<collection name="wlan_info" long-name="WLAN Info" level="test">
<component name="wlan_metadata" long-name="WLAN Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/wlan/wlan_info/wlan_metadata/wlan_metadata.mrp"/>
</component>
</collection>
</block>
<block name="cellularsrv" level="services" long-name="Cellular Baseband Services" levels="adaptation hw-if plugin framework server app-if">
<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"/>
</component>
</collection>
<collection name="basebandadaptationplugins" long-name="Baseband Adaptation Plugins" level="adaptation">
<component name="basebandchanneladaptorforc32" long-name="Baseband Channel Adaptor for C32" introduced="8.1" purpose="optional" plugin="Y">
<unit bldFile="os/cellularsrv/basebandadaptationplugins/basebandchanneladaptorforc32/group" mrp="os/cellularsrv/basebandadaptationplugins/basebandchanneladaptorforc32/group/networking_c32bca.mrp"/>
</component>
</collection>
<collection name="smsprotocols" long-name="SMS Protocols" level="framework">
<component name="smsstack" long-name="SMS Stack" introduced="6.0" purpose="mandatory" plugin="Y">
<unit bldFile="os/cellularsrv/smsprotocols/smsstack/group" mrp="os/cellularsrv/smsprotocols/smsstack/group/nbprotocols_smsstackv2.mrp"/>
</component>
</collection>
<collection name="telephonyprotocols" long-name="Telephony Protocols" level="framework">
<component name="csdagt" long-name="CSD AGT" introduced="6.1" purpose="optional" plugin="Y">
<unit bldFile="os/cellularsrv/telephonyprotocols/csdagt/group" mrp="os/cellularsrv/telephonyprotocols/csdagt/group/networking_csdagt.mrp"/>
</component>
<component name="psdagt" long-name="PSD AGT" introduced="7.0s" purpose="optional" plugin="Y">
<unit bldFile="os/cellularsrv/telephonyprotocols/psdagt/group" mrp="os/cellularsrv/telephonyprotocols/psdagt/group/networking_psdagt.mrp"/>
</component>
<component name="gprsumtsqosprt" long-name="GPRS/UMTS QoS PRT" introduced="7.0s" purpose="optional" plugin="Y">
<unit bldFile="os/cellularsrv/telephonyprotocols/gprsumtsqosprt/group" mrp="os/cellularsrv/telephonyprotocols/gprsumtsqosprt/group/networking_guqos.mrp"/>
</component>
<component name="gprsumtsqosinterface" long-name="GPRS/UMTS QoS Interface" introduced="7.0s" purpose="optional" plugin="Y">
<unit bldFile="os/cellularsrv/telephonyprotocols/gprsumtsqosinterface/group" mrp="os/cellularsrv/telephonyprotocols/gprsumtsqosinterface/group/networking_umtsif.mrp"/>
</component>
<component name="qosextnapi" long-name="QoS Extn API" introduced="9.2" purpose="optional">
<unit bldFile="os/cellularsrv/telephonyprotocols/qosextnapi/group" mrp="os/cellularsrv/telephonyprotocols/qosextnapi/group/networking_qosextnapi.mrp"/>
</component>
<component name="secondarypdpcontextumtsdriver" long-name="Secondary PDP context UMTS Driver" introduced="8.1" purpose="optional">
<unit bldFile="os/cellularsrv/telephonyprotocols/secondarypdpcontextumtsdriver/group" mrp="os/cellularsrv/telephonyprotocols/secondarypdpcontextumtsdriver/group/networking_spud.mrp"/>
</component>
<component name="qos3gppcpr" long-name="QoS 3GPP CPR" introduced="9.2" purpose="optional" plugin="Y">
<unit bldFile="os/cellularsrv/telephonyprotocols/qos3gppcpr/group" mrp="os/cellularsrv/telephonyprotocols/qos3gppcpr/group/networking_Qos3GPP.mrp"/>
</component>
<component name="pdplayer" long-name="PDP Layer" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="os/cellularsrv/telephonyprotocols/pdplayer/group" mrp="os/cellularsrv/telephonyprotocols/pdplayer/group/networking_pdp.mrp"/>
</component>
<component name="rawipnif" long-name="Raw IP NIF" introduced="8.1" purpose="optional" plugin="Y">
<unit bldFile="os/cellularsrv/telephonyprotocols/rawipnif/group" mrp="os/cellularsrv/telephonyprotocols/rawipnif/group/networking_rawipnif.mrp"/>
</component>
</collection>
<collection name="telephonyserver" long-name="Telephony Server" level="server">
<component name="etelserverandcore" long-name="ETel Server and Core" purpose="mandatory">
<unit bldFile="os/cellularsrv/telephonyserver/etelserverandcore/group" mrp="os/cellularsrv/telephonyserver/etelserverandcore/group/telephony_etel.mrp"/>
</component>
<component name="etelmultimode" long-name="ETel Multimode" introduced="7.0" purpose="mandatory">
<unit bldFile="os/cellularsrv/telephonyserver/etelmultimode/group" mrp="os/cellularsrv/telephonyserver/etelmultimode/group/telephony_etelmm.mrp"/>
</component>
<component name="etelpacketdata" long-name="ETel Packet Data" introduced="7.0" purpose="mandatory">
<unit bldFile="os/cellularsrv/telephonyserver/etelpacketdata/group" mrp="os/cellularsrv/telephonyserver/etelpacketdata/group/telephony_etelpckt.mrp"/>
</component>
<component name="etelsimtoolkit" long-name="ETel SIM Toolkit" introduced="6.1" purpose="mandatory">
<unit bldFile="os/cellularsrv/telephonyserver/etelsimtoolkit/group" mrp="os/cellularsrv/telephonyserver/etelsimtoolkit/group/telephony_etelsat.mrp"/>
</component>
</collection>
<collection name="telephonyserverplugins" long-name="Telephony Server Plugins" level="plugin">
<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>
<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"/>
</component>
<component name="ctsydispatchlayer" long-name="C-TSY Dispatch Layer" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="os/cellularsrv/telephonyserverplugins/ctsydispatchlayer/group" mrp="os/cellularsrv/telephonyserverplugins/ctsydispatchlayer/group/telephony_dispatcher.mrp"/>
</component>
<component name="simatktsy" long-name="SIMATK TSY" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="os/cellularsrv/telephonyserverplugins/simatktsy/group" mrp="os/cellularsrv/telephonyserverplugins/simatktsy/group/commonsimatktsy.mrp"/>
</component>
</collection>
<collection name="telephonyutils" long-name="Telephony Utilities" level="app-if">
<component name="dial" long-name="Dial" deprecated="9.1" purpose="optional">
<unit bldFile="os/cellularsrv/telephonyutils/dial/group" mrp="os/cellularsrv/telephonyutils/dial/group/telephony_dial.mrp"/>
</component>
<component name="telephonywatchers" long-name="Telephony Watchers" introduced="6.0" purpose="optional" plugin="Y">
<unit bldFile="os/cellularsrv/telephonyutils/telephonywatchers/group" mrp="os/cellularsrv/telephonyutils/telephonywatchers/group/telephony_watchers.mrp"/>
</component>
<component name="etel3rdpartyapi" long-name="ETel 3rd Party API" introduced="7.0" purpose="mandatory">
<unit bldFile="os/cellularsrv/telephonyutils/etel3rdpartyapi/Group" mrp="os/cellularsrv/telephonyutils/etel3rdpartyapi/Group/telephony_etel3rdparty.mrp"/>
</component>
</collection>
<collection name="cellularsrv_info" long-name="Cellular Baseband Services Info" level="app-if">
<component name="telephonyconfidentialdocs" long-name="Telephony Confidential Documentation" purpose="development" class="doc">
<unit mrp="os/cellularsrv/cellularsrv_info/telephonyconfidentialdocs/telephony_confidential.mrp"/>
</component>
<component name="telephonydocs" long-name="Telephony Documentation" purpose="development" class="doc">
<unit mrp="os/cellularsrv/cellularsrv_info/telephonydocs/telephony_documentation.mrp"/>
</component>
<component name="cellularsrv_metadata" long-name="Cellular Baseband Services Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/cellularsrv/cellularsrv_info/cellularsrv_metadata/cellularsrv_metadata.mrp"/>
</component>
</collection>
<collection name="hwpluginsimulation" long-name="Hardware Plugin Simulation" level="adaptation">
<component name="mocksy" long-name="MockSY" introduced="^2" purpose="development" plugin="Y">
<unit bldFile="os/cellularsrv/hwpluginsimulation/mocksy/group" mrp="os/cellularsrv/hwpluginsimulation/mocksy/group/telephony_tools_mocksy.mrp"/>
</component>
</collection>
<collection name="cellularsrvapitest" long-name="Telephony API Tests" level="app-if"/>
</block>
<block name="bt" level="services" long-name="Bluetooth" levels="adaptation hw-if plugin framework server app-if">
<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">
<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">
<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">
<unit bldFile="os/bt/bt_plat/at_command_handler_plugin_api/group"/>
</component>
</collection>
<collection name="bluetooth" long-name="Bluetooth Core" level="framework">
<component name="btstack" long-name="Bluetooth Stack" introduced="6.0" purpose="optional">
<unit bldFile="os/bt/bluetooth/btstack" mrp="os/bt/bluetooth/btstack/bluetooth_stack.mrp"/>
</component>
<component name="btcomm" long-name="Bluetooth CSY" introduced="6.0" purpose="optional" plugin="Y">
<unit bldFile="os/bt/bluetooth/btcomm" mrp="os/bt/bluetooth/btcomm/bluetooth_btcomm.mrp"/>
</component>
<component name="btsdp" long-name="Bluetooth SDP" introduced="6.1" purpose="optional">
<unit bldFile="os/bt/bluetooth/btsdp" mrp="os/bt/bluetooth/btsdp/bluetooth_sdp.mrp"/>
</component>
<component name="btextnotifiers" long-name="Bluetooth Notifiers Support" introduced="6.1" purpose="optional">
<unit bldFile="os/bt/bluetooth/btextnotifiers" mrp="os/bt/bluetooth/btextnotifiers/bluetooth_btextnotifiers.mrp"/>
</component>
<component name="gavdp" long-name="Bluetooth GAVDP" introduced="8.1" purpose="optional">
<unit bldFile="os/bt/bluetooth/gavdp/group" mrp="os/bt/bluetooth/gavdp/group/bluetooth_gavdp.mrp"/>
</component>
<component name="btlogger" long-name="Bluetooth Logging Engine" introduced="9.2" purpose="optional">
<unit bldFile="os/bt/bluetooth/btlogger/group" mrp="os/bt/bluetooth/btlogger/group/bluetooth_logger.mrp"/>
</component>
<component name="btdocs" long-name="Bluetooth Documentation" purpose="development" class="doc">
<unit mrp="os/bt/bluetooth/btdocs/bluetooth_documentation.mrp"/>
</component>
</collection>
<collection name="bluetoothmgmt" long-name="Bluetooth Management" level="plugin">
<component name="btmgr" long-name="Bluetooth Manager" introduced="6.0" purpose="optional">
<unit bldFile="os/bt/bluetoothmgmt/btmgr" mrp="os/bt/bluetoothmgmt/btmgr/bluetooth_manager.mrp"/>
</component>
<component name="btconfig" long-name="Bluetooth Config" purpose="optional" class="config">
<unit bldFile="os/bt/bluetoothmgmt/btconfig" mrp="os/bt/bluetoothmgmt/btconfig/bluetooth_config.mrp"/>
</component>
<component name="btrom" long-name="Bluetooth ROM" introduced="9.1" purpose="optional">
<unit bldFile="os/bt/bluetoothmgmt/btrom" mrp="os/bt/bluetoothmgmt/btrom/bluetooth_rom.mrp"/>
</component>
<component name="bluetoothclientlib" long-name="Bluetooth Client Library" introduced="6.0" purpose="optional">
<unit bldFile="os/bt/bluetoothmgmt/bluetoothclientlib" mrp="os/bt/bluetoothmgmt/bluetoothclientlib/bluetooth_user.mrp"/>
</component>
</collection>
<collection name="bluetoothcommsprofiles" long-name="Bluetooth Comms Profiles" level="app-if">
<component name="btpan" long-name="Bluetooth PAN Profile" introduced="8.1" purpose="optional" plugin="Y">
<unit bldFile="os/bt/bluetoothcommsprofiles/btpan/group" mrp="os/bt/bluetoothcommsprofiles/btpan/group/bluetooth_pan.mrp"/>
</component>
</collection>
<collection name="bthci" long-name="Host Controller Interface" level="server">
<component name="bthci2" long-name="Bluetooth HCI Framework 2" introduced="9.2" purpose="optional">
<unit bldFile="os/bt/bthci/bthci2/group" mrp="os/bt/bthci/bthci2/group/bluetooth_hci_v2_framework.mrp"/>
</component>
<component name="hciextensioninterface" long-name="Bluetooth HCI Extension Interface" introduced="6.1" purpose="optional">
<unit bldFile="os/bt/bthci/hciextensioninterface" mrp="os/bt/bthci/hciextensioninterface/bluetooth_hciproxy.mrp"/>
</component>
<component name="hci2implementations" long-name="Bluetooth HCI 2 Reference Implementations" introduced="9.2" purpose="optional" plugin="Y">
<unit bldFile="os/bt/bthci/hci2implementations/group" mrp="os/bt/bthci/hci2implementations/group/bluetooth_hci_v2_implementations.mrp"/>
</component>
</collection>
<collection name="irda" long-name="IrDA" level="plugin">
<component name="irdastack" long-name="IrDA Stack" purpose="optional">
<unit bldFile="os/bt/irda/irdastack/group" mrp="os/bt/irda/irdastack/group/infra-red_irda.mrp"/>
</component>
</collection>
<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">
<unit bldFile="os/bt/atext/group"/>
</component>
</collection>
<collection name="bt_info" long-name="Bluetooth Info" level="app-if">
<component name="bt_metadata" long-name="Bluetooth Metadata" introduced="^3" purpose="development" class="config PC">
<unit mrp="os/bt/bt_info/bt_metadata/bt_metadata.mrp"/>
</component>
</collection>
</block>
<block name="usb" level="services" long-name="USB" levels="adaptation hw-if plugin framework server app-if">
<collection name="usbldd" long-name="USB Logical Device Drivers" level="hw-if">
<!-- usbclientdrivers  to be moved here from kernelhwsrv-->
</collection>
<collection name="usbmgmt" long-name="USB Management" level="server">
<component name="usbmgr" long-name="USB Manager" purpose="optional">
<unit bldFile="os/usb/usbmgmt/usbmgr/group" mrp="os/usb/usbmgmt/usbmgr/group/usb_manager.mrp" version="2"/>
</component>
<component name="usbclassandmgrdocs" long-name="USB Class and Manager Documentation" purpose="development" class="doc">
<unit mrp="os/usb/usbmgmt/usbclassandmgrdocs/usb_documentation.mrp"/>
</component>
</collection>
<collection name="usb_info" long-name="USB Info" level="app-if">
<component name="usb_metadata" long-name="USB Metadata" introduced="^3" purpose="development" class="config PC">
<unit mrp="os/usb/usb_info/usb_metadata/usb_metadata.mrp"/>
</component>
</collection>
</block>
<block name="mm" level="services" long-name="Multimedia" levels="adaptation hw-if device-fw devices middleware app-if">
<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">
<unit bldFile="os/mm/mm_pub/audio_effects_api/group"/>
</component>
<component name="audio_effects_presets_api" long-name="Audio Effects Presets API" filter="s60" class="api">
<unit bldFile="os/mm/mm_pub/audio_effects_presets_api/group"/>
</component>
<component name="drm_audio_player_api" long-name="DRM Audio Player API" filter="s60" class="api">
<unit bldFile="os/mm/mm_pub/drm_audio_player_api/group"/>
</component>
<component name="multimedia_extension_interfaces_api" long-name="Multimedia Extension Interfaces API" filter="s60" 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">
<unit bldFile="os/mm/mm_plat/aac_decoder_config_api/group"/>
</component>
<component name="aac_decoder_config_msg_hdlr_api" long-name="AAC Decoder Config Msg Hdlr API" filter="s60" 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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="os/mm/mm_plat/audio_routing_api/group"/>
</component>
<component name="audio_routing_msg_hdlr_api" long-name="Audio Routing Msg Hdlr API" filter="s60" 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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="os/mm/mm_plat/eaac_plus_decoder_interface_api/group"/>
</component>
<component name="eaac_plus_decoder_interface_msg_hdlr_api" long-name="eAAC Plus Decoder Interface Message Handler API" filter="s60" 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">
<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">
<unit bldFile="os/mm/mm_plat/error_concealment_interface_api/group"/>
</component>
<component name="error_concealment_interface_msg_hdlr_api" long-name="Error Concealment Interface Message Handler API" filter="s60" 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">
<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">
<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">
<unit bldFile="os/mm/mm_plat/g711_decoder_interface_api/group"/>
</component>
<component name="g711_decoder_interface_msg_hdlr_api" long-name="G711 Decoder Interface Message Handler API" filter="s60" 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">
<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">
<unit bldFile="os/mm/mm_plat/g711_encoder_interface_api/group"/>
</component>
<component name="g711_encoder_interface_msg_hdlr_api" long-name="G711 Encoder Interface Message Handler API" filter="s60" 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">
<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">
<unit bldFile="os/mm/mm_plat/g729_decoder_interface_api/group"/>
</component>
<component name="g729_decoder_interface_msg_hdlr_api" long-name="G729 Decoder Interface Message Handler API" filter="s60" 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">
<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">
<unit bldFile="os/mm/mm_plat/g729_encoder_interface_api/group"/>
</component>
<component name="g729_encoder_interface_proxy_api" long-name="G729 Encoder Interface Proxy API" filter="s60" 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">
<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">
<unit bldFile="os/mm/mm_plat/global_audio_settings_api/group"/>
</component>
<component name="global_audio_settings_definition_api" long-name="Global Audio Settings Definition API" filter="s60" 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">
<unit bldFile="os/mm/mm_plat/ilbc_decoder_interface_api/group"/>
</component>
<component name="ilbc_decoder_interface_msg_hdlr_api" long-name="Ilbc Decoder Interface Message Handler API" filter="s60" 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">
<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">
<unit bldFile="os/mm/mm_plat/ilbc_encoder_interface_api/group"/>
</component>
<component name="ilbc_encoder_interface_msg_hdlr_api" long-name="Ilbc Encoder Interface Message Handler API" filter="s60" 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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="os/mm/mm_plat/ra8_decoder_interface_api/group"/>
</component>
<component name="ra8_decoder_interface_msg_hdlr_api" long-name="RA8 Decoder Interface Message Handler API" filter="s60" 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">
<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">
<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">
<unit bldFile="os/mm/mm_plat/restricted_audio_output_api/group"/>
</component>
<component name="restricted_audio_output_msg_hdlr_api" long-name="Restricted Audio Output Message Handler API" filter="s60" 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">
<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">
<unit bldFile="os/mm/mm_plat/sbc_encoder_interface_api/group"/>
</component>
<component name="sbc_encoder_interface_msg_hdlr_api" long-name="SBC Encoder Interface Message Handler API" filter="s60" 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">
<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">
<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">
<unit bldFile="os/mm/mm_plat/speech_encoder_config_api/group"/>
</component>
<component name="speech_encoder_config_msg_hdlr_api" long-name="Speech Encoder Config Message Handler API" filter="s60" 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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="os/mm/mm_plat/wma_decoder_interface_api/group"/>
</component>
<component name="wma_decoder_interface_msg_hdlr_api" long-name="WMA Decoder Interface Message Handler API" filter="s60" 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">
<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">
<unit bldFile="os/mm/mm_plat/eaacplusutil_api/group"/>
</component>
<component name="frametable_api" long-name="Frametable API" filter="s60" 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">
<unit bldFile="os/mm/devsoundextensions/drmaudioplayer/group"/>
</component>
<component name="mmextfw" filter="s60" long-name="Multimedia Extension Framework">
<unit bldFile="os/mm/devsoundextensions/mmextfw/group"/>
</component>
<component name="audiorouting" filter="s60" long-name="Audio Routing">
<unit bldFile="os/mm/devsoundextensions/audiorouting/group"/>
</component>
<component name="effects" filter="s60" long-name="Effects">
<unit bldFile="os/mm/devsoundextensions/effects/group"/>
</component>
<component name="effectspresets" filter="s60" long-name="Effects Presets">
<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
      		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">
<unit bldFile="os/mm/devsoundextensions/telephonyaudiorouting/group"/>
</component>
<component name="mmfcustominterfaces" filter="s60" long-name="MMF Custom Interfaces">
<unit bldFile="os/mm/devsoundextensions/mmfcustominterfaces/group"/>
</component>
<component name="addeddevsoundcontrol" filter="s60" long-name="Added DevSound Control">
<unit bldFile="os/mm/devsoundextensions/addeddevsoundcontrol/group"/>
</component>
<component name="globalaudiosettings" filter="s60" long-name="Global Audio Settings">
<unit bldFile="os/mm/devsoundextensions/globalaudiosettings/group"/>
</component>
<component name="restrictedaudiooutput" filter="s60" long-name="Restricted Audio Output">
<unit bldFile="os/mm/devsoundextensions/restrictedaudiooutput/group"/>
</component>
<component name="ciextnfactoryplugins" filter="s60" long-name="Custom Interface Extension Factory Plugins" 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">
<unit bldFile="os/mm/mdfdevvideoextensions/nga_mdf_postprocessor/group"/>
</component>
</collection>
<collection name="audio" long-name="Audio Codecs" level="middleware">
<component name="arm_cmmf_codecs" filter="s60" long-name="ARM CMMF Codecs" plugin="Y">
<unit bldFile="os/mm/audio/arm_cmmf_codecs/group"/>
</component>
</collection>
<collection name="video" long-name="Video Codecs" level="middleware">
<!-- empty -->
</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"/>
</component>
<component name="mmfw" long-name="Multimedia Framework" introduced="7.0s" purpose="mandatory">
<unit bldFile="os/mm/mmlibs/mmfw/group" mrp="os/mm/mmlibs/mmfw/group/multimedia_mmf.mrp"/>
</component>
</collection>
<collection name="mmplugins" long-name="Multimedia Plugins" level="middleware">
<component name="imagingplugins" long-name="Imaging Plugins" introduced="7.0s" purpose="optional" plugin="Y">
<unit bldFile="os/mm/mmplugins/imagingplugins/group" mrp="os/mm/mmplugins/imagingplugins/group/multimedia_icl_plugin.mrp"/>
</component>
<component name="cameraplugins" long-name="Camera Plugins" introduced="7.0s" purpose="optional" plugin="Y">
<unit bldFile="os/mm/mmplugins/cameraplugins/group" mrp="os/mm/mmplugins/cameraplugins/group/multimedia_ecam_plugins.mrp"/>
</component>
<component name="lib3gp" long-name="3GP Library" introduced="^2" purpose="optional">
<unit bldFile="os/mm/mmplugins/lib3gp/group" mrp="os/mm/mmplugins/lib3gp/group/multimedia_3gplibrary.mrp"/>
</component>
<component name="mmfwplugins" long-name="Multimedia Framework Plugins" introduced="7.0s" purpose="optional" plugin="Y">
<unit bldFile="os/mm/mmplugins/mmfwplugins/group" mrp="os/mm/mmplugins/mmfwplugins/group/multimedia_mmf_plugin.mrp"/>
</component>
</collection>
<collection name="mm_info" long-name="Multimedia Info" level="app-if">
<component name="mmdocs" long-name="Multimedia Documentation" purpose="development" class="doc">
<unit mrp="os/mm/mm_info/mmdocs/multimedia_documentation.mrp"/>
</component>
<component name="mm_metadata" long-name="Multimedia Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/mm/mm_info/mm_metadata/mm_metadata.mrp"/>
</component>
</collection>
<collection name="mmresourcemgmt" long-name="Multimedia Resource Management" level="middleware">
<component name="mmresctrl" long-name="Multimedia Resource Controller" introduced="^2" purpose="development">
<unit bldFile="os/mm/mmresourcemgmt/mmresctrl/group" mrp="os/mm/mmresourcemgmt/mmresctrl/group/multimedia_a3f_refmmrc.mrp"/>
</component>
</collection>
<collection name="mmdevicefw" long-name="Multimedia Device Framework" level="device-fw">
<component name="mdf" long-name="Media Device Framework" introduced="9.2" purpose="mandatory">
<unit bldFile="os/mm/mmdevicefw/mdf/group" mrp="os/mm/mmdevicefw/mdf/group/multimedia_mdf.mrp"/>
</component>
<component name="speechrecogsupport" long-name="Speech Recognition Support" introduced="7.0s" purpose="mandatory">
<unit bldFile="os/mm/mmdevicefw/speechrecogsupport/group" mrp="os/mm/mmdevicefw/speechrecogsupport/group/multimedia_mmf_ASR.mrp"/>
</component>
</collection>
<collection name="mmswadaptation" long-name="Multimedia Software Adaptation" level="adaptation">
<component name="videorenderer" long-name="Video Renderer" introduced="^3" purpose="optional">
<unit bldFile="os/mm/mmswadaptation/videorenderer/group" mrp="os/mm/mmswadaptation/videorenderer/group/multimedia_videorenderer.mrp"/>
</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"/>
</component>
<component name="a3fdevsound" long-name="A3F DevSound" introduced="^2" purpose="optional">
<unit bldFile="os/mm/devsound/a3fdevsound/group" mrp="os/mm/devsound/a3fdevsound/group/multimedia_a3f_devsound.mrp"/>
</component>
<component name="a3facf" long-name="A3F Audio Component Framework" introduced="^2" purpose="optional">
<unit bldFile="os/mm/devsound/a3facf/group" mrp="os/mm/devsound/a3facf/group/multimedia_a3f_acf.mrp"/>
</component>
<component name="devsoundpluginsupport" long-name="DevSound Plugin Support" introduced="7.0s" purpose="optional">
<unit bldFile="os/mm/devsound/devsoundpluginsupport/group" mrp="os/mm/devsound/devsoundpluginsupport/group/multimedia_mdf_devsound_pluginsupport.mrp"/>
</component>
<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">
<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">
<unit bldFile="os/mm/devsound/a3ftrace/group" mrp="os/mm/devsound/a3ftrace/group/multimedia_a3f_traces.mrp"/>
</component>
<component name="a3fsrvstart" long-name="A3F Server Start" introduced="^2" purpose="optional" plugin="Y">
<unit bldFile="os/mm/devsound/a3fsrvstart/group" mrp="os/mm/devsound/a3fsrvstart/group/multimedia_a3f_serverstart.mrp"/>
</component>
</collection>
<collection name="mmhais" long-name="Multimedia Hardware Adaptation Interfaces" level="adaptation">
<component name="devsoundhwdeviceapi" long-name="DevSound Hardware Device API" introduced="7.0s" purpose="optional">
<unit bldFile="os/mm/devsound/hwdevapi/group" mrp="os/mm/devsound/hwdevapi/group/multimedia_mdf_devsound_hwdev.mrp"/>
</component>
<component name="a3facl" long-name="A3F Audio Component Library" introduced="^2" purpose="development">
<unit bldFile="os/mm/mmhais/a3facl/group" mrp="os/mm/mmhais/a3facl/group/multimedia_a3f_acl.mrp"/>
</component>
<component name="a3fdevsoundcustomisation" long-name="A3F DevSound Customisation" introduced="^2" purpose="optional">
<unit bldFile="os/mm/mmhais/a3fdevsoundcustomisation/group" mrp="os/mm/mmhais/a3fdevsoundcustomisation/group/multimedia_a3f_devsoundadaptationinfo.mrp"/>
</component>
<component name="refacladapt" long-name="Reference ACL Adaptation" introduced="^2" purpose="optional">
<unit bldFile="os/mm/mmhais/refacladapt/group" mrp="os/mm/mmhais/refacladapt/group/multimedia_a3f_refacladaptation.mrp"/>
</component>
<component name="videohai" long-name="Video HAI" introduced="7.0s" purpose="mandatory">
<unit bldFile="os/mm/mmhais/videohai/group" mrp="os/mm/mmhais/videohai/group/multimedia_videohai.mrp"/>
</component>
<component name="dvbhreceiverhai" long-name="Mobile TV DVB-H Receiver HAI" introduced="^2" purpose="optional">
<unit bldFile="os/mm/mmhais/dvbhreceiverhai/hai/dvbh/group" mrp="os/mm/mmhais/dvbhreceiverhai/hai/dvbh/group/multimedia_mobiletv_dvbh_hai.mrp"/>
</component>
</collection>
</block>
<block name="imagingext" level="services" long-name="Imaging Extensions" levels="adaptation hw-if plugin framework server app-if">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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="^4" 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">
<unit bldFile="os/imagingext/imageadaptationextensions/iclextjpegapi/group"/>
</component>
<component name="imageadaptationextensions_build" filter="s60" long-name="Image Adaptation Extensions Build">
<!--  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">
<unit bldFile="os/imagingext/imagingmodules/exiflib/group"/>
</component>
<component name="jp2kcodec" filter="s60" long-name="JPEG2000 Decoder Plugin" 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">
<collection name="graphicsaccelaration" long-name="Graphics Acceleration" level="adaptation">
<component name="vgi" filter="s60" long-name="VGI">
<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">
<unit bldFile="os/graphics/m3g/m3gcore11/group"/>
</component>
</collection>
<collection name="graphicsresourceservices" long-name="Graphics Resource Services" level="engines">
<component name="graphicsresource" long-name="Graphics Resource" introduced="^3" deprecated="^3" purpose="optional">
<unit bldFile="os/graphics/graphicsresourceservices/graphicsresource/group" mrp="os/graphics/graphicsresourceservices/graphicsresource/group/graphics_graphicsresource.mrp"/>
</component>
<component name="graphicsresourceadaptation" long-name="Graphics Resource Adaptation" introduced="^3" deprecated="^3" purpose="optional">
<unit bldFile="os/graphics/graphicsresourceservices/graphicsresourceadaptation/group" mrp="os/graphics/graphicsresourceservices/graphicsresourceadaptation/group/graphics_graphicsresourceadapter.mrp"/>
</component>
<component name="graphicsresourceimplementation" long-name="Graphics Resource Implementation" introduced="^4" purpose="optional">
<unit bldFile="os/graphics/graphicsresourceservices/graphicsresourceimplementation/group" mrp="os/graphics/graphicsresourceservices/graphicsresourceimplementation/group/graphics_graphicsresourceimplementation.mrp"/>
</component>
<component name="graphicsresourceinterface" long-name="Graphics Resource Interface" introduced="^4" purpose="optional">
<unit bldFile="os/graphics/graphicsresourceservices/graphicsresourceinterface/group" mrp="os/graphics/graphicsresourceservices/graphicsresourceinterface/group/graphics_graphicsresourceinterface.mrp"/>
</component>
</collection>
<collection name="graphicsutils" long-name="Graphics Utils" level="engines">
<component name="commongraphicsheaders" long-name="Common Graphics Headers" introduced="^3" purpose="mandatory">
<unit bldFile="os/graphics/graphicsutils/commongraphicsheaders/group" mrp="os/graphics/graphicsutils/commongraphicsheaders/group/graphics_commonheader.mrp"/>
</component>
</collection>
<collection name="graphicshwdrivers" long-name="Graphics Hardware Drivers" level="adaptation">
<!-- displayldd to be moved here -->
<component name="surfacemgr" long-name="Surface Manager" introduced="^3" purpose="optional">
<unit bldFile="os/graphics/graphicshwdrivers/surfacemgr/group" mrp="os/graphics/graphicshwdrivers/surfacemgr/group/graphics_surfacemanager.mrp"/>
</component>
</collection>
<collection name="graphicscomposition" long-name="Graphics Composition" level="engines">
<component name="openwfcinterface" long-name="OpenWF Composition Interface" introduced="^3" purpose="optional">
<unit bldFile="os/graphics/graphicscomposition/openwfcinterface/group" mrp="os/graphics/graphicscomposition/openwfcinterface/group/graphics_openwfcinterface.mrp"/>
</component>
<component name="openwfcompositionengine" long-name="OpenWF Composition Engine" introduced="^3" purpose="development">
<unit bldFile="os/graphics/graphicscomposition/openwfcompositionengine/group" mrp="os/graphics/graphicscomposition/openwfcompositionengine/group/graphics_openwfcompositionengine.mrp"/>
</component>
<component name="openwfsupport" long-name="OpenWF Support" introduced="^3" purpose="optional">
<unit bldFile="os/graphics/graphicscomposition/openwfsupport/group" mrp="os/graphics/graphicscomposition/openwfsupport/group/graphics_openwfsupport.mrp"/>
</component>
<component name="surfaceupdate" long-name="Surface Update" introduced="^3" purpose="optional">
<unit bldFile="os/graphics/graphicscomposition/surfaceupdate/group" mrp="os/graphics/graphicscomposition/surfaceupdate/group/graphics_surfaceupdate.mrp"/>
</component>
</collection>
<collection name="graphicstest" long-name="Graphics Test" level="app-if">
<component name="uibench" long-name="UI Bench" introduced="9.2" purpose="development">
<unit bldFile="os/graphics/graphicstest/uibench/group" mrp="os/graphics/graphicstest/uibench/group/graphics_ui_bench.mrp"/>
</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">
<unit bldFile="os/graphics/graphics_plat/m3g_core_api/group"/>
</component>
</collection>
<collection name="graphics_info" long-name="Graphics Info" level="app-if">
<component name="graphicsdocs" long-name="Graphics Documentation" purpose="development" class="doc">
<unit mrp="os/graphics/graphics_info/graphicsdocs/graphics_documentation.mrp"/>
</component>
<component name="graphics_metadata" long-name="Graphics Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/graphics/graphics_info/graphics_metadata/graphics_metadata.mrp"/>
</component>
</collection>
<collection name="windowing" long-name="Windowing" level="app-if">
<component name="windowserver" long-name="Window Server" purpose="mandatory">
<unit bldFile="os/graphics/windowing/windowserver/group" mrp="os/graphics/windowing/windowserver/group/graphics_wserv.mrp"/>
</component>
<component name="windowserverplugins" long-name="Window Server Plugins" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="os/graphics/windowing/windowserverplugins/group" mrp="os/graphics/windowing/windowserverplugins/group/graphics_wserv_std_plugins.mrp"/>
</component>
</collection>
<collection name="printingservices" long-name="Printing Services" level="app-if">
<component name="printerdriversupport" long-name="Printer Driver Support" purpose="optional">
<unit bldFile="os/graphics/printingservices/printerdriversupport/group" mrp="os/graphics/printingservices/printerdriversupport/group/graphics_pdrstore.mrp"/>
</component>
<component name="printerdrivers" long-name="Printer Drivers" purpose="optional" plugin="Y">
<unit bldFile="os/graphics/printingservices/printerdrivers/group" mrp="os/graphics/printingservices/printerdrivers/group/graphics_printdrv.mrp"/>
</component>
</collection>
<collection name="fbs" long-name="Font and Bitmap Server" level="device-interface">
<component name="fontandbitmapserver" long-name="Font and Bitmap Server" purpose="mandatory">
<unit bldFile="os/graphics/fbs/fontandbitmapserver/group" mrp="os/graphics/fbs/fontandbitmapserver/group/graphics_fbserv.mrp"/>
</component>
</collection>
<collection name="opengles" long-name="OpenGLES" level="internal-adaptations">
<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">
<unit bldFile="os/graphics/opengles/openglesinterface/group/opengles_stub"/>
</component>
</collection>
<collection name="openvg" long-name="OpenVG" level="internal-adaptations">
<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">
<!-- 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">
<unit bldFile="os/graphics/openvg/openvgrefimplementation/sfopenvg/group"/>
</component>
</collection>
<collection name="egl" long-name="EGL" level="internal-adaptations">
<component name="eglinterface" long-name="EGL Interface" introduced="^2" purpose="optional">
<unit bldFile="os/graphics/egl/eglinterface/group" mrp="os/graphics/egl/eglinterface/group/graphics_eglheaders.mrp"/>
</component>
<component name="eglswitch" long-name="EGL Switch" introduced="^3" purpose="optional">
<unit bldFile="os/graphics/egl/eglswitch/group" mrp="os/graphics/egl/eglswitch/group/graphics_eglswitch.mrp"/>
</component>
<component name="eglrefimpl" long-name="EGL Reference Implementation" introduced="^3" purpose="optional">
<unit bldFile="os/graphics/egl/eglrefimpl/group" mrp="os/graphics/egl/eglrefimpl/group/graphics_eglrefimpl.mrp"/>
</component>
<component name="egltest" long-name="EGL Tests" introduced="^3" purpose="development">
<unit bldFile="os/graphics/egl/egltest/group" mrp="os/graphics/egl/egltest/group/graphics_egltest.mrp"/>
</component>
</collection>
<collection name="graphicsdeviceinterface" long-name="Graphics Device Interface" level="device-interface">
<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">
<unit bldFile="os/graphics/graphicsdeviceinterface/bitgdi/group" mrp="os/graphics/graphicsdeviceinterface/bitgdi/group/graphics_bitgdi.mrp"/>
</component>
<component name="colourpalette" long-name="Colour Palette" introduced="7.0s" purpose="optional">
<unit bldFile="os/graphics/graphicsdeviceinterface/colourpalette/group" mrp="os/graphics/graphicsdeviceinterface/colourpalette/group/graphics_palette.mrp"/>
</component>
<component name="screendriver" long-name="Screen Driver" introduced="6.1" purpose="optional" plugin="Y">
<unit bldFile="os/graphics/graphicsdeviceinterface/screendriver/group" mrp="os/graphics/graphicsdeviceinterface/screendriver/group/graphics_screendriver.mrp"/>
</component>
<component name="directgdi" long-name="DirectGDI" introduced="^3" deprecated="^3" purpose="optional">
<unit bldFile="os/graphics/graphicsdeviceinterface/directgdi/group" mrp="os/graphics/graphicsdeviceinterface/directgdi/group/graphics_directgdi.mrp"/>
</component>
<component name="directgdiinterface" long-name="DirectGDI Interface" introduced="^3" deprecated="^3" purpose="optional">
<unit bldFile="os/graphics/graphicsdeviceinterface/directgdiinterface/group" mrp="os/graphics/graphicsdeviceinterface/directgdiinterface/group/graphics_directgdiheaders.mrp"/>
</component>
<component name="directgdiadaptation" long-name="DirectGDI Adaptation" introduced="^3" deprecated="^3" purpose="optional">
<unit bldFile="os/graphics/graphicsdeviceinterface/directgdiadaptation/group" mrp="os/graphics/graphicsdeviceinterface/directgdiadaptation/group/graphics_directgdiadapter.mrp"/>
</component>
</collection>
<collection name="graphicstools" long-name="Graphics Tools" level="internal-utils">
<component name="gdi_tools" long-name="GDI Tools" purpose="development" class="PC">
<unit bldFile="os/graphics/graphicstools/gdi_tools/group" mrp="os/graphics/graphicstools/gdi_tools/group/graphics_gditools.mrp"/>
</component>
</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">
<collection name="textandloc_plat" long-name="Text and Localisation Platform Interfaces" level="text">
<component name="findutil_api" long-name="Find Util API" filter="s60" class="api">
<unit bldFile="os/textandloc/textandloc_plat/findutil_api/group"/>
</component>
<component name="japanese_language_utilities_api" long-name="Japanese Language Utilities API" filter="s60" class="api">
<unit bldFile="os/textandloc/textandloc_plat/japanese_language_utilities_api/group"/>
</component>
<component name="sortutil_api" long-name="Sort Util API" filter="s60" class="api">
<unit bldFile="os/textandloc/textandloc_plat/sortutil_api/group"/>
</component>
</collection>
<collection name="textandloc_pub" long-name="Text and Localisation Public Interfaces" level="text">
<component name="directory_localizer_api" long-name="Directory Localizer API" filter="s60" class="api">
<unit bldFile="os/textandloc/textandloc_pub/directory_localizer_api/group"/>
</component>
</collection>
<collection name="charconvfw" long-name="Character Conversion" level="encoding">
<component name="charconv_fw" long-name="Character Encoding and Conversion Framework" purpose="optional">
<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" plugin="Y">
<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" plugin="Y">
<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">
<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">
<unit bldFile="os/textandloc/fontservices/fontstore/group" mrp="os/textandloc/fontservices/fontstore/group/graphics_fntstore.mrp"/>
</component>
<component name="textbase" long-name="Text Base" purpose="mandatory" class="placeholder">
<!-- placeholder for text code from GDI -->
</component>
<component name="freetypefontrasteriser" long-name="FreeType Font Rasteriser" purpose="optional" plugin="Y">
<unit bldFile="os/textandloc/fontservices/freetypefontrasteriser/group" mrp="os/textandloc/fontservices/freetypefontrasteriser/group/graphics_freetype.mrp"/>
</component>
<component name="referencefonts" long-name="Reference Fonts" introduced="6.0" purpose="optional">
<unit bldFile="os/textandloc/fontservices/referencefonts/group" mrp="os/textandloc/fontservices/referencefonts/group/graphics_fonts.mrp"/>
</component>
</collection>
<collection name="textlayout" long-name="Text Layout" level="text">
<component name="texthandling" long-name="Text Handling" purpose="optional">
<unit bldFile="os/textandloc/textrendering/texthandling/group" mrp="os/textandloc/textrendering/texthandling/group/app-framework_etext.mrp"/>
</component>
<component name="textformatting" long-name="Text Formatting" purpose="optional">
<unit bldFile="os/textandloc/textrendering/textformatting/group" mrp="os/textandloc/textrendering/textformatting/group/app-framework_form.mrp"/>
</component>
</collection>
<collection name="textandlocutils" long-name="Text and Localisation Utils" level="util">
<component name="numbergrouping" long-name="Number Grouping">
<unit bldFile="os/textandloc/charconvfw/numbergrouping/group"/>
</component>
<component name="jplangutil" long-name="Japanese Language Utilities">
<unit bldFile="os/textandloc/charconvfw/jplangutil/group"/>
</component>
<component name="sortutil" long-name="Sorting Utility">
<unit bldFile="os/textandloc/charconvfw/sortutil/group"/>
</component>
<component name="inlinetext" long-name="Inline Text">
<unit bldFile="os/textandloc/charconvfw/inlinetext/group"/>
</component>
<component name="nearestlangutil" long-name="Nearest Language Util" introduced="^2" purpose="mandatory" class="placeholder">
<!-- placeholder for split from bafl -->
</component>
<component name="numberformatting" long-name="Number Formatting" introduced="7.0s" purpose="optional">
<unit bldFile="os/textandloc/textrendering/numberformatting/group" mrp="os/textandloc/textrendering/numberformatting/group/app-framework_numberconversion.mrp"/>
</component>
</collection>
<collection name="localesupport" long-name="Locale Support" level="util">
<component name="reflocales" long-name="Reference Locales" purpose="optional" plugin="Y">
<unit bldFile="os/textandloc/localisation/localesupport" mrp="os/textandloc/localisation/localesupport/mmpfiles/base_loce32.mrp"/>
</component>
<component name="initlocale" long-name="Initialise Locale" introduced="^2" purpose="mandatory" class="placeholder">
<!-- placeholder for split from bafl -->
</component>
</collection>
<collection name="textandloctools" long-name="Text and Localisation Tools" level="tools">
<component name="fontcompiler" long-name="Font Compiler" purpose="development" class="placeholder PC">
<!-- placeholder for split from GDI Tools -->
</component>
<component name="bitmapfonttools" long-name="Bitmap Font Tools" purpose="development" class="PC">
<unit bldFile="os/graphics/graphicstools/bitmapfonttools/group" mrp="os/graphics/graphicstools/bitmapfonttools/group/graphics_gdtran.mrp"/>
</component>
</collection>
<collection name="textandloc_info" long-name="Text and Localisation Info" level="text">
<component name="textandloc_metadata" long-name="Text and Localisation Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/textandloc/textandloc_info/textandloc_metadata/textandloc_metadata.mrp"/>
</component>
</collection>
</block>
<block name="xmlsrv" level="services" long-name="XML Services" levels="plugin server framework generic specific">
<collection name="xmlsrv_plat" long-name="XML Services Platform Interfaces" level="specific">
<component name="xmlsrv_plat_build" long-name="XML Services Platform Interface Build" filter="s60" class="api">
<!-- need to fix the configuration used here. 
	  Either destribute to other components or use the new feature flags confguration mechanisms.
	  Remove this component and uncomment the other units when fixed-->
<unit bldFile="os/xmlsrv/xmlsrv_plat/group"/>
</component>
<component name="xml_encryption_api" long-name="XML Encryption API" filter="s60" class="api placeholder">
<!-- <unit bldFile="xmlsrv_plat/xml_encryption_api/group"/> -->
</component>
<component name="xml_signature_api" long-name="XML Signature API" filter="s60" class="api placeholder">
<!-- <unit bldFile="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 placeholder">
<!-- <unit bldFile="xmlsrv_plat/xml_security_engine_utils_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">
<unit bldFile="os/xmlsrv/xmlsecurityengine/xmlseccertman/group"/>
</component>
<component name="xmlsec" filter="s60" long-name="XML Security">
<unit bldFile="os/xmlsrv/xmlsecurityengine/xmlsec/group"/>
</component>
<component name="xmlseccrypto" filter="s60" long-name="XML Security Crypto">
<unit bldFile="os/xmlsrv/xmlsecurityengine/xmlseccrypto/group"/>
</component>
<component name="xmlsecwrapper" filter="s60" long-name="XML Security Wrapper">
<unit bldFile="os/xmlsrv/xmlsecurityengine/xmlsecwrapper/group"/>
</component>
</collection>
<collection name="xml" long-name="XML" level="generic">
<component name="xmlfw" long-name="XML Framework" introduced="7.0s" purpose="optional">
<unit bldFile="os/xmlsrv/xml/xmlfw/group" mrp="os/xmlsrv/xml/xmlfw/group/syslibs_xml.mrp"/>
</component>
<component name="libxml2libs" long-name="Libxml2 Libraries" introduced="^3" purpose="optional">
<unit bldFile="os/xmlsrv/xml/libxml2libs/group" mrp="os/xmlsrv/xml/libxml2libs/group/syslibs_libxml2.mrp"/>
</component>
<component name="legacyminidomparser" long-name="Legacy Mini-DOM Parser" introduced="7.0s" purpose="optional">
<unit bldFile="os/xmlsrv/xml/legacyminidomparser/GROUP" mrp="os/xmlsrv/xml/legacyminidomparser/GROUP/syslibs_legacyminidomparser.mrp"/>
</component>
<component name="xmldomandxpath" long-name="XML DOM and XPath" introduced="^3" purpose="optional">
<unit bldFile="os/xmlsrv/xml/xmldomandxpath/group" mrp="os/xmlsrv/xml/xmldomandxpath/group/syslibs_xmldom.mrp"/>
</component>
<component name="xmlexpatparser" long-name="XML Expat Parser" introduced="7.0s" purpose="optional" plugin="Y">
<unit bldFile="os/xmlsrv/xml/xmlexpatparser/group" mrp="os/xmlsrv/xml/xmlexpatparser/group/syslibs_xmlparser.mrp"/>
</component>
<component name="xmllibxml2parser" long-name="XML Libxml2 Parser" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="os/xmlsrv/xml/xmllibxml2parser/group" mrp="os/xmlsrv/xml/xmllibxml2parser/group/syslibs_xmlparser2.mrp"/>
</component>
<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"/>
</component>
</collection>
<collection name="xmlsrv_info" long-name="XML Services Info" level="specific">
<component name="xmlsrv_metadata" long-name="XML Services Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/xmlsrv/xmlsrv_info/xmlsrv_metadata/xmlsrv_metadata.mrp"/>
</component>
</collection>
</block>
<block name="deviceplatformrelease" level="services" long-name="Device Platform Release" levels="bld mid top">
<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">
<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">
<unit bldFile="os/deviceplatformrelease/Version/group"/>
</component>
</collection>
<collection name="symbianosbld" long-name="Symbian OS Build" level="bld">
<component name="cedarutils" long-name="Cedar Utils" purpose="development">
<unit mrp="os/deviceplatformrelease/symbianosbld/cedarutils/tools_utils_cedar.mrp"/>
</component>
<component name="productionbldcbrconfig" long-name="Production Build CBR Config" filter="gt" purpose="development" class="config">
<unit mrp="os/deviceplatformrelease/symbianosbld/productionbldcbrconfig/product_cbr_config.mrp"/>
</component>
</collection>
<collection name="foundation_system" long-name="Foundation System" level="top">
<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" long-name="Foundation Config" introduced="^4">
<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">
<!-- will should give the id/path something more unique than cenrep -->
<unit bldFile="os/deviceplatformrelease/foundation_system/sf_config/cenrep/group"/>
</component>
<!-- comment out until rom configs are added -->
<!-- component name="rombuild_syborg" filter="sf_build" long-name="Syborg iMaker Config" purpose="development" introduced="^3" 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">
<unit bldFile="os/deviceplatformrelease/foundation_system/sf_config/rombuild/zoom2/group"/>
</component -->
<component name="sbs" filter="sf_build" long-name="Foundation SBS config" purpose="development" class="config">
<!-- will should give the id/path something more unique than sbs -->
<unit bldFile="os/deviceplatformrelease/foundation_system/sf_config/sbs/group"/>
</component>
</collection>
<collection name="deviceplatformrelease_info" long-name="Device Platform Release Info" level="top">
<component name="deviceplatformrelease_metadata" long-name="Device Platform Release Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/deviceplatformrelease/deviceplatformrelease_info/deviceplatformrelease_metadata/deviceplatformrelease_metadata.mrp"/>
</component>
</collection>
</block>
<block name="osrndtools" level="services" long-name="OS R&amp;D tools" levels="fw trace">
<collection name="stif" long-name="STIF" level="fw">
<component name="stif_plat" filter="s60" long-name="STIF Platform Interfaces" purpose="development" class="api">
<unit bldFile="os/osrndtools/stif/stif_plat/group"/>
</component>
<component name="testinterface" filter="s60" long-name="Test Interface" purpose="development">
<unit bldFile="os/osrndtools/stif/testinterface/group"/>
</component>
<component name="testserver" filter="s60" long-name="Test Server" purpose="development">
<unit bldFile="os/osrndtools/stif/testserver/group"/>
</component>
<component name="testengine" filter="s60" long-name="Test Engine" purpose="development">
<unit bldFile="os/osrndtools/stif/testengine/group"/>
</component>
<component name="testserverstarter" filter="s60" long-name="Test Server Starter" purpose="development">
<unit bldFile="os/osrndtools/stif/testserverstarter/group"/>
</component>
<component name="stiftfwif" filter="s60" long-name="STIF Test Framework Interface" purpose="development">
<unit bldFile="os/osrndtools/stif/stiftfwif/group"/>
</component>
<component name="consoleui" filter="s60" long-name="Console UI" purpose="development">
<unit bldFile="os/osrndtools/stif/consoleui/group"/>
</component>
<component name="testcombiner" filter="s60" long-name="Test Combiner" purpose="development">
<unit bldFile="os/osrndtools/stif/testcombiner/group"/>
</component>
<component name="demomodule" filter="s60" long-name="Demo Module" purpose="development">
<unit bldFile="os/osrndtools/stif/demomodule/group"/>
</component>
<component name="atslogger" filter="s60" long-name="ATS Logger" purpose="development">
<unit bldFile="os/osrndtools/stif/atslogger/group"/>
</component>
<component name="atsinterface" filter="s60" long-name="ATS Interface" purpose="development">
<unit bldFile="os/osrndtools/stif/atsinterface/group"/>
</component>
<component name="testscripter" filter="s60" long-name="Test Scripter" purpose="development">
<unit bldFile="os/osrndtools/stif/testscripter/group"/>
</component>
<component name="suevent" filter="s60" long-name="SU Event" purpose="development">
<unit bldFile="os/osrndtools/stif/suevent/group"/>
</component>
<component name="stifkerneltestclassbase" filter="s60" long-name="STIF Kernel Test Class Base" purpose="development">
<!-- uncomment the unit when configuration is in place, it's currently #included from stif_build -->
<!-- <unit bldFile="stif/stifkerneltestclassbase/group"/>-->
</component>
<component name="stif_build" filter="s60" long-name="STIF Build" purpose="development">
<!--  move exports into self-contained component. Remove this when configuration is in place-->
<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">
<unit bldFile="os/osrndtools/memspy/memspy_plat/group"/>
</component>
<component name="driver" filter="s60" long-name="Memspy Driver" purpose="development">
<unit bldFile="os/osrndtools/memspy/driver/group"/>
</component>
<component name="memspy_engine" filter="s60" long-name="Memspy Engine" purpose="development">
<unit bldFile="os/osrndtools/memspy/engine/group"/>
</component>
<component name="commandline" filter="s60" long-name="Memspy Command Line" purpose="development">
<unit bldFile="os/osrndtools/memspy/commandline/group"/>
</component>
<component name="console" filter="s60" long-name="Memspy Console" purpose="development">
<unit bldFile="os/osrndtools/memspy/console/group"/>
</component>
<component name="memspy_build" filter="s60" long-name="Memspy Build" 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">
<unit bldFile="os/osrndtools/hti/hti_plat/group"/>
</component>
<component name="hticfg" filter="s60" long-name="HTI Config" purpose="development">
<unit bldFile="os/osrndtools/hti/hticfg/group"/>
</component>
<component name="htiautostart" filter="s60" long-name="HTI Autostart" purpose="development">
<unit bldFile="os/osrndtools/hti/htiautostart/group"/>
</component>
<component name="htiframework" filter="s60" long-name="HTI Framework" purpose="development">
<unit bldFile="os/osrndtools/hti/htiframework/group"/>
</component>
<component name="hticommplugins" filter="s60" long-name="HTI Communication Plugins" 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">
<!-- 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"/>
<unit bldFile="os/osrndtools/hti/HtiServicePlugins/HtiFtpServicePlugin/group"/>
<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">
<unit bldFile="os/osrndtools/hti/htifilehlp/group"/>
</component>
<component name="htiwatchdog" filter="s60" long-name="HTI Watchdog" purpose="development">
<unit bldFile="os/osrndtools/hti/htiwatchdog/group"/>
</component>
<component name="hti_build" filter="s60" long-name="HTI Build" purpose="development">
<!--  move exports into self-contained component.-->
<unit bldFile="os/osrndtools/hti/group"/>
</component>
</collection>
<collection name="osrndtools_info" long-name="OS R&amp;D tools Info" level="trace">
<component name="osrndtools_metadata" long-name="OS R&amp;D tools Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="os/osrndtools/osrndtools_info/osrndtools_metadata/osrndtools_metadata.mrp"/>
</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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="mw/appsupport/appsupport_plat/flash_netscape_plugin_command_api/group"/>
</component>
</collection>
<collection name="contextframework" long-name="Context Framework" level="framework">
<!-- the units that are commented out need to be put back when configuration is in place.
		They're currently #included by contextframework_build, which should be removed when the other units are uncommented -->
<component name="cfw" filter="s60" long-name="Context Framework">
<!--<unit bldFile="contextframework/cfw/group"/> -->
</component>
<component name="cfwplugins" filter="s60" long-name="Context Framework Plugins" plugin="Y">
<!--<unit bldFile="contextframework/cfwplugins/group"/>-->
</component>
<component name="contextframework_build" filter="s60" long-name="Context Framework Build">
<unit bldFile="mw/appsupport/contextframework/group"/>
</component>
</collection>
<collection name="coreapplicationuis" long-name="Core Application UIs" level="server">
<component name="dbrecovery" filter="s60" long-name="Database Recovery">
<unit bldFile="mw/appsupport/coreapplicationuis/dbrecovery/group"/>
</component>
<component name="nspswsplugin" filter="s60" long-name="NSPS WS Plugin" 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">
<unit bldFile="mw/appsupport/coreapplicationuis/rfs/group"/>
</component>
<component name="rfsplugins" filter="s60" long-name="Restore Factory Settings Plugins" plugin="Y">
<unit bldFile="mw/appsupport/coreapplicationuis/rfsplugins/group"/>
</component>
<component name="sysap" filter="s60" long-name="System Application">
<unit bldFile="mw/appsupport/coreapplicationuis/sysap/group"/>
</component>
<component name="variatedsettings" filter="s60" long-name="Variated Settings" class="config">
<unit bldFile="mw/appsupport/coreapplicationuis/variatedsettings/group"/>
</component>
<component name="accfwuinotifier" filter="s60" long-name="Accessory Framework UI Notifier" plugin="Y">
<unit bldFile="mw/appsupport/coreapplicationuis/accfwuinotifier/group"/>
</component>
<component name="kefmapper" filter="s60" long-name="Key Event Framework">
<unit bldFile="mw/appsupport/coreapplicationuis/kefmapper/group"/>
</component>
<component name="advancedtspcontroller" filter="s60" long-name="Advanced TSP Controller">
<unit bldFile="mw/appsupport/coreapplicationuis/advancedtspcontroller/group"/>
</component>
<component name="powersaveutilities" filter="s60" long-name="Power Save Utilities">
<unit bldFile="mw/appsupport/coreapplicationuis/powersaveutilities/group"/>
</component>
<component name="gsserverenginestub" filter="s60" long-name="GS Server Engine Stub" deprecated="^4">
<unit bldFile="mw/appsupport/coreapplicationuis/gsserverenginestub/group"/>
</component>
<component name="gsserverengine" filter="s60" long-name="GS Server Engine" deprecated="^4">
<unit bldFile="mw/appsupport/coreapplicationuis/gsserverengine/group"/>
</component>
<component name="sensordatacompensatorplugin" filter="s60" long-name="Sensor Data Compensator Plugin" plugin="Y">
<unit bldFile="mw/appsupport/coreapplicationuis/sensordatacompensatorplugin/group"/>
</component>
<component name="atcmdplugin" long-name="AT Command Plugin" filter="s60,!oem_build" plugin="Y">
<unit bldFile="mw/appsupport/coreapplicationuis/atcmdplugin/group"/>
</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"/>
</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">
<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">
<unit bldFile="mw/appsupport/startupservices/splashscreen/group"/>
</component>
<component name="startupanimation" filter="s60" long-name="Startup Animation">
<unit bldFile="mw/appsupport/startupservices/startupanimation/group"/>
</component>
<component name="startup" long-name="Startup Application" filter="s60">
<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">
<unit bldFile="mw/appsupport/sysresmonitoring/oodmonitor/group"/>
</component>
<component name="oommonitor" filter="s60" long-name="OOM Monitor" introduced="7.0s">
<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">
<unit bldFile="mw/appsupport/systemsettings/gssensorplugin/group"/>
</component>
<component name="gsaccessoryplugin" filter="s60" long-name="GS Accessory Plugin" plugin="Y">
<unit bldFile="mw/appsupport/systemsettings/gsaccessoryplugin/group"/>
</component>
</collection>
<collection name="filehandling" long-name="File Handling" level="server">
<component name="fileconverterfw" long-name="File Converter Framework" purpose="optional">
<unit bldFile="mw/appsupport/filehandling/fileconverterfw/group" mrp="mw/appsupport/filehandling/fileconverterfw/group/app-framework_conarc.mrp"/>
</component>
<component name="htmltorichtextconverter" long-name="HTML to RichText Converter" introduced="7.0" purpose="optional" plugin="Y">
<unit bldFile="mw/appsupport/filehandling/htmltorichtextconverter/group" mrp="mw/appsupport/filehandling/htmltorichtextconverter/group/app-services_chtmltocrtconv.mrp"/>
</component>
<component name="richtexttohtmlconverter" long-name="RichText to HTML Converter" introduced="7.0s" purpose="optional" plugin="Y">
<unit bldFile="mw/appsupport/filehandling/richtexttohtmlconverter/Group" mrp="mw/appsupport/filehandling/richtexttohtmlconverter/Group/app-services_richtexttohtmlconv.mrp"/>
</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">
<unit bldFile="mw/appsupport/hwresourceadaptation/hwresourcemgruiplugin/group" mrp="mw/appsupport/hwresourceadaptation/hwresourcemgruiplugin/group/telephony_hwrmuiplugin.mrp"/>
</component>
</collection>
<collection name="commonappservices" long-name="Common Application Services" level="framework">
<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">
<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">
<unit mrp="mw/appsupport/commonappservices/appservicesdocs/app-services_documentation.mrp"/>
</component>
<component name="backuprestorenotification" long-name="Backup Restore Notification" introduced="8.1" purpose="optional">
<unit bldFile="mw/appsupport/commonappservices/backuprestorenotification/group" mrp="mw/appsupport/commonappservices/backuprestorenotification/group/app-services_BackupRestoreNotification.mrp"/>
</component>
</collection>
<collection name="tzservices" long-name="Time Zone Services" level="plugin">
<component name="tzserver" long-name="Time Zone Server" introduced="9.1" purpose="optional">
<unit bldFile="mw/appsupport/tzservices/tzserver/group" mrp="mw/appsupport/tzservices/tzserver/group/app-services_tz.mrp"/>
</component>
<component name="tzloc" long-name="Time Zone Localization" introduced="9.1" purpose="optional">
<unit bldFile="mw/appsupport/tzservices/tzloc/group" mrp="mw/appsupport/tzservices/tzloc/group/app-services_timezonelocalization.mrp"/>
</component>
<component name="tzlocrscfactory" long-name="Time Zone Localization Resource Factory" introduced="9.1" purpose="optional" class="config">
<unit bldFile="mw/appsupport/tzservices/tzlocrscfactory/group" mrp="mw/appsupport/tzservices/tzlocrscfactory/group/app-services_tzlocalizationrscfactory.mrp"/>
</component>
<component name="tzdatabase" long-name="Time Zone Database" introduced="9.1" purpose="optional" class="config">
<unit bldFile="mw/appsupport/tzservices/tzdatabase/group" mrp="mw/appsupport/tzservices/tzdatabase/group/app-services_tzdb.mrp"/>
</component>
</collection>
<collection name="contenthandling" long-name="Content Handling" level="plugin">
<component name="webrecognisers" long-name="Web Recognisers" purpose="optional" plugin="Y">
<unit bldFile="mw/appsupport/contenthandling/webrecognisers/group" mrp="mw/appsupport/contenthandling/webrecognisers/group/application-protocols_recognisers.mrp"/>
</component>
</collection>
<collection name="openenvutils" long-name="Open Environment Utilities" level="specific">
<component name="commandshell" long-name="Command Shell" introduced="^3" purpose="development">
<unit bldFile="mw/appsupport/openenvutils/commandshell/group" mrp="mw/appsupport/openenvutils/commandshell/group/oetools_zsh.mrp"/>
</component>
<component name="telnetserver" long-name="Telnet Server" introduced="^3" purpose="development">
<unit bldFile="mw/appsupport/openenvutils/telnetserver/group" mrp="mw/appsupport/openenvutils/telnetserver/group/oetools_telnetd.mrp"/>
</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">
<unit bldFile="mw/appsupport/printingsupport/printinguisupport/group" mrp="mw/appsupport/printingsupport/printinguisupport/group/app-framework_print.mrp"/>
</component>
</collection>
<collection name="appfw" long-name="Application Framework" level="framework">
<component name="apparchitecture" long-name="Application Architecture" purpose="mandatory">
<unit bldFile="mw/appsupport/appfw/apparchitecture/group" mrp="mw/appsupport/appfw/apparchitecture/group/app-framework_apparc.mrp"/>
</component>
<component name="viewserver" long-name="View Server" introduced="6.0" purpose="mandatory">
<unit bldFile="mw/appsupport/appfw/viewserver/group" mrp="mw/appsupport/appfw/viewserver/group/app-framework_viewsrv.mrp"/>
</component>
</collection>
<collection name="applaunchservices" long-name="Application Launch Services" level="generic">
<component name="aftermarketappstarter" long-name="After Market Application Starter" introduced="^3" purpose="optional">
<unit bldFile="mw/appsupport/applaunchservices/aftermarketappstarter/group" mrp="mw/appsupport/applaunchservices/aftermarketappstarter/group/app-framework_amastart.mrp"/>
</component>
<component name="applaunchplugins" long-name="Application Launch Plugins" introduced="^3" purpose="optional">
<unit bldFile="mw/appsupport/applaunchservices/applaunchplugins/group" mrp="mw/appsupport/applaunchservices/applaunchplugins/group/app-framework_aplp.mrp"/>
</component>
</collection>
<collection name="tzpcside" long-name="Time Zone PC Side" level="plugin">
<component name="tzcompiler" long-name="Time Zone Compiler" introduced="9.1" purpose="optional" class="config PC">
<unit bldFile="mw/appsupport/tzpcside/tzcompiler/group" mrp="mw/appsupport/tzpcside/tzcompiler/group/app-services_tzcompiler.mrp"/>
</component>
</collection>
<collection name="appsupport_info" long-name="Generic Application Support Info" level="specific">
<component name="appsupport_metadata" long-name="Generic Application Support Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="mw/appsupport/appsupport_info/appsupport_metadata/appsupport_metadata.mrp"/>
</component>
</collection>
</block>
<block name="securitysrv" level="generic" long-name="Security Services" levels="plugin framework server generic specific">
<collection name="secsrv_plat" long-name="Security Services Platform Interfaces" level="specific">
<component name="cms_api" long-name="CMS API" filter="s60" 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">
<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">
<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">
<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">
<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">
<unit bldFile="mw/securitysrv/secsrv_plat/x509certnameparser_api/group"/>
</component>
<component name="remote_lock_api" long-name="Remote Lock API" filter="s60" 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">
<unit bldFile="mw/securitysrv/secsrv_plat/pkidialog_api/group"/>
</component>
<component name="provisioning_api" long-name="Provisioning API" filter="s60" 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">
<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">
<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">
<unit bldFile="mw/securitysrv/secsrv_plat/security_code_ui_api/group"/>
</component>
<component name="gba_api" long-name="GBA API" filter="s60" 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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="mw/securitysrv/pkiutilities/x509certnameparser/group"/>
</component>
<component name="pkcs12" filter="s60" long-name="PKCS #12">
<unit bldFile="mw/securitysrv/pkiutilities/pkcs12/group"/>
</component>
<component name="certmanui" filter="s60" long-name="Certificate Management UI">
<unit bldFile="mw/securitysrv/pkiutilities/certmanui/group"/>
</component>
<component name="ctsecuritydialogs" filter="s60" long-name="Crypto Token Security Dialogs">
<unit bldFile="mw/securitysrv/pkiutilities/ctsecuritydialogs/group"/>
</component>
<component name="certsaver" filter="s60" long-name="Certificate Saver">
<unit bldFile="mw/securitysrv/pkiutilities/certsaver/group"/>
</component>
<component name="secmodui" filter="s60" long-name="Security Module UI">
<unit bldFile="mw/securitysrv/pkiutilities/secmodui/group"/>
</component>
<component name="devicetoken" filter="s60" long-name="Device Token">
<unit bldFile="mw/securitysrv/pkiutilities/devicetoken/group"/>
</component>
<component name="certificates" filter="s60" long-name="Certificates">
<unit bldFile="mw/securitysrv/pkiutilities/Certificates/group" filter="sf_build"/>
</component>
<component name="pkiutilities_build" filter="s60" long-name="PKI Utilities Build">
<!-- 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>
</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">
<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">
<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">
<unit bldFile="mw/securitysrv/securitydialogs/keylockpolicyapi/group"/>
</component>
<component name="autolock" long-name="Autolock" filter="s60">
<unit bldFile="mw/securitysrv/securitydialogs/autolock/group"/>
</component>
<component name="secui" filter="s60" long-name="Security UI">
<unit bldFile="mw/securitysrv/securitydialogs/secui/group"/>
</component>
<component name="securitynotifier" filter="s60" long-name="Security Notifier">
<unit bldFile="mw/securitysrv/securitydialogs/securitynotifier/group"/>
</component>
<component name="lockclient" filter="s60" long-name="Lock Client" introduced="^4">
<unit bldFile="mw/securitysrv/securitydialogs/lockclient/group" proFile="lockclient.pro" qmakeArgs="-r"/>
</component>
<component name="lockapp" filter="s60" long-name="Lock Application" introduced="^3">
<unit bldFile="mw/securitysrv/securitydialogs/lockapp/group"/>
</component>
<component name="secuinotifications" long-name="Security UI Notifications" introduced="^4" filter="s60">
<unit bldFile="mw/securitysrv/securitydialogs/secuinotifications" proFile="secuinotifications.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">
<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">
<unit bldFile="mw/securitysrv/gba/uicc/group"/>
</component>
<component name="gbaserver" filter="s60" long-name="GBA Server" introduced="^2">
<unit bldFile="mw/securitysrv/gba/gbaserver/group"/>
</component>
<component name="gbaapi" filter="s60" long-name="GBA API" introduced="^2">
<unit bldFile="mw/securitysrv/gba/gbaapi/group"/>
</component>
<component name="gbafilter" filter="s60" long-name="GBA HTTP Filter" introduced="^2" plugin="Y">
<unit bldFile="mw/securitysrv/gba/gbafilter/group"/>
</component>
<component name="gba_build" filter="s60" long-name="Generic Boot Architecture Build" introduced="^2">
<!-- 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">
<unit bldFile="mw/securitysrv/devencdiskutils/DevEncCommonUtils/group"/>
</component>
<component name="devencrfsplugin" filter="s60" long-name="Device Encryption RFS Plugin" introduced="^3" 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">
<unit bldFile="mw/securitysrv/devencdiskutils/Pk5Recognizer/group"/>
</component>
<component name="devencstarter" filter="s60" long-name="Device Encryption Starter" introduced="^3" 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">
<!-- 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_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">
<collection name="drm_plat" long-name="DRM Platform Interfaces" level="specific">
<component name="roap_api" long-name="ROAP API" filter="s60" 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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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="drmencryptor" filter="s60" long-name="DRM Encryptor" class="placeholder">
<!-- this should have its own bld.inf or be removed as a component -->
</component>
<component name="drmsettingsplugin" filter="s60" long-name="DRM Settings Plugin" plugin="Y" class="placeholder">
<!-- this should have its own bld.inf or be removed as a component -->
</component>
<component name="drmrightsmanagerui" filter="s60" long-name="DRM Rights Manager UI">
<unit bldFile="mw/drm/commondrm/drmrightsmanagerui/help/group"/>
</component>
<component name="drmutility" filter="s60" long-name="DRM Utility">
<unit bldFile="mw/drm/commondrm/drmutility/group"/>
</component>
<component name="drmserviceapiwrapper" filter="s60" long-name="DRM Service API Wrapper">
<unit bldFile="mw/drm/commondrm/drmserviceapiwrapper/group"/>
</component>
<component name="drmrightsstoringlocation" filter="s60" long-name="DRM Rights Storing Location">
<unit bldFile="mw/drm/commondrm/drmrightsstoringlocation/group"/>
</component>
<component name="commondrm_build" filter="s60" long-name="Common DRM Build">
<!-- should be split into the above files, or them collapsed into a single component -->
<unit bldFile="mw/drm/commondrm/group"/>
</component>
</collection>
<collection name="omadrm" long-name="OMA DRM" level="server">
<!-- collection is really a component. Move down a directory -->
<component name="omadrm_build" filter="s60" long-name="OMA DRM Build">
<unit bldFile="mw/drm/omadrm/group"/>
</component>
<component name="foundationcerts" filter="sf_build" long-name="Foundation Certificates">
<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">
<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">
<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">
<unit bldFile="mw/locationsrv/locsrv_pub/landmarks_search_api/group"/>
</component>
<component name="landmarks_api" long-name="Landmarks API" filter="s60" 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">
<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">
<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">
<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">
<unit bldFile="mw/locationsrv/locsrv_plat/geocoding_api/group"/>
</component>
<component name="landmarks_category_definition_api" long-name="Landmarks Category Definition API" filter="s60" 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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="mw/locationsrv/genericpositioningplugins/locationnpppsy/group"/>
</component>
<component name="locationsuplpsy" filter="s60" long-name="Location SUPL PSY" introduced="^3" plugin="Y">
<unit bldFile="mw/locationsrv/genericpositioningplugins/locationsuplpsy/group"/>
</component>
<component name="genericpositioningplugins_build" filter="s60" long-name="Generic Positioning Plugins Build">
<!-- 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">
<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">
<unit bldFile="mw/locationsrv/locationsystemui/locationsysui/group"/>
</component>
</collection>
<collection name="supl" long-name="SUPL" level="fw">
<component name="locationsuplfw" filter="s60" long-name="Location SUPL Framework">
<unit bldFile="mw/locationsrv/supl/locationsuplfw/group"/>
</component>
<component name="locationomasuplprotocolhandler" filter="s60" long-name="OMA SUPL Protocol Handler">
<unit bldFile="mw/locationsrv/supl/locationomasuplprotocolhandler/group"/>
</component>
<component name="supltiapiimplementation" filter="s60" long-name="SUPL TI API Implementation" introduced="^3">
<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">
<unit bldFile="mw/locationsrv/locationtriggering/ltlogger/group"/>
</component>
<component name="ltclientlib" filter="s60" long-name="LT Client Library">
<unit bldFile="mw/locationsrv/locationtriggering/ltclientlib/group"/>
</component>
<component name="ltmanagementlib" filter="s60" long-name="LT Management Library">
<unit bldFile="mw/locationsrv/locationtriggering/ltmanagementlib/group"/>
</component>
<component name="ltcontainer" filter="s60" long-name="LT Container">
<unit bldFile="mw/locationsrv/locationtriggering/ltcontainer/group"/>
</component>
<component name="ltserver" filter="s60" long-name="LT Server">
<unit bldFile="mw/locationsrv/locationtriggering/ltserver/group"/>
</component>
<component name="ltstrategypluginapi" filter="s60" long-name="LT Strategy Plugin API">
<unit bldFile="mw/locationsrv/locationtriggering/ltstrategypluginapi/group"/>
</component>
<component name="ltstrategyengine" filter="s60" long-name="LT Strategy Engine">
<unit bldFile="mw/locationsrv/locationtriggering/ltstrategyengine/group"/>
</component>
<component name="ltmovementdetectionpluginapi" filter="s60" long-name="Movement Detection Plugin API">
<unit bldFile="mw/locationsrv/locationtriggering/ltmovementdetectionpluginapi/group"/>
</component>
<component name="ltcellidmovementdetector" filter="s60" long-name="Cell ID Movement Detector">
<unit bldFile="mw/locationsrv/locationtriggering/ltcellidmovementdetector/group"/>
</component>
<component name="ltcontextsourceplugin" filter="s60" long-name="LT Context Source Plugin" introduced="^3" plugin="Y">
<unit bldFile="mw/locationsrv/locationtriggering/ltcontextsourceplugin/group"/>
</component>
<component name="locationtriggering_build" filter="s60" long-name="Location Triggering Build">
<!--  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">
<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">
<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">
<unit bldFile="mw/accesssec/accesssec_plat/eap_type_api/group"/>
</component>
</collection>
<collection name="securitysettings" long-name="Security Settings" level="generic">
<component name="securitysettings_build" long-name="Security Settings Build" introduced="^4">
<unit bldFile="mw/accesssec/securitysettings" qmakeArgs="-r" proFile="securitysettings.pro"/>
</component>
</collection>
<collection name="eapol" long-name="EAPOL" level="framework">
<component name="eapol_framework" filter="s60" long-name="EAPOL Framework" introduced="9.2">
<unit bldFile="mw/accesssec/eapol/eapol_framework/eapol_symbian/group"/>
</component>
</collection>
</block>
<block name="ipconnmgmt" level="generic" long-name="IP Connectivity Management" levels="plugin framework server utils api">
<collection name="ipcm_plat" long-name="IP Connectivity Management Platform Interfaces" level="api">
<component name="access_point_engine_misc_api" long-name="Access Point Engine Misc API" filter="s60" 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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="mw/ipconnmgmt/ipcm_plat/extended_connection_settings_api/group"/>
</component>
<component name="mpm_default_connection_api" long-name="MPM Default Connection API" filter="s60" class="api">
<unit bldFile="mw/ipconnmgmt/ipcm_plat/mpm_default_connection_api/group"/>
</component>
<component name="pdpcontextmanager2_reset_factory_settings_api" long-name="PDP Context Manager 2 Reset Factory Settings API" filter="s60" 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">
<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">
<unit bldFile="mw/ipconnmgmt/ipcm_plat/mpm_connect_screen_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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="mw/ipconnmgmt/ipcm_pub/extendedconnpref_api/group"/>
</component>
</collection>
<collection name="accesspointcontrol" long-name="Access Point Control" level="plugin">
<component name="apcontrollistplugin" filter="s60" long-name="Access Point Control List Plugin" introduced="^2" plugin="Y">
<unit bldFile="mw/ipconnmgmt/accesspointcontrol/apcontrollistplugin/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">
<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">
<unit bldFile="mw/ipconnmgmt/apengine/apeng/group"/>
</component>
<component name="apsettingshandlerui" filter="s60" long-name="Access Point Settings Handler UI">
<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">
<unit bldFile="mw/ipconnmgmt/bearermanagement/mpm/group"/>
</component>
<component name="extendedconnpref" filter="s60" long-name="Extended Connection Preferences">
<unit bldFile="mw/ipconnmgmt/bearermanagement/extendedconnpref/group"/>
</component>
<component name="s60mcpr" filter="s60" long-name="S60 Meta-Connection Provider" 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">
<unit bldFile="mw/ipconnmgmt/cmmanager/cmmgr/group"/>
</component>
</collection>
<collection name="connectionmonitoring" long-name="Connection Monitoring" level="server">
<component name="connectionmonitorui" filter="s60" long-name="Connection Monitor UI">
<unit bldFile="mw/ipconnmgmt/connectionmonitoring/connectionmonitorui/group"/>
</component>
<component name="connmon" filter="s60" long-name="Connection Monitor">
<!-- 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">
<unit bldFile="mw/ipconnmgmt/connectionmonitoring/connmonext/group"/>
</component>
</collection>
<collection name="connectionutilities" long-name="Connection Utilities" level="utils">
<component name="connectiondialogs" filter="s60" long-name="Connection Dialogs">
<unit bldFile="mw/ipconnmgmt/connectionutilities/connectiondialogs/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">
<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">
<!-- uncomment when config is turned on -->
<!-- <unit bldFile="dbcreator/commsdatcreatorrfsplugin/group"/>-->
</component>
<component name="commsdatstartup" filter="s60" long-name="Comms Database Startup" introduced="9.3">
<unit bldFile="mw/ipconnmgmt/dbcreator/commsdatstartup/group"/>
</component>
<component name="dbcreatorexe" filter="s60" long-name="DB Creator" introduced="9.3">
<unit bldFile="mw/ipconnmgmt/dbcreator/dbcreatorexe/group"/>
</component>
<component name="dbcreator_build" filter="s60" long-name="DB Creator Build" introduced="9.3">
<!-- 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">
<!-- need to move exports to another component, or maek this a config component and revmove the #includes -->
<unit bldFile="mw/ipconnmgmt/group"/>
</component>
<component name="ipcm_qt_build" long-name="IP Connectivity Management Qt Build" introduced="^4">
<unit bldFile="mw/ipconnmgmt" proFile="ipconnmgmt.pro" qmakeArgs="-r"/>
</component>
</collection>
</block>
<block name="netprotocols" level="generic" long-name="High-level Internet Protocols" levels="plugin framework server generic specific">
<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">
<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">
<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">
<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">
<unit bldFile="mw/netprotocols/httpfilters/httpfiltercommon/group"/>
</component>
<component name="cookie" filter="s60" long-name="Cookie Filter" plugin="Y">
<unit bldFile="mw/netprotocols/httpfilters/cookie/group"/>
</component>
<component name="deflatefilter" filter="s60" long-name="Deflate Filter" plugin="Y">
<unit bldFile="mw/netprotocols/httpfilters/deflatefilter/group"/>
</component>
<component name="httpfilteracceptheader" filter="s60" long-name="Accept Header Filter" plugin="Y">
<unit bldFile="mw/netprotocols/httpfilters/httpfilteracceptheader/group"/>
</component>
<component name="httpfilterauthentication" filter="s60" long-name="Authentication Filter" plugin="Y">
<unit bldFile="mw/netprotocols/httpfilters/httpfilterauthentication/group"/>
</component>
<component name="httpfilterconnhandler" filter="s60" long-name="Connection Handler Fitler" plugin="Y">
<unit bldFile="mw/netprotocols/httpfilters/httpfilterconnhandler/group"/>
</component>
<component name="httpfilteriop" filter="s60" long-name="HTTP IOP Filter" plugin="Y">
<unit bldFile="mw/netprotocols/httpfilters/httpfilteriop/group"/>
</component>
<component name="httpfilterproxy" filter="s60" long-name="HTTP Proxy Filter" plugin="Y">
<unit bldFile="mw/netprotocols/httpfilters/httpfilterproxy/group"/>
</component>
<component name="uaproffilter" filter="s60" long-name="UAProf Filter" plugin="Y">
<unit bldFile="mw/netprotocols/httpfilters/uaproffilter/group"/>
</component>
</collection>
<collection name="applayerprotocols" long-name="Application Layer Protocols" level="server">
<component name="httptransportfw" long-name="HTTP Transport Framework" introduced="6.2" purpose="optional">
<unit bldFile="mw/netprotocols/applayerprotocols/httptransportfw/group" mrp="mw/netprotocols/applayerprotocols/httptransportfw/group/http_transport-framework.mrp"/>
</component>
<component name="httpexamples" long-name="HTTP Examples" introduced="6.2" purpose="development">
<unit bldFile="mw/netprotocols/applayerprotocols/httpexamples/group" mrp="mw/netprotocols/applayerprotocols/httpexamples/group/http_examples.mrp"/>
</component>
<component name="wappushsupport" long-name="WAP Push Support" introduced="6.2" purpose="optional">
<unit bldFile="mw/netprotocols/applayerprotocols/wappushsupport/Group" mrp="mw/netprotocols/applayerprotocols/wappushsupport/Group/wap-browser_wappushsupport.mrp"/>
</component>
<component name="wapbase" long-name="WAP Base" introduced="6.0" purpose="optional">
<unit bldFile="mw/netprotocols/applayerprotocols/wapbase/Group" mrp="mw/netprotocols/applayerprotocols/wapbase/Group/wap-browser_wapbase.mrp"/>
</component>
<component name="ftpengine" long-name="FTP Engine" introduced="6.0" purpose="optional">
<unit bldFile="mw/netprotocols/applayerprotocols/ftpengine/group" mrp="mw/netprotocols/applayerprotocols/ftpengine/group/networking_ftp_e.mrp"/>
</component>
<component name="telnetengine" long-name="Telnet Engine" introduced="6.0" purpose="optional">
<unit bldFile="mw/netprotocols/applayerprotocols/telnetengine/group" mrp="mw/netprotocols/applayerprotocols/telnetengine/group/networking_telnet_e.mrp"/>
</component>
<component name="httpserviceapi" long-name="HTTP Service API" introduced="TB9.2" purpose="optional">
<unit bldFile="mw/netprotocols/applayerprotocols/httpservice/group" mrp="mw/netprotocols/applayerprotocols/httpservice/group/http_service.mrp"/>
</component>
</collection>
<collection name="applayerpluginsandutils" long-name="Application Layer Plugins and Utils" level="framework">
<component name="uripermissionservices" long-name="URI Permission Services" introduced="^2" purpose="optional">
<unit bldFile="mw/netprotocols/applayerpluginsandutils/uripermissionservices/group" mrp="mw/netprotocols/applayerpluginsandutils/uripermissionservices/group/application-protocols_ineturilist.mrp"/>
</component>
<component name="bookmarksupport" long-name="Bookmark Support" introduced="9.1" purpose="optional">
<unit bldFile="mw/netprotocols/applayerpluginsandutils/bookmarksupport/group" mrp="mw/netprotocols/applayerpluginsandutils/bookmarksupport/group/application-protocols_bookmarks.mrp"/>
</component>
<component name="httpprotocolplugins" long-name="HTTP Protocol Plugins" introduced="6.2" purpose="optional" plugin="Y">
<unit bldFile="mw/netprotocols/applayerpluginsandutils/httpprotocolplugins/group" mrp="mw/netprotocols/applayerpluginsandutils/httpprotocolplugins/group/http_protocol-plugin.mrp"/>
</component>
<component name="httptransportplugins" long-name="HTTP Transport Plugins" introduced="6.2" purpose="optional" plugin="Y">
<unit bldFile="mw/netprotocols/applayerpluginsandutils/httptransportplugins/group" mrp="mw/netprotocols/applayerpluginsandutils/httptransportplugins/group/http_transport-plugin.mrp"/>
</component>
</collection>
<collection name="netprotocols_info" long-name="High-level Internet Protocols Info" level="specific">
<component name="netprotocols_metadata" long-name="High-level Internet Protocols Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="mw/netprotocols/netprotocols_info/netprotocols_metadata/netprotocols_metadata.mrp"/>
</component>
</collection>
</block>
<block name="ipappprotocols" level="generic" long-name="IP App Protocols" levels="plugin conn server if">
<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">
<unit bldFile="mw/ipappprotocols/ipappprotocols_plat/srtp_api/group"/>
</component>
<component name="rtprtcp_api" long-name="RTP/RTCP API" filter="s60" 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">
<unit bldFile="mw/ipappprotocols/rtp/srtpstack/group"/>
</component>
<component name="rtpstack" filter="s60" long-name="RTP Stack">
<unit bldFile="mw/ipappprotocols/rtp/rtpstack/group"/>
</component>
</collection>
<collection name="realtimenetprots" long-name="Real Time Net Protocols" level="server">
<component name="symrtp" long-name="RTP" introduced="9.0" purpose="optional">
<!-- Real Time Data Protocol -->
<unit bldFile="mw/ipappprotocols/realtimenetprots/rtp/group" mrp="mw/ipappprotocols/realtimenetprots/rtp/group/mm-protocols_rtp.mrp"/>
</component>
<component name="sipfw" long-name="SIP Framework" introduced="9.2" purpose="optional">
<unit bldFile="mw/ipappprotocols/realtimenetprots/sipfw/Group" mrp="mw/ipappprotocols/realtimenetprots/sipfw/Group/mm-protocols_SIP2_Com.mrp" version="2"/>
</component>
</collection>
<collection name="sipplugins" long-name="SIP Plugins" level="plugin">
<component name="sippwlanplugin" filter="s60" long-name="SIP WLAN Plugin" plugin="Y">
<unit bldFile="mw/ipappprotocols/sipplugins/sippwlanplugin/group"/>
</component>
<component name="sippsipsettingsui" filter="s60" long-name="SIP Settings UI" plugin="Y">
<unit bldFile="mw/ipappprotocols/sipplugins/sippsipsettingsui/group"/>
</component>
<component name="sippdevmgmtsipadapter" filter="s60" long-name="Device Management SIP Settings Adapter" plugin="Y">
<unit bldFile="mw/ipappprotocols/sipplugins/sippdevmgmtsipadapter/group"/>
</component>
<component name="sippsystemstatemonitor" filter="s60" long-name="SIP System State Monitor" plugin="Y">
<unit bldFile="mw/ipappprotocols/sipplugins/sippsystemstatemonitor/group"/>
</component>
<component name="sippsipadapter" filter="s60" long-name="SIP Adapter" introduced="^3" plugin="Y">
<unit bldFile="mw/ipappprotocols/sipplugins/sippsipadapter/group"/>
</component>
</collection>
<collection name="sipproviderplugins" long-name="SIP Provider Plugins" level="conn">
<component name="sipprovider" long-name="SIP Provider" introduced="^2" purpose="optional" plugin="Y">
<unit bldFile="mw/ipappprotocols/sipproviderplugins/sipprovider/group" mrp="mw/ipappprotocols/sipproviderplugins/sipprovider/group/mm-protocols_SipProvider.mrp"/>
</component>
</collection>
<collection name="ipappprotocols_info" long-name="IP App Protocols Info" level="if">
<component name="ipappprotocols_metadata" long-name="IP App Protocols Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="mw/ipappprotocols/ipappprotocols_info/ipappprotocols_metadata/ipappprotocols_metadata.mrp"/>
</component>
</collection>
</block>
<block name="wirelessacc" level="specific" long-name="Wireless Access" levels="framework generic ui">
<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">
<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">
<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">
<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">
<unit bldFile="mw/wirelessacc/hsfw_plat/hotspot_framework_client_plugin_api/group"/>
</component>
</collection>
<collection name="hotspotfw" long-name="HotSpot Framework" level="framework">
<component name="hsserver" filter="s60" long-name="HotSpot Server" class="placeholder">
<!-- needs bld.inf extracted from the hotspotfw/group one, or this component should be removed-->
</component>
<component name="hsclient" filter="s60" long-name="HotSpot Client" class="placeholder">
<!-- needs bld.inf extracted from the hotspotfw/group one, or this component should be removed-->
</component>
<component name="internetconnectivitytestservice" filter="s60" long-name="Internet Connectivity Test Service" class="placeholder">
<!-- needs bld.inf un-#included from hotspotfw/group/bld.inf, or this component should be removed-->
<!-- <unit bldFile="hotspotfw/internetconnectivitytestservice/group"/> -->
</component>
<component name="ictsdialogs" filter="s60" long-name="Internet Connectivity Test Service Dialogs" deprecated="^3" class="placeholder">
<!-- needs bld.inf un-#included from hotspotfw/group/bld.inf, or this component should be removed-->
<!-- <unit bldFile="hotspotfw/ictsdialogs/group"/> -->
</component>
<component name="hspluginforagent" filter="s60" long-name="HotSpot Plugin for Agent" plugin="Y" class="placeholder">
<!-- needs bld.inf un-#included from hotspotfw/group/bld.inf, or this component should be removed-->
<!-- <unit bldFile="hotspotfw/hspluginforagent/group"/> -->
</component>
<component name="hsbrowser" filter="s60" long-name="HotSpot Browser" class="placeholder">
<!-- needs bld.inf un-#included from hotspotfw/group/bld.inf, or this component should be removed-->
<!-- <unit bldFile="hotspotfw/hsbrowser/group"/> -->
</component>
<component name="hotspotfw_build" filter="s60" long-name="Hotspot Framework Build">
<!--  should break up this bld.inf into the above components, or collapse them all into a single component -->
<unit bldFile="mw/wirelessacc/hotspotfw/group"/>
</component>
</collection>
<collection name="wlanutilities" long-name="WLAN Utilities" level="generic">
<component name="wlanutilities_build" long-name="WLAN Utilities Qt" introduced="^4" filter="s60">
<!-- is this uinit needed, or is it sufficient to uncomment the units in the below components? -->
<unit bldFile="mw/wirelessacc/wlanutilities" proFile="wlanutilities.pro" qmakeArgs="-r"/>
</component>
<component name="wlanqtutilities" filter="s60" long-name="WLAN Qt Utilities" introduced="^4" class="placeholder">
<!--<unit bldFile="wlanutilities/wlanplugin/group" qt:proFile="wlanqtutilities.pro"/>-->
</component>
<component name="wlansniffer" filter="s60" long-name="WLAN Sniffer" class="placeholder">
<!--<unit bldFile="wlanutilities/wlansettingsui/group" qt:proFile="wlansniffer.pro"/>-->
</component>
<component name="wlanentryplugin" filter="s60" long-name="WLAN Entry Plugin" plugin="Y" class="placeholder">
<!--<unit bldFile="wlanutilities/wlansniffer/group" qt:proFile="wlanentryplugin.pro"/>-->
</component>
<component name="wlanindicatorplugin" filter="s60" long-name="WLAN Indicator Plugin" plugin="Y" class="placeholder">
<!--<unit bldFile="wlanutilities/wlanindicatorplugin/group" qt:proFile="wlanindicatorplugin.pro"/>-->
</component>
<component name="cpwlansettingsplugin" filter="s60" long-name="WLAN Settings Control Panel Plugin" introduced="^4" plugin="Y" class="placeholder">
<!--<unit bldFile="wlanutilities/cpwlansettingsplugin/group" qt:proFile="cpwlansettingsplugin.pro"/>-->
</component>
</collection>
</block>
<block name="vpnclient" level="specific" long-name="VPN Client" levels="engine ui api">
<!-- is the !oem_build filter needed? -->
<collection name="vpnc_plat" long-name="VPN Client Platform Interfaces" level="api">
<component name="vpnapi" filter="s60" long-name="VPN API" class="api">
<unit bldFile="mw/vpnclient/vpnc_plat/vpnapi/group"/>
</component>
</collection>
<collection name="vpnapiimpl" long-name="VPN API Implementation" level="api">
<component name="vpnapi_impl" filter="s60" long-name="VPN API">
<unit bldFile="mw/vpnclient/vpnapiimpl/group"/>
</component>
</collection>
<collection name="vpnengine" long-name="VPN Engine" level="engine">
<!-- too many components in this collection.
    		Probably best to group the binaries together into larger components
    		or maybe split the collection into more reasonable groups  -->
<component name="eventmediatorapi" filter="s60" long-name="Event Mediator API">
<unit bldFile="mw/vpnclient/vpnengine/eventmediatorapi/group"/>
</component>
<component name="eventviewer" filter="s60" long-name="Event Viewer">
<unit bldFile="mw/vpnclient/vpnengine/eventviewer/group"/>
</component>
<component name="vpnins" filter="s60" long-name="VPN Installer">
<unit bldFile="mw/vpnclient/vpnengine/vpnins/group"/>
</component>
<component name="ikepolparser" filter="s60" long-name="IKE Policy Parser">
<unit bldFile="mw/vpnclient/vpnengine/ikepolparser/group"/>
</component>
<component name="utlbase64" filter="s60" long-name="Base64 Utilities">
<unit bldFile="mw/vpnclient/vpnengine/utlbase64/group"/>
</component>
<component name="utlcrypto" filter="s60" long-name="Crypto Utilities">
<unit bldFile="mw/vpnclient/vpnengine/utlcrypto/group"/>
</component>
<component name="utlxml" filter="s60" long-name="XML Utilities">
<unit bldFile="mw/vpnclient/vpnengine/utlxml/group"/>
</component>
<component name="utlpkcs10" filter="s60" long-name="PKCS#10 Utilities">
<unit bldFile="mw/vpnclient/vpnengine/utlpkcs10/group"/>
</component>
<component name="pkiserviceapi" filter="s60" long-name="PKI Service API">
<unit bldFile="mw/vpnclient/vpnengine/pkiserviceapi/group"/>
</component>
<component name="ikecert" filter="s60" long-name="IKE Certificate Management">
<unit bldFile="mw/vpnclient/vpnengine/ikecert/group"/>
</component>
<component name="kmdapi" filter="s60" long-name="Key Management Daemon API">
<unit bldFile="mw/vpnclient/vpnengine/kmdapi/group"/>
</component>
<component name="kmdserver" filter="s60" long-name="Key Management Daemon Server">
<unit bldFile="mw/vpnclient/vpnengine/kmdserver/group"/>
</component>
<component name="ikeutils" filter="s60" long-name="Internet Key Exchange Utils">
<unit bldFile="mw/vpnclient/vpnengine/ikeutils/group"/>
</component>
<component name="ikev1lib" filter="s60" long-name="IKEv1 Library">
<unit bldFile="mw/vpnclient/vpnengine/ikev1lib/group"/>
</component>
<component name="ikev2lib" filter="s60" long-name="IKEv2 Library">
<unit bldFile="mw/vpnclient/vpnengine/ikev2lib/group"/>
</component>
<component name="vpnipsecpolparser" filter="s60" long-name="VPN IPsec Policy Parser">
<unit bldFile="mw/vpnclient/vpnengine/vpnipsecpolparser/group"/>
</component>
<component name="sit" filter="s60" long-name="Socket Interaction Thread">
<unit bldFile="mw/vpnclient/vpnengine/sit/group"/>
</component>
<component name="vpntcwrapper" filter="s60" long-name="VPN Terminal Control Wrapper">
<unit bldFile="mw/vpnclient/vpnengine/vpntcwrapper/group"/>
</component>
<component name="eventmediator" filter="s60" long-name="Event Mediator">
<unit bldFile="mw/vpnclient/vpnengine/eventmediator/group"/>
</component>
<component name="pkiservice" filter="s60" long-name="PKI Service">
<unit bldFile="mw/vpnclient/vpnengine/pkiservice/group"/>
</component>
<component name="vpnconnagt" filter="s60" long-name="VPN Connection Agent">
<unit bldFile="mw/vpnclient/vpnengine/vpnconnagt/group"/>
</component>
<component name="vpnmanager" filter="s60" long-name="VPN Manager">
<unit bldFile="mw/vpnclient/vpnengine/vpnmanager/group"/>
</component>
<component name="vpncleaner" filter="s60" long-name="VPN Cleaner">
<unit bldFile="mw/vpnclient/vpnengine/vpncleaner/group"/>
</component>
<component name="utlpkcs12" filter="s60" long-name="PKCS#12 Utilities">
<unit bldFile="mw/vpnclient/vpnengine/utlpkcs12/group"/>
</component>
<component name="dmadengine" filter="s60" long-name="DM Adapter Engine">
<unit bldFile="mw/vpnclient/vpnengine/dmadengine/group"/>
</component>
<component name="dmadipsecvpn" filter="s60" long-name="IPsec VPN DM Adapter" plugin="Y">
<unit bldFile="mw/vpnclient/vpnengine/dmadipsecvpn/group"/>
</component>
<component name="dmadpki" filter="s60" long-name="PKI DM Adapter" plugin="Y">
<unit bldFile="mw/vpnclient/vpnengine/dmadpki/group"/>
</component>
<component name="ikesocket" filter="s60" long-name="IKE Socket" introduced="^3">
<unit bldFile="mw/vpnclient/vpnengine/ikesocket/group"/>
</component>
</collection>
<collection name="vpnui" long-name="VPN UI" level="ui">
<component name="vpnecomnotifier" filter="s60" long-name="VPN ECOM Notifier" plugin="Y">
<unit bldFile="mw/vpnclient/vpnui/vpnecomnotifier/group"/>
</component>
<component name="vpndialogmanager" filter="s60" long-name="VPN Dialog Manager">
<unit bldFile="mw/vpnclient/vpnui/vpndialogmanager/group"/>
</component>
<component name="vpnpolins" filter="s60" long-name="VPN Policy Installer">
<unit bldFile="mw/vpnclient/vpnui/vpnpolins/group"/>
</component>
<component name="vpnpolicyrecognizer" filter="s60" long-name="VPN Policy Recognizer" plugin="Y">
<unit bldFile="mw/vpnclient/vpnui/vpnpolicyrecognizer/group"/>
</component>
</collection>
<collection name="vpnclient_info" long-name="VPN Client Info" level="api">
<component name="vpnclient_help" filter="s60" long-name="VPN Client Help">
<unit bldFile="mw/vpnclient/help/group"/>
</component>
<component name="vpnclient_build" filter="s60" long-name="VPN Client Build">
<!-- should split this up into the other components and remove this-->
<unit bldFile="mw/vpnclient/group"/>
</component>
</collection>
</block>
<block name="ipappsrv" level="specific" long-name="IP App Services" levels="framework generic server conn plugin">
<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">
<unit bldFile="mw/ipappsrv/ipappsrv_plat/transcoder_api/group"/>
</component>
<component name="comms_event_api" long-name="Comms Event API" filter="s60" 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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="mw/ipappsrv/natplugins/natpcliprovisioningnatfwadapter/group"/>
</component>
<component name="natpdevmgmtnatfwadapter" filter="s60" long-name="Device Management NAT Framework Traversal Adapter" plugin="Y">
<unit bldFile="mw/ipappsrv/natplugins/natpdevmgmtnatfwadapter/group"/>
</component>
<component name="natptraversalcontroller" filter="s60" long-name="NAT Traversal Controller" plugin="Y">
<unit bldFile="mw/ipappsrv/natplugins/natptraversalcontroller/group"/>
</component>
<component name="natpnatfwsdpprovider" filter="s60" long-name="NAT Framework SDP Provider" 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">
<!-- remove the #includes from here and rename as xxx ROM or move iby/sis files into another component-->
<unit mrp="mw/ipappsrv/group"/>
</component>
<component name="ipappsrv_metadata" long-name="IP App Services Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="mw/ipappsrv/ipappsrv_info/ipappsrv_metadata/ipappsrv_metadata.mrp"/>
</component>
</collection>
</block>
<block name="phonesrv" level="specific" long-name="Telephony and SIM Services" levels="plugin framework server generic specific">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="mw/phonesrv/phonesrv_plat/dialpad_api/group"/>
</component>
</collection>
<collection name="cellular" long-name="Cellular" level="server">
<component name="telephonysettings" filter="s60" long-name="Telephony Settings" purpose="development"/>
<component name="sssettings" filter="s60" long-name="Supplementary Service Settings" purpose="development"/>
<component name="psetnotesui" filter="s60" long-name="Phone Settings Notes UI" purpose="development"/>
</collection>
<collection name="convergedcallengine" long-name="Converged Call Engine" level="framework">
<component name="cce" filter="s60" long-name="CCE" purpose="development"/>
<component name="spsettings" filter="s60" long-name="Service Provider Settings" purpose="development"/>
</collection>
<collection name="phoneclientserver" long-name="Phone Client/Server" level="server">
<component name="aiwdialdata" filter="s60" long-name="AIW Dial Data" purpose="development"/>
<component name="dialutils" filter="s60" long-name="Dial Utils" purpose="development"/>
<component name="phoneclient" filter="s60" long-name="Phone Client" purpose="development"/>
</collection>
<collection name="phonesrv_info" long-name="Phone Server Info" level="generic">
<component name="phonesrv_build" long-name="Phone Server Build" filter="s60">
<unit bldFile="mw/phonesrv" proFile="phonesrv.pro"/>
</component>
</collection>
</block>
<block name="messagingmw" level="specific" long-name="Messaging Middleware" levels="stack support fw api">
<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">
<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">
<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">
<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">
<unit bldFile="mw/messagingmw/msgfw_plat/muiu_utils_api/group"/>
</component>
</collection>
<collection name="msgbranched" long-name="Messaging Branched" level="support">
<!-- collection is really a component. Need to move down a directory -->
<component name="msgbranched_build" filter="s60" long-name="Messaging Branched Build" class="config">
<unit bldFile="mw/messagingmw/msgbranched/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">
<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">
<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">
<unit bldFile="mw/messagingmw/messagingfw/deprecate/send_ui_datautils_api/group"/>
</component>
<component name="alwaysonline" filter="s60" long-name="Always Online Server" introduced="^2">
<unit bldFile="mw/messagingmw/messagingfw/alwaysonline/group"/>
</component>
<component name="msgcommonutils" filter="s60" long-name="Messaging Common Utils" introduced="^2">
<unit bldFile="mw/messagingmw/messagingfw/msgcommonutils/group"/>
</component>
<component name="senduiservices" filter="s60" long-name="Send UI Services" introduced="^2" deprecated="^4">
<unit bldFile="mw/messagingmw/messagingfw/deprecate/senduiservices/group"/>
</component>
<component name="muiuutils" long-name="Messaging Center UI Utilities" filter="s60" introduced="^4" 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">
<unit bldFile="mw/messagingmw/messagingfw/scheduledsendmtm/group" mrp="mw/messagingmw/messagingfw/scheduledsendmtm/group/messaging_schedulesend.mrp"/>
</component>
<component name="msgsrvnstore" long-name="Message Server and Store" purpose="optional">
<unit bldFile="mw/messagingmw/messagingfw/msgsrvnstore/group" mrp="mw/messagingmw/messagingfw/msgsrvnstore/group/messaging_framework.mrp"/>
</component>
<component name="biomsgfw" long-name="BIO Messaging Framework" introduced="6.0" purpose="optional">
<unit bldFile="mw/messagingmw/messagingfw/biomsgfw/group" mrp="mw/messagingmw/messagingfw/biomsgfw/group/messaging_biomsg.mrp"/>
</component>
<component name="msgconf" long-name="Messaging Config" introduced="^2" purpose="optional" class="config">
<unit bldFile="mw/messagingmw/messagingfw/msgconf/group" mrp="mw/messagingmw/messagingfw/msgconf/group/messaging_config.mrp"/>
</component>
<component name="watcherfw" long-name="Watcher Framework" purpose="optional">
<unit bldFile="mw/messagingmw/messagingfw/watcherfw/group" mrp="mw/messagingmw/messagingfw/watcherfw/group/messaging_watcher.mrp"/>
</component>
<component name="msgtest" long-name="Messaging Test" purpose="development">
<unit bldFile="mw/messagingmw/messagingfw/msgtest/group" mrp="mw/messagingmw/messagingfw/msgtest/group/messaging_test.mrp"/>
</component>
<component name="sendas" long-name="Send As" purpose="optional">
<unit bldFile="mw/messagingmw/messagingfw/sendas/group" mrp="mw/messagingmw/messagingfw/sendas/group/messaging_sendas2.mrp"/>
</component>
<component name="msgurlhandler" long-name="Message URL Handler" introduced="7.0" purpose="optional">
<unit bldFile="mw/messagingmw/messagingfw/msgurlhandler/group" mrp="mw/messagingmw/messagingfw/msgurlhandler/group/messaging_urlhandler.mrp"/>
</component>
<component name="wappushfw" long-name="WAP Push Framework" introduced="6.1" purpose="optional">
<unit bldFile="mw/messagingmw/messagingfw/wappushfw/group" mrp="mw/messagingmw/messagingfw/wappushfw/group/wap-browser_wappush.mrp"/>
</component>
<component name="suplsmshandler" long-name="SUPL SMS Handler" introduced="^2" purpose="development" plugin="Y">
<unit bldFile="mw/messagingmw/messagingfw/suplsmshandler/group" mrp="mw/messagingmw/messagingfw/suplsmshandler/group/lbs_suplsmstrigger.mrp"/>
</component>
<component name="suplwappushhandler" long-name="SUPL WAP Push Handler" introduced="^2" purpose="optional" plugin="Y">
<unit bldFile="mw/messagingmw/messagingfw/suplwappushhandler/group" mrp="mw/messagingmw/messagingfw/suplwappushhandler/group/lbs_suplwappush.mrp"/>
</component>
</collection>
<collection name="messagingmw_info" long-name="Messaging Middleware Info" level="api">
<component name="messagingmw_metadata" long-name="Messaging Middleware Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="mw/messagingmw/messagingmw_info/messagingmw_metadata/messagingmw_metadata.mrp"/>
</component>
</collection>
</block>
<block name="imsrv" level="specific" long-name="Instant Messaging and Presence Services" levels="plugin framework server generic specific">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="mw/imsrv/imsrv_plat/im_cache_server_api/group"/>
</component>
<component name="presence_avabilitytext" long-name="Presence Avability Text" filter="s60" 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">
<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">
<unit bldFile="mw/imsrv/imservices/imfeatureplugin/group"/>
</component>
<component name="searchfeatureplugin" filter="s60" long-name="Search Feature Plugin" introduced="^2" plugin="Y">
<unit bldFile="mw/imsrv/imservices/searchfeatureplugin/group"/>
</component>
<component name="xmppsettingsapi" filter="s60" long-name="XMPP Settings API" introduced="^2">
<unit bldFile="mw/imsrv/imservices/xmppsettingsapi/group"/>
</component>
<component name="xmppsettingsfetcher" filter="s60" long-name="XMPP Settings Fetcher" introduced="^2">
<unit bldFile="mw/imsrv/imservices/xmppsettingsfetcher/group"/>
</component>
<component name="instantmessagingcache" filter="s60" long-name="Instant Messaging Cache" introduced="^2">
<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">
<unit bldFile="mw/imsrv/brandingserver/group"/>
</component>
</collection>
</block>
<block name="legacypresence" level="specific" long-name="Legacy Presence Services" levels="engine fw ui">
<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">
<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">
<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">
<unit bldFile="mw/legacypresence/pressrv_plat/simple_documents_api/group"/>
</component>
<component name="authorization_api" long-name="Authorization API" filter="s60" 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">
<unit bldFile="mw/legacypresence/pressrv_plat/xdm_protocol_plugin_api/group"/>
</component>
<component name="watcher_api" long-name="Watcher API" filter="s60" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/watcher_api/group"/>
</component>
<component name="xdm_api" long-name="XDM API" filter="s60" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/xdm_api/group"/>
</component>
<component name="registration_api" long-name="Registration API" filter="s60" class="api">
<unit bldFile="mw/legacypresence/pressrv_plat/registration_api/group"/>
</component>
<component name="publisher_api" long-name="Publisher API" filter="s60" 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">
<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">
<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">
<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">
<unit bldFile="mw/legacypresence/pressrv_plat/simple_instant_msg_api/group"/>
</component>
</collection>
<collection name="xdmengine" long-name="XDM Engine" level="engine">
<!-- collection is really a component. Need to move down a directory (eg xdm/xdmengine)-->
<component name="xdmengine_build" filter="s60" long-name="XDM Engine Build">
<unit bldFile="mw/legacypresence/xdmengine/group"/>
</component>
</collection>
<collection name="xdmsettingsui" long-name="XDM Settings UI" level="ui">
<!-- collection is really a component. Need to move down a directory (eg xdm/xdmsettingsui)-->
<component name="xdmsettingsui_build" filter="s60" long-name="XDM Settings UI Build">
<unit bldFile="mw/legacypresence/xdmsettingsui/group"/>
</component>
</collection>
<collection name="xdmprotocols" long-name="XDM Protocols" level="fw">
<!-- collection is really a component. Need to move down a directory (eg xdm/xdmprotocols)-->
<component name="xdmprotocols_build" filter="s60" long-name="XDM Protocols Build">
<unit bldFile="mw/legacypresence/xdmprotocols/group"/>
</component>
</collection>
<collection name="msgconnmanager" long-name="Messaging Connection Manager" level="fw">
<!-- collection is really a component. Need to move down a directory-->
<component name="msgconnmanager_build" filter="s60" long-name="Messaging Connection Manager Build">
<unit bldFile="mw/legacypresence/msgconnmanager/group"/>
</component>
</collection>
<collection name="presencesettingsui" long-name="Presence Settings UI" level="ui">
<!-- collection is really a component. Need to move down a directory-->
<component name="presencesettingsui_build" filter="s60" long-name="Presence Settings UI Build">
<unit bldFile="mw/legacypresence/presencesettingsui/group"/>
</component>
</collection>
<collection name="simpleengine" long-name="SIMPLE Engine" level="engine">
<!-- collection is really a component. Need to move down a directory-->
<component name="simpleengine_build" filter="s60" long-name="SIMPLE Engine Build">
<unit bldFile="mw/legacypresence/simpleengine/group"/>
</component>
</collection>
<collection name="presencefwsimpleadpt" long-name="Presence Framework SIMPLE Adaptation" level="fw">
<!-- collection is really a component. Need to move down a directory-->
<component name="simpleplugin" filter="s60" long-name="SIMPLE Plugin" plugin="Y">
<unit bldFile="mw/legacypresence/presencefwsimpleadpt/group"/>
</component>
</collection>
<collection name="simpledatamodeladapter" long-name="SIMPLE Data Model Adapter" level="fw">
<component name="presenceplugin" filter="s60" long-name="Presence Plugin" introduced="^2" plugin="Y">
<unit bldFile="mw/legacypresence/simpledatamodeladapter/group"/>
</component>
</collection>
</block>
<block name="searchsrv" level="specific" long-name="Search Services" levels="services engine generic api">
<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">
<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">
<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">
<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">
<unit bldFile="mw/searchsrv/searchengine/util/group"/>
</component>
<component name="searchengine_oss" long-name="Search Engine OSS" filter="s60" introduced="^4">
<unit bldFile="mw/searchsrv/searchengine/oss/group"/>
</component>
<component name="cpix" long-name="Cross Platform Indexing Engine" filter="s60" introduced="^4">
<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">
<unit bldFile="mw/searchsrv/searcher/SearchClient/group"/>
</component>
<component name="searchserver" long-name="Search Server" filter="s60" introduced="^4">
<unit bldFile="mw/searchsrv/searcher/SearchServer/group"/>
</component>
<component name="searcher_test" long-name="Searcher Tests" filter="s60" purpose="development" introduced="^4">
<!-- #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">
<unit bldFile="mw/searchsrv/harvester/pluginfw/group"/>
</component>
<component name="searchsrv_harvesterserver" long-name="Search Harvester Server" filter="s60" introduced="^4">
<unit bldFile="mw/searchsrv/harvester/HarvesterServer/group"/>
</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">
<unit bldFile="mw/searchsrv/WatchDog/group"/>
</component>
</collection>
<collection name="qcpix" long-name="Qt CPIX" level="engine">
<component name="qcpixsearchclient" long-name="Qt CPIX Search Client" introduced="^4">
<!-- Snag! qcpix.pro and qcpixsearchclient.pro in same directory! -->
<unit bldFile="mw/searchsrv/qcpix" proFile="qcpixsearchclient.pro"/>
</component>
</collection>
<collection name="searchsrv_info" long-name="Search Services Info">
<component name="searchsrv_build" long-name="Search Services Build" introduced="^4">
<!-- 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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/pnpms_utils_api/group"/>
</component>
<component name="diagnostics_plugin_utility_api" long-name="Diagnostics Plugin Utility API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/diagnostics_plugin_utility_api/group"/>
</component>
<component name="diagnostics_plugin_api" long-name="Diagnostics Plug-in API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/diagnostics_plugin_api/group"/>
</component>
<component name="diagnostics_framework_api" long-name="Diagnostics Framework API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/diagnostics_framework_api/group"/>
</component>
<component name="diagnostics_results_api" long-name="Diagnostics Results API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/diagnostics_results_api/group"/>
</component>
<component name="diagnostics_plugin_pool_api" long-name="Diagnostics Plugin Pool API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/diagnostics_plugin_pool_api/group"/>
</component>
<component name="adaptive_history_list_api" long-name="Adaptive History List API" filter="s60" 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">
<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">
<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">
<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">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/syncml_notifier_roaming_api/group"/>
</component>
<component name="sync_service_api" long-name="Sync Service API" filter="s60" class="api">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/sync_service_api/group"/>
</component>
<component name="dcmo_adapter_api" long-name="DCMO Adapter API" filter="s60" 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">
<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">
<unit bldFile="mw/remotemgmt/remotemgmt_plat/ds_capability_mgmt_plugin_api/group"/>
</component>
</collection>
<collection name="policymanagement" long-name="Policy Management" level="generic">
<component name="pmdmadapter" filter="s60" long-name="PM DM Adapter" plugin="Y">
<unit bldFile="mw/remotemgmt/policymanagement/pmdmadapter/group"/>
</component>
<component name="dmutilserver" filter="s60" long-name="DM Util Server">
<unit bldFile="mw/remotemgmt/policymanagement/dmutilserver/group"/>
</component>
<component name="policyengine" filter="s60" long-name="Policy Engine">
<unit bldFile="mw/remotemgmt/policymanagement/policyengine/group" filter="!dfs_build"/>
</component>
<component name="policymanagement_build" filter="s60" long-name="Policy Management Build">
<!--  need to distribute exports, etc into the other components and remove this-->
<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">
<!--  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">
<!-- 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"/>
<unit bldFile="mw/remotemgmt/terminalsecurity/scp/scpserver/group"/>
<unit bldFile="mw/remotemgmt/terminalsecurity/scp/scppatternplugin/group"/>
<unit bldFile="mw/remotemgmt/terminalsecurity/scp/scphistoryplugin/group"/>
<unit bldFile="mw/remotemgmt/terminalsecurity/scp/scptimestampplugin/group"/>
<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">
<unit bldFile="mw/remotemgmt/terminalsecurity/client/group"/>
</component>
<component name="terminalsecurity_server" filter="s60" long-name="Terminal Control Server">
<unit bldFile="mw/remotemgmt/terminalsecurity/server/group"/>
</component>
<component name="tcadapter" filter="s60" long-name="Terminal Control Adapter">
<unit bldFile="mw/remotemgmt/terminalsecurity/tcadapter/bld"/>
</component>
<component name="terminalsecurity_build" filter="s60" long-name="Terminal Security Build">
<!--  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">
<unit bldFile="mw/remotemgmt/omaprovisioning/pnputil/group"/>
</component>
<component name="provisioning" filter="s60" long-name="Provisioning">
<unit bldFile="mw/remotemgmt/omaprovisioning/provisioning/group"/>
</component>
</collection>
<collection name="devicediagnosticsfw" long-name="Device Diagnostics Framework" level="framework">
<component name="diagframework" filter="s60" long-name="Diagnostics Framework">
<unit bldFile="mw/remotemgmt/devicediagnosticsfw/diagframework/group"/>
</component>
<component name="diagpluginbase" filter="s60" long-name="Diagnostics Plugin Base">
<unit bldFile="mw/remotemgmt/devicediagnosticsfw/diagpluginbase/group"/>
</component>
<component name="diagresultsdb" filter="s60" long-name="Diagnostics Results Database">
<!--  can only have one unit, merge or split into two components -->
<unit bldFile="mw/remotemgmt/devicediagnosticsfw/diagresultsdb/client/group"/>
<unit bldFile="mw/remotemgmt/devicediagnosticsfw/diagresultsdb/server/group"/>
</component>
<component name="devicediagnosticsfw_build" filter="s60" long-name="Device Diagnostics Framework Build">
<!--  need to distribute exports, etc into the other components and remove this-->
<unit bldFile="mw/remotemgmt/devicediagnosticsfw/group"/>
</component>
</collection>
<collection name="dcmofw" long-name="Device Capability Management Object Framework" level="framework">
<component name="dcmoclient" filter="s60" long-name="DCMO Client">
<unit bldFile="mw/remotemgmt/dcmofw/dcmoclient/group"/>
</component>
<component name="dcmoserver" filter="s60" long-name="DCMO Server">
<unit bldFile="mw/remotemgmt/dcmofw/dcmoserver/group"/>
</component>
<component name="dcmocustcmd" filter="s60" long-name="DCMO Custom Commands">
<unit bldFile="mw/remotemgmt/dcmofw/dcmocustcmd/group"/>
</component>
<component name="dcmofw_build" filter="s60" long-name="DCMO Build">
<!--  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">
<!-- remove this component when configuration is in place and the #ifdefs have been worked out -->
<unit bldFile="mw/remotemgmt/fotaapplication/group"/>
</component>
<component name="fotaserver" filter="s60" long-name="FOTA Server">
<!-- uncomment when #ifdefs are resolved -->
<!--<unit bldFile="fotaapplication/fotaserver/group"/>-->
</component>
<component name="fotacustcmds" filter="s60" long-name="FOTA Custom Commands" class="placeholder">
<!-- uncomment when #ifdefs are resolved. Need to put a config meta here-->
<!--<unit bldFile="fotaapplication/fotaserver/fotacustcmds/group"/>-->
</component>
</collection>
</block>
<block name="remoteconn" level="generic" long-name="Remote Connectivity" levels="plugin framework server generic specific">
<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="mtptransports" long-name="MTP Transports" level="plugin">
<component name="mtpusbtransport" long-name="MTP USB Transport" introduced="^2" 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" 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">
<unit bldFile="mw/remoteconn/mtpfws/mtpfw/group" mrp="mw/remoteconn/mtpfws/mtpfw/group/mtp_framework.mrp"/>
</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" 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" filter="gt" introduced="^3" 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" filter="gt" introduced="^3" purpose="optional" plugin="Y">
<unit bldFile="mw/remoteconn/mtpdataproviders/mtppictbridgedp/group" mrp="mw/remoteconn/mtpdataproviders/mtppictbridgedp/group/mtp_pictbridgedp.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">
<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">
<unit bldFile="mw/remoteconn/backupandrestore/backuptest/group" mrp="mw/remoteconn/backupandrestore/backuptest/group/connectivity_backuptest.mrp"/>
</component>
</collection>
<collection name="obex" long-name="OBEX" level="generic">
<component name="obexprotocol" long-name="OBEX Protocol" introduced="9.1" purpose="optional">
<unit bldFile="mw/remoteconn/obex/obexprotocol/group" mrp="mw/remoteconn/obex/obexprotocol/group/obex.mrp"/>
</component>
<component name="obexextensionapi" long-name="OBEX Extension API" introduced="9.2" purpose="optional">
<unit bldFile="mw/remoteconn/obex/obexextensionapi/group" mrp="mw/remoteconn/obex/obexextensionapi/group/obex_extensionapis.mrp"/>
</component>
</collection>
</block>
<block name="srvdiscovery" level="generic" long-name="Service Discovery and Usage" levels="plugin framework server generic specific">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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" 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">
<!-- 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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<!-- 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">
<unit bldFile="mw/dlnasrv/upnpmediaserver/avobjects/group"/>
</component>
<component name="mediaserverclient" filter="s60" long-name="Media Server Client">
<unit bldFile="mw/dlnasrv/upnpmediaserver/mediaserverclient/group"/>
</component>
<component name="connectionmanagerservice" filter="s60" long-name="Connection Manager Service">
<unit bldFile="mw/dlnasrv/upnpmediaserver/connectionmanagerservice/group"/>
</component>
<component name="contentdirectoryservice" filter="s60" long-name="Content Directory Service">
<unit bldFile="mw/dlnasrv/upnpmediaserver/contentdirectoryservice/group"/>
</component>
<component name="mediaserverengine" filter="s60" long-name="Media Server Engine">
<unit bldFile="mw/dlnasrv/upnpmediaserver/mediaserverengine/group"/>
</component>
<component name="upnpmediaserver_build" filter="s60" long-name="UPnP Media Server Build">
<!-- 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">
<unit bldFile="mw/dlnasrv/upnpavcontroller/upnpxmlparser/group"/>
</component>
<component name="upnpavcontrollerserver" filter="s60" long-name="UPnP A/V Controller Server" introduced="^2">
<unit bldFile="mw/dlnasrv/upnpavcontroller/upnpavcontrollerserver/group"/>
</component>
<component name="upnpavcontrollerclient" filter="s60" long-name="UPnP A/V Ccontroller Client" introduced="^2">
<unit bldFile="mw/dlnasrv/upnpavcontroller/upnpavcontrollerclient/group"/>
</component>
<component name="upnpavcontrollerhelper" filter="s60" long-name="UPnP A/V Controller Helper" introduced="^2">
<unit bldFile="mw/dlnasrv/upnpavcontroller/upnpavcontrollerhelper/group"/>
</component>
<component name="upnpavcontroller_build" filter="s60" long-name="UPnP A/V Controller Build" introduced="^2">
<!-- 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">
<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="upnpframework/upnpextensionpluginif/group"/> -->
</component>
<component name="upnpfiletransferengine" filter="s60" long-name="UPnP File Transfer Engine" introduced="^2" deprecated="^3">
<!-- <unit bldFile="upnpframework/upnpfiletransferengine/group"/>-->
</component>
<component name="upnpcommonui" filter="s60" long-name="UPnP Common UI" introduced="^2" deprecated="^3">
<!--<unit bldFile="upnpframework/upnpcommonui/group"/>-->
</component>
<component name="upnpaiwengine" filter="s60" long-name="UPnP AIW Engine" introduced="^2" deprecated="^3">
<!--<unit bldFile="upnpframework/upnpaiwengine/group"/> -->
</component>
<component name="upnpaiwprovider" filter="s60" long-name="UPnP AIW Provider" introduced="^2" deprecated="^3" plugin="Y">
<!--<unit bldFile="upnpframework/upnpaiwprovider/group"/>-->
</component>
<component name="upnpmusicadapter" filter="s60" long-name="UPnP Music Adapter" introduced="^2">
<unit bldFile="mw/dlnasrv/upnpframework/upnpmusicadapter/group"/>
</component>
<component name="upnpcommand" filter="s60" long-name="UPnP Command" introduced="^2">
<unit bldFile="mw/dlnasrv/upnpframework/upnpcommand/group"/>
</component>
<component name="upnpframework_build" filter="s60" long-name="UPnP Framework Build" introduced="^2">
<!-- move exports content into one 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">
<unit bldFile="mw/dlnasrv/upnpsettings/upnpsettingsengine/group"/>
</component>
<component name="multiselectionui" filter="s60" long-name="Multi-Selection UI" introduced="^2" deprecated="^3">
<!--<unit bldFile="upnpsettings/multiselectionui/group"/>-->
</component>
<component name="appwizard" filter="s60" long-name="UPnP Settings Wizard App" introduced="^2" deprecated="^3">
<!--<unit bldFile="upnpsettings/appwizard/group"/>-->
</component>
<component name="upnpsharingui" filter="s60" long-name="UPnP Sharing UI" introduced="^2" deprecated="^3">
<!--<unit bldFile="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">
<!-- 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">
<unit bldFile="mw/dlnasrv/upnpsharing/upnpdlnaprofiler/group"/>
</component>
<component name="upnpsecurity" filter="s60" long-name="UPnP Security" introduced="^2">
<unit bldFile="mw/dlnasrv/upnpsharing/upnpsecurity/group"/>
</component>
<component name="upnpcontentserver" filter="s60" long-name="UPnP Content Server" introduced="^2">
<unit bldFile="mw/dlnasrv/upnpsharing/upnpcontentserver/group"/>
</component>
<component name="applicationengine" filter="s60" long-name="UPnP Application Engine" introduced="^2">
<unit bldFile="mw/dlnasrv/upnpsharing/applicationengine/group"/>
</component>
<component name="upnpsharing_build" filter="s60" long-name="UPnP Sharing Build" introduced="^2">
<!-- 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">
<unit bldFile="mw/dlnasrv/upnpmpxplugins/upnpplaybackplugins/group"/>
</component>
<component name="upnpmpxplugins_build" filter="s60" long-name="UPnP MPX Plugins Build" introduced="^2">
<!-- 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" class="placeholder">
<!-- need to merge or #include these to a single bld.inf -->
<!--<unit bldFile="upnpharvester/common/cmlibrary/group"/>
        <unit bldFile="upnpharvester/common/cmsettings/group"/>
        <unit bldFile="upnpharvester/common/cmsqlwrapper/group"/>
        <unit bldFile="upnpharvester/common/dbmanager/group"/>-->
</component>
<component name="cdssync" filter="s60" long-name="CDS Sync" introduced="^2" deprecated="^3" class="placeholder">
<!-- <unit bldFile="upnpharvester/cdssync/common"/>-->
</component>
<component name="mdhserver" filter="s60" long-name="Metadata Harvester Server" introduced="^2" deprecated="^3" class="placeholder">
<!--<unit bldFile="upnpharvester/mdhserver/group"/>-->
</component>
<component name="upnpharvester_build" filter="s60" long-name="UPnP Harvester Build" introduced="^2" deprecated="^3" class="placeholder">
<!-- could just make the whole collection one component and move down a dir. Or move the exports here into the other component -->
<!--<unit bldFile="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" class="placeholder">
<!-- <unit bldFile="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" class="placeholder">
<!-- <unit bldFile="homemedia/group"/> -->
</component>
</collection>
<collection name="dlnasrv_info" long-name="DLNA Services Info" level="plugin">
<component name="dlnasrv_build" filter="s60" long-name="DLNA Services Build">
<!-- need to #include upnpplatformvar.hrh from each #included bld.inf, then this can be removed  -->
<unit bldFile="mw/dlnasrv/group"/>
</component>
</collection>
</block>
<block name="btservices" level="generic" long-name="Bluetooth Services" levels="framework server generic specific plugin">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_engine_connection_management_api/group"/>
</component>
<component name="bluetooth_engine_device_management_api" long-name="Bluetooth Engine Device Management API" filter="s60" class="api">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_engine_device_management_api/group"/>
</component>
<component name="bluetooth_engine_discovery_api" long-name="Bluetooth Engine Discovery API" filter="s60" class="api">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_engine_discovery_api/group"/>
</component>
<component name="bluetooth_engine_features_api" long-name="Bluetooth Engine Features API" filter="s60" 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">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_engine_settings_api/group"/>
</component>
<component name="bluetooth_engine_plugin_api" long-name="Bluetooth Engine Plugin API" filter="s60" 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">
<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">
<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">
<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">
<unit bldFile="mw/btservices/btservices_plat/bluetooth_secondary_display_notification_api/group"/>
</component>
</collection>
<collection name="bluetoothengine" long-name="Bluetooth Engine" level="framework">
<component name="bteng" filter="s60" long-name="Bluetooth Engine">
<unit bldFile="mw/btservices/bluetoothengine/bteng/group"/>
</component>
<component name="btnotif" filter="s60" long-name="Bluetooth Notifier">
<unit bldFile="mw/btservices/bluetoothengine/btnotif/group"/>
</component>
<component name="btaudioman" filter="s60" long-name="Bluetooth Audio Manager">
<unit bldFile="mw/btservices/bluetoothengine/btaudioman/group"/>
</component>
<component name="btmac" filter="s60" long-name="Bluetooth Mono Audio Controller" plugin="Y">
<unit bldFile="mw/btservices/bluetoothengine/btmac/group"/>
</component>
<component name="btsac" filter="s60" long-name="Bluetooth Stereo Audio Controller" plugin="Y">
<unit bldFile="mw/btservices/bluetoothengine/btsac/group"/>
</component>
<component name="btaudiostreamer" filter="s60" long-name="Bluetooth Audio Streamer">
<unit bldFile="mw/btservices/bluetoothengine/btaudiostreamer/group"/>
</component>
<component name="btsap" filter="s60" long-name="Bluetooth SIM Access Profile" plugin="Y">
<unit bldFile="mw/btservices/bluetoothengine/btsap/group"/>
</component>
<component name="btui" filter="s60" long-name="Bluetooth UI">
<unit bldFile="mw/btservices/bluetoothengine/btui/group"/>
</component>
<component name="btpbap" filter="s60" long-name="Bluetooth Phonebook Access Profile" plugin="Y">
<unit bldFile="mw/btservices/bluetoothengine/btpbap/group"/>
</component>
<component name="bthid" filter="s60" long-name="Bluetooth HID">
<unit bldFile="mw/btservices/bluetoothengine/bthid/group"/>
</component>
<component name="btctrldcmoadapter" filter="s60" long-name="Bluetooth Control DCMO Adapter" introduced="^3" plugin="Y">
<unit bldFile="mw/btservices/bluetoothengine/btctrldcmoadapter/group"/>
</component>
<component name="btserviceutil" filter="s60" long-name="Bluetooth Service Utils">
<unit bldFile="mw/btservices/bluetoothengine/btserviceutil/group"/>
</component>
<component name="btnotifclient" filter="s60" long-name="Bluetooth Notifier Client">
<unit bldFile="mw/btservices/bluetoothengine/btnotif/btnotifclient/group"/>
</component>
</collection>
<collection name="bluetoothappprofiles" long-name="Bluetooth Application Profiles" level="plugin">
<component name="avrcp" long-name="Bluetooth AVRCP" introduced="9.1" purpose="optional">
<unit bldFile="mw/btservices/bluetoothappprofiles/avrcp" mrp="mw/btservices/bluetoothappprofiles/avrcp/bluetooth_avrcp.mrp"/>
</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">
<unit bldFile="mw/btservices/atcommands/modematplugin/group"/>
</component>
<component name="lccustomplugin" long-name="LC Custom Plugin" filter="s60" introduced="^4" plugin="Y">
<unit bldFile="mw/btservices/atcommands/lccustomplugin/group"/>
</component>
</collection>
<collection name="cbsatplugin" long-name="CBS AT Plugin">
<component name="atmisccmdplugin" long-name="AT Misc Commands Plugin" filter="s60" introduced="^4" plugin="Y">
<unit bldFile="mw/btservices/cbsatplugin/atmisccmdplugin/group"/>
</component>
</collection>
<collection name="btservices_info" long-name="BT Services Info" level="plugin">
<component name="btservices_metadata" long-name="BT Services Metadata" introduced="^3" purpose="development" class="config PC">
<unit mrp="mw/btservices/btservices_info/btservices_metadata/btservices_metadata.mrp"/>
</component>
</collection>
</block>
<block name="usbservices" level="generic" long-name="USB Services" levels="framework server generic specific plugin">
<collection name="usbservices_plat" long-name="USB Services Platform Interfaces" level="plugin">
<component name="pictbridge_api" long-name="PictBridge API" filter="s60" 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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="mw/usbservices/usbengines/usbotgwatcher/group"/>
</component>
<component name="usbwatcher" filter="s60" long-name="USB Watcher">
<unit bldFile="mw/usbservices/usbengines/usbwatcher/group"/>
</component>
<component name="usblocodplugin" filter="s60" long-name="USB Local Connectivity Domain Plugin" plugin="Y">
<unit bldFile="mw/usbservices/usbengines/usblocodplugin/group"/>
</component>
<component name="usbdevcon" filter="s60" long-name="USB Device Control">
<unit bldFile="mw/usbservices/usbengines/usbdevcon/group"/>
</component>
<component name="usbremotepersonality" filter="s60" long-name="USB Remote Personality">
<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">
<unit bldFile="mw/usbservices/usbclasses/usbobexclasscontroller/group"/>
</component>
<component name="usbbasicpersonality" filter="s60" long-name="USB Basic Personality" plugin="Y">
<unit bldFile="mw/usbservices/usbclasses/usbbasicpersonality/group"/>
</component>
<component name="usbmscpersonality" filter="s60" long-name="USB MSC Personality" plugin="Y">
<unit bldFile="mw/usbservices/usbclasses/usbmscpersonality/group"/>
</component>
<!--	commented out in bld.inf. Should this be deleted?     
  <component id="ptpstack" filter="s60" name="Picture Transfer Protocol Stack">
        <unit bldFile="usbclasses/ptpstack/group"/>
      </component>
      <component id="sicdusbplugin" filter="s60" name="SICD USB Plugin" class="plugin">
        <unit bldFile="usbclasses/sicdusbplugin/group"/>
      </component>
      <component id="ptpserver" filter="s60" name="Picture Transfer Protocol Server">
        <unit bldFile="usbclasses/ptpserver/group"/>
      </component>-->
<component name="pictbridgeengine" filter="s60" long-name="PictBridge Engine">
<unit bldFile="mw/usbservices/usbclasses/pictbridgeengine/group"/>
</component>
<component name="usbphoneasmodem" filter="s60" long-name="USB Phone as Modem" introduced="^3">
<unit bldFile="mw/usbservices/usbclasses/usbphoneasmodem/group"/>
</component>
</collection>
<collection name="usbuis" long-name="USB UIs" level="specific">
<component name="usbui" filter="s60" long-name="USB UI">
<unit bldFile="mw/usbservices/usbuis/usbui/group"/>
</component>
<component name="usbuinotif" filter="s60" long-name="USB UI Notifiers">
<unit bldFile="mw/usbservices/usbuis/usbuinotif/group"/>
</component>
<component name="imageprintuiprovider" filter="s60" long-name="ImagePrint UI Provider" plugin="Y">
<unit bldFile="mw/usbservices/usbuis/imageprintuiprovider/group"/>
</component>
<component name="usbimageprintui" filter="s60" long-name="ImagePrint UI">
<unit bldFile="mw/usbservices/usbuis/imageprintui/group"/>
</component>
<component name="usbuiqt" long-name="USB UI Qt" introduced="^4" filter="s60">
<unit bldFile="mw/usbservices/usbuis/usbuiqt" proFile="usbapplication.pro"/>
</component>
</collection>
<collection name="usbservices_test" long-name="USB Services Test" level="server"/>
</block>
<block name="shortlinkconn" level="generic" long-name="Shortlink Connectivity" levels="framework server generic specific plugin">
<!-- Package is pending removal. Contents to be moved to remoteconn and btservices -->
<collection name="shortlinkconn_plat" long-name="Shortlink Connectivity Platform Interfaces" level="plugin">
<component name="obex_service_utils_api" long-name="OBEX Service Utils API" filter="s60" class="api">
<unit bldFile="mw/shortlinkconn/shortlinkconn_plat/obex_service_utils_api/group"/>
</component>
<component name="obex_service_plugin_api" long-name="OBEX Service Plugin API" filter="s60" class="api">
<unit bldFile="mw/shortlinkconn/shortlinkconn_plat/obex_service_plugin_api/group"/>
</component>
<component name="dialup_connection_status_api" long-name="Dial-up Connection Status API" filter="s60" class="api">
<unit bldFile="mw/shortlinkconn/shortlinkconn_plat/dialup_connection_status_api/group"/>
</component>
<component name="dun_secondary_display_notification_api" long-name="DUN Secondary Display Notification API" filter="s60" class="api">
<unit bldFile="mw/shortlinkconn/shortlinkconn_plat/dun_secondary_display_notification_api/group"/>
</component>
<component name="obex_secondary_display_notification_api" long-name="OBEX Secondary Display Notification API" filter="s60" class="api">
<unit bldFile="mw/shortlinkconn/shortlinkconn_plat/obex_secondary_display_notification_api/group"/>
</component>
<component name="generic_hid_api" long-name="Generic HID API" filter="s60" class="api">
<unit bldFile="mw/shortlinkconn/shortlinkconn_plat/generic_hid_api/group"/>
</component>
<component name="locod_bearer_plugin_api" long-name="Locod Bearer Plugin API" filter="s60" class="api">
<unit bldFile="mw/shortlinkconn/shortlinkconn_plat/locod_bearer_plugin_api/group"/>
</component>
<component name="usb_obexservicemanager_client_api" long-name="USB OBEX Service Manager Client API" filter="s60" class="api">
<unit bldFile="mw/shortlinkconn/shortlinkconn_plat/usb_obexservicemanager_client_api/group"/>
</component>
</collection>
<collection name="localconnectivityservice" long-name="Local Connectivity Service" level="server">
<component name="locod" long-name="Local Connectivity Daemon">
<unit bldFile="mw/shortlinkconn/localconnectivityservice/locod/group"/>
</component>
<component name="obexserviceman" long-name="OBEX Service Managar">
<unit bldFile="mw/shortlinkconn/localconnectivityservice/obexserviceman/group"/>
</component>
<component name="obexsendservices" long-name="OBEX Send Services">
<unit bldFile="mw/shortlinkconn/localconnectivityservice/obexsendservices/group"/>
</component>
<component name="obexreceiveservices" long-name="OBEX Receive Services">
<unit bldFile="mw/shortlinkconn/localconnectivityservice/obexreceiveservices/group"/>
</component>
<component name="dun" long-name="Dial Up Networking">
<unit bldFile="mw/shortlinkconn/localconnectivityservice/dun/group"/>
</component>
<component name="generichid" long-name="Generic HID">
<unit bldFile="mw/shortlinkconn/localconnectivityservice/generichid/group"/>
</component>
<component name="headset" long-name="Headset">
<unit bldFile="mw/shortlinkconn/localconnectivityservice/headset/group"/>
</component>
</collection>
</block>
<block name="imghandling" level="specific" long-name="Image Handling" levels="lib util if">
<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">
<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">
<unit bldFile="mw/imghandling/imagehandling_plat/3gp_library_api/group"/>
</component>
<component name="thumbnailmanager_api" long-name="Thumbnail Manager API" filter="s60" 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">
<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">
<unit bldFile="mw/imghandling/imagehandlingutilities/thumbnailmanager/group"/>
</component>
<component name="thumbnailmanagerqt" filter="s60" long-name="Thumbnail Manager Qt" introduced="^4">
<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">
<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">
<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">
<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">
<unit bldFile="mw/metadatasrv/mediamanagementutilities/mediafetch/group"/>
</component>
</collection>
</block>
<block name="mds" level="specific" long-name="Metadata Services" levels="mgr eng server int">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="mw/mds/metadataengine/common/group"/>
</component>
<component name="metadataengine_server" filter="s60" long-name="Metadata Engine Server" introduced="^2">
<unit bldFile="mw/mds/metadataengine/server/group"/>
</component>
<component name="metadataengine_client" filter="s60" long-name="Metadata Engine Client" introduced="^2">
<unit bldFile="mw/mds/metadataengine/client/group"/>
</component>
<component name="metadataengine_build" filter="s60" long-name="Metadata Engine Build" introduced="^2">
<!--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="locationtrail" filter="s60" long-name="Location Trail" introduced="^2">
<unit bldFile="mw/mds/locationmanager/locationtrail/group"/>
</component>
<component name="locationmanager_server" filter="s60" long-name="Location Manager Server" introduced="^2">
<unit bldFile="mw/mds/locationmanager/server/group"/>
</component>
<component name="locationmanager_client" filter="s60" long-name="Location Manager Client" introduced="^2">
<unit bldFile="mw/mds/locationmanager/client/group"/>
</component>
<component name="locationmanager_build" filter="s60" long-name="Location Manager Build" introduced="^2">
<!--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">
<unit bldFile="mw/mds/contextengine/plugins/group"/>
</component>
<component name="contextengine_build" filter="s60" long-name="Context Engine Build" introduced="^2">
<!--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">
<unit bldFile="mw/mds/harvester/blacklistclient/group"/>
</component>
<component name="blacklistserver" filter="s60" long-name="Blacklist Server" introduced="^2">
<unit bldFile="mw/mds/harvester/blacklistserver/group"/>
</component>
<component name="harvester_common" filter="s60" long-name="Harvester Common" introduced="^2">
<unit bldFile="mw/mds/harvester/common/group"/>
</component>
<component name="composerplugins" filter="s60" long-name="Composer Plugins" introduced="^2" plugin="Y">
<unit bldFile="mw/mds/harvester/composerplugins/group"/>
</component>
<component name="harvesterplugins" filter="s60" long-name="Harvester Plugins" introduced="^2" plugin="Y">
<unit bldFile="mw/mds/harvester/harvesterplugins/group"/>
</component>
<component name="monitorplugins" filter="s60" long-name="Monitor Plugins" introduced="^2" plugin="Y">
<unit bldFile="mw/mds/harvester/monitorplugins/group"/>
</component>
<component name="harvester_server" filter="s60" long-name="Harvester Server" introduced="^2">
<unit bldFile="mw/mds/harvester/server/group"/>
</component>
<component name="harvester_client" filter="s60" long-name="Harvester Client" introduced="^2">
<unit bldFile="mw/mds/harvester/client/group"/>
</component>
<component name="harvester_build" filter="s60" long-name="Harvester Build" introduced="^2">
<!-- 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">
<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" class="placeholder">
<!-- Uncomment unit when configuration is in place. Currently #included from mds_build -->
<!--<unit bldFile="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">
<!-- 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">
<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">
<unit bldFile="mw/videoutils/videoutils_plat/videoscheduler_api/group"/>
</component>
<component name="videoplayer_constants_api" long-name="Videoplayer Constants API" filter="s60" 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"/>
</collection>
</block>
<block name="mmmw" level="generic" long-name="Multimedia Middleware" levels="plugin framework server generic specific">
<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">
<unit bldFile="mw/mmmw/mmmw_plat/multimedia_data_source_api/group"/>
</component>
<component name="progressive_download_api" long-name="Progressive Download API" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/progressive_download_api/group"/>
</component>
<component name="equalizer_ui_api" long-name="Equalizer UI API" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/equalizer_ui_api/group"/>
</component>
<component name="enhanced_media_client_api" long-name="Enhanced Media Client API" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/enhanced_media_client_api/group"/>
</component>
<component name="stream_control_custom_command_api" long-name="Stream Control Custom Command API" filter="s60" 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">
<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">
<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">
<unit bldFile="mw/mmmw/mmmw_plat/audio_metadata_reader_api/group"/>
</component>
<component name="emc_progressive_download_source_api" long-name="EMC Progressive Download Source API" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/emc_progressive_download_source_api/group"/>
</component>
<component name="emc_volume_effect_api" long-name="EMC Volume Effect API" filter="s60" 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">
<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">
<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">
<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">
<unit bldFile="mw/mmmw/mmmw_plat/voip_audio_services_api/group"/>
</component>
<component name="configuration_components_factory_api" long-name="Configuration Components Factory API" filter="s60" 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">
<unit bldFile="mw/mmmw/mmmw_plat/audio_output_control_utility_api/group"/>
</component>
<component name="audio_output_control_utility_proxy_api" long-name="Audio Output Control Utility Proxy API" filter="s60" 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">
<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">
<unit bldFile="mw/mmmw/mmmw_plat/call_audio_control_api/group"/>
</component>
<component name="radio_utilities_api" long-name="Radio Utilities API" filter="s60" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/radio_utilities_api/group"/>
</component>
<component name="radio_preset_utilities_api" long-name="Radio Preset Utilities API" filter="s60" 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">
<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">
<unit bldFile="mw/mmmw/mmmw_plat/thumbnail_engine_api/group"/>
</component>
<component name="telephony_multimedia_service_api" long-name="Telephony Multimedia Service API" filter="s60" 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">
<unit bldFile="mw/mmmw/mmmw_plat/openmax_al_api/group"/>
</component>
<component name="system_tone_service_api" long-name="System Tone Service API" filter="s60" introduced="^4" class="api">
<unit bldFile="mw/mmmw/mmmw_plat/system_tone_service_api/group"/>
</component>
</collection>
<collection name="mmfenh" long-name="MMF Enhancements" level="generic">
<component name="advancedaudiocontroller" filter="s60" long-name="Advanced Audio Controllers" plugin="Y">
<unit bldFile="mw/mmmw/mmfenh/advancedaudiocontroller/group"/>
</component>
<component name="audiooutputcontrolutility" filter="s60" long-name="Audio Output Control Utility">
<unit bldFile="mw/mmmw/mmfenh/audiooutputcontrolutility/group"/>
</component>
<component name="configurationcomponentsfactory" filter="s60" long-name="Configuration Components Factory">
<unit bldFile="mw/mmmw/mmfenh/configurationcomponentsfactory/group"/>
</component>
<component name="enhancedaudioplayerutility" filter="s60" long-name="Enhanced Audio Player Utility">
<unit bldFile="mw/mmmw/mmfenh/enhancedaudioplayerutility/group"/>
</component>
<component name="enhancedmediaclient" filter="s60" long-name="Enhanced Media Client">
<unit bldFile="mw/mmmw/mmfenh/enhancedmediaclient/group"/>
</component>
<component name="profilesettingsmonitor" filter="s60" long-name="Profile Settings Monitor">
<unit bldFile="mw/mmmw/mmfenh/profilesettingsmonitor/group"/>
</component>
<component name="progressivedownload" filter="s60" long-name="Progressive Download">
<unit bldFile="mw/mmmw/mmfenh/progressivedownload/group"/>
</component>
</collection>
<collection name="mm_fw" long-name="Multimedia Frameworks" level="framework">
<!-- Id needs to be unique, mmfw already in use -->
<!-- Placeholder for OpenAX AL and other stuff -->
</collection>
<collection name="mmserv" long-name="Multimedia Services" level="specific">
<component name="audioeffectsui" filter="s60" long-name="Audio Effects UI">
<unit bldFile="mw/mmmw/mmserv/audioeffectsui/group"/>
</component>
<component name="callaudiocontrol" filter="s60" long-name="Call Audio Control">
<unit bldFile="mw/mmmw/mmserv/callaudiocontrol/group"/>
</component>
<component name="metadatautility" filter="s60" long-name="Metadata Utility">
<unit bldFile="mw/mmmw/mmserv/metadatautility/group"/>
</component>
<component name="radioutility" filter="s60" long-name="Radio Utility">
<unit bldFile="mw/mmmw/mmserv/radioutility/group"/>
</component>
<component name="thumbnailengine" filter="s60" long-name="Thumbnail Engine" introduced="^2">
<unit bldFile="mw/mmmw/mmserv/thumbnailengine/group"/>
</component>
<component name="tms" filter="s60" long-name="Telephony Multimedia Service" introduced="^3">
<unit bldFile="mw/mmmw/mmserv/tms/group"/>
</component>
<component name="voipaudioservices" filter="s60" long-name="VoIP Audio Services">
<unit bldFile="mw/mmmw/mmserv/voipaudioservices/group"/>
</component>
<component name="lib3gpextparser" filter="s60" long-name="3GP Extension Metadata Parser Library">
<unit bldFile="mw/mmmw/mmserv/metadatautility/3GPExtParserLib_stub/group"/>
</component>
<component name="sts" long-name="System Tone Service" filter="s60" introduced="^4">
<unit bldFile="mw/mmmw/mmserv/sts/group"/>
</component>
</collection>
<collection name="mmmw_info" long-name="Multimedia Middleware Info" level="specific">
<component name="mmmw_metadata" long-name="Multimedia Middleware Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="mw/mmmw/mmmw_info/mmmw_metadata/mmmw_metadata.mrp"/>
</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"/>-->
<!--<unit bldFile="gst_plugins_symbian/tsrc/GStreamerTestModule/group" filter="test,pref_test"/>-->
</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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<!-- 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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="mw/mmappfw/mmappfw_plat/videoplaylist_utility_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">
<unit bldFile="mw/mmappfw/mpx/commonframework/group"/>
</component>
<component name="playbackframework" filter="s60" long-name="MPX Playback Framework" introduced="^1">
<unit bldFile="mw/mmappfw/mpx/playbackframework/group"/>
</component>
<component name="mpxcollectionfw" filter="s60" long-name="MPX Collection Framework" introduced="^1">
<unit bldFile="mw/mmappfw/mpx/collectionframework/group"/>
</component>
<component name="mpxviewfw" filter="s60" long-name="MPX View Framework" introduced="^1">
<unit bldFile="mw/mmappfw/mpx/viewframework/group"/>
</component>
<component name="mpxviewframeworkqt" long-name="MPX View Framework Qt" filter="s60">
<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">
<!--  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
      		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">
<unit bldFile="mw/mmappfw/mmappcomponents/collectionhelper/group"/>
</component>
<component name="playlistengine" filter="s60" long-name="Playlist Engine" introduced="^1">
<unit bldFile="mw/mmappfw/mmappcomponents/playlistengine/group"/>
</component>
<component name="mpxharvester" filter="s60" long-name="Media Player Harvester" introduced="^1">
<unit bldFile="mw/mmappfw/mmappcomponents/harvester/group"/>
</component>
<component name="mmappcommonui" filter="s60" long-name="Multimedia App Common UI" introduced="^1">
<unit bldFile="mw/mmappfw/mmappcomponents/mmappcommonui/group"/>
</component>
<component name="mediaplayersettingsengine" filter="s60" long-name="Media Player Settings Engine" introduced="^1">
<unit bldFile="mw/mmappfw/mmappcomponents/mediaplayersettingsengine/group"/>
</component>
<component name="audiofetcher" filter="s60" long-name="Audio Fetcher" introduced="^1" plugin="Y">
<!-- uncomment when config is in place, currently #included in mmappcomponents_build -->
<!-- <unit bldFile="mmappcomponents/audiofetcher/group"/>-->
</component>
<component name="asxparser" filter="s60" long-name="ASX Parser" introduced="^1">
<!-- uncomment when config is in place, currently #included in mmappcomponents_build -->
<!-- <unit bldFile="mmappcomponents/asxparser/group"/>-->
</component>
<component name="playbackhelper" filter="s60" long-name="Playback Helper" introduced="^3">
<unit bldFile="mw/mmappfw/mmappcomponents/playbackhelper/group"/>
</component>
<component name="videoplaylistutility" filter="s60" long-name="Video Playlist Utility" introduced="^3">
<unit bldFile="mw/mmappfw/mmappcomponents/videoplaylistutility/group"/>
</component>
<component name="mmmtpdataprovider" filter="s60" long-name="Multimedia MTP Data Provider" introduced="^3">
<unit bldFile="mw/mmappfw/mmappcomponents/mmmtpdataprovider/group"/>
</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">
<!--  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"/>
</collection>
</block>
<block name="hgwidgets" level="specific" long-name="HG Widgets" levels="framework service api">
<collection name="hgwidgets_plat" long-name="HG Widgets Platform Interfaces" level="api">
<component name="ganeswidgets_api" long-name="Ganes Widgets API" introduced="^4" class="api placeholder">
<!-- should separate out unit -->
</component>
</collection>
<collection name="hgwidgets_pub" long-name="HG Widgets Public Interfaces" level="api"/>
<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" class="placeholder">
<!-- should separate out unit -->
</component>
</collection>
<collection name="hgwidgets_info" long-name="HG Widgets Info" level="framework">
<component name="hgwidgets_build" long-name="HG Widgets Build" introduced="^4">
<unit bldFile="mw/hgwidgets" proFile="hgwidgets.pro"/>
</component>
</collection>
</block>
<block name="inputmethods" level="generic" long-name="Input Methods" levels="plugin engine framework api">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<!--uncomment when configuration is turned on and textinput_build is removed-->
<!--  <unit bldFile="textinput/ptienginev2/group"/>-->
</component>
<component name="akninputlanguage" filter="s60" long-name="Avkon Input Language">
<unit bldFile="mw/inputmethods/textinput/akninputlanguage/group"/>
</component>
<component name="peninputarc" filter="s60" long-name="Pen Input Arc">
<unit bldFile="mw/inputmethods/textinput/peninputarc/group"/>
</component>
<component name="peninputcommonctrls" filter="s60" long-name="Pen Input Common Controls">
<unit bldFile="mw/inputmethods/textinput/peninputcommonctrls/group"/>
</component>
<component name="peninputcommonlayout" filter="s60" long-name="Pen Input Common Layout">
<unit bldFile="mw/inputmethods/textinput/peninputcommonlayout/group"/>
</component>
<component name="peninputhwrtrui" filter="s60" long-name="Pen Input Handwriting Recognition Training UI" introduced="^3" plugin="Y">
<unit bldFile="mw/inputmethods/textinput/peninputhwrtrui/group"/>
</component>
<component name="textinput_build" filter="s60" long-name="Text Input Build">
<!--needed for #ifdef, can be removed when configuration is implemented -->
<unit bldFile="mw/inputmethods/textinput/group"/>
</component>
</collection>
<collection name="fep" long-name="FEP" level="engine">
<component name="aknfep" filter="s60" long-name="Avkon FEP" plugin="Y">
<unit bldFile="mw/inputmethods/fep/aknfep/group"/>
</component>
<component name="frontendprocessor" long-name="Front End Processor" purpose="mandatory">
<unit bldFile="mw/inputmethods/fep/frontendprocessor/group" mrp="mw/inputmethods/fep/frontendprocessor/group/app-framework_fepbase.mrp"/>
</component>
</collection>
<collection name="inputmethods_info" long-name="Input Methods Info" level="api">
<component name="inputmethods_metadata" long-name="Input Methods Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="mw/inputmethods/inputmethods_info/inputmethods_metadata/inputmethods_metadata.mrp"/>
</component>
</collection>
</block>
<block name="qt" level="generic" long-name="Qt" levels="tool mw app">
<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">
<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 -config sgimagelite_support"/>
</component>
</collection>
<collection name="qtdemos" long-name="Qt Demos" level="app">
<component name="qtdemos_build" long-name="Qt Demos Build" introduced="^2" filter="qtdemos">
<unit bldFile="mw/qt/demos" proFile="demos.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="qtexamples" long-name="Qt Examples" level="app">
<component name="qtexamples_build" long-name="Qt Examples Build" introduced="^2" filter="qtexamples">
<unit bldFile="mw/qt/examples" proFile="examples.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="qt_tests" long-name="Qt Tests" level="app"/>
</block>
<block name="qtextensions" level="generic" long-name="Qt Extensions" levels="tool mw app">
<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">
<unit bldFile="mw/qtextensions/qtecomplugins" proFile="qtecomplugins.pro" qmakeArgs="-r"/>
</component>
<component name="qtextensions_examples" filter="qtextensionsexamples" long-name="Qt ECom Plugin Examples" purpose="development" introduced="^4">
<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">
<unit bldFile="mw/qtextensions/qthighway" proFile="qthighway.pro" qmakeArgs="-r"/>
</component>
<component name="qthighway_examples" filter="qtextensionsexamples" long-name="Qt Highway Examples" purpose="development" introduced="^4">
<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">
<unit bldFile="mw/qtextensions/qtmobileextensions" proFile="qtmobileextensions.pro" qmakeArgs="-r"/>
</component>
<component name="qtmobileextensions_examples" filter="qtextensionsexamples" long-name="Qt Mobile Extensions Examples" purpose="development" introduced="^4">
<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" 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"/>
</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="conf">
<unit bldFile="mw/qtextensions/group"/>
</component>
<component name="qtextensions_build" long-name="Qt Extensions Build" introduced="^4">
<!-- break this up into the above collections-->
<unit bldFile="mw/qtextensions" proFile="qtextensions.pro" qmakeArgs="-r"/>
</component>
</collection>
</block>
<block name="hb" level="generic" long-name="Orbit" levels="engine test api">
<collection name="hb_info" long-name="Orbit Info" level="api">
<component name="hb_build" long-name="Orbit Build" introduced="^4">
<!-- should break this down into actual components -->
<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">
<collection name="classicui_plat" long-name="Classic UI Platform Interfaces" level="specific">
<component name="personalisation_framework_api" long-name="Personalisation Framework API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/personalisation_framework_api/group"/>
</component>
<component name="signal_pane_api" long-name="Signal Pane API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/signal_pane_api/group" filter="!test"/>
</component>
<component name="japanese_reading_api" long-name="Japanese Reading API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/japanese_reading_api/group" filter="!test"/>
</component>
<component name="global_popup_priority_controller_api" long-name="Global Popup Priority Controller API" filter="s60" 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">
<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">
<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">
<unit bldFile="mw/classicui/classicui_plat/extended_utilities_api/group" filter="!test"/>
</component>
<component name="personalisation_plugin_api" long-name="Personalisation Plugin API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/personalisation_plugin_api/group"/>
</component>
<component name="extended_aiw_criteria_api" long-name="Extended AIW Criteria API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_aiw_criteria_api/group" filter="!test"/>
</component>
<component name="personalisation_application_api" long-name="Personalisation Application API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/personalisation_application_api/group"/>
</component>
<component name="volume_popup_api" long-name="Volume Popup API" filter="s60" 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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="mw/classicui/classicui_plat/task_list_api/group" filter="!test"/>
</component>
<component name="personalisation_slide_show_dialog_api" long-name="Personalisation Slide Show Dialog API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/personalisation_slide_show_dialog_api/group"/>
</component>
<component name="key_event_utilities_api" long-name="Key Event Utilities API" filter="s60" 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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="mw/classicui/classicui_plat/fep_document_navigation_api/group"/>
</component>
<component name="personalisation_localised_texts_api" long-name="Personalisation Localised Texts API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/personalisation_localised_texts_api/group"/>
</component>
<component name="memory_card_ui_api" long-name="Memory Card UI API" filter="s60" 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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="mw/classicui/classicui_plat/common_file_dialogs_filter_factory_api/group" filter="!test"/>
</component>
<component name="avkon_anim_dll_api" long-name="AVKON Anim DLL API" filter="s60" 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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="mw/classicui/classicui_plat/avkon_testability_api/group"/>
</component>
<component name="ganes_api" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/ganes_api/group"/>
</component>
<component name="ode_api" long-name="Ode API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/ode_api/group"/>
</component>
<component name="physics_api" long-name="Physics API" filter="s60" 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">
<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">
<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">
<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">
<unit bldFile="mw/classicui/classicui_plat/discreet_popup_api/group"/>
</component>
<component name="touch_gesture_framework_api" long-name="Touch Gesture Framework API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/touch_gesture_framework_api/group"/>
<!-- should this be commented out? -->
<!--<unit bldFile="classicui_plat/touch_gesture_framework_api/tsrc/group" filter="test,api_test"/> -->
</component>
<component name="extended_options_menu_api" long-name="Extended Options Menu API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_plat/extended_options_menu_api/group" filter="!test"/>
</component>
</collection>
<collection name="classicui_pub" long-name="Classic UI Public Interfaces" level="specific">
<component name="input_frame_api" long-name="Input Frame API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/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">
<unit bldFile="mw/classicui/classicui_pub/window_server_event_observer_api/group" filter="!test"/>
</component>
<component name="application_framework_api" long-name="Application Framework API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/application_framework_api/group" filter="!test"/>
</component>
<component name="scroller_api" long-name="Scroller API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/scroller_api/group" filter="!test"/>
</component>
<component name="ui_framework_utilities_api" long-name="UI Framework Utilities API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/ui_framework_utilities_api/group" filter="!test"/>
</component>
<component name="ui_framework_definitions_api" long-name="UI Framework Definitions API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/ui_framework_definitions_api/group" filter="!test"/>
</component>
<component name="buttons_api" long-name="Buttons API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/buttons_api/group" filter="!test"/>
</component>
<component name="queries_api" long-name="Queries API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/queries_api/group" filter="!test"/>
</component>
<component name="aiw_generic_parameter_api" long-name="AIW Generic Parameter API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/aiw_generic_parameter_api/group" filter="!test"/>
</component>
<component name="editors_api" long-name="Editors API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/editors_api/group" filter="!test"/>
</component>
<component name="common_file_dialogs_api" long-name="Common File Dialogs API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/common_file_dialogs_api/group" filter="!test"/>
</component>
<component name="dialog_shutter_api" long-name="Dialog Shutter API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/dialog_shutter_api/group" filter="!test"/>
</component>
<component name="fonts_api" long-name="Fonts API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/fonts_api/group" filter="!test"/>
</component>
<component name="screen_clearer_api" long-name="Screen Clearer API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/screen_clearer_api/group" filter="!test"/>
</component>
<component name="notifiers_api" long-name="Notifiers API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/notifiers_api/group" filter="!test"/>
</component>
<component name="notes_api" long-name="Notes API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/notes_api/group" filter="!test"/>
</component>
<component name="status_pane_api" long-name="Status Pane API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/status_pane_api/group" filter="!test"/>
</component>
<component name="base_controls_api" long-name="Base Controls API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/base_controls_api/group" filter="!test"/>
</component>
<component name="grids_api" long-name="Grids API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/grids_api/group" filter="!test"/>
</component>
<component name="context_pane_api" long-name="Context Pane API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/context_pane_api/group" filter="!test"/>
</component>
<component name="lists_api" long-name="Lists API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/lists_api/group" filter="!test"/>
</component>
<component name="popups_api" long-name="Popups API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/popups_api/group" filter="!test"/>
</component>
<component name="misc_controls_api" long-name="Misc Controls API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/misc_controls_api/group" filter="!test"/>
</component>
<component name="keylock_api" long-name="Keylock API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/keylock_api/group" filter="!test"/>
</component>
<component name="options_menu_api" long-name="Options Menu API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/options_menu_api/group" filter="!test"/>
</component>
<component name="hierarchical_lists_api" long-name="Hierarchical Lists API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/hierarchical_lists_api/group" filter="!test"/>
</component>
<component name="navigation_pane_api" long-name="Navigation Pane API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/navigation_pane_api/group" filter="!test"/>
</component>
<component name="tabs_api" long-name="Tabs API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/tabs_api/group" filter="!test"/>
</component>
<component name="title_pane_touch_observer_api" long-name="Title Pane Touch Observer API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/title_pane_touch_observer_api/group"/>
</component>
<component name="choice_list_api" long-name="Choice List API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/choice_list_api/group" filter="!test"/>
</component>
<component name="info_popup_note_api" long-name="Info Popup Note API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/info_popup_note_api/group" filter="!test"/>
</component>
<component name="setting_pages_api" long-name="Setting Pages API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/setting_pages_api/group" filter="!test"/>
</component>
<component name="screen_mode_api" long-name="Screen Mode API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/screen_mode_api/group" filter="!test"/>
</component>
<component name="indicators_api" long-name="Indicators API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/indicators_api/group" filter="!test"/>
</component>
<component name="error_ui_api" long-name="Error UI API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/error_ui_api/group" filter="!test"/>
</component>
<component name="animation_api" long-name="Animation API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/animation_api/group" filter="!test"/>
</component>
<component name="searchfield_api" long-name="Searchfield API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/searchfield_api/group" filter="!test"/>
</component>
<component name="labels_api" long-name="Labels API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/labels_api/group" filter="!test"/>
</component>
<component name="hotkeys_api" long-name="Hotkeys API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/hotkeys_api/group" filter="!test"/>
</component>
<component name="initialization_api" long-name="Initialization API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/initialization_api/group" filter="!test"/>
</component>
<component name="volume_control_api" long-name="Volume Control API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/volume_control_api/group" filter="!test"/>
</component>
<component name="title_pane_api" long-name="Title Pane API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/title_pane_api/group" filter="!test"/>
</component>
<component name="sounds_api" long-name="Sounds API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/sounds_api/group" filter="!test"/>
</component>
<component name="aiw_service_handler_api" long-name="AIW Service Handler API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/aiw_service_handler_api/group" filter="!test"/>
</component>
<component name="aiw_criteria_api" long-name="AIW Criteria API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/aiw_criteria_api/group" filter="!test"/>
</component>
<component name="touch_ui_utilities_api" long-name="Touch UI Utilities API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/touch_ui_utilities_api/group" filter="!test"/>
</component>
<component name="generic_button_api" long-name="Generic Button API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/generic_button_api/group" filter="!test"/>
</component>
<component name="form_api" long-name="Form API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/form_api/group" filter="!test"/>
</component>
<component name="uikon_core_controls" long-name="Uikon Core Controls" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/uikon_core_controls/group" filter="!test"/>
</component>
<component name="calendar_api" long-name="Calendar API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/calendar_api/group"/>
</component>
<component name="toolbar_api" long-name="Toolbar API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/toolbar_api/group" filter="!test"/>
</component>
<component name="server_application_api" long-name="Server Application API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/server_application_api/group"/>
</component>
<component name="slider_api" long-name="Slider API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/slider_api/group" filter="!test"/>
</component>
<component name="private_ui_framework_api" long-name="Private UI Framework API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/private_ui_framework_api/group" filter="!test"/>
</component>
<component name="dialogs_api" long-name="Dialogs API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/dialogs_api/group" filter="!test"/>
</component>
<component name="document_handler_api" long-name="Document handler API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/document_handler_api/group"/>
</component>
<component name="images_api" long-name="Images API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/images_api/group" filter="!test"/>
</component>
<component name="stylus_popup_menu_api" long-name="Stylus Pop-up Menu API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/stylus_popup_menu_api/group" filter="!test"/>
</component>
<component name="information_preview_popup_api" long-name="Information Preview Popup API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/information_preview_popup_api/group" filter="!test"/>
</component>
<component name="intermediate_state_api" long-name="Intermediate State API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/intermediate_state_api/group"/>
</component>
<component name="help_launcher_api" long-name="Help Launcher API" filter="s60" class="api">
<unit bldFile="mw/classicui/classicui_pub/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">
<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">
<unit bldFile="mw/classicui/uifw/uiklaf/group"/>
</component>
<component name="eikctl" filter="s60" long-name="Eikon Controls">
<unit bldFile="mw/classicui/uifw/eikctl/group"/>
</component>
<component name="avkon" filter="s60" long-name="Avkon">
<!-- 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">
<unit bldFile="mw/classicui/uifw/eikstd/group"/>
</component>
<component name="aknglobalui" filter="s60" long-name="Avkon Global UI">
<unit bldFile="mw/classicui/uifw/aknglobalui/group"/>
</component>
<component name="ganes" filter="s60" long-name="Ganes">
<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">
<unit bldFile="mw/classicui/commonuis/commonui/group"/>
</component>
<component name="commondialogs" filter="s60" long-name="Common Dialogs">
<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">
<unit bldFile="mw/classicui/applicationinterworkingfw/servicehandler/group"/>
</component>
</collection>
<collection name="psln" long-name="Personalization" level="specific">
<!-- the collection is really a component. Move down a directory. Or it could be split into multiple components-->
<component name="psln_build" filter="s60" long-name="Personalization Build">
<unit bldFile="mw/classicui/psln/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">
<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">
<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">
<unit bldFile="mw/classicui/uiutils/localizer/group"/>
</component>
<component name="findutil" filter="s60" long-name="Find Utility">
<unit bldFile="mw/classicui/uiutils/findutil/group"/>
</component>
<component name="gamerecognizer" filter="s60" long-name="Game Recognizer" plugin="Y">
<unit bldFile="mw/classicui/uiutils/gamerecognizer/group"/>
</component>
<component name="aknjapanesereading" filter="s60" long-name="Avkon Japanese Reading">
<unit bldFile="mw/classicui/uiutils/aknjapanesereading/group"/>
</component>
<component name="hlplch" long-name="Help Launcher" filter="s60,bldfirst">
<unit bldFile="mw/classicui/uiutils/hlplch/group"/>
</component>
</collection>
<collection name="commonuisupport" long-name="Common UI Support" level="support">
<component name="uikon" long-name="Uikon" introduced="6.0" purpose="mandatory">
<unit bldFile="mw/classicui/commonuisupport/uikon/group" mrp="mw/classicui/commonuisupport/uikon/group/app-framework_uikon.mrp"/>
</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"/>
</component>
<component name="uilaf" long-name="UI Look and Feel" introduced="6.0" purpose="mandatory">
<unit bldFile="mw/classicui/commonuisupport/uilaf/GROUP" mrp="mw/classicui/commonuisupport/uilaf/GROUP/app-framework_uiklafgt.mrp"/>
</component>
<component name="grid" long-name="Grid" purpose="optional">
<unit bldFile="mw/classicui/commonuisupport/grid/group" mrp="mw/classicui/commonuisupport/grid/group/app-framework_grid.mrp"/>
</component>
<component name="uifwsdocs" long-name="UI Frameworks Documentation" purpose="development" class="doc">
<unit mrp="mw/classicui/commonuisupport/uifwsdocs/app-framework_documentation.mrp"/>
</component>
</collection>
<collection name="lafagnosticuifoundation" long-name="Look-and-Feel Agnostic UI Foundation" level="base">
<component name="cone" long-name="Control Environment" purpose="mandatory">
<unit bldFile="mw/classicui/lafagnosticuifoundation/cone/group" mrp="mw/classicui/lafagnosticuifoundation/cone/group/app-framework_cone.mrp"/>
</component>
<component name="graphicseffects" long-name="Graphics Effects" introduced="9.2" purpose="optional">
<unit bldFile="mw/classicui/lafagnosticuifoundation/graphicseffects/group" mrp="mw/classicui/lafagnosticuifoundation/graphicseffects/group/app-framework_gfxtranseffect.mrp"/>
</component>
<component name="uigraphicsutils" long-name="UI Graphics Utilities" purpose="mandatory">
<unit bldFile="mw/classicui/lafagnosticuifoundation/uigraphicsutils/group" mrp="mw/classicui/lafagnosticuifoundation/uigraphicsutils/group/app-framework_egul.mrp"/>
</component>
<component name="clockanim" long-name="Clock" purpose="optional" plugin="Y">
<unit bldFile="mw/classicui/lafagnosticuifoundation/clockanim/group" mrp="mw/classicui/lafagnosticuifoundation/clockanim/group/app-framework_clock.mrp"/>
</component>
<component name="bmpanimation" long-name="BMP Animation" introduced="6.0" purpose="optional">
<unit bldFile="mw/classicui/lafagnosticuifoundation/bmpanimation/group" mrp="mw/classicui/lafagnosticuifoundation/bmpanimation/group/app-framework_bmpanim.mrp"/>
</component>
<component name="animation" long-name="Animation" introduced="9.1" purpose="optional">
<unit bldFile="mw/classicui/lafagnosticuifoundation/animation/group" mrp="mw/classicui/lafagnosticuifoundation/animation/group/app-framework_animation.mrp"/>
</component>
</collection>
<collection name="classicui_info" long-name="Classic UI Info" level="specific">
<!-- the multiple units in the API test components need to be resolved -->
<component name="classicui_metadata" long-name="Classic UI Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="mw/classicui/classicui_info/classicui_metadata/classicui_metadata.mrp"/>
</component>
</collection>
</block>
<block name="svgt" level="generic" long-name="SVG Tiny" levels="util ui">
<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">
<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">
<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 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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="mw/uiaccelerator/uiacceltk/hitchcock/group"/>
</component>
<component name="uiacceltk_build" filter="s60" long-name="UI Accelerator Toolkit Build">
<!-- 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">
<!-- 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">
<unit bldFile="mw/uiresources/uiresources_pub/pictograph_api/group" filter="!test"/>
</component>
<component name="skins_api" long-name="Skins API" filter="s60" 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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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"/>
</collection>
<collection name="uigraphics" long-name="UI Graphics" level="generic">
<component name="bitmaps2" filter="s60" long-name="Bitmaps 2" class="config">
<unit bldFile="mw/uiresources/uigraphics/bitmaps2/group"/>
</component>
<component name="icons" filter="s60" long-name="Icons" class="config">
<unit bldFile="mw/uiresources/uigraphics/icons/group"/>
</component>
<component name="variatedbitmaps" filter="s60" long-name="Variated Bitmaps" class="config">
<unit bldFile="mw/uiresources/uigraphics/variatedbitmaps/group"/>
</component>
<component name="aknicon" filter="s60" long-name="Avkon Icon Framework">
<unit bldFile="mw/uiresources/uigraphics/aknicon/group"/>
</component>
<component name="nvgrenderstage" filter="sf_build" long-name="NVG Render Stage">
<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">
<!-- 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">
<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">
<unit bldFile="mw/uiresources/skins/aknskincontent/group"/>
</component>
<component name="aknskins" filter="s60" long-name="Avkon Skin Compiler">
<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">
<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">
<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">
<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">
<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>
-->
<component name="fontutils" filter="sf_build" long-name="Font Utils">
<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">
<unit bldFile="mw/uiresources/helpthemes/group"/>
</component>
</collection>
</block>
<block name="hapticsservices" level="generic" long-name="Haptics Services" levels="fw server api">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="mw/hapticsservices/tactilefeedback/tactilearearegistry/group"/>
</component>
<component name="tactilefeedbackresolver" filter="s60" long-name="Tactile Feedback Resolver" introduced="^1">
<unit bldFile="mw/hapticsservices/tactilefeedback/tactilefeedbackresolver/group"/>
</component>
<component name="tactileclickplugin" filter="s60" long-name="Tactile Click Plugin" introduced="^1" plugin="Y">
<unit bldFile="mw/hapticsservices/tactilefeedback/tactileclickplugin/group"/>
</component>
<component name="tactilefeedbackclient" filter="s60" long-name="Tactile Feedback Client" introduced="^1">
<unit bldFile="mw/hapticsservices/tactilefeedback/tactilefeedbackclient/group"/>
</component>
<component name="tactileactionplugin" filter="s60" long-name="Tactile Action Plugin" introduced="^1" plugin="Y">
<unit bldFile="mw/hapticsservices/tactilefeedback/tactileactionplugin/group"/>
</component>
<component name="tactilefeedback_build" filter="s60" long-name="Tactile Feedback Build" introduced="^1">
<!-- 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">
<collection name="platformthemes_info" long-name="Platform Themes Info">
<component name="platformthemes_build" long-name="Platform Themes Build">
<!-- no real structure in this package. Should break into collections / components -->
<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">
<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">
<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">
<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">
<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">
<unit bldFile="mw/gsprofilesrv/gsprofilesrv_plat/profiles_engine_api/group"/>
</component>
<component name="settings_backgroundimage_api" long-name="Settings Background Image API" filter="s60" class="api">
<unit bldFile="mw/gsprofilesrv/gsprofilesrv_plat/settings_backgroundimage_api/group"/>
</component>
<component name="settings_framework_api" long-name="Settings Framework API" filter="s60" class="api">
<unit bldFile="mw/gsprofilesrv/gsprofilesrv_plat/settings_framework_api/group"/>
</component>
<component name="settings_launch_api" long-name="Settings Launch API" filter="s60" class="api">
<unit bldFile="mw/gsprofilesrv/gsprofilesrv_plat/settings_launch_api/group"/>
</component>
<component name="settings_listbox_api" long-name="Settings List Box API" filter="s60" class="api">
<unit bldFile="mw/gsprofilesrv/gsprofilesrv_plat/settings_listbox_api/group"/>
</component>
<component name="settings_plugin_api" long-name="Settings Plugin API" filter="s60" class="api">
<unit bldFile="mw/gsprofilesrv/gsprofilesrv_plat/settings_plugin_api/group"/>
</component>
<component name="settings_uis_cenrep_collection_api" long-name="Settings UIs CenRep Collection API" filter="s60" class="api">
<unit bldFile="mw/gsprofilesrv/gsprofilesrv_plat/settings_uis_cenrep_collection_api/group"/>
</component>
</collection>
<collection name="gssettingsuis" long-name="General Settings UIs" level="framework">
<component name="gs" filter="s60" long-name="General Settings" introduced="9.2">
<unit bldFile="mw/gsprofilesrv/gssettingsuis/gs/group"/>
</component>
</collection>
<collection name="ftuwizardmodel" long-name="FTU Wizard Model" level="generic">
<component name="ftuwizardmodel_build" long-name="FTU Wizardmodel Build" filter="bldfirst">
<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">
<unit bldFile="mw/gsprofilesrv/controlpanel/rom" proFile="cp_rom.pri" qmakeArgs="-r -config rom"/>
</component>
<component name="controlpanel_source" long-name="Control Panel Source" filter="s60">
<unit bldFile="mw/gsprofilesrv/controlpanel/src" qmakeArgs="-r -config rom" proFile="src.pro"/>
</component>
</collection>
<collection name="profilesservices" long-name="Profiles Services" level="server">
<component name="profileengine" filter="s60" long-name="Profile Engine" introduced="9.1">
<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">
<collection name="appfoundation" long-name="App Foundation" level="generic">
<component name="appfoundation_build" long-name="App Foundation Build" introduced="^4">
<unit bldFile="mw/homescreensrv/appfoundation" qmakeArgs="-r" proFile="appfoundation.pro"/>
</component>
</collection>
<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>
</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>
</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="action_handler_plugin_api" long-name="Action Handler Plugin API" filter="s60" class="api"/>
<component name="content_harvester_plugin_api" long-name="Content Harvester Plugin API" filter="s60" class="api"/>
<component name="sapi_contentpublishing" long-name="SAPI Content Publishing" filter="s60" class="api"/>
<component name="sapi_actionhandler" long-name="SAPI Action Handler" filter="s60" class="api"/>
<component name="menu_sat_interface_api" long-name="Menu SAT Interface API" filter="s60" class="api"/>
<component name="appruntimemodel_api" long-name="Appliction Run-Time Model API" filter="s60" introduced="^4" 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="statemodel_api" long-name="State Model API" filter="s60" introduced="^4" class="api"/>
<component name="homescreen_information_api" long-name="Homescreen Information API" filter="s60" introduced="^4" class="api"/>
</collection>
<collection name="hsactivityfw" long-name="Activity Framework" level="activityfw">
<component name="hsactivityfw_build" long-name="Activity Framework Build" introduced="^4">
<unit bldFile="mw/homescreensrv/activityfw" qmakeArgs="-r" proFile="activityfw.pro"/>
</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>
</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.pro"/>
</component>
<component name="homescreensrvrom" long-name="Home Screen Services ROM" introduced="^4">
<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">
<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">
<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">
<unit bldFile="mw/homescreensrvlegacy/ai_plugin_information_api/group" proFile="group.pro"/>
</component>
<component name="content_harvester_plugin_api" long-name="Content Harvester Plug-in API" filter="s60" 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">
<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">
<unit bldFile="mw/appinstall/appinstall_plat/iaupdate_api/group"/>
</component>
<component name="task_plugin_api" long-name="Task Plugin API" filter="s60" 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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="mw/appinstall/appinstall_plat/sw_installer_ps_keys/group"/>
</component>
<component name="appmngr2runtimeapi" long-name="Application Manager 2 Runtime Plugin API" filter="s60" class="api">
<unit bldFile="mw/appinstall/appinstall_plat/appmngr2runtimeapi/group"/>
</component>
<component name="sifui_api" long-name="STIF UI API" filter="s60" 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">
<unit bldFile="mw/appinstall/appinstall_pub/startup_list_management_api/group"/>
</component>
</collection>
<collection name="ncdengine" long-name="Nokia Content Discover" level="framework">
<!-- is this really just a component? If so move down one diretcory. Otherwise properly split up the bld.inf -->
<component name="ncdengine_engine" filter="s60" long-name="NCD Engine" introduced="^1">
<unit bldFile="mw/appinstall/ncdengine/engine/group"/>
</component>
<component name="debuglogger" filter="s60" long-name="NCD Debug Logger" introduced="^1" class="placeholder">
<!-- <unit bldFile="ncdengine/debuglogger/group"/> -->
</component>
<component name="ncdengine_build" filter="s60" long-name="NCD Build" introduced="^1">
<unit bldFile="mw/appinstall/ncdengine/group"/>
</component>
</collection>
<collection name="appinstaller" long-name="Application Installer" level="generic">
<component name="appinstui" filter="s60" long-name="Application Installer UI" introduced="^2">
<unit bldFile="mw/appinstall/appinstaller/appinstui/group"/>
</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">
<unit bldFile="mw/appinstall/iaupdateapi_stub/group"/>
</component>
</collection>
<collection name="iaupdate" long-name="Independent Apps Update" level="api">
<!-- is this really just a component? If so move down one diretcory. Otherwise properly split up the bld.inf -->
<component name="iad" long-name="Software Update" filter="s60" introduced="^2">
<unit bldFile="mw/appinstall/iaupdate/iad/group"/>
</component>
<component name="iaupdate_help" filter="s60" long-name="IA Update Help" introduced="^2">
<unit bldFile="mw/appinstall/iaupdate/help/group"/>
</component>
<component name="iaupdate_build" filter="s60" long-name="IA Update Build" introduced="^2">
<unit bldFile="mw/appinstall/iaupdate/group"/>
</component>
</collection>
<collection name="installationservices" long-name="Installation Services" level="generic">
<component name="swi" long-name="Secure Software Install" purpose="optional">
<unit bldFile="mw/appinstall/installationservices/swi/group" mrp="mw/appinstall/installationservices/swi/group/security_swi.mrp"/>
</component>
<component name="swidevicetools" long-name="Secure Software Install Device Tools" introduced="8.1" purpose="development">
<unit bldFile="mw/appinstall/installationservices/swidevicetools/group" mrp="mw/appinstall/installationservices/swidevicetools/group/security_switools_device.mrp"/>
</component>
<component name="swcomponentregistry" long-name="Software Component Registry" introduced="^4" purpose="mandatory">
<unit bldFile="mw/appinstall/installationservices/swcomponentregistry/group" mrp="mw/appinstall/installationservices/swcomponentregistry/group/security_softwarecomponentregistry.mrp"/>
</component>
<component name="swinstallationfw" long-name="Software Installation Framework" introduced="^4" purpose="optional">
<unit bldFile="mw/appinstall/installationservices/swinstallationfw/group" mrp="mw/appinstall/installationservices/swinstallationfw/group/security_softwareinstallframework.mrp"/>
</component>
<component name="swtransactionservices" long-name="Software Transaction Services" introduced="^4" purpose="optional">
<unit bldFile="mw/appinstall/installationservices/swtransactionservices/group" mrp="mw/appinstall/installationservices/swtransactionservices/group/security_softwaretransactionservices.mrp"/>
</component>
<component name="refswinstallationplugin" long-name="Reference Software Installation Plugin" introduced="^4" purpose="development" plugin="Y">
<unit bldFile="mw/appinstall/installationservices/refswinstallationplugin/group" mrp="mw/appinstall/installationservices/refswinstallationplugin/group/security_sifrefplugin.mrp"/>
</component>
<component name="refsoftwareappmgr" long-name="Reference Software Application Manager" introduced="^4" purpose="development">
<unit bldFile="mw/appinstall/installationservices/refsoftwareappmgr/group" mrp="mw/appinstall/installationservices/refsoftwareappmgr/group/security_referenceapplicationmanager.mrp"/>
</component>
<component name="swiconfig" long-name="Software Install Config" introduced="9.1" purpose="optional" class="config">
<unit bldFile="mw/appinstall/installationservices/swiconfig/group" mrp="mw/appinstall/installationservices/swiconfig/group/install_config.mrp"/>
</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">
<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">
<unit bldFile="mw/appinstall/secureswitools/swianalysistoolkit/group" mrp="mw/appinstall/secureswitools/swianalysistoolkit/group/security_switools.mrp"/>
</component>
<component name="openssllib" long-name="OpenSSL Library" purpose="optional" class="PC">
<unit mrp="mw/appinstall/secureswitools/openssllib/security_openssl.mrp"/>
</component>
<component name="swisistools" long-name="Secure Software Install SIS Tools" purpose="optional" class="PC">
<unit bldFile="mw/appinstall/secureswitools/swisistools/group" mrp="mw/appinstall/secureswitools/swisistools/group/security_sistools.mrp"/>
</component>
</collection>
<collection name="appinstall_info" long-name="Application Installation Info" level="api">
<component name="appinstall_metadata" long-name="Application Installation Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="mw/appinstall/appinstall_info/appinstall_metadata/appinstall_metadata.mrp"/>
</component>
</collection>
</block>
<block name="serviceapifw" level="specific" long-name="Service API Framework" levels="plugin framework server generic specific">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="mw/serviceapifw/rtsecuritymanager/rtsecuritymanagerutil/group"/>
</component>
<component name="rtsecuritymanagerserver" filter="s60" long-name="Runtime Security Manager Server">
<unit bldFile="mw/serviceapifw/rtsecuritymanager/rtsecuritymanagerserver/group"/>
</component>
<component name="rtsecuritymanagerclient" filter="s60" long-name="Runtime Security Manager Client">
<unit bldFile="mw/serviceapifw/rtsecuritymanager/rtsecuritymanagerclient/group"/>
</component>
<component name="rtsecuritymanager_build" filter="s60" long-name="Runtime Security Manager Build">
<!-- 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">
<unit bldFile="mw/serviceapifw/languageinterworkingfw/servicehandler/group"/>
</component>
</collection>
</block>
<block name="serviceapi" level="specific" long-name="Service API" levels="os mw1 mw2 app">
<!-- should break up this collection into something meaningful -->
<collection name="serviceproviders" long-name="Service Providers" level="mw1">
<component name="sapi_contacts_vpbk" long-name="Contacts Phonebook SAPI" filter="s60" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_contacts_vpbk/group"/>
</component>
<component name="sapi_location" long-name="Location SAPI" filter="s60" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_location/group"/>
</component>
<component name="sapi_mediamanagement" long-name="Media Management SAPI" filter="s60" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_mediamanagement/group"/>
</component>
<component name="sapi_landmarks" long-name="Landmarks SAPI" filter="s60" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_landmarks/group"/>
</component>
<component name="sapi_messaging" long-name="Messaging SAPI" filter="s60" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_messaging/group"/>
</component>
<component name="sapi_applicationmanager" long-name="Application Manager SAPI" filter="s60" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_applicationmanager/group"/>
</component>
<component name="sapi_calendar" long-name="Calendar SAPI" filter="s60" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_calendar/group"/>
</component>
<component name="sapi_logging" long-name="Logging SAPI" filter="s60" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_logging/group"/>
</component>
<component name="sapi_sensor" long-name="Sensor SAPI" filter="s60" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_sensor/group"/>
</component>
<component name="sapi_sysinfo" long-name="Sysinfo SAPI" filter="s60" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_sysinfo/group"/>
</component>
<component name="sapi_serviceregistry" long-name="Service Registry SAPI" filter="s60" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/sapi_serviceregistry/group"/>
</component>
<component name="jsapi" long-name="Javascript API" filter="s60" plugin="Y">
<unit bldFile="mw/serviceapi/serviceproviders/jsapi/group"/>
</component>
<component name="serviceproviders_build" filter="s60" long-name="Service API Build">
<!--  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">
<collection name="bookmarksengine" long-name="Bookmarks Engine" level="support">
<component name="bookmarksengine_build" long-name="Bookmarks Engine Build" introduced="^4">
<unit bldFile="mw/browser/bookmarksengine" proFile="bookmarksengine.pro" qmakeArgs="&quot;what+=plat_101&quot;"/>
</component>
</collection>
</block>
<block name="web" level="specific" long-name="Web" levels="plugin utils server generic specific">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="mw/web/web_pub/browser_plugin_api/group"/>
</component>
<component name="settings_api" long-name="Settings API" filter="s60" 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">
<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">
<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">
<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">
<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">
<unit bldFile="mw/web/web_plat/connection_manager_api/group"/>
</component>
<component name="cxml_library_api" long-name="cXml Library API" filter="s60" class="api">
<unit bldFile="mw/web/web_plat/cxml_library_api/group"/>
</component>
<component name="download_mgr_client_api_extn" long-name="Download Manager Client API Extension" filter="s60" 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">
<unit bldFile="mw/web/web_plat/feeds_engine_api/group"/>
</component>
<component name="launcher_api" long-name="Launcher API" filter="s60" 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">
<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">
<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">
<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">
<unit bldFile="mw/web/web_plat/scriptable_plugin_api/group"/>
</component>
<component name="webutils_api" long-name="Web Utils API" filter="s60" 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">
<unit bldFile="mw/web/web_plat/widget_registry_api/group"/>
</component>
<component name="xml_parser_api" long-name="XML Parser API" filter="s60" class="api">
<unit bldFile="mw/web/web_plat/xml_parser_api/group"/>
</component>
</collection>
<collection name="web_info" long-name="Web Info" level="specific">
<component name="web_build" filter="s60" long-name="Web Build">
<!-- when configuration is in place, the #ifdef is no longer needed and this component can be removed -->
<unit bldFile="mw/web/group"/>
</component>
</collection>
<collection name="browserutilities" long-name="Browser Utilities" level="utils">
<component name="browserdialogsprovider" filter="s60" long-name="Browser Dialogs Provider">
<unit bldFile="mw/web/browserutilities/browserdialogsprovider/group"/>
</component>
<component name="recenturlstore" filter="s60" long-name="Recent URL Store">
<unit bldFile="mw/web/browserutilities/recenturlstore/group"/>
</component>
<component name="xmlparser" filter="s60" long-name="XML Interface">
<unit bldFile="mw/web/browserutilities/xmlparser/group"/>
</component>
<component name="cxmllibrary" filter="s60" long-name="XML Parser Implementation">
<unit bldFile="mw/web/browserutilities/cxmllibrary/group"/>
</component>
<component name="downloadmgr" filter="s60" long-name="Download Manager">
<unit bldFile="mw/web/browserutilities/downloadmgr/group"/>
</component>
<component name="connectionmanager" filter="s60" long-name="Connection Manager">
<unit bldFile="mw/web/browserutilities/connectionmanager/group"/>
</component>
<component name="browsertelservice" filter="s60" long-name="Browser Telephony Service">
<unit bldFile="mw/web/browserutilities/browsertelservice/group"/>
</component>
<component name="favouritesengine" filter="s60" long-name="Favourites Engine">
<unit bldFile="mw/web/browserutilities/favouritesengine/group"/>
</component>
<component name="feedsengine" filter="s60" long-name="Feeds Engine">
<unit bldFile="mw/web/browserutilities/feedsengine/group"/>
</component>
<component name="multipartparser" filter="s60" long-name="Multipart Parser">
<!-- uncomment the unit when configuration is in place, it's currently #included from browserutilities_build -->
<!-- <unit bldFile="browserutilities/multipartparser/group"/> -->
</component>
<component name="schemehandler" filter="s60" long-name="Scheme Handler">
<unit bldFile="mw/web/browserutilities/schemehandler/group"/>
</component>
<component name="webutils" filter="s60" long-name="Web Utils">
<unit bldFile="mw/web/browserutilities/webutils/group"/>
</component>
<component name="aiwbrowserprovider" filter="s60" long-name="AIW Browser Provider" plugin="Y">
<unit bldFile="mw/web/browserutilities/aiwbrowserprovider/group"/>
</component>
<component name="browserutilities_build" filter="s60" long-name="Browser Utilities Build">
<!-- when configuration is in place, the #ifdef is no longer needed and this component can be removed -->
<unit bldFile="mw/web/browserutilities/group"/>
</component>
</collection>
<collection name="webengine" long-name="Web Engine" level="server">
<component name="osswebengine" filter="s60" long-name="OSS Web Engine">
<!-- 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"/>
<unit bldFile="mw/web/webengine/osswebengine/npscript/group"/>
<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">
<unit bldFile="mw/web/webengine/webkitutils/group"/>
</component>
<component name="pagescaler" filter="s60" long-name="Page Scaler">
<unit bldFile="mw/web/webengine/pagescaler/group"/>
</component>
<component name="webwidgetinstaller" filter="s60" long-name="Widget Installer">
<unit bldFile="mw/web/webengine/widgetinstaller/group"/>
</component>
<component name="widgetregistry" filter="s60" long-name="Widget Registry">
<unit bldFile="mw/web/webengine/widgetregistry/group"/>
</component>
<component name="wmlengine" filter="s60" long-name="WML Engine">
<unit bldFile="mw/web/webengine/wmlengine/group"/>
</component>
<component name="device" filter="s60" long-name="Device">
<!-- this needs a more meaningful name -->
<unit bldFile="mw/web/webengine/device/group"/>
</component>
<component name="widgetengine" filter="s60" long-name="Widget Engine">
<unit bldFile="mw/web/webengine/widgetengine/group"/>
</component>
<component name="web_memoryplugin" long-name="Memory Plugin" filter="s60" plugin="Y">
<unit bldFile="mw/web/webengine/memoryplugin/group"/>
</component>
<component name="widgetmemoryplugin" filter="s60" long-name="Widget Memory Plugin" plugin="Y">
<unit bldFile="mw/web/webengine/widgetmemoryplugin/group"/>
</component>
<component name="widgetbackuprestore" filter="s60" long-name="Widget Backup and Restore">
<unit bldFile="mw/web/webengine/widgetbackuprestore/group"/>
</component>
<component name="browserrecognizers" filter="s60" long-name="Browser Recognizers" plugin="Y">
<unit bldFile="mw/web/webengine/browserrecognizers/group"/>
</component>
<component name="wrtharvester" filter="s60" long-name="Web Runtime Harvester" 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">
<unit bldFile="mw/web/codhandler/codeng/group"/>
</component>
<component name="codui" filter="s60" long-name="COD UI">
<unit bldFile="mw/web/codhandler/codui/group"/>
</component>
<component name="codrecog" filter="s60" long-name="COD Recogniser" plugin="Y">
<unit bldFile="mw/web/codhandler/codrecog/group"/>
</component>
<component name="codviewer" filter="s60" long-name="COD Viewer">
<unit bldFile="mw/web/codhandler/codviewer/group"/>
</component>
<component name="ddrecog" filter="s60" long-name="Download Descriptor Recogniser" plugin="Y">
<unit bldFile="mw/web/codhandler/ddrecog/group"/>
</component>
<component name="ddviewer" filter="s60" long-name="Download Descriptor Viewer">
<unit bldFile="mw/web/codhandler/ddviewer/group"/>
</component>
<component name="coddownload" filter="s60" long-name="COD Download">
<unit bldFile="mw/web/codhandler/coddownload/group"/>
</component>
<component name="roapapp" filter="s60" long-name="ROAP Application">
<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.
      		#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">
<!-- the following units can be uncommented when configuration is put in place -->
<component name="widgetrecognizer" filter="s60" long-name="Widget Recognizer" plugin="Y" class="placeholder">
<!--<unit bldFile="widgets/widgetrecognizer/group"/>-->
</component>
<component name="widgetinstaller" filter="s60" long-name="Widget Installer UI" plugin="Y" class="placeholder">
<!--<unit bldFile="widgets/widgetinstaller/group"/>-->
</component>
<component name="widgetlauncher" filter="s60" long-name="Widget Launcher" class="placeholder">
<!-- <unit bldFile="widgets/widgetlauncher/group"/>-->
</component>
<component name="widgetapp" filter="s60" long-name="Widget UI" class="placeholder">
<!--<unit bldFile="widgets/widgetapp/group"/>-->
</component>
<component name="widgetpreinstaller" filter="s60" long-name="Widget Pre-Installer">
<!--<unit bldFile="widgets/widgetpreinstaller/group"/>-->
</component>
<component name="widgetstartup" filter="s60" long-name="Widget Startup">
<!--<unit bldFile="widgets/widgetstartup/group"/>-->
</component>
<component name="widgets_build" filter="s60" long-name="Widgets Build">
<!-- when configuration is in place, the #ifdef is no longer needed and this component can be removed 
      		#included .hrh file needs to be #included in each of the other components -->
<unit bldFile="mw/web/widgets/group"/>
</component>
</collection>
</block>
<block name="websrv" level="generic" long-name="Web Services" levels="plugin framework server generic specific">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="mw/websrv/webservices/wsnotifierplugins/group"/>
</component>
<component name="wslogger" filter="s60" long-name="WS Logger">
<unit bldFile="mw/websrv/webservices/wslogger/group"/>
</component>
<component name="wsxml" filter="s60" long-name="WS XML Extensions">
<unit bldFile="mw/websrv/webservices/wsxml/group"/>
</component>
<component name="wsutils" filter="s60" long-name="WS Utils">
<unit bldFile="mw/websrv/webservices/wsutils/group"/>
</component>
<component name="wsfragment" filter="s60" long-name="WS Fragment">
<unit bldFile="mw/websrv/webservices/wsfragment/group"/>
</component>
<component name="wsdescription" filter="s60" long-name="WS Service Description">
<unit bldFile="mw/websrv/webservices/wsdescription/group"/>
</component>
<component name="wsconnection" filter="s60" long-name="WS Service Connection">
<unit bldFile="mw/websrv/webservices/wsconnection/group"/>
</component>
<component name="wsmessages" filter="s60" long-name="WS Messages">
<unit bldFile="mw/websrv/webservices/wsmessages/group"/>
</component>
<component name="wscredentialmanager" filter="s60" long-name="WS Credential Manager">
<unit bldFile="mw/websrv/webservices/wscredentialmanager/group"/>
</component>
<component name="wsframework" filter="s60" long-name="WS Framework">
<unit bldFile="mw/websrv/webservices/wsframework/group"/>
</component>
<component name="wshttpchanneltransportplugin" filter="s60" long-name="WS HTTP Channel Transport Plugin" plugin="Y">
<unit bldFile="mw/websrv/webservices/wshttpchanneltransportplugin/group"/>
</component>
<component name="wsconnectionagent" filter="s60" long-name="WS Connection Agent">
<unit bldFile="mw/websrv/webservices/wsconnectionagent/group"/>
</component>
<component name="wsprovider" filter="s60" long-name="WS Provider">
<unit bldFile="mw/websrv/webservices/wsprovider/group"/>
</component>
<component name="wshostletconnection" filter="s60" long-name="WS Hostlet Connection">
<unit bldFile="mw/websrv/webservices/wshostletconnection/group"/>
</component>
<component name="wsmanager" filter="s60" long-name="WS Service Manager">
<unit bldFile="mw/websrv/webservices/wsmanager/group"/>
</component>
<component name="wsidentitymanager" filter="s60" long-name="WS Identity Manager">
<unit bldFile="mw/websrv/webservices/wsidentitymanager/group"/>
</component>
<component name="idwsfplugin" filter="s60" long-name="ID-WSF Plugin" plugin="Y">
<unit bldFile="mw/websrv/webservices/idwsfplugin/group"/>
</component>
<component name="wsibasicplugin" filter="s60" long-name="WS-I Basic Plugin" plugin="Y">
<unit bldFile="mw/websrv/webservices/wsibasicplugin/group"/>
</component>
<component name="wsrestplugin" filter="s60" long-name="WS REST Plugin" plugin="Y">
<unit bldFile="mw/websrv/webservices/wsrestplugin/group"/>
</component>
<component name="idwsfsecuritymechanism" filter="s60" long-name="ID-WSF Security Mechanism">
<unit bldFile="mw/websrv/webservices/idwsfsecuritymechanism/group"/>
</component>
<component name="wspasswordtransforms" filter="s60" long-name="WS Password Transforms">
<unit bldFile="mw/websrv/webservices/wspasswordtransforms/group"/>
</component>
<component name="wscore" filter="s60" long-name="WS Core Service Manager">
<unit bldFile="mw/websrv/webservices/wscore/group"/>
</component>
<component name="wslocaltransportplugin" filter="s60" long-name="WS Local Transport Plugin" plugin="Y">
<unit bldFile="mw/websrv/webservices/wslocaltransportplugin/group"/>
</component>
<component name="wshostlettransportplugin" filter="s60" long-name="WS Hostlet Transport Plugin" plugin="Y">
<unit bldFile="mw/websrv/webservices/wshostlettransportplugin/group"/>
</component>
<component name="wsstar" filter="s60" long-name="WS Star">
<!-- 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">
<unit bldFile="mw/websrv/webservices/wsoviplugin/group"/>
</component>
<component name="webservices_build" filter="s60" long-name="Web Services Build">
<!-- 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">
<!-- need to include common .hrh in each unit -->
<unit bldFile="mw/websrv/group"/>
</component>
</collection>
</block>
<block name="webruntime" level="specific" long-name="Web Runtime">
<!-- need to break up this package nito 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="&quot;what+=ninetwo&quot; &quot;what+=tenone&quot; &quot;what+=qt_unstable&quot; &quot;what+=wrtlite&quot; &quot;what+=exportiby&quot;"/>
</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="PC">
<unit bldFile="mw/platformtools/gfxconversion/bmconv_s60/group"/>
</component>
<component name="mifconv" filter="s60" long-name="Multi Icon File Converter" 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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<collection name="phoneapp" long-name="Phone Application" level="app">
<component name="blacklist" filter="s60" long-name="Phone Blacklist Clearing" plugin="Y">
<unit bldFile="app/phone/phoneapp/blacklist/group"/>
</component>

<component name="phoneringingtoneplayer" filter="s60" long-name="Phone Rining Tone Player">
<unit bldFile="app/phone/phoneapp/phoneringingtoneplayer/group"/>
</component>

<component name="phoneuicontrol" filter="s60" long-name="Phone UI Control">
<unit bldFile="app/phone/phoneapp/phoneuicontrol/group"/>
</component>
<component name="phoneuistates" filter="s60" long-name="Phone UI States">
<unit bldFile="app/phone/phoneapp/phoneuistates/group"/>
</component>
<component name="phoneuiutils" filter="s60" long-name="Phone UI Utils">
<unit bldFile="app/phone/phoneapp/phoneuiutils/group"/>
</component>
<component name="silenceactionplugin" filter="s60" long-name="Silence Action Plugin" plugin="Y">
<unit bldFile="app/phone/phoneapp/silenceactionplugin/group"/>
</component>
<component name="phonemediatorcenter" filter="s60" long-name="Phone Mediator Center">
<unit bldFile="app/phone/phoneapp/phonemediatorcenter/group"/>
</component>
<component name="phoneuiview2" filter="s60" long-name="Phone UI View">
<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">
<unit bldFile="app/phone/phoneapp/phoneuiqtviewadapter" proFile="phoneuiqtviewadapter.pro"/>
</component>
<component name="phonestringloader" filter="s60" long-name="Phone String Loader" introduced="^4">
<unit bldFile="app/phone/phoneapp/phonestringloader" proFile="phonestringloader.pro"/>
</component>
<component name="phoneui2" filter="s60" long-name="Phone UI">
<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">
<unit bldFile="app/phone/phoneengine/phonecntfinder2" proFile="phonecntfinder2.pro"/>
</component>
<component name="audiohandling" filter="s60" long-name="Phone Audio Handling">
<unit bldFile="app/phone/phoneengine/audiohandling/group"/>
</component>
<component name="callhandling" filter="s60" long-name="Call Handling">
<unit bldFile="app/phone/phoneengine/callhandling/group"/>
</component>
<component name="contacthandling2" filter="s60" long-name="Phone Contact Handling">
<unit bldFile="app/phone/phoneengine/contacthandling2/group"/>
</component>
<component name="loghandling" filter="s60" long-name="Phone Log Handling">
<unit bldFile="app/phone/phoneengine/loghandling/group"/>
</component>
<component name="engineinfo" filter="s60" long-name="Phone Engine Info">
<unit bldFile="app/phone/phoneengine/engineinfo/group"/>
</component>
<component name="phonemodel" filter="s60" long-name="Phone Model">
<unit bldFile="app/phone/phoneengine/phonemodel" proFile="phonemodel.pro"/>
</component>
<component name="servicehandling" filter="s60" long-name="Phone Service Handling">
<unit bldFile="app/phone/phoneengine/servicehandling/group"/>
</component>
<component name="phoneservices" filter="s60" long-name="Phone Server" introduced="^4">
<unit bldFile="app/phone/phoneengine/phoneservices" proFile="phoneservices.pro"/>
</component>
<component name="parserrecognizer" filter="s60" long-name="Parser Recognizer" introduced="^4" plugin="Y">
<unit bldFile="app/phone/phoneengine/parserrecognizer" proFile="parserrecognizer.pro"/>
</component>
</collection>
<collection name="phoneuis" long-name="Phone UIs" level="ui">
<component name="bubblemanager2" filter="s60" long-name="Phone Bubble Manager">
<unit bldFile="app/phone/phoneuis/bubblemanager2" proFile="bubblemanager2.pro"/>
</component>
<component name="telephonydevicemode" filter="s60" long-name="Telephony Device Mode">
<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">
<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">
<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">
<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">
<unit bldFile="app/phone/phone_plat/telephony_device_mode_api/group"/>
</component>

<component name="telephony_menu_extension_api" long-name="Telephony Menu Extension API" filter="s60" class="api">
<unit bldFile="app/phone/phone_plat/telephony_menu_extension_api/group"/>
</component>

<component name="telephony_remote_party_information_api" long-name="Telephony Remote Party Information API" filter="s60" 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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="app/phone/phone_plat/phone_application_voip_commands_api/group"/>
</component>
<component name="phone_telephony_mediator_api" long-name="Telephony Mediator API" filter="s60" 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">
<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">
<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">
<unit bldFile="app/phone/phoneplugins/csplugin/group"/>
</component>
<component name="phoneindicatorplugin" filter="s60" long-name="Info Indicator Plugin" introduced="^4" plugin="Y">
<unit bldFile="app/phone/phoneplugins/phoneindicatorplugin" proFile="phoneindicatorplugin.pro"/>
</component>
<component name="hsdialerwidgetplugin" filter="s60" long-name="Home Screen Dialer Widget Plugin" introduced="^4" plugin="Y">
<unit bldFile="app/phone/phoneplugins/hsdialerwidgetplugin" proFile="hsdialerwidgetplugin.pro"/>
</component>
<component name="infowidgetplugin" filter="s60" long-name="Info Widget Plugin" introduced="^4" plugin="Y">
<unit bldFile="app/phone/phoneplugins/infowidgetplugin" proFile="infowidgetplugin.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">
<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">
<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"/>
</collection>
<collection name="logsui" long-name="Logs UI" level="ui">
<component name="logsui_build" filter="s60" long-name="Logs UI Build">
<!-- component at too high a rank, should move down one directory -->
<unit bldFile="app/recents/logsui" proFile="logsui.pro"/>
</component>
</collection>
</block>
<block name="settingsuis" level="services" long-name="Settings UIs" levels="plugin ui">
<collection name="controlpanelplugins" long-name="Control Panel Plugins" level="plugin">
<component name="themeplugin" filter="s60" long-name="Theme Plugin" introduced="^4">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<unit bldFile="app/contentcontrol/omads/omadsextensions/group"/>
</component>
<component name="omadsextensions_qt" filter="s60" long-name="OMA DS Qt Extensions" 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">
<!-- 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"/>
<collection name="wizardproviders" long-name="Wizard Providers" level="support"/>
<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>
</collection>
</block>
<block name="devicecontrol" level="services" long-name="Device Control Daemons" levels="oma mid app">
<collection name="deviceupdatesui" long-name="Device Updates UI" level="app">
<component name="deviceupdatesui_adapters" long-name="Device Updates Adapters" filter="s60" introduced="^4" plugin="Y">
<unit bldFile="app/devicecontrol/deviceupdatesui/adapters/bld"/>
</component>
<component name="deviceupdates" long-name="Device Updates" filter="s60" introduced="^4">
<unit bldFile="app/devicecontrol/deviceupdatesui/deviceupdates" proFile="deviceupdates.pro"/>
</component>
<component name="deviceupdatesplugin" long-name="Device Updates Plugin" filter="s60" introduced="^4" 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">
<unit bldFile="app/devicecontrol/deviceupdatesui/deviceupdatesqtsp" proFile="deviceupdatesqtsp.pro"/>
</component>
<component name="cpqtsp" long-name="Client Provisioning Qt Service Provider" filter="s60" introduced="^4">
<unit bldFile="app/devicecontrol/deviceupdatesui/cpqtsp" proFile="cpqtsp.pro"/>
</component>
<component name="devicemanagementnotifiersplugin" long-name="Device Management Notifiers Plugin" filter="s60" introduced="^4" plugin="Y">
<unit bldFile="app/devicecontrol/deviceupdatesui/devicemanagementnotifiersplugin" proFile="devicemanagementnotifiersplugin.pro"/>
</component>
</collection>
</block>
<block name="printing" level="services" long-name="Printing"/>
<block name="files" level="apps" long-name="File Manager Apps" levels="support 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" long-name="File Manager Backup Engine" introduced="^4">
<unit bldFile="app/files/filemanager/src/fmbkupengine/group"/>
</component>
<component name="fmfiledialog" filter="s60,bldfirst" long-name="File Manager File Dialog" introduced="^4">
<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">
<!-- break this up into components or move down a directory -->
<unit bldFile="app/files/filemanager" qmakeArgs="-r" proFile="filemanager.pro"/>
</component>
</collection>
</block>
<block name="search" level="apps" long-name="Search Apps" levels="eng base app api">
<collection name="search_info" long-name="Search Info">
<component name="search_build" long-name="Search Build" introduced="^4">
<unit bldFile="app/search/group"/>
</component>
</collection>
<collection name="searchui" long-name="Search UI">
<component name="searchui_build" long-name="Search UI Build" introduced="^4">
<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 ui">
<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"/>
</collection>
<collection name="phonebookui" long-name="Phonebook UI" level="ui">
<component name="cnthistorymodel" filter="s60" long-name="Contacts History Model" introduced="^4" 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">
<!--<unit bldFile="phonebookui/pbkcommonui" qt:proFile="pbkcommonui.pro"/> -->
</component>
<component name="phonebookapp" filter="s60" long-name="Phonebook Application" introduced="^4" class="placeholder">
<!--<unit bldFile="phonebookui/phonebookapp" qt:proFile="phonebookapp.pro"/> -->
</component>
<component name="phonebookservices" filter="s60" long-name="Phonebook Services" introduced="^4" class="placeholder">
<!--<unit bldFile="phonebookui/phonebookservices" qt:proFile="phonebookservices.pro"/> -->
</component>
<component name="phonebookui_build" filter="s60" long-name="Phonebook UI Build" introduced="^4">
<!-- 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">
<unit bldFile="app/contacts/phonebookengines/cntfindplugin" proFile="cntfindplugin.pro"/>
</component>
<component name="contactsmodel" long-name="Contacts Model" introduced="ER5" purpose="optional">
<unit bldFile="app/contacts/phonebookengines_old/contactsmodel/groupsql" mrp="app/contacts/phonebookengines_old/contactsmodel/groupsql/app-engines_cntmodel.mrp" version="2"/>
</component>
<component name="cntsortplugin" filter="s60" long-name="Contacts Sort Plugin" introduced="^2" 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">
<!-- need to move to this actual dir rather than including something from another collection -->
<unit bldFile="app/contacts/qtcontactsmobility" proFile="qtcontactsmobility.pro"/>
</component>
<component name="cntlistmodel" filter="s60" long-name="Contact List Model" introduced="^4">
<unit bldFile="app/contacts/phonebookengines/cntlistmodel" proFile="cntlistmodel.pro"/>
</component>
<component name="cntactions" filter="s60" long-name="Contacts Actions" introduced="^4">
<unit bldFile="app/contacts/phonebookengines/cntactions" proFile="cntactions.pro"/>
</component>
<component name="cntmaptileservice" filter="s60" long-name="Contacts Map Tile Service" introduced="^4">
<unit bldFile="app/contacts/phonebookengines/cntmaptileservice" proFile="cntmaptileservice.pro"/>
</component>
<component name="cntsimutility" filter="s60" long-name="Contacts SIM Utility" introduced="^4">
<unit bldFile="app/contacts/phonebookengines/cntsimutility" proFile="cntsimutility.pro"/>
</component>
<component name="cntimageutility" long-name="Contacts Image Utility" filter="s60" introduced="^4">
<unit bldFile="app/contacts/phonebookengines/cntimageutility" proFile="cntimageutility.pro"/>
</component>
</collection>
<collection name="pimprotocols" long-name="PIM Protocols" level="services">
<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">
<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">
<unit bldFile="app/contacts/presencecache/presencecachesymbian" proFile="presencecachesymbian.pro"/>
</component>
<component name="presencecacheqt" filter="s60" long-name="Presence Cache Qt" introduced="^4">
<unit bldFile="app/contacts/presencecache/presencecacheqt" proFile="presencecacheqt.pro"/>
</component>
</collection>
<collection name="contacts_info" long-name="Contacts Apps Info" level="ui">
<component name="contacts_metadata" long-name="Contacts Apps Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="app/contacts/contacts_info/contacts_metadata/contacts_metadata.mrp"/>
</component>
</collection>
</block>
<block name="organizer" level="apps" span="2" long-name="Organizer Application Suite" levels="support services engine ui app">
<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">
<!-- 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">
<!-- break up into individual .pro files -->
<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">
<!-- <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">
<!--<unit bldFile="organizer_plat/calendar_exporter_api/group"/>-->
</component>
<component name="calendar_importer_api" long-name="Calendar Importer API" filter="s60" 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">
<!--<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"/>
</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">
<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">
<unit bldFile="app/organizer/calendarui/commonutils" proFile="commonutils.pro"/>
</component>
<component name="calenlauncher" filter="s60" long-name="Calendar Launcher">
<unit bldFile="app/organizer/calendarui/calenlauncher" proFile="calenlauncher.pro"/>
</component>
<component name="caleneditor" filter="s60" long-name="Calendar Editor" introduced="^4">
<unit bldFile="app/organizer/calendarui/caleneditor" proFile="caleneditor.pro"/>
</component>
<component name="agendaeventviewer" filter="s60" long-name="Agenda Event Viewer" introduced="^4">
<unit bldFile="app/organizer/calendarui/agendaeventviewer" proFile="agendaeventviewer.pro"/>
</component>
<component name="globaldata" filter="s60" long-name="Calendar Global Data">
<unit bldFile="app/organizer/calendarui/globaldata" proFile="globaldata.pro"/>
</component>
<component name="settings" filter="s60" long-name="Calendar Settings">
<unit bldFile="app/organizer/calendarui/settings" proFile="settings.pro"/>
</component>
<component name="calenplugins" filter="s60" long-name="Calendar Plugins" introduced="^4" plugin="Y">
<unit bldFile="app/organizer/calendarui/calenplugins" proFile="calenplugins.pro"/>
</component>
<component name="customisationmanager" filter="s60" long-name="Calendar Customisation Manager">
<unit bldFile="app/organizer/calendarui/customisationmanager" proFile="customisationmanager.pro"/>
</component>
<component name="views" filter="s60" long-name="Calendar Views">
<unit bldFile="app/organizer/calendarui/views" proFile="views.pro"/>
</component>
<component name="calendarui_controller" filter="s60" long-name="Calendar Controller">
<unit bldFile="app/organizer/calendarui/controller" proFile="controller.pro"/>
</component>
<component name="calendarui_application" filter="s60" long-name="Calendar Application">
<unit bldFile="app/organizer/calendarui/application" proFile="application.pro"/>
</component>
<component name="regionalplugins" long-name="Regional Plugins" filter="s60" introduced="^4" plugin="Y">
<unit bldFile="app/organizer/calendarui/regionalplugins" proFile="regionalplugins.pro"/>
</component>
</collection>
<collection name="notes" long-name="Notes" level="ui">
<component name="noteseditor" filter="s60" long-name="Notes Editor" introduced="^4">
<unit bldFile="app/organizer/notes/notesui/noteseditor" proFile="noteseditor.pro"/>
</component>
<component name="notes_build" filter="s60" long-name="Notes Build" introduced="^4">
<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">
<unit bldFile="app/organizer/calendarengines/versit2/group"/>
</component>
<component name="agnversit2" filter="s60" long-name="Versit 2 Agenda Interface" introduced="9.2" plugin="Y">
<unit bldFile="app/organizer/calendarengines/agnversit2/group"/>
</component>
<component name="caleninterimutils" filter="s60" long-name="Calendar Interim Utils" introduced="9.1">
<unit bldFile="app/organizer/calendarengines/caleninterimutils/group"/>
</component>
<component name="calenimp" filter="s60" long-name="Calendar Import Wrapper" introduced="7.0s">
<unit bldFile="app/organizer/calendarengines/calenimp/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">
<!--<unit bldFile="clock/clockengines" qt:proFile="clockengines.pro"/> -->
</component>
<component name="clockmw" filter="s60" long-name="Clock Middleware" introduced="^4" class="placeholder">
<!--<unit bldFile="clock/clockmw" qt:proFile="clockmw.pro"/>-->
</component>
<component name="clockui" filter="s60" long-name="Clock UI" class="placeholder">
<!--<unit bldFile="clock/clockui" qt:proFile="clockui.pro"/>-->
</component>
<component name="ftudatetimewizard" filter="s60" long-name="First Time Use Date/Time Wizard" introduced="^4" class="placeholder">
<!--<unit bldFile="clock/ftudatetimewizard" qt:proFile="ftudatetimewizard.pro"/>-->
</component>
<component name="clock_build" filter="s60" long-name="Clock Build">
<!-- 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>
</collection>
<collection name="pimappservices" long-name="PIM Application Services" level="services">
<component name="calendar" long-name="Calendar" introduced="9.2" purpose="optional">
<unit bldFile="app/organizer/pimappservices/calendar/group" mrp="app/organizer/pimappservices/calendar/group/app-engines_calendar.mrp" version="2"/>
</component>
<component name="calendarvcalplugin" long-name="Calendar vCal Plugin" introduced="8.1" purpose="optional" plugin="Y">
<unit bldFile="app/organizer/pimappservices/calendarvcalplugin/group" mrp="app/organizer/pimappservices/calendarvcalplugin/group/app-engines_agnversit2.mrp" version="2"/>
</component>
<component name="appenginesdocs" long-name="Application Engines Documentation" purpose="development" class="doc">
<unit mrp="app/organizer/pimappservices/appenginesdocs/app-engines_documentation.mrp"/>
</component>
</collection>
<collection name="pimappsupport" long-name="PIM Application Support" level="support">
<component name="vcardandvcal" long-name="vCard and vCal" introduced="ER5" purpose="optional">
<unit bldFile="app/organizer/pimappsupport/vcardandvcal/group" mrp="app/organizer/pimappsupport/vcardandvcal/group/app-services_versit.mrp"/>
</component>
<component name="chinesecalendarconverter" long-name="Chinese Calendar Converter" introduced="6.1" purpose="optional">
<unit bldFile="app/organizer/pimappsupport/chinesecalendarconverter/group" mrp="app/organizer/pimappsupport/chinesecalendarconverter/group/app-services_calcon.mrp"/>
</component>
<component name="chinesecalendaralg" long-name="Chinese Calendar Algorithm" introduced="^2" purpose="optional" plugin="Y">
<unit bldFile="app/organizer/pimappsupport/chinesecalendaralg/group" mrp="app/organizer/pimappsupport/chinesecalendaralg/group/app-services_chinesecalendaralgorithm.mrp"/>
</component>
</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">
<unit bldFile="app/organizer/alarmui" proFile="alarmui.pro"/>
</component>
</collection>
<collection name="organizer_info" long-name="Organizer Application Suite Info" level="app">
<component name="organizer_metadata" long-name="Organizer Application Suite Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="app/organizer/organizer_info/organizer_metadata/organizer_metadata.mrp"/>
</component>
</collection>
</block>
<block name="messaging" level="apps" span="2" long-name="Messaging Apps" levels="plugin eng base app api">
<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">
<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">
<unit bldFile="app/messaging/msg_pub" proFile="msg_pub.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="mobilemessaging" long-name="Mobile Messaging" level="plugin">
<component name="smsmtm" long-name="SMS MTM" purpose="optional" plugin="Y">
<unit bldFile="app/messaging/mobilemessaging/smsmtm/group" mrp="app/messaging/mobilemessaging/smsmtm/group/messaging_sms.mrp"/>
</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">
<!-- 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="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>
<component name="obexmtms" long-name="OBEX MTMs" introduced="7.0s" purpose="optional" plugin="Y">
<unit bldFile="app/messaging/messagingappbase/obexmtms/Group" mrp="app/messaging/messagingappbase/obexmtms/Group/messaging_obex.mrp"/>
</component>
</collection>
<collection name="mmsengine" long-name="MMS Engine" level="eng">
<component name="mmsconninit" filter="s60" long-name="MMS Connection Initiator" class="placeholder">
<!-- <unit bldFile="mmsengine/mmsconninit/bld"/> -->
</component>
<component name="genutils" filter="s60" long-name="General Utils" class="placeholder">
<!-- <unit bldFile="mmsengine/genutils/bld"/> -->
</component>
<component name="mmsserversettings" filter="s60" long-name="MMS Server Settings" class="placeholder">
<!-- <unit bldFile="mmsengine/mmsserversettings/bld"/> -->
</component>
<component name="mmsmessage" filter="s60" long-name="MMS Message" class="placeholder">
<!-- <unit bldFile="mmsengine/mmsmessage/bld"/> -->
</component>
<component name="mmshttptransport" filter="s60" long-name="MMS HTTP Transport" class="placeholder">
<!-- <unit bldFile="mmsengine/mmshttptransport/bld"/> -->
</component>
<component name="mmscodec" filter="s60" long-name="MMS Codec" class="placeholder">
<!-- <unit bldFile="mmsengine/mmscodec/bld"/> -->
</component>
<component name="mmsserver" filter="s60" long-name="MMS Server" class="placeholder">
<!-- <unit bldFile="mmsengine/mmsserver/bld"/> -->
</component>
<component name="clientmtm" filter="s60" long-name="MMS Client MTM" plugin="Y" class="placeholder">
<!-- <unit bldFile="mmsengine/clientmtm/bld"/> -->
</component>
<component name="mmswatcher" filter="s60" long-name="MMS Watcher" plugin="Y" class="placeholder">
<!-- <unit bldFile="mmsengine/mmswatcher/bld"/> -->
</component>
<component name="mmspushhandler" filter="s60" long-name="MMS Push Handler" plugin="Y" class="placeholder">
<!-- <unit bldFile="mmsengine/mmspushhandler/bld"/> -->
</component>
<component name="applicationadapter" filter="s60" long-name="MMS Application Adapter" class="placeholder">
<!-- <unit bldFile="mmsengine/applicationadapter/bld"/> -->
</component>
<component name="mmscodecclient" filter="s60" long-name="MMS Codec Client" class="placeholder">
<!-- <unit bldFile="mmsengine/mmscodecclient/bld"/> -->
</component>
<component name="mmssettings" long-name="MMS Settings" introduced="9.2" purpose="optional">
<unit bldFile="app/messaging/mmsengine/mmssettings/group" mrp="app/messaging/mmsengine/mmssettings/group/messaging_mmssettings.mrp"/>
</component>
<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">
<!-- 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="messagingapp_build" filter="s60" long-name="MMS Engine Build">
<!-- this should be broken up into the individual other components -->
<unit bldFile="app/messaging/messagingapp" proFile="messagingapp.pro" qmakeArgs="-r"/>
</component>
<component name="msgutils" filter="s60" long-name="Messaging Utils" introduced="^4">
<unit bldFile="app/messaging/messagingapp/msgutils" proFile="msgutils.pro" qmakeArgs="-r"/>
</component>
<component name="msgappfw" filter="s60" long-name="Messaging Application Framework" introduced="^4">
<unit bldFile="app/messaging/messagingapp/msgappfw" proFile="msgappfw.pro" qmakeArgs="-r"/>
</component>
<component name="msgsettings" filter="s60" long-name="Messaging Settings" introduced="^4">
<unit bldFile="app/messaging/messagingapp/msgsettings" proFile="msgsettings.pro" qmakeArgs="-r"/>
</component>
<component name="msgnotifications" filter="s60" long-name="Messaging Notifications" introduced="^4">
<unit bldFile="app/messaging/messagingapp/msgnotifications" proFile="msgnotifications.pro" qmakeArgs="-r"/>
</component>
<component name="smartmessaging" filter="s60" long-name="Smart Messaging">
<unit bldFile="app/messaging/messagingapp/smartmessaging" proFile="smartmessaging.pro" qmakeArgs="-r"/>
</component>
<component name="shareui" filter="s60" long-name="Shared UI" introduced="^4">
<unit bldFile="app/messaging/messagingapp/shareui" proFile="shareui.pro" qmakeArgs="-r"/>
</component>
<component name="msgui" filter="s60" long-name="Messaging UI" introduced="^4">
<unit bldFile="app/messaging/messagingapp/msgui" proFile="msgui.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">
<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">
<unit bldFile="app/messaging/email/imap4mtm/group" mrp="app/messaging/email/imap4mtm/group/messaging_email_imap.mrp"/>
</component>
</collection>
<collection name="messaging_info" long-name="Messaging Apps Info" level="api">
<component name="messaging_metadata" long-name="Messaging Apps Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="app/messaging/messaging_info/messaging_metadata/messaging_metadata.mrp"/>
</component>
</collection>
</block>
<block name="commonemail" level="apps" span="2" long-name="Email Apps" levels="service support ui app">
<!-- 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">
<!--<unit bldFile="email_plat" qt:proFile="email_plat.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">
<!-- <unit bldFile="emailservices/nmailbase" qt:proFile="nmailbase.pro"/> -->
</component>
<component name="emailcommon" filter="s60" long-name="Email Common" introduced="^4" class="placeholder">
<!-- <unit bldFile="emailservices/emailcommon" qt:proFile="emailcommon.pro"/>-->
</component>
<component name="emailframework" filter="s60" long-name="Email Framework" introduced="^2" class="placeholder">
<!-- <unit bldFile="emailservices/emailframework" qt:proFile="emailframework.pro"/>-->
</component>
<component name="emailstore" filter="s60" long-name="Email Store" introduced="^2" 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">
<!-- <unit bldFile="emailservices/nmclientapi" qt:proFile="nmclientapi.pro"/>-->
</component>
<component name="nmailagent" filter="s60" long-name="Nmail Agent" introduced="^4" class="placeholder">
<!-- <unit bldFile="emailservices/nmailagent" qt:proFile="nmailagent.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">
<!-- 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">
<!--<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">
<!-- <unit bldFile="ipsservices/nmipsmtms" qt:proFile="nmipsmtms.pro"/>-->
</component>
<component name="nmipssettings" filter="s60" long-name="NM IPS Settings" introduced="^4" 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">
<!--<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">
<!-- <unit bldFile="emailuis/nmailuiengine" qt:proFile="nmailuiengine.pro"/> -->
</component>
<component name="nmailuiwidgets" filter="s60" long-name="Nmail UI Widgets" introduced="^4" 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">
<!-- <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">
<!-- <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">
<!-- <unit bldFile="emailuis/nmailcpplugin" qt:proFile="nmailcpplugin.pro"/> -->
</component>
<component name="nmailui" filter="s60" long-name="Nmail UI" introduced="^4" 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">
<!-- <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">
<!-- <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">
<!-- split into actual components -->
<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">
<unit bldFile="app/camera/camerauis/cameraxui" filter="!test" proFile="camerax.pro"/>
</component>
</collection>
</block>
<block name="videoplayer" level="apps" long-name="Video Player Apps" levels="support plugin util 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">
<unit bldFile="app/videoplayer/videoplayer_plat/videoplayer_startup_api/group"/>
</component>
<component name="videocollection_api" long-name="Video Collection API" filter="s60" 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">
<unit bldFile="app/videoplayer/videocollection/mpxmyvideoscollection/group"/>
</component>
<component name="videocollectionwrapper" filter="s60" long-name="Video Collection Wrapper" introduced="^4">
<unit bldFile="app/videoplayer/videocollection/videocollectionwrapper" proFile="videocollectionwrapper.pro" qmakeArgs="-r"/>
</component>
<component name="videocollectionview" filter="s60" long-name="Video Collection View" introduced="^4">
<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">
<unit bldFile="app/videoplayer/videocollection/videofiledetailsview" proFile="videofiledetailsview.pro" qmakeArgs="-r"/>
</component>
</collection>
<collection name="mediasettings" long-name="Media Settings" level="support">
<!--  this is really a component. Should be moved down a directory -->
<component name="mediasettings_build" filter="s60" long-name="Media Settings Build">
<unit bldFile="app/videoplayer/mediasettings/group"/>
</component>
</collection>
<collection name="videoplayerapp" long-name="Video Player App" level="apps">
<component name="videoplayerengine" long-name="Video Player Engine" filter="s60" introduced="^4">
<unit bldFile="app/videoplayer/videoplayerapp/videoplayerengine" proFile="videoplayerengine.pro" qmakeArgs="-r"/>
</component>
<component name="hbvideoplayer" filter="s60" long-name="Video Player" introduced="^4">
<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">
<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">
<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">
<unit bldFile="app/videoplayer/videoplayback/videohelix/group"/>
</component>
</collection>
</block>
<block name="photos" level="apps" long-name="Photos" levels="util support ui app">
<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">
<!--<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">
<!--<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">
<!--<unit bldFile="commonutilities/externalutility" qt:proFile="externalutility.pro"/> -->
</component>
<component name="imagedecoderwrapper" filter="s60" long-name="Image Decoder Wrapper" introduced="^4" class="placeholder">
<!--<unit bldFile="commonutilities/imagedecoderwrapper" qt:proFile="imagedecoderwrapper.pro"/> -->
</component>
</collection>
<collection name="photos_ui" long-name="Photos UI" level="ui">
<component name="photos_uiengine" filter="s60" long-name="Photos UI Engine" introduced="^4" 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">
<!--<unit bldFile="ui/commandhandlers" qt:proFile="commandhandlers.pro"/> -->
</component>
<component name="photos_views" filter="s60" long-name="Photos Views" introduced="^4" 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">
<!--<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">
<!--<unit bldFile="main" qt:proFile="main.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">
<!--<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">
<!--  split this up into the above components  -->
<unit bldFile="app/photos" proFile="photos.pro"/>
</component>
</collection>
</block>
<block name="musicplayer" level="apps" long-name="Music Player Apps" levels="plugins support hs app">
<!-- move the export .pri files into their components and uncomment the units -->
<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">
<!-- <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">
<!-- <unit bldFile="utilities/mpsettingsmanager" qt:proFile="mpsettingsmanager.pro" qt:qmakeArgs="-r -config rom"/> -->
</component>
</collection>
<collection name="musicfetcher " long-name="Music Fetcher" level="support">
<!-- collection is really a component, move down a directory -->
<component name="musicfetcher_buld" filter="s60" long-name="Music Fetcher Build" introduced="^4" class="placeholder">
<!-- <unit bldFile="musicfetcher" qt:proFile="musicfetcher.pro" qt:qmakeArgs="-r -config rom"/> -->
</component>
</collection>
<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">
<!-- <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">
<!--<unit bldFile="mpviewplugins/mpcollectionviewplugin/group"/>-->
</component>
<component name="mpplaybackviewplugin" filter="s60" long-name="MP Playback View Plugin" introduced="^4" plugin="Y" class="placeholder">
<!--<unit bldFile="mpviewplugins/mpplaybackviewplugin/group"/>-->
</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">
<!--<unit bldFile="mpserviceplugins/audioeffects/group"/>-->
</component>
<component name="localaudio" filter="s60" long-name="Local Audio" introduced="^4" 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">
<!--<unit bldFile="mpserviceplugins/mpxsqlitedbcommon/group"/>-->
</component>
<component name="mpxsqlitedbplugin" filter="s60" long-name="MPX SQLite Database Plugin" introduced="^4" 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">
<!--<unit bldFile="mpserviceplugins/mpxsqlitepodcastdbplugin/group"/>-->
</component>
<component name="m3uplaylistplugin" filter="s60" long-name="M3U Playlist Plugin" introduced="^4" 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">
<!-- should brak up into individual components  -->
<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 ui">
<collection name="radioengine" long-name="Radio Engine" level="engine">
<component name="radioengineutils" filter="s60" long-name="Radio Engine Utils" introduced="^4">
<unit bldFile="app/radio/radioengine/utils/group"/>
</component>
<component name="radioenginesettings" filter="s60" long-name="Radio Engine Settings" introduced="^4">
<unit bldFile="app/radio/radioengine/settings/group"/>
</component>
<component name="radioengine_engine" filter="s60" long-name="Radio Engine" introduced="^4">
<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">
<unit bldFile="app/radio/radioapp/radioenginewrapper" proFile="radioenginewrapper.pro"/>
</component>
<component name="radiopresetstorage" filter="s60" long-name="Radio Preset Storage" introduced="^4">
<unit bldFile="app/radio/radioapp/radiopresetstorage" proFile="radiopresetstorage.pro"/>
</component>
<component name="radiouiengine" filter="s60" long-name="Radio UI Engine" introduced="^4">
<unit bldFile="app/radio/radioapp/radiouiengine" proFile="radiouiengine.pro"/>
</component>
<component name="radiowidgets" filter="s60" long-name="Radio Widgets" introduced="^4">
<unit bldFile="app/radio/radioapp/radiowidgets" proFile="radiowidgets.pro"/>
</component>
<component name="radioapplication" filter="s60" long-name="Radio Application" introduced="^4">
<unit bldFile="app/radio/radioapp/radioapplication" proFile="radioapplication.pro"/>
</component>
<component name="radio_rom" filter="s60" long-name="Radio ROM" introduced="^4">
<unit bldFile="app/radio/rom"/>
</component>
</collection>
</block>
<block name="internetradio" level="apps" long-name="Internet Radio Apps" levels="engine server ui">
<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">
<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">
<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">
<!--  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">
<collection name="podcatcher_info" long-name="Podcatcher" level="app">
<component name="podcatcher_build" filter="sf_build" long-name="Podcatcher Build" introduced="^3">
<!-- 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">
<unit bldFile="app/podcatcher/application/group"/>
</component>
<component name="podcatcher_engine" filter="sf_build" long-name="Podcatcher Engine" introduced="^3">
<unit bldFile="app/podcatcher/engine/group"/>
</component>
</collection>
</block>
<block name="homescreen" level="apps" long-name="Home Screen Apps" levels="support task ss hs">
<collection name="homescreen_info" long-name="Home Screen Info" level="support">
<component name="homescreen_build" long-name="Homescreen Build">
<!-- break this up properly into components -->
<unit bldFile="app/homescreen" proFile="homescreen.pro" qmakeArgs="-r -config rom"/>
</component>
</collection>
<collection name="homescreen_test" long-name="Home Screen Test" level="support"/>
<!-- fiill in details with broken up homescreen_build -->
<collection name="homescreenapp" long-name="Home Screen Application" level="hs">
<component name="hsutils" long-name="Home Screen Utils" introduced="^4"/>
<component name="hsdomainmodel" long-name="HS Domain Model" introduced="^4"/>
<component name="hs_runtimeplugins" long-name="HS Runtime Plugins" introduced="^4" plugin="Y"/>
<component name="hs_serviceproviders" long-name="HS Service Providers" introduced="^4" plugin="Y"/>
<component name="hs_stateplugins" long-name="HS State Plugins" introduced="^4" plugin="Y"/>
<component name="hs_widgetplugins" long-name="HS Widget Plugins" introduced="^4" plugin="Y"/>
<component name="hsapplication" long-name="Home Screen Application" introduced="^4"/>
<component name="hshomescreenclientplugin" long-name="Home Screen Client Plugin" introduced="^4" plugin="Y"/>
<component name="hsmenucontentpublish" long-name="HS Menu Content Publish" introduced="^4"/>
</collection>
<collection name="screensaverapp" long-name="Screen Saver Application" level="ss">
<component name="snsrutils" long-name="Screen Saver Utils" introduced="^4"/>
<component name="snsr_serviceproviders" long-name="Screen Saver Service Providers" introduced="^4" plugin="Y"/>
<component name="snsr_stateproviders" long-name="Screen Saver State Providers" introduced="^4" plugin="Y"/>
<component name="snsr_runtimeproviders" long-name="Screen Saver Runtime Providers" introduced="^4" plugin="Y"/>
<component name="snsrapplication" long-name="Screen Saver Application" introduced="^4"/>
<component name="screensaverproviders" long-name="Screen Saver Providers" introduced="^4" plugin="Y"/>
</collection>
<collection name="taskswitcherapp" long-name="Task Switcher Application" level="task">
<component name="taskswitcherappecom" long-name="Task Switcher Application ECom" introduced="^4"/>
<component name="tsserviceplugin" long-name="Task Switcher Service Plugin" introduced="^4" plugin="Y"/>
<component name="ts_runtimeplugins" long-name="TS Runtime Plugins" introduced="^4" plugin="Y"/>
<component name="tsapplication" long-name="Task Switcher Application" introduced="^4"/>
</collection>
</block>
<block name="jrt" level="services" long-name="Java Runtime" levels="util generic rt ui">
<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">
<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">
<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">
<unit bldFile="app/jrt/jrt_plat/java_debug_api/build"/>
</component>
</collection>
<collection name="build_nativejava" long-name="Build Native Java">
<component name="nativejava" long-name="Build Native Java" filter="s60" introduced="^4">
<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">
<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">
<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">
<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">
<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">
<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">
<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">
<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" qmakeArgs="&quot;what+=plat_101&quot;"/>
</component>
</collection>
</block>
<block name="conntools" level="services" long-name="Connectivity Tools" levels="config app">
<collection name="nettools" long-name="Net Tools" level="app">
<component name="conntest" filter="s60" long-name="Connection Test" 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">
<unit bldFile="app/conntools/emulatorlan/group"/>
</component>
</collection>
</block>
<block name="rndtools" level="services" long-name="R&amp;D tools" levels="support generic test util">
<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">
<unit bldFile="app/rndtools/creator/group"/>
</component>
</collection>
<collection name="filebrowser" long-name="File Browser" level="util">
<!-- consider collapsing into a single component -->
<component name="fileopserver" filter="s60" long-name="File Operations Server" purpose="development" class="tool">
<!-- uncomment the unit when configuration is in place, it's currently #included from filebrowser_build -->
<!-- <unit bldFile="filebrowser/fileopserver/group"/>-->
</component>
<component name="fileopclient" filter="s60" long-name="File Operations Client" purpose="development" class="tool">
<!-- uncomment the unit when configuration is in place, it's currently #included from filebrowser_build -->
<!--<unit bldFile="filebrowser/fileopclient/group"/>-->
</component>
<component name="filebrowser_build" filter="s60" long-name="File Browser Application" purpose="development" class="tool">
<!-- Need to make this a self-contained component by removing #includes. Can only do when configuration is in place-->
<unit bldFile="app/rndtools/filebrowser/group"/>
</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">
<unit bldFile="app/rndtools/launcher/group"/>
</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">
<unit bldFile="app/rndtools/loadgen/group"/>
</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">
<unit bldFile="app/rndtools/perfmon" proFile="perfmon.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">
<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" purpose="development">
<unit bldFile="app/rndtools/stifui/avkon/group"/>
</component>
<component name="uitestserverstarter" filter="s60" long-name="UI Test Server Starter" purpose="development">
<unit bldFile="app/rndtools/stifui/uitestserverstarter/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">
<unit bldFile="app/rndtools/memspyui/group"/>
</component>
</collection>
<collection name="htiui" long-name="Harmonized Test Interface UI" level="generic">
<component name="HtiServicePlugins" filter="s60" long-name="HTI Service Plugins" purpose="development" plugin="Y">
<!-- can only have a single unit. Should #include from a common bld.inf file -->
<unit bldFile="app/rndtools/htiui/HtiServicePlugins/HtiAppServicePlugin/group"/>
<unit bldFile="app/rndtools/htiui/HtiServicePlugins/HtiAudioServicePlugin/group"/>
<unit bldFile="app/rndtools/htiui/HtiServicePlugins/HtiKeyEventServicePlugin/group"/>
<unit bldFile="app/rndtools/htiui/HtiServicePlugins/HtiMessagesServicePlugin/group"/>
<unit bldFile="app/rndtools/htiui/HtiServicePlugins/HtiPIMServicePlugin/group"/>
<unit bldFile="app/rndtools/htiui/HtiServicePlugins/HtiScreenshotServicePlugin/group"/>
<unit bldFile="app/rndtools/htiui/HtiServicePlugins/HtiSysInfoServicePlugin/group"/>
<unit bldFile="app/rndtools/htiui/HtiServicePlugins/HtiFtpBackupFake/group"/>
</component>
<component name="htidevicereboot" filter="s60" long-name="HTI Device Reboot" purpose="development">
<unit bldFile="app/rndtools/htiui/htidevicereboot/group"/>
</component>
<component name="htistartupwait" filter="s60" long-name="HTI Startup Wait" purpose="development">
<unit bldFile="app/rndtools/htiui/htistartupwait/group"/>
</component>
<component name="htiadmin" filter="s60" long-name="HTI Admin" purpose="development">
<unit bldFile="app/rndtools/htiui/htiadmin/group"/>
</component>
<component name="htiui_build" filter="s60" long-name="HTI UI Build" purpose="development">
<!-- can this be split up into the other components or made a ROM component? -->
<unit bldFile="app/rndtools/htiui/group"/>
</component>
</collection>
</block>
<block name="helps" level="apps" span="2" long-name="Help Apps" levels="eng tools if ui">
<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">
<unit bldFile="app/helps/userguide" proFile="Userguide.pro"/>
</component>
</collection>
<collection name="symhelp" long-name="Symbian Help" level="eng">
<component name="helpmodel" long-name="Help" introduced="6.0" purpose="optional">
<unit bldFile="app/helps/symhelp/helpmodel/group" mrp="app/helps/symhelp/helpmodel/group/app-services_hlpmodel.mrp"/>
</component>
</collection>
<collection name="helps_info" long-name="Help Apps Info" level="ui">
<component name="helps_metadata" long-name="Help Apps Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="app/helps/helps_info/helps_metadata/helps_metadata.mrp"/>
</component>
</collection>
</block>
<block name="techview" level="apps" span="2" long-name="Techview" levels="services ui utils apps1 apps2 apps3">
<collection name="buildverification" long-name="Build Verification" level="services">
<component name="autosmoketest" long-name="Auto Smoke Test" filter="gt" purpose="development" introduced="9.1">
<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">
<unit bldFile="app/techview/buildverification/smoketest/Group" mrp="app/techview/buildverification/smoketest/Group/testtools_smoketest.mrp"/>
</component>
</collection>
<collection name="techviewplat" long-name="Techview Platform" level="services"/>
<collection name="techviewui" long-name="Techview UI" level="ui"/>
<collection name="tv_controlpanel" long-name="Control Panel" level="ui"/>
<collection name="pimapps" long-name="PIM Apps" level="apps3"/>
<collection name="securityapps" long-name="Security Apps" level="apps3"/>
<collection name="utilityapps" long-name="Utility Apps" level="apps2"/>
<collection name="installationapps" long-name="Installation Apps" level="apps2"/>
<collection name="messagingapps" long-name="Messaging Apps" level="apps2"/>
<collection name="telephonyapps" long-name="Telephony Apps" level="apps1"/>
<collection name="networkingapps" long-name="Networking Apps" level="apps1"/>
<collection name="networkingutils" long-name="Networking Utils" level="utils"/>
<collection name="shortlinkapps" long-name="Shortlink Apps" level="apps1"/>
<collection name="testapps" long-name="Test Apps" level="utils"/>
<collection name="avapps" long-name="A/V Apps" level="apps3"/>
<collection name="toolkit" long-name="Toolkit" level="utils"/>
<collection name="techview_info" long-name="Techview Info" level="apps3">
<component name="techview_metadata" long-name="Techview Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="app/techview/techview_info/techview_metadata/techview_metadata.mrp"/>
</component>
</collection>
</block>
</layer>
</systemModel>
</SystemDefinition>