<?xml version="1.0" encoding="UTF-8"?><!-- this DTD describes schema="3.0.1" --><!-- all relative paths are relative to this file
all absolute paths are relative to the environment variable specified by the root attribute, or SRCROOT if not. --><!-- Container for metadata
meta, if present, should always be the first element in the parent
--><!-- systemModel element has name but no ID --><!-- All items from layer down to component should have either @href or at least one valid child item.
Anything else will be considered a placeholder
--><!-- Nested packages are for backwards compatibility only --><!-- contains units or is a placeholder --><!--
"origin-model" attribute is only to be inserted by tools when merging models
recommended class values are: doc, config, plugin, tool, api --><!-- priority is deprecated
"root" attribute will usually be inserted by tools when merging models, although it can be set manually--><SystemDefinition xmlns:qt="http://www.nokia.com/qt" schema="3.0.1" id-namespace="http://www.symbian.org/system-definition">
<systemModel name="Symbian^4">
<layer id="adaptation" name="Adaptation" levels="low mw high">
<package id="stubs" tech-domain="hb" level="high" span="2" levels="adaptation plugin mid engine" name="Stubs">
<collection id="audiostubs" name="Audio Stubs" level="adaptation">
<component id="devsoundextensions_stubs" name="Devsound Extensions Stubs" target="device" purpose="optional">
<unit bldFile="/adaptation/stubs/audiostubs/devsoundextensions_stubs/group"/>
</component>
<component id="fmradiotunercontrolstub" name="FM Radio Tuner Control Stub" target="device" purpose="optional">
<unit bldFile="/adaptation/stubs/audiostubs/fmradiotunercontrolstub/group"/>
</component>
</collection>
<collection id="drm_stubs" name="DRM Stubs" level="plugin">
<component id="drm_stubs_build" name="DRM Stubs Build" target="device" purpose="optional">
<unit bldFile="/adaptation/stubs/drm_stubs/group"/>
</component>
</collection>
<collection id="ocrsrv_stub" name="OCR Services Stub" level="mid">
<component id="ocrsrv_stub_build" name="OCR Services Stub Build" filter="!dfs_build" target="device" purpose="optional">
<unit bldFile="/adaptation/stubs/ocrsrv_stub/group"/>
</component>
</collection>
<collection id="omasuplasnconverterstubimpl" name="OMA SUPL ASN Converter Stub Implementation" level="plugin">
<component id="omasuplasnconverterstubimpl_build" name="OMA SUPL ASN Converter Stub Implementation Build" filter="!dfs_build" target="device" purpose="optional">
<unit bldFile="/adaptation/stubs/omasuplasnconverterstubimpl/group"/>
</component>
</collection>
<collection id="posmsgpluginreferenceimpl" name="POS Message Plugin Reference Implementation" level="plugin">
<component id="posmsgpluginreferenceimpl_build" name="POS Message Plugin Reference Implementation Build" class="plugin" target="device" purpose="optional">
<unit bldFile="/adaptation/stubs/posmsgpluginreferenceimpl/group"/>
</component>
</collection>
<collection id="srsfenginestub" name="SRSF Engine Stub" level="engine">
<component id="srsfenginestub_build" name="SRSF Engine Stub Build" filter="stubs" target="device" purpose="optional">
<unit bldFile="/adaptation/stubs/srsfenginestub/group"/>
</component>
</collection>
<collection id="power_save_display_mode_stub" name="Power Save Display Mode Stub" level="plugin">
<component id="power_save_display_mode_stub_build" name="Power Save Display Mode Stub Build" target="device" purpose="optional">
<unit bldFile="/adaptation/stubs/power_save_display_mode_stub/group"/>
</component>
</collection>
<collection id="systemswstubs" name="System Software Stubs" level="adaptation">
<component id="ddcaccessstub" name="DDC Access Stub" target="device" purpose="optional">
<unit bldFile="/adaptation/stubs/systemswstubs/ddcaccessstub/group"/>
</component>
<component id="tvoutconfig" name="TV Out Config" target="device" purpose="optional">
<unit bldFile="/adaptation/stubs/systemswstubs/TVOutConfig/group" filter="oem_build"/>
</component>
<component id="accessorypolicyreference" name="Accessory Policy Reference" target="device" purpose="optional">
<unit bldFile="/adaptation/stubs/systemswstubs/accessorypolicyreference/group" filter="oem_build"/>
</component>
<component id="asyreference" name="ASY Reference" class="plugin" target="device" purpose="optional">
<unit bldFile="/adaptation/stubs/systemswstubs/asyreference/group" filter="oem_build"/>
</component>
<component id="examplecommonisc" name="Example Common ISC" target="device" purpose="optional">
<unit bldFile="/adaptation/stubs/systemswstubs/examplecommonisc/group" filter="oem_build"/>
</component>
<component id="exampledsy" name="Example DSY" target="device" purpose="optional">
<unit bldFile="/adaptation/stubs/systemswstubs/exampledsy/group" filter="oem_build"/>
</component>
<component id="featuremanagerstub" name="Feature Manager Stub" target="device" purpose="optional">
<unit bldFile="/adaptation/stubs/systemswstubs/featuremanagerstub/group" filter="oem_build"/>
</component>
<component id="hwrmstubplugins" name="Hardware Resource Manager Stub Plugins" class="plugin" target="device" purpose="optional">
<unit bldFile="/adaptation/stubs/systemswstubs/hwrmstubplugins/group" filter="oem_build"/>
</component>
<component id="hwrmhapticsstubplugin" name="Hardware Resource Manager Haptics Stub Plugin" class="plugin" target="device" purpose="optional">
<unit bldFile="/adaptation/stubs/systemswstubs/hwrmhapticsstubplugin/group" filter="oem_build"/>
</component>
<component id="sensorchannelsreference" name="Sensor Channels Reference" target="device" purpose="optional">
<unit bldFile="/adaptation/stubs/systemswstubs/sensorchannelsreference/group" filter="oem_build"/>
</component>
<component id="ssyreference" name="SSY Reference" class="plugin" target="device" purpose="optional">
<unit bldFile="/adaptation/stubs/systemswstubs/ssyreference/group" filter="oem_build"/>
</component>
<component id="startupadaptationstub" name="Startup Adaptation Stub" class="plugin" target="device" purpose="optional">
<unit bldFile="/adaptation/stubs/systemswstubs/startupadaptationstub/group" filter="oem_build"/>
</component>
<component id="tiltcompensationstub" name="Tilt Compensation Stub" target="device" purpose="optional">
<unit bldFile="/adaptation/stubs/systemswstubs/tiltcompensationstub/group" filter="oem_build"/>
</component>
<component id="tvoutbehaviour" name="TV Out Behaviour" target="device" purpose="optional">
<unit bldFile="/adaptation/stubs/systemswstubs/tvoutbehaviour/group" filter="oem_build"/>
</component>
<component id="wiredbearerreference" name="Wired Bearer Reference" class="plugin" target="device" purpose="optional">
<unit bldFile="/adaptation/stubs/systemswstubs/wiredbearerreference/group" filter="oem_build"/>
</component>
</collection>
<collection id="tactileclickplugin_stub" name="Tactile Click Plugin Stub" level="engine">
<component id="tactileclickplugin_stub_build" name="Tactile Click Plugin Stub Build" class="plugin" target="device" purpose="optional">
<unit bldFile="/adaptation/stubs/tactileclickplugin_stub/group"/>
</component>
</collection>
<collection id="wlanhwinit_stub" name="WLAN Hardware Init Stub" level="mid">
<component id="wlanhwinit_stub_build" name="WLAN Hardware Init Stub Build" target="device" purpose="optional">
<unit bldFile="/adaptation/stubs/wlanhwinit_stub/group"/>
</component>
</collection>
</package>
<package id="beagleboard" tech-domain="hb" level="low" levels="hw-if" name="Beagle Board">
<collection id="omap3530" name="OMAP 3530" level="hw-if">
<component id="omap3530_build" name="Beagle Board Common" introduced="^3" filter="sf_build" purpose="optional" target="device">
<unit bldFile="/adaptation/beagleboard/omap3530" mrp="/adaptation/beagleboard/omap3530/base_beagle.mrp"/>
</component>
<component id="omap3530_kernel" name="Beagle Board Kernel" introduced="^3" filter="sf_build" purpose="optional" target="device">
<unit bldFile="/adaptation/beagleboard/omap3530/kernel"/>
</component>
<component id="beagleboard_Baseport" name="Beagle Board Baseport" introduced="^3" filter="sf_build" purpose="optional" target="device">
<unit bldFile="/adaptation/beagleboard/omap3530/beagleboard"/>
</component>
</collection>
</package>
<package id="qemu" tech-domain="hb" level="low" levels="hw-if" name="QEMU and Baseport">
<collection id="qemu_baseport" name="Baseport" level="hw-if">
<component id="syborg" name="Syborg" introduced="^2" filter="sf_build" purpose="optional" target="device">
<unit bldFile="/adaptation/qemu/baseport/syborg" mrp="/adaptation/qemu/baseport/syborg/syborg.mrp"/>
</component>
</collection>
</package>
<package id="codecs.aricent" tech-domain="mm" level="low" levels="util plugin" name="Aricent Codecs">
<collection id="aricent_utilities" name="Aricent Utilities" level="util">
<component id="ariprocessengine" name="Aricent Process Engine" introduced="^4" filter="sf_build" target="device" purpose="optional">
<unit bldFile="/adaptation/codecs.aricent/utilities/ariprocessengine/group"/>
</component>
<component id="aristatemachine" name="Aricent State Machine" introduced="^4" filter="sf_build" target="device" purpose="optional">
<unit bldFile="/adaptation/codecs.aricent/utilities/aristatemachine/group"/>
</component>
</collection>
<collection id="aaclc_enc" name="AAC LC Encoding" level="plugin">
<component id="ariaaclcencmmfcodec" name="Aricent AAC LC Encoding MMF Codec" introduced="^4" filter="sf_build" class="plugin" target="device" purpose="optional">
<unit bldFile="/adaptation/codecs.aricent/aaclc_enc/ariaaclcencmmfcodec/group"/>
</component>
</collection>
<collection id="amrnb_dec" name="AMR NB Decoding" level="plugin">
<component id="ariamrnbdecmmfcodec" name="Aricent AMR NB Decoding MMF Codec" introduced="^4" filter="sf_build" class="plugin" target="device" purpose="optional">
<unit bldFile="/adaptation/codecs.aricent/amrnb_dec/ariamrnbdecmmfcodec/group"/>
</component>
</collection>
<collection id="amrnb_enc" name="AMR NB Encoding" level="plugin">
<component id="ariamrnbencmmfcodec" name="Aricent AMR NB Encoding MMF Codec" introduced="^4" filter="sf_build" class="plugin" target="device" purpose="optional">
<unit bldFile="/adaptation/codecs.aricent/amrnb_enc/ariamrnbencmmfcodec/group"/>
</component>
</collection>
<collection id="amrwb_dec" name="AMR WB Decoding" level="plugin">
<component id="ariamrwbdecmmfcodec" name="Aricent AMR WB Decoding MMF Codec" introduced="^4" filter="sf_build" class="plugin" target="device" purpose="optional">
<unit bldFile="/adaptation/codecs.aricent/amrwb_dec/ariamrwbdecmmfcodec/group"/>
</component>
</collection>
<collection id="h264_dec" name="H264 Decoding" level="plugin">
<component id="arih264dechwdevice" name="Aricent H264 Decoding Hardware Device" introduced="^4" filter="sf_build" class="plugin" target="device" purpose="optional">
<unit bldFile="/adaptation/codecs.aricent/h264_dec/arih264dechwdevice/group"/>
</component>
</collection>
<collection id="h264_enc" name="H264 Encoding" level="plugin">
<component id="arih264enchwdevice" name="Aricent H264 Encoding Hardware Device" introduced="^4" filter="sf_build" class="plugin" target="device" purpose="optional">
<unit bldFile="/adaptation/codecs.aricent/h264_enc/arih264enchwdevice/group"/>
</component>
</collection>
<collection id="heaac_dec" name="HE AAC Decoding" level="plugin">
<component id="ariheaacdecmmfcodec" name="Aricent HE AAC Decoding MMF Codec" introduced="^4" filter="sf_build" class="plugin" target="device" purpose="optional">
<unit bldFile="/adaptation/codecs.aricent/heaac_dec/ariheaacdecmmfcodec/group"/>
</component>
</collection>
<collection id="mp3_dec" name="MP3 Decoding" level="plugin">
<component id="arimp3decmmfcodec" name="Aricent MP3 Decoding MMF Codec" introduced="^4" filter="sf_build" class="plugin" target="device" purpose="optional">
<unit bldFile="/adaptation/codecs.aricent/mp3_dec/arimp3decmmfcodec/group"/>
</component>
</collection>
<collection id="mp4asp_dec" name="MP4 ASP Decoding" level="plugin">
<component id="arimpeg4aspdechwdevice" name="Aricent MP4 ASP Decoding Hardware Device" introduced="^4" filter="sf_build" class="plugin" target="device" purpose="optional">
<unit bldFile="/adaptation/codecs.aricent/mp4asp_dec/arimpeg4aspdechwdevice/group"/>
</component>
</collection>
<collection id="mp4sp_enc" name="MP4 SP Encoding" level="plugin">
<component id="arimp4spenchwdevice" name="MP4 SP Encoding Hardware Device" introduced="^4" filter="sf_build" class="plugin" target="device" purpose="optional">
<unit bldFile="/adaptation/codecs.aricent/mp4sp_enc/arimp4spenchwdevice/group"/>
</component>
</collection>
</package>
<package id="openmaxil.nokia" tech-domain="mm" level="mw" levels="adaptation hw-if device-fw" name="Nokia OpenMAX IL Adaptation">
<collection id="omxilcomp" name="OpenMAX IL Components" level="adaptation">
<component id="omxilgeneric" name="Generic OpenMAX IL Components" introduced="^3" purpose="optional" class="plugin" target="device">
<unit bldFile="/adaptation/openmaxil.nokia/omxilcomp/omxilgeneric/group" version="1"/>
</component>
<component id="omxilaudioemulator" name="OpenMAX IL Audio Emulator" introduced="^3" purpose="optional" class="plugin" target="device">
<unit bldFile="/adaptation/openmaxil.nokia/omxilcomp/omxilaudioemulator/group" version="1"/>
</component>
<component id="omxiltestcomp" name="OpenMAX IL Test Components" introduced="^3" purpose="development" class="plugin" target="device">
<unit bldFile="/adaptation/openmaxil.nokia/omxilcomp/omxiltestcomp/group" version="1"/>
</component>
</collection>
</package>
</layer>
<layer id="os" name="OS" levels="hw services">
<package id="kernelhwsrv" level="hw" tech-domain="hb" levels="hw-if adaptation framework test" name="Kernel and Hardware Services">
<collection id="brdbootldr" name="Board Boot Loader" level="hw-if">
<component id="ubootldr" name="Boot Loader" introduced="9.2" purpose="optional" target="device">
<unit bldFile="/os/kernelhwsrv/brdbootldr/ubootldr" mrp="/os/kernelhwsrv/brdbootldr/ubootldr/base_ubootldr.mrp"/>
</component>
</collection>
<collection id="bsptemplate" name="Board Support Package Template" level="hw-if">
<component id="asspandvariant" name="Template ASSP and Variant" introduced="6.0" purpose="development" target="device">
<unit bldFile="/os/kernelhwsrv/bsptemplate/asspandvariant/template_variant" mrp="/os/kernelhwsrv/bsptemplate/asspandvariant/base_template.mrp"/>
</component>
</collection>
<collection id="kernel" name="Kernel Architecture" level="adaptation">
<component id="eka" name="Kernel Architecture" introduced="8.0" purpose="mandatory" target="device">
<unit bldFile="/os/kernelhwsrv/kernel/eka" mrp="/os/kernelhwsrv/kernel/eka/base_e32.mrp"/>
</component>
</collection>
<collection id="kerneltest" name="Kernel Test" level="hw-if">
<component id="e32utils" name="E32 Utilities" purpose="development" target="device">
<unit bldFile="/os/kernelhwsrv/kerneltest/e32utils/group" mrp="/os/kernelhwsrv/kerneltest/e32utils/group/base_e32utils.mrp"/>
</component>
<component id="e32test" name="E32 Tests" purpose="development" target="device">
<unit bldFile="/os/kernelhwsrv/kerneltest/e32test/group" mrp="/os/kernelhwsrv/kerneltest/e32test/group/base_e32test.mrp"/>
</component>
<component id="f32test" name="File Server Tests" purpose="development" target="device">
<unit bldFile="/os/kernelhwsrv/kerneltest/f32test/group" mrp="/os/kernelhwsrv/kerneltest/f32test/group/base_f32test.mrp"/>
</component>
<component id="rofstests" name="Read Only File System Tests" purpose="development" target="device">
<unit bldFile="/os/kernelhwsrv/kerneltest/f32test/rofs" mrp="/os/kernelhwsrv/kerneltest/f32test/rofs/rofs_tests.mrp"/>
</component>
<component id="loadertest" name="Loader Tests" purpose="development" target="device">
<unit bldFile="/os/kernelhwsrv/kerneltest/f32test/loader" mrp="/os/kernelhwsrv/kerneltest/f32test/loader/base_loader.mrp"/>
</component>
</collection>
<collection id="ldds" name="Logical Device Drivers" level="adaptation">
<component id="ethernetldd" name="Ethernet Drivers" purpose="optional" target="device">
<unit bldFile="/os/kernelhwsrv/kernel/eka/drivers/ethernet" mrp="/os/kernelhwsrv/kernel/eka/drivers/ethernet/base_e32_drivers_ethernet.mrp"/>
</component>
<component id="audioldd" name="Audio Drivers" introduced="8.1b" purpose="optional" target="device">
<unit bldFile="/os/kernelhwsrv/kernel/eka/drivers/soundsc" mrp="/os/kernelhwsrv/kernel/eka/drivers/soundsc/base_e32_drivers_sound.mrp"/>
</component>
<component id="serialldd" name="Serial Port Drivers" purpose="optional" target="device">
<unit bldFile="/os/kernelhwsrv/kernel/eka/drivers/ecomm" mrp="/os/kernelhwsrv/kernel/eka/drivers/ecomm/base_e32_drivers_ecomm.mrp"/>
</component>
<component id="legacydrivers" name="Legacy Drivers" purpose="optional" target="device">
<unit mrp="/os/kernelhwsrv/kernel/eka/drivers/adc/base_e32_drivers_adc.mrp"/>
</component>
<component id="locmedia" name="Local Media Subsystem" introduced="8.1b" purpose="mandatory" target="device">
<!-- 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 id="stopmodedebugdriver" name="Stop Mode Debug Driver" purpose="mandatory" target="device">
<unit bldFile="/os/kernelhwsrv/kernel/eka/drivers/debug/group" mrp="/os/kernelhwsrv/kernel/eka/drivers/debug/group/base_e32_drivers_debug.mrp"/>
</component>
<component id="btrace" name="Kernel Trace Tool" purpose="mandatory" target="device">
<unit bldFile="/os/kernelhwsrv/kernel/eka/drivers/trace" mrp="/os/kernelhwsrv/kernel/eka/drivers/trace/base_e32_drivers_trace.mrp"/>
</component>
<component id="displayldd" name="Display Drivers" introduced="^3" purpose="optional" target="device">
<!-- 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 id="usbclientdrivers" name="USB Client Drivers" introduced="8.1b" purpose="optional" target="device">
<!-- 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 id="usbdescriptors" name="USB Descriptors" purpose="optional" target="device">
<!-- 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 id="usbdi_utils" name="USB DI Utils" purpose="optional" target="device">
<!-- 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 id="driversupport" name="Generic Driver Support" level="hw-if">
<component id="mediadrivers" name="Media Drivers" purpose="optional" target="device">
<!-- 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 id="genericboardsupport" name="Generic Board Support" purpose="optional" target="device">
<unit bldFile="/os/kernelhwsrv/kernel/eka/drivers/bsp" mrp="/os/kernelhwsrv/kernel/eka/drivers/bsp/base_e32_drivers_bsp.mrp"/>
</component>
</collection>
<collection id="userlibandfileserver" name="User Library and File Server" level="framework">
<component id="euser" name="User Library" purpose="mandatory" target="device">
<unit bldFile="/os/kernelhwsrv/kernel/eka/euser" mrp="/os/kernelhwsrv/kernel/eka/euser/base_e32_euser.mrp"/>
</component>
<component id="compsupp" name="Compiler Runtime Support" filter="gt" purpose="mandatory" target="device">
<unit bldFile="/os/kernelhwsrv/kernel/eka/compsupp" mrp="/os/kernelhwsrv/kernel/eka/compsupp/base_e32_compsupp.mrp"/>
</component>
<component id="fileserver" name="File Server" filter="gt" purpose="mandatory" target="device">
<unit bldFile="/os/kernelhwsrv/userlibandfileserver/fileserver/group" mrp="/os/kernelhwsrv/userlibandfileserver/fileserver/group/base_f32.mrp"/>
</component>
<component id="automounter" name="Automounter" filter="gt" purpose="mandatory" target="device">
<unit bldFile="/os/kernelhwsrv/userlibandfileserver/fileserver/automounter" mrp="/os/kernelhwsrv/userlibandfileserver/fileserver/automounter/base_f32_automounter.mrp"/>
</component>
<component id="estart" name="Base Starter" filter="gt" purpose="optional" target="device">
<unit bldFile="/os/kernelhwsrv/userlibandfileserver/fileserver/estart" mrp="/os/kernelhwsrv/userlibandfileserver/fileserver/estart/base_f32_estart.mrp"/>
</component>
<component id="domainmgr" name="Domain Manager" introduced="8.1b" purpose="mandatory" target="device">
<unit bldFile="/os/kernelhwsrv/userlibandfileserver/domainmgr/group" mrp="/os/kernelhwsrv/userlibandfileserver/domainmgr/group/base_domain.mrp"/>
</component>
</collection>
<collection id="filesystems" name="File Systems" level="framework">
<component id="romfs" name="ROM File System" filter="gt" purpose="optional" class="plugin" target="device">
<unit mrp="/os/kernelhwsrv/userlibandfileserver/fileserver/srom/base_f32_srom.mrp"/>
</component>
<component id="rofs" name="ROFS" filter="gt" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/kernelhwsrv/userlibandfileserver/fileserver/srofs" mrp="/os/kernelhwsrv/userlibandfileserver/fileserver/srofs/base_f32_srofs.mrp"/>
</component>
<component id="usbmsfs" name="USB Mass Storage File System" filter="gt" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/kernelhwsrv/userlibandfileserver/fileserver/smassstorage" mrp="/os/kernelhwsrv/userlibandfileserver/fileserver/smassstorage/base_f32_smassstorage.mrp"/>
</component>
<component id="usbhostmssrv" name="USB Host Mass Storage Server" introduced="^3" filter="gt" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/kernelhwsrv/userlibandfileserver/fileserver/shostmassstorage" mrp="/os/kernelhwsrv/userlibandfileserver/fileserver/shostmassstorage/base_f32_shostmassstorage.mrp"/>
</component>
<component id="fat32fs" name="FAT32 File System" filter="gt" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/kernelhwsrv/userlibandfileserver/fileserver/sfat32" mrp="/os/kernelhwsrv/userlibandfileserver/fileserver/sfat32/base_f32_sfat32.mrp"/>
</component>
<component id="fatfs" name="FAT File System" filter="gt" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/kernelhwsrv/userlibandfileserver/fileserver/sfat" mrp="/os/kernelhwsrv/userlibandfileserver/fileserver/sfat/base_f32_sfat.mrp"/>
</component>
<component id="compfs" name="Composite File System" filter="gt" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/kernelhwsrv/userlibandfileserver/fileserver/scomp" mrp="/os/kernelhwsrv/userlibandfileserver/fileserver/scomp/base_f32_scomp.mrp"/>
</component>
</collection>
<collection id="halservices" name="HAL Services" level="framework">
<component id="hal" name="User-Side Hardware Abstraction" introduced="6.0" purpose="optional" target="device">
<unit bldFile="/os/kernelhwsrv/halservices/hal" mrp="/os/kernelhwsrv/halservices/hal/base_hal.mrp"/>
</component>
</collection>
<collection id="textmodeshell" name="Text Mode Shell" level="test">
<component id="e32wsrv" name="Text Window Server" purpose="optional" target="device">
<unit bldFile="/os/kernelhwsrv/kernel/eka/ewsrv" mrp="/os/kernelhwsrv/kernel/eka/ewsrv/base_e32_ewsrv.mrp"/>
</component>
<component id="textshell" name="Text Shell" filter="gt" purpose="development" target="device">
<unit bldFile="/os/kernelhwsrv/userlibandfileserver/fileserver/etshell" mrp="/os/kernelhwsrv/userlibandfileserver/fileserver/etshell/base_f32_eshell.mrp"/>
</component>
</collection>
<collection id="baseapitest" name="Base API Tests" level="test">
</collection>
<collection id="kernelhwsrv_info" name="Kernel and Hardware Services Info" level="test">
<component id="kernelhwsrv_metadata" name="Kernel and Hardware Services Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/os/kernelhwsrv/kernelhwsrv_info/kernelhwsrv_metadata/kernelhwsrv_metadata.mrp"/>
</component>
<component id="kernelhwsrv_docpub" name="Kernel and Hardware Services Public Documentation" introduced="^3" purpose="development" class="doc" target="device">
<unit mrp="/os/kernelhwsrv/kernelhwsrv_info/doc_pub/kernelhwsrv_doc_pub.mrp"/>
</component>
</collection>
</package>
<package id="boardsupport" level="hw" tech-domain="hb" levels="bsp test 2 3 config" name="Board Support">
<collection id="emulator" name="Emulator" level="bsp">
<component id="emulatorbsp" name="Emulator BSP" purpose="optional" target="device">
<unit bldFile="/os/boardsupport/emulator/emulatorbsp" mrp="/os/boardsupport/emulator/emulatorbsp/base_wins.mrp"/>
</component>
</collection>
<collection id="haitest" name="HAI Test Suites" level="test">
<component id="bspsvs" name="BSP Verification Suite" introduced="^2" purpose="development" target="device">
<unit mrp="/os/boardsupport/haitest/bspsvs/group/bspsvs.mrp"/>
</component>
</collection>
<collection id="boardsupport_info" name="Board Support Info" level="config">
<component id="boardsupport_metadata" name="Board Support Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/os/boardsupport/boardsupport_info/boardsupport_metadata/boardsupport_metadata.mrp"/>
</component>
</collection>
</package>
<package id="buildtools" level="hw" tech-domain="to" levels="bld mw fw ui" name="Build Tools">
<collection id="bldsystemtools" name="Build System Tools" level="bld">
<component id="sysdeftools" name="System Definition Tools" introduced="^2" purpose="development" target="device">
<unit mrp="/os/buildtools/bldsystemtools/sysdeftools/group/sysdeftools.mrp"/>
</component>
<component id="commonbldutils" name="Common Utils" purpose="development" target="device">
<unit mrp="/os/buildtools/bldsystemtools/commonbldutils/tools_utils_common.mrp"/>
</component>
</collection>
<collection id="toolsandutils" name="Tools and Utils" level="mw">
<component id="productionbldtools" name="Production Build Tools" filter="gt" purpose="development" target="device">
<unit mrp="/os/buildtools/toolsandutils/productionbldtools/product_tools.mrp"/>
</component>
<component id="e32tools" name="E32 Tools" deprecated="^2" target="desktop" purpose="development">
<unit bldFile="/os/buildtools/toolsandutils/e32tools/group" mrp="/os/buildtools/toolsandutils/e32tools/group/tools_e32tools.mrp"/>
</component>
<component id="autotest" name="Autotest" purpose="development" target="device">
<unit bldFile="/os/buildtools/toolsandutils/autotest/group" mrp="/os/buildtools/toolsandutils/autotest/group/tools_autotest.mrp"/>
</component>
</collection>
<collection id="sbsv1_os" name="Symbian Build System v1" level="fw">
<component id="e32toolp" name="E32 Perl Tools" filter="sf_build" target="desktop" purpose="development">
<unit bldFile="/os/buildtools/sbsv1_os/e32toolp/group" mrp="/os/buildtools/sbsv1_os/e32toolp/group/tools_e32toolp.mrp"/>
</component>
</collection>
<collection id="imgtools_os" name="Image Tools" level="fw">
<component id="romkiteka2" name="ROMKIT EKA2" deprecated="^2" purpose="development" target="device">
<unit bldFile="/os/buildtools/imgtools_os/romkiteka2/group" mrp="/os/buildtools/imgtools_os/romkiteka2/group/tools_romkit.mrp"/>
</component>
</collection>
<collection id="misccomponents" name="Misc Components" level="mw">
<component id="emulatorlauncher" name="Emulator Launcher" filter="gt" purpose="development" target="device">
<unit bldFile="/os/buildtools/misccomponents/emulatorlauncher/group" mrp="/os/buildtools/misccomponents/emulatorlauncher/group/tools_sdk_eng_emulator_launcher.mrp"/>
</component>
</collection>
<collection id="buildtools_info" name="Build Tools Info" level="ui">
<component id="buildtools_metadata" name="Build Tools Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/os/buildtools/buildtools_info/buildtools_metadata/buildtools_metadata.mrp"/>
</component>
</collection>
</package>
<package id="ossrv" level="services" tech-domain="hb" levels="physical-abstraction app-libs encoding translation data-services utilities" name="Generic OS Services">
<collection id="ossrv_pub" name="Generic OS Services Public Interfaces" level="utilities">
<component id="boost_apis" name="Boost APIs" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/boost_apis/group"/>
</component>
<component id="cpp_wrappers" name="Cpp wrappers" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/cpp_wrappers/group"/>
</component>
<component id="character_type_apis" name="Character Type APIs" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/character_type_apis/group"/>
</component>
<component id="compiler_specific_runtime_support" name="Compiler Specific Runtime Support" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/compiler_specific_runtime_support/group"/>
</component>
<component id="ossrv_configuration_api" name="Generic OS Services Configuration API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/configuration/group"/>
</component>
<component id="crypto_authentication_codes_and_hash_functions_api" name="Crypto Authentication Codes and Hash Functions API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/crypto_authentication_codes_and_hash_functions_api/group"/>
</component>
<component id="crypto_auxillary_functions_api" name="Crypto Auxillary Functions API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/crypto_auxillary_functions_api/group"/>
</component>
<component id="crypto_certificates_api" name="Crypto Certificates API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/crypto_certificates_api/group"/>
</component>
<component id="crypto_inputoutput_and_data_encoding_api" name="Crypto Input/Output and Data Encoding API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/crypto_inputoutput_and_data_encoding_api/group"/>
</component>
<component id="crypto_public_key_cryptography_and_key_agreement_api" name="Crypto Public Key Cryptography and Key Agreement API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/crypto_public_key_cryptography_and_key_agreement_api/group"/>
</component>
<component id="crypto_symmetric_ciphers_api" name="Crypto Symmetric Ciphers API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/crypto_symmetric_ciphers_api/group"/>
</component>
<component id="crypto_utility_functions_api" name="Crypto Utility Functions API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/crypto_utility_functions_api/group"/>
</component>
<component id="cryptogaphy_related_api" name="Cryptogaphy Related API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/cryptogaphy_related_api/group"/>
</component>
<component id="ossrv_debug_api" name="Generic OS Services Debug API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/debug/group"/>
</component>
<component id="ossrv_exceptions_api" name="Generic OS Services Exceptions API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/exceptions/group"/>
</component>
<component id="io_stream_api" name="I/O stream API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/io_stream_api/group"/>
</component>
<component id="localization_function_api" name="Localization Function API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/localization_function_api/group"/>
</component>
<component id="math_operations_api" name="Math Operations API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/math_operations_api/group"/>
</component>
<component id="ossrv_memory_api" name="Generic OS Services Memory API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/memory/group"/>
</component>
<component id="no_namespace_headers" name="No Namespace Headers" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/no_namespace_headers/group"/>
</component>
<component id="openc_headers" name="OpenC headers" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/openc_headers/group"/>
</component>
<component id="openc_wrappers" name="OpenC wrappers" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/openc_wrappers/group"/>
</component>
<component id="ssl_general_api" name="SSL General API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/ssl_general_api/group"/>
</component>
<component id="ssl_protocol_methods_api" name="SSL Protocol Methods API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/ssl_protocol_methods_api/group"/>
</component>
<component id="standard_compressiondecompression_api" name="Standard Compression/Decompression API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/standard_compressiondecompression_api/group"/>
</component>
<component id="stl" name="STL API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/stl/group"/>
</component>
<component id="thread_api" name="Thread API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/thread_api/group"/>
</component>
<component id="type_attributes" name="Type Attributes API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/type_attributes/group"/>
</component>
<component id="typeinfo" name="Type Info API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/typeinfo/group"/>
</component>
<component id="utility_apis" name="Utility APIs" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/utility_apis/group"/>
</component>
<component id="wide_character_classapis" name="Wide character class/apis" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/wide_character_classapis/group"/>
</component>
<component id="dbus_api" name="Dbus API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/dbus/group"/>
</component>
<component id="dbus-glib_api" name="D-Bus GLib API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_pub/dbus-glib/group"/>
</component>
</collection>
<collection id="ossrv_plat" name="Generic OS Services Platform Interfaces" level="utilities">
<component id="libutils_apis" name="Utility Library APIs" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ossrv_plat/libutils/group"/>
</component>
</collection>
<collection id="stdlibs" name="Standard Libraries" level="translation">
<component id="libz" name="Z Compression Library" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/ossrv/stdlibs/libz/group"/>
</component>
<component id="libcrypt" name="Crypt Library" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/ossrv/stdlibs/libcrypt/group"/>
</component>
</collection>
<collection id="ssl" name="SSL" level="data-services">
<component id="libcrypto" name="Crypto Library" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ssl/libcrypto/group"/>
</component>
<component id="libssl" name="SSL Library" filter="s60" purpose="development" target="device">
<unit bldFile="/os/ossrv/ssl/libssl/group"/>
</component>
</collection>
<collection id="glib" name="GLib" level="utilities">
<component id="glibbackend" name="GLib Backend" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/ossrv/glib/build/symbian/glibbackend/group"/>
<!-- Move to here: <unit bldFile="glib/glibbackend/group"/> -->
</component>
<component id="libglib" name="GLib Library" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/ossrv/glib/build/symbian/glib/group"/>
<!-- Move to here: <unit bldFile="glib/libglib/group"/> -->
</component>
<component id="libgthread" name="Libg Thread" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/ossrv/glib/build/symbian/gthread/group"/>
<!-- Move to here: <unit bldFile="glib/libgthread/group"/> -->
</component>
<component id="libgmodule" name="Libg Module" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/ossrv/glib/build/symbian/gmodule/group"/>
<!-- Move to here: <unit bldFile="glib/libgmodule/group"/> -->
</component>
<component id="libgobject" name="Libg Object" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/ossrv/glib/build/symbian/gobject/group"/>
<!-- Move to here: <unit bldFile="glib/libgobject/group"/> -->
</component>
</collection>
<collection id="stdcpp" name="C++ Standard Library" level="translation">
<!-- collection is really a component. Needs to be moved down a directory -->
<component id="stdcpp_build" name="Stdcpp" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/ossrv/stdcpp/group"/>
</component>
</collection>
<collection id="ofdbus" name="Open Foundation D-Bus" level="utilities">
<component id="dbus" name="D-Bus" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ofdbus/dbus/group"/>
</component>
<component id="dbus-glib" name="D-Bus GLib" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/ossrv/ofdbus/dbus-glib/group"/>
</component>
<component id="ofdbus_rom" name="D-Bus ROM" filter="s60" target="device" purpose="optional">
<!-- Contains IBY for for dbus. Should remove #includes to above components and move this down a directory
Consider moving IBY file to one of the above as well and removing this component entirely -->
<unit bldFile="/os/ossrv/ofdbus/group"/>
</component>
</collection>
<collection id="utilitylibraries" name="Utility Libraries" level="encoding">
<component id="libutils" name="Utility Library" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/ossrv/utilitylibraries/libutils/group"/>
</component>
</collection>
<collection id="genericservices" name="Generic Services" level="utilities">
<component id="s60compatibilityheaders" name="S60 Compatibility Headers" filter="gt" purpose="optional" target="device">
<unit bldFile="/os/ossrv/genericservices/s60compatibilityheaders/groupsymtb101sf" mrp="/os/ossrv/genericservices/s60compatibilityheaders/groupsymtb101sf/tools_s60_header_compatsymtb101sf.mrp" version="tb101sf"/>
</component>
<component id="mimerecognitionfw" name="MIME Recognition Framework" purpose="mandatory" target="device">
<unit bldFile="/os/ossrv/genericservices/mimerecognitionfw/group" mrp="/os/ossrv/genericservices/mimerecognitionfw/group/app-framework_emime.mrp"/>
</component>
<component id="systemagent" name="System Agent" introduced="9.0" purpose="mandatory" target="device">
<unit bldFile="/os/ossrv/genericservices/systemagent/group" mrp="/os/ossrv/genericservices/systemagent/group/syslibs_sysagent2.mrp"/>
</component>
<component id="taskscheduler" name="Task Scheduler" introduced="6.0" purpose="optional" target="device">
<unit bldFile="/os/ossrv/genericservices/taskscheduler/group" mrp="/os/ossrv/genericservices/taskscheduler/group/syslibs_schsvr.mrp"/>
</component>
<component id="activebackupclient" name="Active Backup Client" purpose="optional" target="device">
<unit bldFile="/os/ossrv/genericservices/activebackupclient/group" mrp="/os/ossrv/genericservices/activebackupclient/group/connectivity_abclient.mrp"/>
</component>
<component id="syslibsdocs" name="Syslibs Documentation" purpose="development" class="doc" target="device">
<unit mrp="/os/ossrv/genericservices/syslibsdocs/syslibs_documentation.mrp"/>
</component>
<component id="httputils" name="HTTP Utilities Library" introduced="6.2" purpose="optional" target="device">
<unit bldFile="/os/ossrv/genericservices/httputils/group" mrp="/os/ossrv/genericservices/httputils/group/application-protocols_inetprotutil.mrp"/>
</component>
</collection>
<collection id="syslibsapitest" name="SysLibs API Tests" level="utilities">
</collection>
<collection id="compressionlibs" name="Compression Libraries" level="data-services">
<component id="ziplib" name="Zip Compression Library" introduced="6.0" purpose="mandatory" target="device">
<unit bldFile="/os/ossrv/compressionlibs/ziplib/group" mrp="/os/ossrv/compressionlibs/ziplib/group/syslibs_ezlib2.mrp"/>
</component>
</collection>
<collection id="genericopenlibs" name="Generic Open Libraries" level="translation">
<component id="cstdlib" name="C Standard Library" introduced="ER5" purpose="optional" target="device">
<unit bldFile="/os/ossrv/genericopenlibs/cstdlib/group" mrp="/os/ossrv/genericopenlibs/cstdlib/group/syslibs_stdlib.mrp"/>
</component>
<component id="cppstdlib" name="C++ Standard Library" introduced="^3" purpose="mandatory" target="device">
<unit bldFile="/os/ossrv/genericopenlibs/cppstdlib/group" mrp="/os/ossrv/genericopenlibs/cppstdlib/group/openenv_libstdcpp.mrp"/>
</component>
<component id="openenvcore" name="Open Environment Core" introduced="^2" purpose="mandatory" target="device">
<unit bldFile="/os/ossrv/genericopenlibs/openenvcore/group" mrp="/os/ossrv/genericopenlibs/openenvcore/group/openenv.mrp"/>
</component>
<component id="posixrealtimeextensions" name="POSIX Realtime Extensions" introduced="^3" purpose="optional" target="device">
<unit bldFile="/os/ossrv/genericopenlibs/posixrealtimeextensions/group" mrp="/os/ossrv/genericopenlibs/posixrealtimeextensions/group/oeaddons_librt.mrp"/>
</component>
<component id="liboil" name="Liboil" introduced="^4" purpose="optional" target="device">
<unit bldFile="/os/ossrv/genericopenlibs/liboil/group" mrp="/os/ossrv/genericopenlibs/liboil/group/oeaddons_liboil.mrp"/>
</component>
</collection>
<collection id="lowlevellibsandfws" name="Low Level Libraries and Frameworks" level="app-libs">
<component id="pluginfw" name="Plugin Framework" introduced="6.2" purpose="mandatory" target="device">
<unit bldFile="/os/ossrv/lowlevellibsandfws/pluginfw/Group" mrp="/os/ossrv/lowlevellibsandfws/pluginfw/Group/syslibs_ecom3.mrp" version="3"/>
</component>
<component id="apputils" name="Application Utilities" introduced="ER5" purpose="mandatory" target="device">
<unit bldFile="/os/ossrv/lowlevellibsandfws/apputils/group" mrp="/os/ossrv/lowlevellibsandfws/apputils/group/syslibs_bafl.mrp"/>
</component>
<component id="genericusabilitylib" name="Generic Usability Library" introduced="^3" purpose="mandatory" target="device">
<unit bldFile="/os/ossrv/lowlevellibsandfws/genericusabilitylib/group" mrp="/os/ossrv/lowlevellibsandfws/genericusabilitylib/group/syslibs_euserhl.mrp"/>
</component>
</collection>
<collection id="ossrv_info" name="Generic OS Services Info" level="utilities">
<component id="ossrv_build" name="Generic OS Services Build" filter="s60" target="device" purpose="optional">
<!-- exports should be moved to individual components -->
<unit bldFile="/os/ossrv/group"/>
</component>
<component id="ossrv_metadata" name="Generic OS Services Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/os/ossrv/ossrv_info/ossrv_metadata/ossrv_metadata.mrp"/>
</component>
</collection>
</package>
<package id="persistentdata" level="services" tech-domain="hb" levels="adaptation hw-if plugin framework server app-if" name="Persistent Data Services">
<collection id="featuremgmt" name="Feature Management" level="framework">
<component id="featuremgr" name="Feature Manager" introduced="^3" purpose="mandatory" target="device">
<unit bldFile="/os/persistentdata/featuremgmt/featuremgr/group" mrp="/os/persistentdata/featuremgmt/featuremgr/group/syslibs_featmgr.mrp"/>
</component>
<component id="featureregistry" name="Feature Registry" introduced="9.2" deprecated="^3" purpose="mandatory" target="device">
<unit bldFile="/os/persistentdata/featuremgmt/featureregistry/group" mrp="/os/persistentdata/featuremgmt/featureregistry/group/syslibs_featreg.mrp"/>
</component>
</collection>
<collection id="loggingservices" name="Logging Services" level="server">
<component id="eventlogger" name="Event Logger" introduced="6.0" purpose="optional" target="device">
<unit bldFile="/os/persistentdata/loggingservices/eventlogger/group" mrp="/os/persistentdata/loggingservices/eventlogger/group/syslibs_logeng.mrp"/>
</component>
<component id="filelogger" name="File Logger" introduced="ER5" deprecated="^3" purpose="optional" target="device">
<unit bldFile="/os/persistentdata/loggingservices/filelogger/group" mrp="/os/persistentdata/loggingservices/filelogger/group/comms-infras_flogger.mrp"/>
</component>
<component id="rfilelogger" name="RFile Logger" introduced="9.1" deprecated="^3" purpose="development" target="device">
<unit bldFile="/os/persistentdata/loggingservices/rfilelogger/group" mrp="/os/persistentdata/loggingservices/rfilelogger/group/testtools_utilities.mrp"/>
</component>
</collection>
<collection id="traceservices" name="Trace Services" level="server">
<component id="commsdebugutility" name="Comms Debug Utility" introduced="7.0s" purpose="optional" target="device">
<unit bldFile="/os/persistentdata/traceservices/commsdebugutility/group" mrp="/os/persistentdata/traceservices/commsdebugutility/group/comms-infras_commsdebugutility.mrp"/>
</component>
<component id="tracefw" name="Trace Framework" introduced="9.2" purpose="development" target="device">
<unit bldFile="/os/persistentdata/traceservices/tracefw/ulogger/group" mrp="/os/persistentdata/traceservices/tracefw/ulogger/group/tools_debug_trace.mrp"/>
</component>
</collection>
<collection id="persistentstorage" name="Persistent Storage" level="framework">
<component id="store" name="Store" purpose="optional" target="device">
<unit bldFile="/os/persistentdata/persistentstorage/store/group" mrp="/os/persistentdata/persistentstorage/store/group/syslibs_store.mrp"/>
</component>
<component id="dbms" name="DBMS" purpose="optional" target="device">
<unit bldFile="/os/persistentdata/persistentstorage/dbms/group" mrp="/os/persistentdata/persistentstorage/dbms/group/syslibs_dbms.mrp"/>
</component>
<component id="centralrepository" name="Central Repository" introduced="7.0s" purpose="mandatory" target="device">
<unit bldFile="/os/persistentdata/persistentstorage/centralrepository/group" mrp="/os/persistentdata/persistentstorage/centralrepository/group/syslibs_centralrepository.mrp"/>
</component>
<component id="sql" name="SQL" introduced="9.3" purpose="optional" target="device">
<unit bldFile="/os/persistentdata/persistentstorage/sql/GROUP" mrp="/os/persistentdata/persistentstorage/sql/GROUP/syslibs_sql.mrp"/>
</component>
<component id="sqlite3api" name="SQLite 3 API" introduced="^3" purpose="optional" target="device">
<unit bldFile="/os/persistentdata/persistentstorage/sqlite3api/GROUP" mrp="/os/persistentdata/persistentstorage/sqlite3api/GROUP/syslibs_sqlite3.mrp"/>
</component>
</collection>
<collection id="persistentdata_info" name="Persistent Data Services Info" level="app-if">
<component id="persistentdata_metadata" name="Persistent Data Services Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/os/persistentdata/persistentdata_info/persistentdata_metadata/persistentdata_metadata.mrp"/>
</component>
</collection>
</package>
<package id="devicesrv" level="services" tech-domain="hb" levels="adaptation hw-if plugin framework server app-if" name="Device Services">
<collection id="devicesrv_pub" name="Device Services Public Interfaces" level="app-if">
<component id="platform_path_definitions_api" name="Platform Path Definitions API" filter="s60,bldmefirst" class="api" target="device" purpose="optional">
<!-- this needs to be moved to deviceplatformrelease -->
<unit bldFile="/os/devicesrv/devicesrv_pub/platform_path_definitions_api/group"/>
</component>
<component id="common_platform_security_definitions_api" name="Common Platform Security Definitions API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_pub/common_platform_security_definitions_api/group"/>
</component>
<component id="feature_discovery_api" name="Feature Discovery API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_pub/feature_discovery_api/group"/>
</component>
<component id="platform_environment_api" name="Platform Environment API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_pub/platform_environment_api/group"/>
</component>
<component id="sensor_channel_api" name="Sensor Channel API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_pub/sensor_channel_api/group"/>
</component>
<component id="sensor_definitions_api" name="Sensor Definitions API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_pub/sensor_definitions_api/group"/>
</component>
<component id="version_info_api" name="Version Info API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_pub/version_info_api/group"/>
</component>
<component id="accessory_monitoring_api" name="Accessory Monitoring API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_pub/accessory_monitoring_api/group"/>
</component>
<component id="haptics_api" name="Haptics API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_pub/haptics_api/group"/>
</component>
<component id="sensor_data_compensator_api" name="Sensor Data Compensator API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_pub/sensor_data_compensator_api/group"/>
</component>
</collection>
<collection id="devicesrv_plat" name="Device Services Platform Interfaces" level="app-if">
<component id="configuration_file_parser_api" name="Configuration File Parser API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/configuration_file_parser_api/group"/>
</component>
<component id="dos_extension_plugin_api" name="DOS Extension Plug-In API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/dos_extension_plugin_api/group"/>
</component>
<component id="mediator_command_initiator_api" name="Mediator Command Initiator API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/mediator_command_initiator_api/group"/>
</component>
<component id="syslangutil_api" name="SysLangUtil API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/syslangutil_api/group"/>
</component>
<component id="wakeup_alarm_api" name="Wakeup Alarm API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/wakeup_alarm_api/group"/>
</component>
<component id="disk_and_memory_level_keys_api" name="Disk and Memory Level Keys API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/disk_and_memory_level_keys_api/group"/>
</component>
<component id="mediator_plugin_api" name="Mediator Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/mediator_plugin_api/group"/>
</component>
<component id="headset_status_api" name="Headset Status API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/headset_status_api/group"/>
</component>
<component id="system_startup_extension_plugin_api" name="System Startup Extension Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/system_startup_extension_plugin_api/group"/>
</component>
<component id="sensor_plugin_api" name="Sensor Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/sensor_plugin_api/group"/>
</component>
<component id="accessory_api" name="Accessory API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/accessory_api/group"/>
</component>
<component id="display_language_definition_api" name="Display Language Definition API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/display_language_definition_api/group"/>
</component>
<component id="mediator_command_responder_api" name="Mediator Command Responder API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/mediator_command_responder_api/group"/>
</component>
<component id="accessory_policy_definitions_api" name="Accessory Policy Definitions API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/accessory_policy_definitions_api/group"/>
</component>
<component id="hw_settings_api" name="Hardware Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/hw_settings_api/group"/>
</component>
<component id="mediator_domain_definitions_api" name="Mediator Domain Definitions API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/mediator_domain_definitions_api/group"/>
</component>
<component id="sensor_extension_api" name="Sensor Extension API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/sensor_extension_api/group"/>
</component>
<component id="accessory_plugin_api" name="Accessory Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/accessory_plugin_api/group"/>
</component>
<component id="sae_api" name="SAE API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/sae_api/group"/>
</component>
<component id="accessory_control_api" name="Accessory Control API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/accessory_control_api/group"/>
</component>
<component id="mediator_static_registration_api" name="Mediator Static Registration API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/mediator_static_registration_api/group"/>
</component>
<component id="accessory_key_event_handling_api" name="Accessory Key Event Handling API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/accessory_key_event_handling_api/group"/>
</component>
<component id="mediator_notification_api" name="Mediator Notification API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/mediator_notification_api/group"/>
</component>
<component id="accessory_policy_utility_api" name="Accessory Policy Utility API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/accessory_policy_utility_api/group"/>
</component>
<component id="common_dsy_plugin_api" name="Common DSY Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/common_dsy_plugin_api/group"/>
</component>
<component id="remote_control_extension_api" name="Remote Control Extension API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/remote_control_extension_api/group"/>
</component>
<component id="sensor_channel_filter_api" name="Sensor Channel Filter API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/sensor_channel_filter_api/group"/>
</component>
<component id="dos_extension_api" name="DOS Extension API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/dos_extension_api/group"/>
</component>
<component id="accessory_audio_control_api" name="Accessory Audio Control API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/accessory_audio_control_api/group"/>
</component>
<component id="mediator_event_consumer_api" name="Mediator Event Consumer API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/mediator_event_consumer_api/group"/>
</component>
<component id="shared_data_api" name="Shared Data API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/shared_data_api/group"/>
</component>
<component id="accessory_settings_api" name="Accessory Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/accessory_settings_api/group"/>
</component>
<component id="accessory_bluetooth_control_api" name="Accessory Bluetooth Control API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/accessory_bluetooth_control_api/group"/>
</component>
<component id="extended_version_info_api" name="Extended Version Info API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/extended_version_info_api/group"/>
</component>
<component id="mediator_event_provider_api" name="Mediator Event Provider API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/mediator_event_provider_api/group"/>
</component>
<component id="tv_out_config_api" name="TV Out Config API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/tv_out_config_api/group"/>
</component>
<component id="tspclientmapper_api" name="TSP Client Mapper API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/tspclientmapper_api/group"/>
</component>
<component id="powersave_api" name="Power Save API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/powersave_api/group"/>
</component>
<component id="powersave_definitions_api" name="Power Save Definitions API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/powersave_definitions_api/group"/>
</component>
<component id="powersave_plugin_api" name="Power Save Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/powersave_plugin_api/group"/>
</component>
<component id="extended_version_info_plugin_api" name="Extended Version Info Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/extended_version_info_plugin_api/group"/>
</component>
<component id="haptics_plugin_api" name="Haptics Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/haptics_plugin_api/group"/>
</component>
<component id="haptics_effect_data_getter_plugin_api" name="Haptics Effect Data Getter Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/haptics_effect_data_getter_plugin_api/group"/>
</component>
<component id="haptics_packetizer_plugin_api" name="Haptics Packetizer Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/haptics_packetizer_plugin_api/group"/>
</component>
<component id="tiltcompensation_api" name="Tilt Compensation API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/tiltcompensation_api/group"/>
</component>
<component id="disk_notification_handler_api" name="Disk Notification Handler API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/disk_notification_handler_api/group"/>
</component>
<component id="accessory_policy_usb_audio_api" name="Accessory Policy USB Audio API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/accessory_policy_usb_audio_api/group"/>
</component>
<component id="accessory_policy_hdmi_audio_api" name="Accessory Policy HDMI Audio API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/accessory_policy_hdmi_audio_api/group"/>
</component>
<component id="sensor_data_compensator_plugin_api" name="Sensor Data Compensator Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/sensor_data_compensator_plugin_api/group"/>
</component>
<component id="ddc_access_api" name="DDC Access API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/ddc_access_api/group"/>
</component>
<component id="tv_out_behaviour_api" name="TV Out Behaviour API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/devicesrv_plat/tv_out_behaviour_api/group"/>
</component>
</collection>
<collection id="accessoryservices" name="Accessory Services" level="framework">
<component id="accessorymonitor" name="Accessory Monitor" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/accessoryservices/accessorymonitor/group"/>
</component>
<component id="accessoryremotecontrol" name="Accessory Remote Control" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/accessoryservices/accessoryremotecontrol/group"/>
</component>
<component id="accessoryserver" name="Accessory Server" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/accessoryservices/accessoryserver/group"/>
</component>
<component id="pluggeddisplay" name="Plugged Display" introduced="^3" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/accessoryservices/pluggeddisplay/group"/>
</component>
<component id="headsetstatusapi" name="Headset Status API" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/accessoryservices/headsetstatusapi/group"/>
</component>
<component id="tspclientmapper" name="TSP Client Mapper" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/accessoryservices/tspclientmapper/group"/>
</component>
<component id="remotecontrolfw" name="Remote Control Framework" introduced="9.1" purpose="optional" target="device">
<unit bldFile="/os/devicesrv/accessoryservices/remotecontrolfw/group" mrp="/os/devicesrv/accessoryservices/remotecontrolfw/group/bluetooth_remotecontrol.mrp"/>
</component>
<component id="gid_pc_tool" name="Generic ID PC Tool" filter="s60" target="desktop" class="tool" purpose="optional">
<unit bldFile="/os/devicesrv/accessoryservices/gid_pc_tool/group"/>
</component>
</collection>
<collection id="commonservices" name="Common Services" level="app-if">
<component id="commonengine" name="Common Engine" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/commonservices/commonengine/group"/>
</component>
<component id="commonengineresources" name="Common Engine Resources" filter="s60" class="config" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/commonservices/commonengineresources/group"/>
</component>
<component id="platformenv" name="Platform Environment" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/commonservices/platformenv/group"/>
</component>
<component id="sysutil" name="System Utilities" introduced="ER5" purpose="mandatory" target="device">
<unit bldFile="/os/devicesrv/commonservices/sysutil/group" mrp="/os/devicesrv/commonservices/sysutil/group/sysutil.mrp"/>
</component>
<component id="activitymanager" name="Activity Manager" introduced="ER5" purpose="mandatory" target="device">
<unit bldFile="/os/devicesrv/commonservices/activitymanager/group" mrp="/os/devicesrv/commonservices/activitymanager/group/activitymanager.mrp"/>
</component>
</collection>
<collection id="dosservices" name="Domestic Operating System Services" level="hw-if">
<component id="commondsy" name="Common DSY" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/dosservices/commondsy/group"/>
</component>
<component id="dosserver" name="Domestic OS Server" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/dosservices/dosserver/group"/>
</component>
</collection>
<collection id="sensorservices" name="Sensor Services" level="framework">
<component id="sensorserver" name="Sensor Server" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/sensorservices/sensorserver/group"/>
</component>
<component id="orientationssy" name="Orientation SSY" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/sensorservices/orientationssy/group"/>
</component>
<component id="tiltcompensationssy" name="Tilt Compensation SSY" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/sensorservices/tiltcompensationssy/group"/>
</component>
<component id="sensordatacompensator" name="Sensor Data Compensator" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/sensorservices/sensordatacompensator/group"/>
</component>
</collection>
<collection id="hwrmhaptics" name="HWRM Haptics" level="plugin">
<component id="hapticseffectdatagetterfw" name="Haptics Effect Data Getter Framework" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/hwrmhaptics/hapticseffectdatagetterfw/group"/>
</component>
<component id="hapticspluginservice" name="Haptics Plugin Service" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/hwrmhaptics/hapticspluginservice/group"/>
</component>
<component id="hapticspacketizer" name="Haptics Packetizer" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/hwrmhaptics/hapticspacketizer/group"/>
</component>
<component id="hapticspluginmanager" name="Haptics Plugin Manager" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/hwrmhaptics/hapticspluginmanager/group"/>
</component>
<component id="hapticsserver" name="Haptics Server" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/hwrmhaptics/hapticsserver/group"/>
</component>
<component id="hapticsclient" name="Haptics Client" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/hwrmhaptics/hapticsclient/group"/>
</component>
<component id="hwrmhaptics_build" name="HWRM Haptics Build" filter="s60" target="device" purpose="optional">
<!-- move these exports into the appropriate above components and delete this component-->
<unit bldFile="/os/devicesrv/hwrmhaptics/group"/>
</component>
</collection>
<collection id="mediator" name="Mediator" level="app-if">
<!--collection is really a component. Move it down a directory -->
<component id="mediator_build" name="Mediator Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/mediator/group"/>
</component>
</collection>
<collection id="psmservices" name="Power Save Mode Services" level="app-if">
<component id="psmserver" name="PSM Server" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/psmservices/psmserver/group"/>
</component>
</collection>
<collection id="resourcemgmt" name="Resource Management" level="hw-if">
<component id="hwrmfmtxwatcherplugin" name="HWRM FM Transmitter Watcher Plugin" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/resourcemgmt/hwrmfmtxwatcherplugin/group"/>
</component>
<component id="hwrmtargetmodifierplugin" name="HWRM Target Modifier Plugin" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/resourcemgmt/hwrmtargetmodifierplugin/group"/>
</component>
<component id="vibractrl" name="Vibra Control" deprecated="9.1" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/resourcemgmt/vibractrl/group"/>
</component>
<component id="hwresourcesmgr" name="Hardware Resources Manager" introduced="^2" purpose="optional" target="device">
<unit bldFile="/os/devicesrv/resourcemgmt/hwresourcesmgr/group" mrp="/os/devicesrv/resourcemgmt/hwresourcesmgr/group/telephony_hwrm.mrp"/>
</component>
<component id="hwresourcesmgrconfig" name="Hardware Resources Manager Config" introduced="^3" purpose="optional" class="config" target="device">
<unit bldFile="/os/devicesrv/resourcemgmt/hwresourcesmgrconfig" mrp="/os/devicesrv/resourcemgmt/hwresourcesmgrconfig/telephony_hwrm-config.mrp"/>
</component>
<component id="resourcemgmt_data" name="Resource Management Data" filter="s60" class="config" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/resourcemgmt/data"/>
</component>
<component id="powerandmemorynotificationservice" name="Power and Memory Notification Service" introduced="6.0" purpose="mandatory" target="device">
<unit bldFile="/os/devicesrv/resourcemgmt/powerandmemorynotificationservice/group" mrp="/os/devicesrv/resourcemgmt/powerandmemorynotificationservice/group/syslibs_pwrcli.mrp"/>
</component>
</collection>
<collection id="sysstatemgmt" name="System State Management" level="server">
<component id="ssmmapperutility" name="SSM Mapper Utility" introduced="^3" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/sysstatemgmt/ssmmapperutility/group"/>
</component>
<component id="ssmpolicyplugins" name="SSM Policy Plugins" introduced="^3" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/sysstatemgmt/ssmpolicyplugins/group"/>
</component>
<component id="ssmutilityplugins" name="SSM Utility Plugins" introduced="^3" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/sysstatemgmt/ssmutilityplugins/group"/>
</component>
<component id="ssmcmdlists" name="SSM Command Lists" introduced="^3" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/sysstatemgmt/ssmcmdlists/group"/>
</component>
<component id="ssmcustcmds" name="SSM Custom Commands" introduced="^3" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/sysstatemgmt/ssmcustcmds/group"/>
</component>
<component id="syslangutil" name="System Language Utility" introduced="^3" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/sysstatemgmt/syslangutil/group"/>
</component>
<component id="sysrestart" name="System Restart" introduced="^3" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/sysstatemgmt/sysrestart/group"/>
</component>
<component id="sysuiprovider" name="System UI Provider" introduced="^3" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/devicesrv/sysstatemgmt/sysuiprovider/group"/>
</component>
<component id="systemstarter" name="System Starter" introduced="9.1" deprecated="^3" purpose="mandatory" target="device">
<unit bldFile="/os/devicesrv/sysstatemgmt/systemstarter/group" mrp="/os/devicesrv/sysstatemgmt/systemstarter/group/app-framework_sysstart.mrp"/>
</component>
<component id="systemstatemgr" name="System State Manager" introduced="^3" purpose="mandatory" target="device">
<unit bldFile="/os/devicesrv/sysstatemgmt/systemstatemgr/group" mrp="/os/devicesrv/sysstatemgmt/systemstatemgr/group/app-framework_ssma.mrp"/>
</component>
<component id="systemstateplugins" name="System State Plugins" introduced="^3" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/devicesrv/sysstatemgmt/systemstateplugins/group" mrp="/os/devicesrv/sysstatemgmt/systemstateplugins/group/app-framework_ssplugins.mrp"/>
</component>
<component id="systemstatereferenceplugins" name="System State Reference Plugins" introduced="^3" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/devicesrv/sysstatemgmt/systemstatereferenceplugins/group" mrp="/os/devicesrv/sysstatemgmt/systemstatereferenceplugins/group/app-framework_ssrefplugins.mrp"/>
</component>
</collection>
<collection id="resourceinterfaces" name="Resource Interfaces" level="hw-if">
<component id="fmtransmittercontrol" name="FM Transmitter Control" introduced="^3" purpose="optional" target="device">
<unit bldFile="/os/devicesrv/resourceinterfaces/fmtransmittercontrol/group" mrp="/os/devicesrv/resourceinterfaces/fmtransmittercontrol/group/telephony_hwrmfmtx.mrp"/>
</component>
</collection>
<collection id="systemhealthmanagement" name="System Health Management" level="server">
<component id="systemhealthmgr" name="System Health Manager" introduced="^3" purpose="optional" target="device">
<unit bldFile="/os/devicesrv/systemhealthmanagement/systemhealthmgr/group" mrp="/os/devicesrv/systemhealthmanagement/systemhealthmgr/group/app-framework_shma.mrp"/>
</component>
</collection>
<collection id="devicesrvapitest" name="Devices Services API Tests" level="app-if">
</collection>
<collection id="devicesrv_info" name="Device Services Info" level="app-if">
<component id="devicesrv_metadata" name="Device Services Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/os/devicesrv/devicesrv_info/devicesrv_metadata/devicesrv_metadata.mrp"/>
</component>
</collection>
</package>
<package id="security" level="services" tech-domain="se" levels="physical-abstraction plugins libraries management services utilities" name="OS Security">
<collection id="authenticationservices" name="Authentication Services" level="utilities">
<component id="authenticationserver" name="Authentication Server" introduced="^4" purpose="optional" target="device">
<unit bldFile="/os/security/authenticationservices/authenticationserver/group" mrp="/os/security/authenticationservices/authenticationserver/group/security_authserver.mrp"/>
</component>
</collection>
<collection id="authorisation" name="Authorisation" level="utilities">
<component id="userpromptservice" name="User Prompt Service" introduced="^3" purpose="mandatory" target="device">
<unit bldFile="/os/security/authorisation/userpromptservice/group" mrp="/os/security/authorisation/userpromptservice/group/security_ups.mrp"/>
</component>
<component id="userpromptutils" name="User Prompt Utils" introduced="^3" purpose="optional" target="device">
<unit bldFile="/os/security/authorisation/userpromptutils/group" mrp="/os/security/authorisation/userpromptutils/group/security_ups_utils.mrp"/>
</component>
</collection>
<collection id="contentmgmt" name="Content Management" level="utilities">
<component id="contentaccessfwfordrm" name="Content Access Framework for DRM" introduced="9.1" purpose="mandatory" target="device">
<unit bldFile="/os/security/contentmgmt/contentaccessfwfordrm/group" mrp="/os/security/contentmgmt/contentaccessfwfordrm/group/security_caf2.mrp"/>
</component>
<component id="cafrecogniserconfig" name="CAF Recogniser Config" introduced="9.1" purpose="mandatory" target="device">
<unit bldFile="/os/security/contentmgmt/cafrecogniserconfig" mrp="/os/security/contentmgmt/cafrecogniserconfig/security_reccafconfig.mrp"/>
</component>
<component id="referencedrmagent" name="Reference DRM Agent" introduced="8.0" purpose="development" target="device">
<unit bldFile="/os/security/contentmgmt/referencedrmagent/RefTestAgent/group" mrp="/os/security/contentmgmt/referencedrmagent/RefTestAgent/group/security_rta.mrp"/>
</component>
<component id="cafstreamingsupport" name="CAF Streaming Support" introduced="^3" purpose="optional" target="device">
<unit bldFile="/os/security/contentmgmt/cafstreamingsupport/group" mrp="/os/security/contentmgmt/cafstreamingsupport/group/security_streamingcaf.mrp"/>
</component>
</collection>
<collection id="crypto" name="Crypto Libraries" level="libraries">
<component id="weakcryptospi" name="Weak Crypto SPI" introduced="^3" filter="gt" purpose="optional" target="device">
<unit bldFile="/os/security/crypto/weakcryptospi/group" mrp="/os/security/crypto/weakcryptospi/group/security_cryptospi_weak.mrp"/>
</component>
<component id="strongcryptospi" name="Strong Crypto SPI" introduced="^3" filter="gt" purpose="optional" target="device">
<unit bldFile="/os/security/crypto/weakcryptospi/strong" mrp="/os/security/crypto/weakcryptospi/group/security_cryptospi_strong.mrp"/>
</component>
</collection>
<collection id="cryptomgmtlibs" name="Crypto Management Libraries" level="management">
<component id="securityutils" name="Security Utils" introduced="8.0" purpose="optional" target="device">
<unit bldFile="/os/security/cryptomgmtlibs/securityutils/group" mrp="/os/security/cryptomgmtlibs/securityutils/group/security_common.mrp"/>
</component>
<component id="securitydocs" name="Security Documentation" purpose="development" class="doc" target="device">
<unit mrp="/os/security/cryptomgmtlibs/securitydocs/security_documentation.mrp"/>
</component>
<component id="cryptotokenfw" name="Crypto Token Framework" introduced="7.0" purpose="optional" target="device">
<unit bldFile="/os/security/cryptomgmtlibs/cryptotokenfw/group" mrp="/os/security/cryptomgmtlibs/cryptotokenfw/group/security_cryptotokens.mrp"/>
</component>
<component id="securitycommonutils" name="Security Common Utils" introduced="8.0" purpose="mandatory" target="device">
<unit bldFile="/os/security/cryptomgmtlibs/securitycommonutils/group" mrp="/os/security/cryptomgmtlibs/securitycommonutils/group/security_commonutils.mrp"/>
</component>
</collection>
<collection id="securityanddataprivacytools" name="Security and Data Privacy Tools" level="services">
<component id="securityconfig" name="Security Config" introduced="9.1" purpose="optional" target="device">
<unit bldFile="/os/security/securityanddataprivacytools/securityconfig/group" mrp="/os/security/securityanddataprivacytools/securityconfig/group/security_config.mrp"/>
</component>
<component id="securitytools" name="Security Tools" introduced="^3" target="desktop" purpose="optional">
<unit bldFile="/os/security/securityanddataprivacytools/securitytools/group" mrp="/os/security/securityanddataprivacytools/securitytools/group/security_tools.mrp"/>
</component>
</collection>
<collection id="cryptoplugins" name="Crypto Plugins" level="plugins">
<component id="cryptospiplugins" name="Crypto SPI Plugins" introduced="^3" filter="gt" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/security/cryptoplugins/cryptospiplugins/group" mrp="/os/security/cryptoplugins/cryptospiplugins/group/security_cryptospi_plugins.mrp"/>
</component>
</collection>
<collection id="cryptoservices" name="Crypto Services" level="plugins">
<component id="certificateandkeymgmt" name="Certificate and Key Management" introduced="6.0" purpose="optional" target="device">
<unit bldFile="/os/security/cryptoservices/certificateandkeymgmt/group" mrp="/os/security/cryptoservices/certificateandkeymgmt/group/security_certman.mrp"/>
</component>
<component id="filebasedcertificateandkeystores" name="File-based Certificate and Key Stores" introduced="8.0" purpose="optional" target="device">
<unit bldFile="/os/security/cryptoservices/filebasedcertificateandkeystores/group" mrp="/os/security/cryptoservices/filebasedcertificateandkeystores/group/security_filetokens.mrp"/>
</component>
<component id="rootcertificates" name="Root Certificates" introduced="7.0s" filter="sf_build" purpose="optional" target="device">
<unit bldFile="/os/security/cryptoservices/rootcertificates/group" mrp="/os/security/cryptoservices/rootcertificates/group/rootcerts.mrp"/>
</component>
<component id="browserrootcertificates" name="Browser Root Certificates" introduced="^2" filter="sf_build" purpose="optional" target="device">
<unit mrp="/os/security/cryptoservices/browserrootcertificates/browserrootcerts.mrp"/>
</component>
<component id="asnpkcs" name="ASN PKCS" introduced="8.0" purpose="optional" target="device">
<unit bldFile="/os/security/cryptoservices/asnpkcs/group" mrp="/os/security/cryptoservices/asnpkcs/group/security_asnpkcs.mrp"/>
</component>
</collection>
<collection id="security_info" name="OS Security Info" level="utilities">
<component id="security_metadata" name="OS Security Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/os/security/security_info/security_metadata/security_metadata.mrp"/>
</component>
</collection>
</package>
<package id="lbs" level="services" tech-domain="lo" levels="hw-if data-acquisition adaptation management application-interface" name="Locating Services">
<collection id="datasourcemodules" name="Generic Positioning Plugins" level="data-acquisition">
<component id="defaultpositioningmodule" name="Default Positioning Module" introduced="^2" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/lbs/datasourcemodules/defaultpositioningmodule/group" mrp="/os/lbs/datasourcemodules/defaultpositioningmodule/group/lbs_default_positioning_module.mrp"/>
</component>
<component id="bluetoothgpspositioningmodule" name="Bluetooth GPS Positioning Module" introduced="^2" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/lbs/datasourcemodules/bluetoothgpspositioningmodule/group" mrp="/os/lbs/datasourcemodules/bluetoothgpspositioningmodule/group/lbs_bt_positioning_module.mrp"/>
</component>
<component id="simulationpositioningmodule" name="Simulation Positioning Module" introduced="^2" purpose="development" class="plugin" target="device">
<unit bldFile="/os/lbs/datasourcemodules/simulationpositioningmodule/group" mrp="/os/lbs/datasourcemodules/simulationpositioningmodule/group/lbs_simulation_positioning_module.mrp"/>
</component>
<component id="gpspositioningmodule" name="GPS/A-GPS Positioning Module" introduced="^3" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/lbs/datasourcemodules/gpspositioningmodule/group" mrp="/os/lbs/datasourcemodules/gpspositioningmodule/group/lbs_agps_positioning_module.mrp"/>
</component>
<component id="networkpositioningmodule" name="Network Positioning Module" introduced="^3" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/lbs/datasourcemodules/networkpositioningmodule/group" mrp="/os/lbs/datasourcemodules/networkpositioningmodule/group/lbs_network_positioning_module.mrp"/>
</component>
<component id="locationapesuplpsy" name="APE SUPL Positioning Module" introduced="^3" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/lbs/datasourcemodules/locationapesuplpsy/group" mrp="/os/lbs/datasourcemodules/locationapesuplpsy/group/lbs_ape_supl_positioning_module.mrp"/>
</component>
</collection>
<collection id="datasourceadaptation" name="Data Source Adaptation" level="adaptation">
<component id="gpsdatasourceadaptation" name="GPS Data Source Adaptation" introduced="^2" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/lbs/datasourceadaptation/gpsdatasourceadaptation/group" mrp="/os/lbs/datasourceadaptation/gpsdatasourceadaptation/group/lbs_gps_data_source_adaptation.mrp"/>
</component>
</collection>
<collection id="locationrequestmgmt" name="Location Request Management" level="application-interface">
<component id="locationserver" name="Location Server" introduced="9.2" purpose="optional" target="device">
<unit bldFile="/os/lbs/locationrequestmgmt/locationserver/group" mrp="/os/lbs/locationrequestmgmt/locationserver/group/lbs_locationserver.mrp"/>
</component>
<component id="networkrequesthandler" name="Network Request Handler" introduced="9.2" purpose="optional" target="device">
<unit bldFile="/os/lbs/locationrequestmgmt/networkrequesthandler/group" mrp="/os/lbs/locationrequestmgmt/networkrequesthandler/group/lbs_networkrequesthandler.mrp"/>
</component>
</collection>
<collection id="lbstest" name="Locating Services Tests" level="application-interface">
<component id="locationprotocoltest" name="Location Protocol Tests" introduced="9.2" purpose="development" class="plugin" target="device">
<unit bldFile="/os/lbs/lbstest/locationprotocoltest/group" mrp="/os/lbs/lbstest/locationprotocoltest/group/lbs_networktest.mrp"/>
</component>
</collection>
<collection id="locationmgmt" name="Location Management" level="management">
<component id="locmonitor" name="Location Monitor" introduced="^3" purpose="optional" target="device">
<unit bldFile="/os/lbs/locationmgmt/locmonitor/lbslocmonitorserver/group" mrp="/os/lbs/locationmgmt/locmonitor/lbslocmonitorserver/group/lbs_locationmonitor.mrp"/>
</component>
<component id="agpslocationmgr" name="A-GPS Location Manager" introduced="9.2" purpose="optional" target="device">
<unit bldFile="/os/lbs/locationmgmt/agpslocationmgr/group" mrp="/os/lbs/locationmgmt/agpslocationmgr/group/lbs_agpslocationmanager.mrp"/>
</component>
<component id="networklocationmgr" name="Network Location Manager" introduced="9.2" purpose="optional" target="device">
<unit bldFile="/os/lbs/locationmgmt/networklocationmgr/group" mrp="/os/lbs/locationmgmt/networklocationmgr/group/lbs_networklocationmanager.mrp"/>
</component>
<component id="locationcore" name="Location Core" introduced="9.2" purpose="optional" target="device">
<unit bldFile="/os/lbs/locationmgmt/locationcore/group" mrp="/os/lbs/locationmgmt/locationcore/group/lbs_admin.mrp"/>
</component>
<component id="networkgateway" name="Network Gateway" introduced="9.2" purpose="optional" target="device">
<unit bldFile="/os/lbs/locationmgmt/networkgateway/group" mrp="/os/lbs/locationmgmt/networkgateway/group/lbs_networkgateway.mrp"/>
</component>
</collection>
<collection id="networkprotocolmodules" name="Network Protocol Modules" level="adaptation">
<component id="privacyprotocolmodule" name="Privacy Protocol Module" introduced="^2" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/lbs/networkprotocolmodules/privacyprotocolmodule/group" mrp="/os/lbs/networkprotocolmodules/privacyprotocolmodule/group/lbs_privacyprotocolmodule.mrp"/>
</component>
<component id="networkpmutils" name="Network Protocol Module Utilities" introduced="^3" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/lbs/networkprotocolmodules/networkpmutils/group" mrp="/os/lbs/networkprotocolmodules/networkpmutils/group/lbs_networkpmutils.mrp"/>
</component>
<component id="suplpmcore" name="SUPL Protocol Module Core" introduced="^3" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/lbs/networkprotocolmodules/suplpmcore/group" mrp="/os/lbs/networkprotocolmodules/suplpmcore/group/lbs_suplpmcore.mrp"/>
</component>
<component id="networkpmasn1_pub" name="Network Protocol Module ASN1 Public Interfaces" introduced="^3" purpose="optional" class="api" target="device">
<unit bldFile="/os/lbs/networkprotocolmodules/networkpmasn1_pub/group" mrp="/os/lbs/networkprotocolmodules/networkpmasn1_pub/group/lbs_networkpmasn1_pub.mrp"/>
</component>
<component id="suplcontrolplaneprotocols" name="SUPL Control Plane Protocols" introduced="^3" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/lbs/networkprotocolmodules/suplcontrolplaneprotocols/group" mrp="/os/lbs/networkprotocolmodules/suplcontrolplaneprotocols/group/lbs_suplcontrolplaneprotocols.mrp"/>
</component>
<component id="suplproxyprotocolmodule" name="SUPL Proxy Protocol Module" introduced="^3" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/lbs/networkprotocolmodules/suplproxyprotocolmodule/group" mrp="/os/lbs/networkprotocolmodules/suplproxyprotocolmodule/group/lbs_suplproxyprotocolmodule.mrp"/>
</component>
<component id="suplprotocolmodule" name="SUPL Protocol Module" introduced="^2" deprecated="^2" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/lbs/networkprotocolmodules/suplprotocolmodule/group" mrp="/os/lbs/networkprotocolmodules/suplprotocolmodule/group/lbs_suplprotocolmodule.mrp"/>
</component>
</collection>
<collection id="lbsapitest" name="Location API Tests" level="application-interface">
</collection>
<collection id="lbs_info" name="Locating Services Info" level="application-interface">
<component id="lbs_metadata" name="Locating Services Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/os/lbs/lbs_info/lbs_metadata/lbs_metadata.mrp"/>
</component>
</collection>
</package>
<package id="commsfw" level="services" tech-domain="dc" levels="server support framework process app-if" name="Communications Framework">
<collection id="commsprocess" name="Comms Process" level="process">
<component id="commsrootserver" name="Comms Root Server" introduced="7.0s" purpose="mandatory" target="device">
<unit bldFile="/os/commsfw/commsprocess/commsrootserverconfig/group" mrp="/os/commsfw/commsprocess/commsrootserverconfig/group/comms-infras_rootserver.mrp"/>
</component>
</collection>
<collection id="commsconfig" name="Comms Config" level="process">
<component id="commsdatabase" name="Comms Database" purpose="mandatory" target="device">
<unit bldFile="/os/commsfw/commsfwtools/preparedefaultcommsdatabase/group" mrp="/os/commsfw/commsfwtools/preparedefaultcommsdatabase/group/comms-infras_commsdat.mrp"/>
</component>
<component id="commsdatabaseshim" name="Comms Database Shim" introduced="8.1" purpose="mandatory" target="device">
<unit bldFile="/os/commsfw/commsconfig/commsdatabaseshim/group" mrp="/os/commsfw/commsconfig/commsdatabaseshim/group/comms-infras_commdbshim.mrp"/>
</component>
</collection>
<collection id="datacommsserver" name="Data Comms Server" level="framework">
<component id="esockserver" name="ESock Server" purpose="mandatory" target="device">
<unit bldFile="/os/commsfw/datacommsserver/esockserver/group" mrp="/os/commsfw/datacommsserver/esockserver/group/comms-infras_esock.mrp" version="3"/>
</component>
<component id="networkingdialogapi" name="Networking Dialog API" introduced="6.1" purpose="optional" target="device">
<unit bldFile="/os/commsfw/datacommsserver/networkingdialogapi/group" mrp="/os/commsfw/datacommsserver/networkingdialogapi/group/networking_dialog.mrp"/>
</component>
<component id="networkingdialogstub" name="Networking Dialog Stub" introduced="6.1" purpose="optional" target="device">
<unit bldFile="/os/commsfw/datacommsserver/networkingdialogapi/default" mrp="/os/commsfw/datacommsserver/networkingdialogapi/default/networking_dialog_default.mrp"/>
</component>
<component id="networkcontroller" name="Network Controller" introduced="7.0s" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/commsfw/datacommsserver/networkcontroller/group" mrp="/os/commsfw/datacommsserver/networkcontroller/group/networking_netcon.mrp"/>
</component>
</collection>
<collection id="serialserver" name="Serial Server" level="server">
<component id="serialportcsy" name="Serial Port CSY" introduced="ER5" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/commsfw/serialserver/serialportcsy" mrp="/os/commsfw/serialserver/serialportcsy/ser-comms_serialportcsy.mrp"/>
</component>
<component id="packetloopbackcsy" name="Packet Loopback CSY" introduced="8.1" purpose="development" target="device">
<unit bldFile="/os/commsfw/serialserver/packetloopbackcsy/group" mrp="/os/commsfw/serialserver/packetloopbackcsy/group/PacketLoopbackCSY.mrp"/>
</component>
<component id="c32serialserver" name="C32 Serial Server" introduced="ER5" purpose="mandatory" target="device">
<unit bldFile="/os/commsfw/serialserver/c32serialserver/group" mrp="/os/commsfw/serialserver/c32serialserver/group/ser-comms_c32.mrp"/>
</component>
<component id="c32serialserverconfig" name="C32 Serial Server Config" introduced="ER5" purpose="mandatory" class="config" target="device">
<unit bldFile="/os/commsfw/serialserver/c32serialserverconfig" mrp="/os/commsfw/serialserver/c32serialserverconfig/ser-comms_c32-config.mrp"/>
</component>
<component id="c32serialserverdocs" name="C32 Serial Server Documentation" purpose="development" class="doc" target="device">
<unit mrp="/os/commsfw/serialserver/c32serialserverdocs/ser-comms_documentation.mrp"/>
</component>
</collection>
<collection id="commsfwutils" name="Comms Framework Utilities" level="framework">
<component id="commsbufs" name="Comms Buffers" introduced="^3" purpose="mandatory" target="device">
<unit bldFile="/os/commsfw/commsfwutils/commsbufs/group" mrp="/os/commsfw/commsfwutils/commsbufs/group/comms-infras_commsbufs.mrp"/>
</component>
</collection>
<collection id="commsfw_info" name="Comms Framework Info" level="app-if">
<component id="commsinfrastructuredocs" name="Comms Infrastructure Documentation" introduced="7.0" purpose="development" class="doc" target="device">
<unit mrp="/os/commsfw/commsfw_info/commsinfrastructuredocs/comms-infras_documentation.mrp"/>
</component>
<component id="commsfw_metadata" name="Communications Framework Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/os/commsfw/commsfw_info/commsfw_metadata/commsfw_metadata.mrp"/>
</component>
</collection>
<collection id="commsfwsupport" name="Comms Framework Support" level="support">
<component id="commselements" name="Comms Elements" introduced="8.0" purpose="mandatory" target="device">
<unit bldFile="/os/commsfw/commsfwsupport/commselements/group" mrp="/os/commsfw/commsfwsupport/commselements/group/comms-infras_elements.mrp"/>
</component>
</collection>
<collection id="commsinfrastructureapitest" name="Comms-Infras API Tests" level="app-if">
<component id="commsinfrastructuresvs" name="Comms Infrastructure Verification Suite" introduced="^3" purpose="development" target="device">
<unit mrp="/os/commsfw/commsinfrastructureapitest/commsinfrastructuresvs/group/commsinfrastructuresvs.mrp"/>
</component>
</collection>
<collection id="commsfwtools" name="Comms Framework Tools" level="app-if">
<component id="preparedefaultcommsdatabase" name="Prepare Default Comms Database" filter="gt" target="desktop" purpose="mandatory" class="config">
<unit bldFile="/os/commsfw/commsfwtools/preparedefaultcommsdatabase/defaultcommdb/group" mrp="/os/commsfw/commsfwtools/preparedefaultcommsdatabase/defaultcommdb/group/comms-infras_defaultcommdb.mrp"/>
</component>
<component id="installdefaultcommsdatabase" name="Install Default Comms Database" target="desktop" purpose="mandatory">
<unit bldFile="/os/commsfw/commsfwtools/preparedefaultcommsdatabase/installdefaultcommdb/group" mrp="/os/commsfw/commsfwtools/preparedefaultcommsdatabase/installdefaultcommdb/group/comms-infras_installdefaultcommdb.mrp" priority="1010"/>
</component>
<component id="commstools" name="Comms Tools" introduced="^3" target="desktop" purpose="development">
<unit bldFile="/os/commsfw/commsfwtools/commstools/group" mrp="/os/commsfw/commsfwtools/commstools/group/comms-infras_tools.mrp"/>
</component>
</collection>
</package>
<package id="networkingsrv" level="services" tech-domain="dc" levels="adaptation hw-if plugin framework server app-if" name="Networking Services">
<collection id="esockapiextensions" name="ESock API Extensions" level="app-if">
<component id="internetsockets" name="Internet Sockets" introduced="ER5" purpose="mandatory" target="device">
<unit bldFile="/os/networkingsrv/esockapiextensions/internetsockets/group" mrp="/os/networkingsrv/esockapiextensions/internetsockets/group/networking_insock.mrp"/>
</component>
</collection>
<collection id="tcpiputils" name="TCP/IP Utilities" level="plugin">
<component id="dnd" name="DND" introduced="7.0" purpose="mandatory" target="device">
<unit bldFile="/os/networkingsrv/tcpiputils/dnd/group" mrp="/os/networkingsrv/tcpiputils/dnd/group/networking_dnd.mrp"/>
</component>
<component id="dhcp" name="DHCP" introduced="8.0" purpose="optional" target="device">
<unit bldFile="/os/networkingsrv/tcpiputils/dhcp/group" mrp="/os/networkingsrv/tcpiputils/dhcp/group/networking_dhcp.mrp"/>
</component>
<component id="networkaddressandporttranslation" name="Network Address and Port Translation" introduced="^2" purpose="mandatory" class="plugin" target="device">
<unit bldFile="/os/networkingsrv/tcpiputils/networkaddressandporttranslation/group" mrp="/os/networkingsrv/tcpiputils/networkaddressandporttranslation/group/networking_napt.mrp"/>
</component>
<component id="punycodeconv" name="Punycode Converter" introduced="^3" purpose="mandatory" target="device">
<unit bldFile="/os/networkingsrv/tcpiputils/punycodeconv/group" mrp="/os/networkingsrv/tcpiputils/punycodeconv/group/networking_punycodeconverter.mrp"/>
</component>
</collection>
<collection id="linklayercontrol" name="Link Layer Control" level="hw-if">
<component id="nullagt" name="NULL AGT" introduced="7.0s" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/networkingsrv/linklayercontrol/nullagt/group" mrp="/os/networkingsrv/linklayercontrol/nullagt/group/networking_nullagt.mrp"/>
</component>
<component id="genericscprparameters" name="Generic SCPR Parameters" introduced="^3" purpose="optional" target="device">
<unit bldFile="/os/networkingsrv/linklayercontrol/genericscprparameters/group" mrp="/os/networkingsrv/linklayercontrol/genericscprparameters/group/networking_genericscprparams.mrp"/>
</component>
<component id="mbmsparameters" name="MBMS Parameters" introduced="^3" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/networkingsrv/linklayercontrol/mbmsparameters/group" mrp="/os/networkingsrv/linklayercontrol/mbmsparameters/group/networking_mbmsparams.mrp"/>
</component>
<component id="networkinterfacemgr" name="Network Interface Manager" introduced="ER5U" purpose="mandatory" target="device">
<unit bldFile="/os/networkingsrv/linklayercontrol/networkinterfacemgr/group" mrp="/os/networkingsrv/linklayercontrol/networkinterfacemgr/group/comms-infras_nifman.mrp" version="2"/>
</component>
</collection>
<collection id="linklayerprotocols" name="Link Layer Protocols" level="hw-if">
<component id="ethernetnif" name="Ethernet NIF" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/networkingsrv/linklayerprotocols/ethernetnif/group" mrp="/os/networkingsrv/linklayerprotocols/ethernetnif/group/networking_ether802.mrp"/>
</component>
<component id="pppnif" name="PPP NIF" introduced="ER5" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/networkingsrv/linklayerprotocols/pppnif/group" mrp="/os/networkingsrv/linklayerprotocols/pppnif/group/networking_ppp.mrp" version="2"/>
</component>
<component id="slipnif" name="SLIP NIF" purpose="development" class="plugin" target="device">
<unit bldFile="/os/networkingsrv/linklayerprotocols/slipnif/group" mrp="/os/networkingsrv/linklayerprotocols/slipnif/group/networking_slip.mrp"/>
</component>
<component id="tunnelnif" name="Tunnel NIF" introduced="7.0s" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/networkingsrv/linklayerprotocols/tunnelnif/group" mrp="/os/networkingsrv/linklayerprotocols/tunnelnif/group/networking_tunnelnif.mrp"/>
</component>
</collection>
<collection id="linklayerutils" name="Link Layer Utilities" level="hw-if">
<component id="packetlogger" name="Packet Logger" introduced="8.1" purpose="development" target="device">
<unit bldFile="/os/networkingsrv/linklayerutils/packetlogger/group" mrp="/os/networkingsrv/linklayerutils/packetlogger/group/networking_packetlogger.mrp"/>
</component>
</collection>
<collection id="networkcontrol" name="Network Control" level="plugin">
<component id="qoslib" name="QoS Library" introduced="7.0s" purpose="optional" target="device">
<unit bldFile="/os/networkingsrv/networkcontrol/qoslib/group" mrp="/os/networkingsrv/networkcontrol/qoslib/group/networking_qoslib.mrp"/>
</component>
<component id="pfqoslib" name="PF QoS Library" introduced="7.0s" purpose="optional" target="device">
<unit bldFile="/os/networkingsrv/networkcontrol/pfqoslib/group" mrp="/os/networkingsrv/networkcontrol/pfqoslib/group/networking_pfqoslib.mrp"/>
</component>
<component id="qosfwprt" name="QoS Framework PRT" introduced="7.0s" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/networkingsrv/networkcontrol/qosfwconfig/qos/group" mrp="/os/networkingsrv/networkcontrol/qosfwconfig/qos/group/networking_qos.mrp"/>
</component>
<component id="qosipscpr" name="QoS IP SCPR" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/networkingsrv/networkcontrol/qosipscpr/group" mrp="/os/networkingsrv/networkcontrol/qosipscpr/group/networking_qosipscpr.mrp"/>
</component>
<component id="ipnetworklayer" name="IP Network Layer" introduced="^3" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/networkingsrv/networkcontrol/ipnetworklayer/group" mrp="/os/networkingsrv/networkcontrol/ipnetworklayer/group/networking_ipproto.mrp"/>
</component>
<component id="iptransportlayer" name="IP Transport Layer" introduced="^3" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/networkingsrv/networkcontrol/iptransportlayer/group" mrp="/os/networkingsrv/networkcontrol/iptransportlayer/group/networking_iptransport.mrp"/>
</component>
<component id="commsuserpromptmgr" name="Comms User Prompt Manager" introduced="^3" purpose="mandatory" target="device">
<unit bldFile="/os/networkingsrv/networkcontrol/commsuserpromptmgr/group" mrp="/os/networkingsrv/networkcontrol/commsuserpromptmgr/group/networking_netups.mrp"/>
</component>
</collection>
<collection id="networkprotocols" name="Network Protocols" level="plugin">
<component id="ipeventnotifier" name="IP Event Notifier" introduced="8.1" purpose="mandatory" class="plugin" target="device">
<unit bldFile="/os/networkingsrv/networkprotocols/ipeventnotifier/group" mrp="/os/networkingsrv/networkprotocols/ipeventnotifier/group/networking_ipeventnotifier.mrp"/>
</component>
<component id="tcpipv4v6prt" name="TCP/IPv4/v6 PRT" introduced="7.0" purpose="mandatory" class="plugin" target="device">
<unit bldFile="/os/networkingsrv/networkprotocols/tcpipv4v6prt/group" mrp="/os/networkingsrv/networkprotocols/tcpipv4v6prt/group/networking_tcpip6.mrp"/>
</component>
<component id="iphook" name="IP Hook" introduced="7.0" purpose="mandatory" target="device">
<unit bldFile="/os/networkingsrv/networkprotocols/iphook/inhook6/group" mrp="/os/networkingsrv/networkprotocols/iphook/inhook6/group/networking_inhook6.mrp"/>
</component>
<component id="mobileip" name="Mobile IP" introduced="8.1" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/networkingsrv/networkprotocols/mobileip/group" mrp="/os/networkingsrv/networkprotocols/mobileip/group/networking_mobileip.mrp"/>
</component>
<component id="dnsproxy" name="DNS Proxy" introduced="^3" purpose="optional" target="device">
<unit bldFile="/os/networkingsrv/networkprotocols/dnsproxy/group" mrp="/os/networkingsrv/networkprotocols/dnsproxy/group/networking_dnsproxy.mrp"/>
</component>
</collection>
<collection id="networksecurity" name="Network Security" level="framework">
<component id="tls" name="TLS" introduced="6.0" purpose="mandatory" target="device">
<unit bldFile="/os/networkingsrv/networksecurity/tls/group" mrp="/os/networkingsrv/networksecurity/tls/group/networking_tls.mrp"/>
</component>
<component id="tlsprovider" name="TLS Provider" introduced="8.1" purpose="mandatory" target="device">
<unit bldFile="/os/networkingsrv/networksecurity/tlsprovider/group" mrp="/os/networkingsrv/networksecurity/tlsprovider/group/security_tlsprovider.mrp"/>
</component>
<component id="ipsec" name="IPsec" introduced="7.0" purpose="optional" target="device">
<unit bldFile="/os/networkingsrv/networksecurity/ipsec/group" mrp="/os/networkingsrv/networksecurity/ipsec/group/networking_ipsec.mrp"/>
</component>
</collection>
<collection id="networkingtestandutils" name="Networking Test and Utils" level="app-if">
<component id="networkingexamples" name="Networking Examples" introduced="7.0" purpose="development" target="device">
<unit bldFile="/os/networkingsrv/networkingtestandutils/networkingexamples/examplecode/group" mrp="/os/networkingsrv/networkingtestandutils/networkingexamples/examplecode/group/networking_examplecode.mrp"/>
</component>
</collection>
<collection id="networkingsrv_info" name="Networking Services Info" level="app-if">
<component id="networkingrom" name="Networking ROM" purpose="mandatory" target="device">
<!-- 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 id="networkingdocs" name="Networking Documentation" purpose="development" class="doc" target="device">
<unit mrp="/os/networkingsrv/networkingsrv_info/networkingdocs/networking_documentation.mrp"/>
</component>
<component id="networkingsrv_metadata" name="Networking Services Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/os/networkingsrv/networkingsrv_info/networkingsrv_metadata/networkingsrv_metadata.mrp"/>
</component>
</collection>
<collection id="pppcompressionplugins" name="PPP Compression Plugins" level="plugin">
<component id="predictorcompression" name="Predictor Compression" introduced="6.0" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/networkingsrv/pppcompressionplugins/predictorcompression/group" mrp="/os/networkingsrv/pppcompressionplugins/predictorcompression/group/networking_predcomp.mrp"/>
</component>
</collection>
</package>
<package id="wlan" level="services" tech-domain="dc" levels="hw low mid high tools test" name="WLAN">
<collection id="wlan_plat" name="WLAN Platform Interfaces" level="test">
<component id="wlan_dbif_api" name="WLAN DBIF API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/wlan/wlan_plat/wlan_dbif_api/group"/>
</component>
<component id="wlan_hal_api" name="WLAN HAL API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/wlan/wlan_plat/wlan_hal_api/group"/>
</component>
<component id="wlan_management_api" name="WLAN Management API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/wlan/wlan_plat/wlan_management_api/group"/>
</component>
<component id="wlan_device_settings_api" name="WLAN Device Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/wlan/wlan_plat/wlan_device_settings_api/group"/>
</component>
<component id="wlan_control_api" name="WLAN Control API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/wlan/wlan_plat/wlan_control_api/group"/>
</component>
<component id="wlan_hw_initialization_data_api" name="WLAN Hardware Initialization Data API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/wlan/wlan_plat/wlan_hw_initialization_data_api/group"/>
</component>
<component id="wlan_power_save_plugin_api" name="WLAN Power Save Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/wlan/wlan_plat/wlan_power_save_plugin_api/group"/>
</component>
<component id="wlan_info_api" name="WLAN Info API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/wlan/wlan_plat/wlan_info_api/group"/>
</component>
<component id="wlan_agent_hotspot_plugin_api" name="WLAN Agent Hotspot Plug-in API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/wlan/wlan_plat/wlan_agent_hotspot_plugin_api/group"/>
</component>
<component id="wlan_osa_api" name="WLAN OSA API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/wlan/wlan_plat/wlan_osa_api/group"/>
</component>
<component id="wlan_busaccess_api" name="WLAN Bus Access API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/wlan/wlan_plat/wlan_busaccess_api/group"/>
</component>
<component id="wlan_hpa_api" name="WLAN HPA API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/wlan/wlan_plat/wlan_hpa_api/group"/>
</component>
<component id="wlan_eapol_plugin_api" name="WLAN EAPOL Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/wlan/wlan_plat/wlan_eapol_plugin_api/group"/>
</component>
<component id="wlan_generic_plugin_api" name="WLAN Generic Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/wlan/wlan_plat/wlan_generic_plugin_api/group"/>
</component>
<component id="wlan_aws_plugin_api" name="WLAN AWS Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/wlan/wlan_plat/wlan_aws_plugin_api/group"/>
</component>
</collection>
<collection id="wlan_pub" name="WLAN Public Interfaces" level="test">
<component id="wlan_sdk_info_api" name="WLAN SDK Info API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/wlan/wlan_pub/wlan_sdk_info_api/group"/>
</component>
</collection>
<collection id="wlan_bearer" name="WLAN Bearer" level="hw">
<component id="wlanpsmplugin" name="WLAN PSM Plugin" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/os/wlan/wlan_bearer/wlanpsmplugin/group"/>
</component>
<component id="wlanagent" name="WLAN Agent" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/wlan/wlan_bearer/wlanagent/group"/>
</component>
<component id="wlandbif_cd" name="WLAN CommsDat interface" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/wlan/wlan_bearer/wlandbif_cd/group"/>
</component>
<!-- should follow component directory rules for stuff in wlan_symbian/ and put in a single component or split up properly -->
<component id="wlanengine" name="WLAN Engine" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/wlan/wlan_bearer/wlanengine/wlan_symbian/wlanengine_symbian_3.1/group"/>
</component>
<component id="wlanldd" name="WLAN LDD" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/wlan/wlan_bearer/wlanldd/wlan_symbian/wlanldd_symbian/group"/>
</component>
<component id="wlannwif" name="WLAN Network Interface" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/wlan/wlan_bearer/wlannwif/group"/>
</component>
</collection>
</package>
<package id="cellularsrv" level="services" tech-domain="vc" levels="adaptation hw-if plugin framework server app-if" name="Cellular Baseband Services">
<meta rel="License" type="auto">
<license type="EPL">
<supplier>Nokia</supplier>
</license>
</meta>
<collection id="basebandabstraction" name="Baseband Abstraction" level="hw-if">
<component id="basebandchanneladaptor" name="Baseband Channel Adaptor" introduced="8.1" purpose="optional" target="device">
<unit bldFile="/os/cellularsrv/basebandabstraction/basebandchanneladaptor/group" mrp="/os/cellularsrv/basebandabstraction/basebandchanneladaptor/group/networking_bca.mrp"/>
</component>
</collection>
<collection id="basebandadaptationplugins" name="Baseband Adaptation Plugins" level="adaptation">
<component id="basebandchanneladaptorforc32" name="Baseband Channel Adaptor for C32" introduced="8.1" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/cellularsrv/basebandadaptationplugins/basebandchanneladaptorforc32/group" mrp="/os/cellularsrv/basebandadaptationplugins/basebandchanneladaptorforc32/group/networking_c32bca.mrp"/>
</component>
</collection>
<collection id="smsprotocols" name="SMS Protocols" level="framework">
<component id="smsstack" name="SMS Stack" introduced="6.0" purpose="mandatory" class="plugin" target="device">
<unit bldFile="/os/cellularsrv/smsprotocols/smsstack/group" mrp="/os/cellularsrv/smsprotocols/smsstack/group/nbprotocols_smsstackv2.mrp"/>
</component>
</collection>
<collection id="telephonyprotocols" name="Telephony Protocols" level="framework">
<component id="csdagt" name="CSD AGT" introduced="6.1" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/cellularsrv/telephonyprotocols/csdagt/group" mrp="/os/cellularsrv/telephonyprotocols/csdagt/group/networking_csdagt.mrp"/>
</component>
<component id="psdagt" name="PSD AGT" introduced="7.0s" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/cellularsrv/telephonyprotocols/psdagt/group" mrp="/os/cellularsrv/telephonyprotocols/psdagt/group/networking_psdagt.mrp"/>
</component>
<component id="gprsumtsqosprt" name="GPRS/UMTS QoS PRT" introduced="7.0s" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/cellularsrv/telephonyprotocols/gprsumtsqosprt/group" mrp="/os/cellularsrv/telephonyprotocols/gprsumtsqosprt/group/networking_guqos.mrp"/>
</component>
<component id="gprsumtsqosinterface" name="GPRS/UMTS QoS Interface" introduced="7.0s" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/cellularsrv/telephonyprotocols/gprsumtsqosinterface/group" mrp="/os/cellularsrv/telephonyprotocols/gprsumtsqosinterface/group/networking_umtsif.mrp"/>
</component>
<component id="qosextnapi" name="QoS Extn API" introduced="9.2" purpose="optional" target="device">
<unit bldFile="/os/cellularsrv/telephonyprotocols/qosextnapi/group" mrp="/os/cellularsrv/telephonyprotocols/qosextnapi/group/networking_qosextnapi.mrp"/>
</component>
<component id="qos3gppcpr" name="QoS 3GPP CPR" introduced="9.2" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/cellularsrv/telephonyprotocols/qos3gppcpr/group" mrp="/os/cellularsrv/telephonyprotocols/qos3gppcpr/group/networking_Qos3GPP.mrp"/>
</component>
<component id="pdplayer" name="PDP Layer" introduced="^3" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/cellularsrv/telephonyprotocols/pdplayer/group" mrp="/os/cellularsrv/telephonyprotocols/pdplayer/group/networking_pdp.mrp"/>
</component>
<component id="rawipnif" name="Raw IP NIF" introduced="8.1" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/cellularsrv/telephonyprotocols/rawipnif/group" mrp="/os/cellularsrv/telephonyprotocols/rawipnif/group/networking_rawipnif.mrp"/>
</component>
</collection>
<collection id="telephonyserver" name="Telephony Server" level="server">
<component id="etelserverandcore" name="ETel Server and Core" purpose="mandatory" target="device">
<unit bldFile="/os/cellularsrv/telephonyserver/etelserverandcore/group" mrp="/os/cellularsrv/telephonyserver/etelserverandcore/group/telephony_etel.mrp"/>
</component>
<component id="etelmultimode" name="ETel Multimode" introduced="7.0" purpose="mandatory" target="device">
<unit bldFile="/os/cellularsrv/telephonyserver/etelmultimode/group" mrp="/os/cellularsrv/telephonyserver/etelmultimode/group/telephony_etelmm.mrp"/>
</component>
<component id="etelpacketdata" name="ETel Packet Data" introduced="7.0" purpose="mandatory" target="device">
<unit bldFile="/os/cellularsrv/telephonyserver/etelpacketdata/group" mrp="/os/cellularsrv/telephonyserver/etelpacketdata/group/telephony_etelpckt.mrp"/>
</component>
<component id="etelsimtoolkit" name="ETel SIM Toolkit" introduced="6.1" purpose="mandatory" target="device">
<unit bldFile="/os/cellularsrv/telephonyserver/etelsimtoolkit/group" mrp="/os/cellularsrv/telephonyserver/etelsimtoolkit/group/telephony_etelsat.mrp"/>
</component>
</collection>
<collection id="telephonyserverplugins" name="Telephony Server Plugins" level="plugin">
<component id="common_tsy" name="Common TSY" introduced="^2" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/cellularsrv/telephonyserverplugins/common_tsy/group" mrp="/os/cellularsrv/telephonyserverplugins/common_tsy/group/telephony_commontsy.mrp"/>
</component>
<component id="licenseetsystub" name="Licensee TSY Stub" introduced="^2" filter="sf_build" purpose="development" class="plugin" target="device">
<unit bldFile="/os/cellularsrv/telephonyserverplugins/licenseetsystub/group" mrp="/os/cellularsrv/telephonyserverplugins/licenseetsystub/group/licenseetsystub.mrp"/>
</component>
<component id="multimodetsy" name="Multimode TSY" purpose="development" class="plugin" target="device">
<unit bldFile="/os/cellularsrv/telephonyserverplugins/multimodetsy/group" mrp="/os/cellularsrv/telephonyserverplugins/multimodetsy/group/telephony_mmtsy.mrp"/>
</component>
<component id="ctsydispatchlayer" name="C-TSY Dispatch Layer" introduced="^3" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/cellularsrv/telephonyserverplugins/ctsydispatchlayer/group" mrp="/os/cellularsrv/telephonyserverplugins/ctsydispatchlayer/group/telephony_dispatcher.mrp"/>
</component>
<component id="simatktsy" name="SIMATK TSY" introduced="^3" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/cellularsrv/telephonyserverplugins/simatktsy/group" mrp="/os/cellularsrv/telephonyserverplugins/simatktsy/group/commonsimatktsy.mrp"/>
</component>
</collection>
<collection id="telephonyutils" name="Telephony Utilities" level="app-if">
<component id="dial" name="Dial" deprecated="9.1" purpose="optional" target="device">
<unit bldFile="/os/cellularsrv/telephonyutils/dial/group" mrp="/os/cellularsrv/telephonyutils/dial/group/telephony_dial.mrp"/>
</component>
<component id="telephonywatchers" name="Telephony Watchers" introduced="6.0" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/cellularsrv/telephonyutils/telephonywatchers/group" mrp="/os/cellularsrv/telephonyutils/telephonywatchers/group/telephony_watchers.mrp"/>
</component>
<component id="etel3rdpartyapi" name="ETel 3rd Party API" introduced="7.0" purpose="mandatory" target="device">
<unit bldFile="/os/cellularsrv/telephonyutils/etel3rdpartyapi/Group" mrp="/os/cellularsrv/telephonyutils/etel3rdpartyapi/Group/telephony_etel3rdparty.mrp"/>
</component>
</collection>
<collection id="cellularsrv_info" name="Cellular Baseband Services Info" level="app-if">
<component id="telephonyconfidentialdocs" name="Telephony Confidential Documentation" purpose="development" class="doc" target="device">
<unit mrp="/os/cellularsrv/cellularsrv_info/telephonyconfidentialdocs/telephony_confidential.mrp"/>
</component>
<component id="telephonydocs" name="Telephony Documentation" purpose="development" class="doc" target="device">
<unit mrp="/os/cellularsrv/cellularsrv_info/telephonydocs/telephony_documentation.mrp"/>
</component>
<component id="cellularsrv_metadata" name="Cellular Baseband Services Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/os/cellularsrv/cellularsrv_info/cellularsrv_metadata/cellularsrv_metadata.mrp"/>
</component>
</collection>
<collection id="hwpluginsimulation" name="Hardware Plugin Simulation" level="adaptation">
<component id="mocksy" name="MockSY" introduced="^2" purpose="development" class="plugin" target="device">
<unit bldFile="/os/cellularsrv/hwpluginsimulation/mocksy/group" mrp="/os/cellularsrv/hwpluginsimulation/mocksy/group/telephony_tools_mocksy.mrp"/>
</component>
</collection>
<collection id="cellularsrvapitest" name="Telephony API Tests" level="app-if">
</collection>
<collection id="cbsref" name="CBS Reference" level="plugin">
</collection>
<collection id="wapstack" name="WAP Stack" level="plugin">
<component id="wapmessageapi" name="WAP Message API" purpose="optional" target="device">
<unit bldFile="/os/cellularsrv/wapstack/wapmessageapi/group" mrp="/os/cellularsrv/wapstack/wapmessageapi/group/wap-stack_wapmessage.mrp"/>
</component>
</collection>
</package>
<package id="bt" level="services" tech-domain="de" levels="adaptation hw-if plugin framework server app-if" name="Bluetooth">
<collection id="bt_plat" name="Bluetooth Platform Interfaces" level="app-if">
<component id="bluetooth_audio_adaptation_api" name="Bluetooth Audio Adaptation API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/bt/bt_plat/bluetooth_audio_adaptation_api/group"/>
</component>
<component id="bluetooth_power_management_api" name="Bluetooth Power Management API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/bt/bt_plat/bluetooth_power_management_api/group"/>
</component>
<component id="at_command_handler_plugin_api" name="AT Command Handler Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/bt/bt_plat/at_command_handler_plugin_api/group"/>
</component>
</collection>
<collection id="bluetooth" name="Bluetooth Core" level="framework">
<component id="btstack" name="Bluetooth Stack" introduced="6.0" purpose="optional" target="device">
<unit bldFile="/os/bt/bluetooth/btstack" mrp="/os/bt/bluetooth/btstack/bluetooth_stack.mrp"/>
</component>
<component id="btcomm" name="Bluetooth CSY" introduced="6.0" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/bt/bluetooth/btcomm" mrp="/os/bt/bluetooth/btcomm/bluetooth_btcomm.mrp"/>
</component>
<component id="btsdp" name="Bluetooth SDP" introduced="6.1" purpose="optional" target="device">
<unit bldFile="/os/bt/bluetooth/btsdp" mrp="/os/bt/bluetooth/btsdp/bluetooth_sdp.mrp"/>
</component>
<component id="btextnotifiers" name="Bluetooth Notifiers Support" introduced="6.1" purpose="optional" target="device">
<unit bldFile="/os/bt/bluetooth/btextnotifiers" mrp="/os/bt/bluetooth/btextnotifiers/bluetooth_btextnotifiers.mrp"/>
</component>
<component id="gavdp" name="Bluetooth GAVDP" introduced="8.1" purpose="optional" target="device">
<unit bldFile="/os/bt/bluetooth/gavdp/group" mrp="/os/bt/bluetooth/gavdp/group/bluetooth_gavdp.mrp"/>
</component>
<component id="btlogger" name="Bluetooth Logging Engine" introduced="9.2" purpose="optional" target="device">
<unit bldFile="/os/bt/bluetooth/btlogger/group" mrp="/os/bt/bluetooth/btlogger/group/bluetooth_logger.mrp"/>
</component>
<component id="btdocs" name="Bluetooth Documentation" purpose="development" class="doc" target="device">
<unit mrp="/os/bt/bluetooth/btdocs/bluetooth_documentation.mrp"/>
</component>
</collection>
<collection id="bluetoothmgmt" name="Bluetooth Management" level="plugin">
<component id="btmgr" name="Bluetooth Manager" introduced="6.0" purpose="optional" target="device">
<unit bldFile="/os/bt/bluetoothmgmt/btmgr" mrp="/os/bt/bluetoothmgmt/btmgr/bluetooth_manager.mrp"/>
</component>
<component id="btconfig" name="Bluetooth Config" purpose="optional" class="config" target="device">
<unit bldFile="/os/bt/bluetoothmgmt/btconfig" mrp="/os/bt/bluetoothmgmt/btconfig/bluetooth_config.mrp"/>
</component>
<component id="btrom" name="Bluetooth ROM" introduced="9.1" purpose="optional" target="device">
<unit bldFile="/os/bt/bluetoothmgmt/btrom" mrp="/os/bt/bluetoothmgmt/btrom/bluetooth_rom.mrp"/>
</component>
<component id="bluetoothclientlib" name="Bluetooth Client Library" introduced="6.0" purpose="optional" target="device">
<unit bldFile="/os/bt/bluetoothmgmt/bluetoothclientlib" mrp="/os/bt/bluetoothmgmt/bluetoothclientlib/bluetooth_user.mrp"/>
</component>
</collection>
<collection id="bluetoothcommsprofiles" name="Bluetooth Comms Profiles" level="app-if">
<component id="btpan" name="Bluetooth PAN Profile" introduced="8.1" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/bt/bluetoothcommsprofiles/btpan/group" mrp="/os/bt/bluetoothcommsprofiles/btpan/group/bluetooth_pan.mrp"/>
</component>
</collection>
<collection id="bthci" name="Host Controller Interface" level="server">
<component id="bthci2" name="Bluetooth HCI Framework 2" introduced="9.2" purpose="optional" target="device">
<unit bldFile="/os/bt/bthci/bthci2/group" mrp="/os/bt/bthci/bthci2/group/bluetooth_hci_v2_framework.mrp"/>
</component>
<component id="hciextensioninterface" name="Bluetooth HCI Extension Interface" introduced="6.1" purpose="optional" target="device">
<unit bldFile="/os/bt/bthci/hciextensioninterface" mrp="/os/bt/bthci/hciextensioninterface/bluetooth_hciproxy.mrp"/>
</component>
<component id="hci2implementations" name="Bluetooth HCI 2 Reference Implementations" introduced="9.2" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/bt/bthci/hci2implementations/group" mrp="/os/bt/bthci/hci2implementations/group/bluetooth_hci_v2_implementations.mrp"/>
</component>
</collection>
<collection id="irda" name="IrDA" level="plugin">
<component id="irdastack" name="IrDA Stack" purpose="optional" target="device">
<unit bldFile="/os/bt/irda/irdastack/group" mrp="/os/bt/irda/irdastack/group/infra-red_irda.mrp"/>
</component>
</collection>
<collection id="bluetoothapitest" name="Bluetooth API Tests" level="app-if">
</collection>
<collection id="atext" name="AT Extensions" level="server">
<!-- collection is really a component. Need to move down a directory -->
<component id="atext_build" name="AT Extension Build" introduced="^3" filter="s60" purpose="optional" target="device">
<unit bldFile="/os/bt/atext/group"/>
</component>
</collection>
<collection id="bt_info" name="Bluetooth Info" level="app-if">
<component id="bt_metadata" name="Bluetooth Metadata" introduced="^3" target="desktop" purpose="development" class="config">
<unit mrp="/os/bt/bt_info/bt_metadata/bt_metadata.mrp"/>
</component>
</collection>
<collection id="btsimulator" name="Bluetooth Simulator" level="internal-utils">
<component id="btaudioadaptation_stub" name="Bluetooth Audio Adaption Stub" introduced="^3" filter="s60" purpose="optional" target="device">
<unit bldFile="/os/bt/btsimulator/btaudioadaptation_stub/group"/>
</component>
</collection>
</package>
<package id="usb" level="services" tech-domain="de" levels="adaptation hw-if plugin framework server app-if" name="USB">
<collection id="usb_plat" name="USB Platform Interfaces" level="app-if">
<!-- placeholder for platform APIs -->
</collection>
<collection id="usbldd" name="USB Logical Device Drivers" level="hw-if">
<!-- usbclientdrivers to be moved here from kernelhwsrv-->
</collection>
<collection id="usbmgmt" name="USB Management" level="server">
<component id="usbmgr" name="USB Manager" purpose="optional" target="device">
<unit bldFile="/os/usb/usbmgmt/usbmgr/group" mrp="/os/usb/usbmgmt/usbmgr/group/usb_manager.mrp" version="2"/>
</component>
<component id="usbclassandmgrdocs" name="USB Class and Manager Documentation" purpose="development" class="doc" target="device">
<unit mrp="/os/usb/usbmgmt/usbclassandmgrdocs/usb_documentation.mrp"/>
</component>
</collection>
<collection id="usb_info" name="USB Info" level="app-if">
<component id="usb_metadata" name="USB Metadata" introduced="^3" target="desktop" purpose="development" class="config">
<unit mrp="/os/usb/usb_info/usb_metadata/usb_metadata.mrp"/>
</component>
</collection>
</package>
<package id="mm" level="services" tech-domain="mm" levels="adaptation hw-if device-fw devices middleware app-if" name="Multimedia">
<collection id="mm_pub" name="Multimedia Public Interfaces" level="app-if">
<component id="audio_effects_api" name="Audio Effects API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_pub/audio_effects_api/group" filter="!test"/>
</component>
<component id="audio_effects_presets_api" name="Audio Effects Presets API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_pub/audio_effects_presets_api/group" filter="!test"/>
</component>
<component id="drm_audio_player_api" name="DRM Audio Player API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_pub/drm_audio_player_api/group" filter="!test"/>
</component>
<component id="multimedia_extension_interfaces_api" name="Multimedia Extension Interfaces API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_pub/multimedia_extension_interfaces_api/group"/>
</component>
</collection>
<collection id="mm_plat" name="Multimedia Platform Interfaces" level="app-if">
<component id="aac_decoder_config_api" name="AAC Decoder Config API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/aac_decoder_config_api/group" filter="!test"/>
</component>
<component id="aac_decoder_config_msg_hdlr_api" name="AAC Decoder Config Msg Hdlr API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/aac_decoder_config_msg_hdlr_api/group"/>
</component>
<component id="aac_decoder_config_proxy_api" name="AAC Decoder Config Proxy API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/aac_decoder_config_proxy_api/group"/>
</component>
<component id="added_devsound_control_api" name="Added DevSound Control API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/added_devsound_control_api/group"/>
</component>
<component id="added_devsound_control_msg_hdlr_api" name="Added DevSound Control Msg Hdlr API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/added_devsound_control_msg_hdlr_api/group"/>
</component>
<component id="added_devsound_control_proxy_api" name="Added DevSound Control Proxy API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/added_devsound_control_proxy_api/group"/>
</component>
<component id="audio_effects_msg_hdlr_api" name="Audio Effects Message Handler API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/audio_effects_msg_hdlr_api/group"/>
</component>
<component id="audio_effects_proxy_api" name="Audio Effects Proxy API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/audio_effects_proxy_api/group"/>
</component>
<component id="audio_policy_header_api" name="Audio Policy Header API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/audio_policy_header_api/group"/>
</component>
<component id="audio_routing_api" name="Audio Routing API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/audio_routing_api/group" filter="!test"/>
</component>
<component id="audio_routing_msg_hdlr_api" name="Audio Routing Msg Hdlr API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/audio_routing_msg_hdlr_api/group"/>
</component>
<component id="audio_routing_proxy_api" name="Audio Routing Proxy API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/audio_routing_proxy_api/group"/>
</component>
<component id="custom_interface_builder_api" name="Custom Interface Builder API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/custom_interface_builder_api/group"/>
</component>
<component id="custom_interface_message_handler_factory_api" name="Custom Interface Message Handler Factory API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/custom_interface_message_handler_factory_api/group"/>
</component>
<component id="custom_interface_proxy_factory_api" name="Custom Interface Proxy Factory API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/custom_interface_proxy_factory_api/group"/>
</component>
<component id="custom_interface_utility_api" name="Custom Interface Utility API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/custom_interface_utility_api/group"/>
</component>
<component id="devsound_adaptation_api" name="DevSound Adaptation API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/devsound_adaptation_api/group"/>
</component>
<component id="display_posting_api" name="Display Posting API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/display_posting_api/group"/>
</component>
<component id="eaac_plus_decoder_interface_api" name="eAAC Plus Decoder Interface API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/eaac_plus_decoder_interface_api/group" filter="!test"/>
</component>
<component id="eaac_plus_decoder_interface_msg_hdlr_api" name="eAAC Plus Decoder Interface Message Handler API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/eaac_plus_decoder_interface_msg_hdlr_api/group"/>
</component>
<component id="eaac_plus_decoder_interface_proxy_api" name="eAAC Plus Decoder Interface Proxy API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/eaac_plus_decoder_interface_proxy_api/group"/>
</component>
<component id="error_concealment_interface_api" name="Error Concealment Interface API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/error_concealment_interface_api/group" filter="!test"/>
</component>
<component id="error_concealment_interface_msg_hdlr_api" name="Error Concealment Interface Message Handler API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/error_concealment_interface_msg_hdlr_api/group"/>
</component>
<component id="error_concealment_interface_proxy_api" name="Error Concealment Interface Proxy API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/error_concealment_interface_proxy_api/group"/>
</component>
<component id="fm_radio_adaptation_api" name="FM Radio Adaptation API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/fm_radio_adaptation_api/group"/>
</component>
<component id="g711_decoder_interface_api" name="G711 Decoder Interface API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/g711_decoder_interface_api/group" filter="!test"/>
</component>
<component id="g711_decoder_interface_msg_hdlr_api" name="G711 Decoder Interface Message Handler API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/g711_decoder_interface_msg_hdlr_api/group"/>
</component>
<component id="g711_decoder_interface_proxy_api" name="G711 Decoder Interface Proxy API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/g711_decoder_interface_proxy_api/group"/>
</component>
<component id="g711_encoder_interface_api" name="G711 Encoder Interface API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/g711_encoder_interface_api/group" filter="!test"/>
</component>
<component id="g711_encoder_interface_msg_hdlr_api" name="G711 Encoder Interface Message Handler API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/g711_encoder_interface_msg_hdlr_api/group"/>
</component>
<component id="g711_encoder_interface_proxy_api" name="G711 Encoder Interface Proxy API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/g711_encoder_interface_proxy_api/group"/>
</component>
<component id="g729_decoder_interface_api" name="G729 Decoder Interface API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/g729_decoder_interface_api/group" filter="!test"/>
</component>
<component id="g729_decoder_interface_msg_hdlr_api" name="G729 Decoder Interface Message Handler API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/g729_decoder_interface_msg_hdlr_api/group"/>
</component>
<component id="g729_decoder_interface_proxy_api" name="G729 Decoder Interface Proxy API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/g729_decoder_interface_proxy_api/group"/>
</component>
<component id="g729_encoder_interface_api" name="G729 Encoder Interface API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/g729_encoder_interface_api/group" filter="!test"/>
</component>
<component id="g729_encoder_interface_proxy_api" name="G729 Encoder Interface Proxy API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/g729_encoder_interface_proxy_api/group"/>
</component>
<component id="g729_encoder_interface_msg_hdlr_api" name="G729 Encoder Interface Message Handler API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/g729_encoder_interface_msg_hdlr_api/group"/>
</component>
<component id="global_audio_settings_api" name="Global Audio Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/global_audio_settings_api/group" filter="!test"/>
</component>
<component id="global_audio_settings_definition_api" name="Global Audio Settings Definition API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/global_audio_settings_definition_api/group"/>
</component>
<component id="ilbc_decoder_interface_api" name="Ilbc Decoder Interface API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/ilbc_decoder_interface_api/group" filter="!test"/>
</component>
<component id="ilbc_decoder_interface_msg_hdlr_api" name="Ilbc Decoder Interface Message Handler API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/ilbc_decoder_interface_msg_hdlr_api/group"/>
</component>
<component id="ilbc_decoder_interface_proxy_api" name="Ilbc Decoder Interface Proxy API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/ilbc_decoder_interface_proxy_api/group"/>
</component>
<component id="ilbc_encoder_interface_api" name="Ilbc Encoder Interface API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/ilbc_encoder_interface_api/group" filter="!test"/>
</component>
<component id="ilbc_encoder_interface_msg_hdlr_api" name="Ilbc Encoder Interface Message Handler API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/ilbc_encoder_interface_msg_hdlr_api/group"/>
</component>
<component id="ilbc_encoder_interface_proxy_api" name="Ilbc Encoder Interface Proxy API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/ilbc_encoder_interface_proxy_api/group"/>
</component>
<component id="mdf_plugin_uids" name="MDF Plug-in UIDs" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/mdf_plugin_uids/group"/>
</component>
<component id="multimedia_fourcc_definitions_api" name="Multimedia FourCC Definitions API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/multimedia_fourcc_definitions_api/group"/>
</component>
<component id="nokia_audio_policy_header_api" name="Nokia Audio Policy Header API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/nokia_audio_policy_header_api/group"/>
</component>
<component id="nokia_multimedia_fourcc_definitions_api" name="Nokia Multimedia Fourcc Definitions API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/nokia_multimedia_fourcc_definitions_api/group"/>
</component>
<component id="ra8_decoder_interface_api" name="RA8 Decoder Interface API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/ra8_decoder_interface_api/group" filter="!test"/>
</component>
<component id="ra8_decoder_interface_msg_hdlr_api" name="RA8 Decoder Interface Message Handler API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/ra8_decoder_interface_msg_hdlr_api/group"/>
</component>
<component id="ra8_decoder_interface_proxy_api" name="RA8 Decoder Interface Proxy API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/ra8_decoder_interface_proxy_api/group"/>
</component>
<component id="rds_adaptation_api" name="RDS Adaptation API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/rds_adaptation_api/group"/>
</component>
<component id="restricted_audio_output_api" name="Restricted Audio Output API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/restricted_audio_output_api/group" filter="!test"/>
</component>
<component id="restricted_audio_output_msg_hdlr_api" name="Restricted Audio Output Message Handler API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/restricted_audio_output_msg_hdlr_api/group"/>
</component>
<component id="restricted_audio_output_proxy_api" name="Restricted Audio Output Proxy API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/restricted_audio_output_proxy_api/group"/>
</component>
<component id="sbc_encoder_interface_api" name="SBC Encoder Interface API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/sbc_encoder_interface_api/group" filter="!test"/>
</component>
<component id="sbc_encoder_interface_msg_hdlr_api" name="SBC Encoder Interface Message Handler API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/sbc_encoder_interface_msg_hdlr_api/group"/>
</component>
<component id="sbc_encoder_interface_proxy_api" name="SBC Encoder Interface Proxy API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/sbc_encoder_interface_proxy_api/group"/>
</component>
<component id="secure_output_mdf_custom_interface" name="Secure Output MDF Custom Interface" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/secure_output_mdf_custom_interface/group"/>
</component>
<component id="speech_encoder_config_api" name="Speech Encoder Config API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/speech_encoder_config_api/group" filter="!test"/>
</component>
<component id="speech_encoder_config_msg_hdlr_api" name="Speech Encoder Config Message Handler API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/speech_encoder_config_msg_hdlr_api/group"/>
</component>
<component id="speech_encoder_config_proxy_api" name="Speech Encoder Config Proxy API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/speech_encoder_config_proxy_api/group"/>
</component>
<component id="telephony_audio_routing_client_api" name="Telephony Audio Routing Client API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/telephony_audio_routing_client_api/group"/>
</component>
<component id="telephony_audio_routing_manager_api" name="Telephony Audio Routing Manager API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/telephony_audio_routing_manager_api/group"/>
</component>
<component id="video_buffer_management_mdf_custom_interface" name="Video Buffer Management MDF Custom Interface" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/video_buffer_management_mdf_custom_interface/group"/>
</component>
<component id="video_decoder_rotation_mdf_custom_interface" name="Video Decoder Rotation MDF Custom Interface" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/video_decoder_rotation_mdf_custom_interface/group"/>
</component>
<component id="video_decoder_scaling_mdf_custom_interface" name="Video Decoder Scaling MDF Custom Interface" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/video_decoder_scaling_mdf_custom_interface/group"/>
</component>
<component id="video_reclaim_extbuffers_ci" name="Video Reclaim Extbuffers Custom Interface" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/video_reclaim_extbuffers_ci/group"/>
</component>
<component id="video_window_control_custom_interface" name="Video Window Control Custom Interface" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/video_window_control_custom_interface/group"/>
</component>
<component id="wma_decoder_interface_api" name="WMA Decoder Interface API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/wma_decoder_interface_api/group" filter="!test"/>
</component>
<component id="wma_decoder_interface_msg_hdlr_api" name="WMA Decoder Interface Message Handler API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/wma_decoder_interface_msg_hdlr_api/group"/>
</component>
<component id="wma_decoder_interface_proxy_api" name="WMA Decoder Interface Proxy API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/wma_decoder_interface_proxy_api/group"/>
</component>
<component id="eaacplusutil_api" name="EAac Plus Util API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/eaacplusutil_api/group"/>
</component>
<component id="frametable_api" name="Frametable API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/mm/mm_plat/frametable_api/group"/>
</component>
</collection>
<collection id="devsoundextensions" name="Devsound Extensions" level="device-fw">
<component id="drmaudioplayer" name="DRM Audio Player" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/mm/devsoundextensions/drmaudioplayer/group"/>
</component>
<component id="mmextfw" name="Multimedia Extension Framework" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/mm/devsoundextensions/mmextfw/group"/>
</component>
<component id="audiorouting" name="Audio Routing" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/mm/devsoundextensions/audiorouting/group"/>
</component>
<component id="effects" name="Effects" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/mm/devsoundextensions/effects/group"/>
</component>
<component id="effectspresets" name="Effects Presets" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/mm/devsoundextensions/effectspresets/group"/>
</component>
<component id="effectspresets_utils" name="Effects Presets Utils" filter="s60" target="device" purpose="optional">
<!-- need to #include the lot from a single bld.inf
Also move to a standard component location, not under effectspresets -->
<unit bldFile="/os/mm/devsoundextensions/effectspresets/AudioEqualizerUtility/group" filter="!dfs_build"/>
<unit bldFile="/os/mm/devsoundextensions/effectspresets/EnvironmentalReverbUtility/group" filter="!dfs_build"/>
</component>
<component id="telephonyaudiorouting" name="Telephony Audio Routing" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/mm/devsoundextensions/telephonyaudiorouting/group"/>
</component>
<component id="mmfcustominterfaces" name="MMF Custom Interfaces" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/mm/devsoundextensions/mmfcustominterfaces/group"/>
</component>
<component id="addeddevsoundcontrol" name="Added DevSound Control" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/mm/devsoundextensions/addeddevsoundcontrol/group"/>
</component>
<component id="globalaudiosettings" name="Global Audio Settings" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/mm/devsoundextensions/globalaudiosettings/group"/>
</component>
<component id="restrictedaudiooutput" name="Restricted Audio Output" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/mm/devsoundextensions/restrictedaudiooutput/group"/>
</component>
<component id="ciextnfactoryplugins" name="Custom Interface Extension Factory Plugins" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/os/mm/devsoundextensions/ciextnfactoryplugins/group"/>
</component>
</collection>
<collection id="mdfdevvideoextensions" name="MDF Dev Video Extensions" level="device-fw">
<component id="nga_mdf_postprocessor" name="NGA MDF Postprocessor" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/mm/mdfdevvideoextensions/nga_mdf_postprocessor/group"/>
</component>
</collection>
<collection id="frametable_stub" name="Frametable Stub" level="device-fw">
<!-- collection is really a component. Needs to move down a directory -->
<component id="frametable_stub_build" name="Frametable Stub Build" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/mm/frametable_stub/group"/>
</component>
</collection>
<collection id="eaacplusutil_stub" name="eAAC Plus Utils Stub" level="hw-if">
<!-- collection is really a component. Needs to move down a directory -->
<component id="eaacplusutil_stub_build" name="eAAC Plus Utils Stub Build" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/mm/eaacplusutil_stub/group"/>
</component>
</collection>
<collection id="imagingandcamerafws" name="Imaging and Camera Frameworks" level="app-if">
<component id="camerafw" name="Camera Framework" introduced="7.0s" purpose="optional" target="device">
<unit bldFile="/os/mm/imagingandcamerafws/camerafw/group" mrp="/os/mm/imagingandcamerafws/camerafw/group/multimedia_ecam_framework.mrp"/>
</component>
</collection>
<collection id="mmlibs" name="Multimedia Libraries" level="middleware">
<component id="mmutilitylib" name="Multimedia Utility Library" introduced="8.1" purpose="mandatory" target="device">
<unit bldFile="/os/mm/mmlibs/mmutilitylib/group" mrp="/os/mm/mmlibs/mmutilitylib/group/multimedia_common.mrp"/>
</component>
<component id="mmfw" name="Multimedia Framework" introduced="7.0s" purpose="mandatory" target="device">
<unit bldFile="/os/mm/mmlibs/mmfw/group" mrp="/os/mm/mmlibs/mmfw/group/multimedia_mmf.mrp"/>
</component>
</collection>
<collection id="mmplugins" name="Multimedia Plugins" level="middleware">
<component id="cameraplugins" name="Camera Plugins" introduced="7.0s" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/mm/mmplugins/cameraplugins/group" mrp="/os/mm/mmplugins/cameraplugins/group/multimedia_ecam_plugins.mrp"/>
</component>
<component id="lib3gp" name="3GP Library" introduced="^2" purpose="optional" target="device">
<unit bldFile="/os/mm/mmplugins/lib3gp/group" mrp="/os/mm/mmplugins/lib3gp/group/multimedia_3gplibrary.mrp"/>
</component>
<component id="mmfwplugins" name="Multimedia Framework Plugins" introduced="7.0s" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/mm/mmplugins/mmfwplugins/group" mrp="/os/mm/mmplugins/mmfwplugins/group/multimedia_mmf_plugin.mrp"/>
</component>
</collection>
<collection id="mm_info" name="Multimedia Info" level="app-if">
<component id="mmdocs" name="Multimedia Documentation" purpose="development" class="doc" target="device">
<unit mrp="/os/mm/mm_info/mmdocs/multimedia_documentation.mrp"/>
</component>
<component id="mm_metadata" name="Multimedia Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/os/mm/mm_info/mm_metadata/mm_metadata.mrp"/>
</component>
</collection>
<collection id="mmresourcemgmt" name="Multimedia Resource Management" level="middleware">
<component id="mmresctrl" name="Multimedia Resource Controller" introduced="^2" purpose="development" target="device">
<unit bldFile="/os/mm/mmresourcemgmt/mmresctrl/group" mrp="/os/mm/mmresourcemgmt/mmresctrl/group/multimedia_a3f_refmmrc.mrp"/>
</component>
</collection>
<collection id="mmdevicefw" name="Multimedia Device Framework" level="device-fw">
<component id="mdf" name="Media Device Framework" introduced="9.2" purpose="mandatory" target="device">
<unit bldFile="/os/mm/mmdevicefw/mdf/group" mrp="/os/mm/mmdevicefw/mdf/group/multimedia_mdf.mrp"/>
</component>
<component id="speechrecogsupport" name="Speech Recognition Support" introduced="7.0s" purpose="mandatory" target="device">
<unit bldFile="/os/mm/mmdevicefw/speechrecogsupport/group" mrp="/os/mm/mmdevicefw/speechrecogsupport/group/multimedia_mmf_ASR.mrp"/>
</component>
</collection>
<collection id="mmswadaptation" name="Multimedia Software Adaptation" level="adaptation">
<component id="videorenderer" name="Video Renderer" introduced="^3" purpose="optional" target="device">
<unit bldFile="/os/mm/mmswadaptation/videorenderer/group" mrp="/os/mm/mmswadaptation/videorenderer/group/multimedia_videorenderer.mrp"/>
</component>
</collection>
<collection id="mmtestenv" name="Multimedia Test Environment" level="device-fw">
</collection>
<collection id="devsound" name="Sound Device" level="devices">
<component id="devsoundapi" name="DevSound API" introduced="7.0s" purpose="mandatory" target="device">
<unit bldFile="/os/mm/devsound/devsoundapi/group" mrp="/os/mm/devsound/devsoundapi/group/multimedia_mdf_devsound_api.mrp"/>
</component>
<component id="a3fdevsound" name="A3F DevSound" introduced="^2" purpose="optional" target="device">
<unit bldFile="/os/mm/devsound/a3fdevsound/group" mrp="/os/mm/devsound/a3fdevsound/group/multimedia_a3f_devsound.mrp"/>
</component>
<component id="a3facf" name="A3F Audio Component Framework" introduced="^2" purpose="optional" target="device">
<unit bldFile="/os/mm/devsound/a3facf/group" mrp="/os/mm/devsound/a3facf/group/multimedia_a3f_acf.mrp"/>
</component>
<component id="devsoundpluginsupport" name="DevSound Plugin Support" introduced="7.0s" purpose="optional" target="device">
<unit bldFile="/os/mm/devsound/devsoundpluginsupport/group" mrp="/os/mm/devsound/devsoundpluginsupport/group/multimedia_mdf_devsound_pluginsupport.mrp"/>
</component>
<component id="refdevsound" name="Reference DevSound Plugins" introduced="7.0s" purpose="optional" target="device">
<unit bldFile="/os/mm/devsound/devsoundrefplugin/group" mrp="/os/mm/devsound/devsoundrefplugin/group/multimedia_mdf_devsound_refplugin.mrp"/>
</component>
<component id="btdevsound" name="Bluetooth DevSound Plugin" introduced="7.0s" deprecated="^4" purpose="development" class="plugin" target="device">
<unit bldFile="/os/mm/devsound/sounddevbt/group" mrp="/os/mm/devsound/sounddevbt/group/multimedia_mdf_devsound_refbtplugin.mrp"/>
</component>
<component id="a3ftrace" name="A3F Trace Utility" introduced="^2" purpose="development" target="device">
<unit bldFile="/os/mm/devsound/a3ftrace/group" mrp="/os/mm/devsound/a3ftrace/group/multimedia_a3f_traces.mrp"/>
</component>
<component id="a3fsrvstart" name="A3F Server Start" introduced="^2" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/mm/devsound/a3fsrvstart/group" mrp="/os/mm/devsound/a3fsrvstart/group/multimedia_a3f_serverstart.mrp"/>
</component>
</collection>
<collection id="mmhais" name="Multimedia Hardware Adaptation Interfaces" level="adaptation">
<component id="devsoundhwdeviceapi" name="DevSound Hardware Device API" introduced="7.0s" purpose="optional" target="device">
<unit bldFile="/os/mm/devsound/hwdevapi/group" mrp="/os/mm/devsound/hwdevapi/group/multimedia_mdf_devsound_hwdev.mrp"/>
</component>
<component id="a3facl" name="A3F Audio Component Library" introduced="^2" purpose="development" target="device">
<unit bldFile="/os/mm/mmhais/a3facl/group" mrp="/os/mm/mmhais/a3facl/group/multimedia_a3f_acl.mrp"/>
</component>
<component id="a3fdevsoundcustomisation" name="A3F DevSound Customisation" introduced="^2" purpose="optional" target="device">
<unit bldFile="/os/mm/mmhais/a3fdevsoundcustomisation/group" mrp="/os/mm/mmhais/a3fdevsoundcustomisation/group/multimedia_a3f_devsoundadaptationinfo.mrp"/>
</component>
<component id="refacladapt" name="Reference ACL Adaptation" introduced="^2" purpose="optional" target="device">
<unit bldFile="/os/mm/mmhais/refacladapt/group" mrp="/os/mm/mmhais/refacladapt/group/multimedia_a3f_refacladaptation.mrp"/>
</component>
<component id="videohai" name="Video HAI" introduced="7.0s" purpose="mandatory" target="device">
<unit bldFile="/os/mm/mmhais/videohai/group" mrp="/os/mm/mmhais/videohai/group/multimedia_videohai.mrp"/>
</component>
<component id="dvbhreceiverhai" name="Mobile TV DVB-H Receiver HAI" introduced="^2" purpose="optional" target="device">
<unit bldFile="/os/mm/mmhais/dvbhreceiverhai/hai/dvbh/group" mrp="/os/mm/mmhais/dvbhreceiverhai/hai/dvbh/group/multimedia_mobiletv_dvbh_hai.mrp"/>
</component>
</collection>
</package>
<package id="mmimaging" level="services" tech-domain="mm" levels="adaptation hw-if device-fw devices middleware app-if" name="Multimedia Imaging">
<collection id="imaging" name="Imaging Frameworks and Plugins" level="app-if">
<component id="imagingfws" name="Imaging Frameworks" introduced="7.0s" purpose="mandatory" target="device">
<unit bldFile="/os/mmimaging/imaging/imagingfws/group" mrp="/os/mmimaging/imaging/imagingfws/group/multimedia_icl.mrp"/>
</component>
<component id="imagingplugins" name="Imaging Plugins" introduced="7.0s" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/mmimaging/imaging/imagingplugins/group" mrp="/os/mmimaging/imaging/imagingplugins/group/multimedia_icl_plugin.mrp"/>
</component>
<component id="imagingdocs" name="Imaging Documentation" purpose="development" class="doc" target="device">
<unit mrp="/os/mmimaging/imaging/imagingdocs/imaging_documentation.mrp"/>
</component>
</collection>
<collection id="imagingtestenv" name="Imaging Test Environment" level="device-fw">
</collection>
</package>
<package id="openmaxil" level="services" tech-domain="mm" levels="adaptation hw-if device-fw devices middleware app-if" name="openmaxil">
<collection id="openmaxil_plat" name="OpenMAX IL Platform Exports" level="hw-if">
<component id="openmaxil_khronos_api" name="OpenMAX IL API" introduced="^3" purpose="mandatory" class="api" target="device">
<unit bldFile="/os/openmaxil/openmaxil_plat/khronos_api/group" version="1"/>
</component>
<component id="openmaxil_symbian_api" name="OpenMAX IL Symbian API" introduced="^3" purpose="mandatory" class="api" target="device">
<unit bldFile="/os/openmaxil/openmaxil_plat/symbian_api/group" version="1"/>
</component>
<component id="openmaxil_test_api" name="OpenMAX IL test headers" introduced="^3" purpose="development" class="api" target="device">
<unit bldFile="/os/openmaxil/openmaxil_plat/test_api/group" version="1"/>
</component>
</collection>
<collection id="omxil_generic" name="OpenMAX IL Implementation" level="device-fw">
<component id="omxilcomplib" name="OpenMAX IL Component Framework" introduced="^3" purpose="optional" target="device">
<unit bldFile="/os/openmaxil/omxil_generic/omxilcomplib/group" version="1"/>
</component>
<component id="omxilcore" name="OpenMAX IL Core" introduced="^3" purpose="mandatory" target="device">
<unit bldFile="/os/openmaxil/omxil_generic/omxilcore/group" version="1"/>
</component>
<component id="omxilloader" name="OpenMAX IL Loader" introduced="^3" purpose="mandatory" target="device">
<unit bldFile="/os/openmaxil/omxil_generic/omxilloader/group" version="1"/>
</component>
</collection>
<collection id="openmaxil_tsrc" name="OpenMAX IL Test code" level="hw-if">
<component id="xmltestharness" name="OpenMAX IL XML Test Harness" introduced="^3" purpose="development" target="device">
<unit bldFile="/os/openmaxil/tsrc/xmltestharness/group" version="1"/>
</component>
</collection>
</package>
<package id="imagingext" level="services" tech-domain="mm" levels="adaptation hw-if plugin framework server app-if" name="Imaging Extensions">
<collection id="imagingext_pub" name="Imaging Extensions Public Interfaces" level="app-if">
<component id="exif_api" name="Exif API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/imagingext/imagingext_pub/exif_api/group" filter="!test"/>
</component>
</collection>
<collection id="imagingext_plat" name="Imaging Extensions Platform Interfaces" level="app-if">
<component id="jpeg2000_icl_plugin_api" name="JPEG2000 ICL plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/imagingext/imagingext_plat/jpeg2000_icl_plugin_api/group"/>
</component>
<component id="extended_icl_jpeg_api" name="Extended ICL Jpeg API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/imagingext/imagingext_plat/extended_icl_jpeg_api/group" filter="!test"/>
</component>
<component id="h324_annex_k_custom_api" name="H324 Annex K Custom API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/imagingext/imagingext_plat/h324_annex_k_custom_api/group"/>
</component>
<component id="ecam_orientation_custom_api" name="ECam Orientation Custom API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/imagingext/imagingext_plat/ecam_orientation_custom_api/group"/>
</component>
<component id="ecam_ui_orientation_override_custom_api" name="ECam UI Orientation Override Custom API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/imagingext/imagingext_plat/ecam_ui_orientation_override_custom_api/group"/>
</component>
<component id="ecam_face_tracking_custom_api" name="ECam Face Tracking Custom API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/imagingext/imagingext_plat/ecam_face_tracking_custom_api/group"/>
</component>
<component id="ecam_use_case_hint_custom_api" name="ECam Use Case Hint Custom API" introduced="^3" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/imagingext/imagingext_plat/ecam_use_case_hint_custom_api/group"/>
</component>
</collection>
<collection id="imageadaptationextensions" name="Image Adaptation Extensions" level="app-if">
<component id="iclextjpegapi" name="ICL Extension JPEG API" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/imagingext/imageadaptationextensions/iclextjpegapi/group"/>
</component>
<component id="imageadaptationextensions_build" name="Image Adaptation Extensions Build" filter="s60" target="device" purpose="optional">
<!-- Move the export from this bld.inf into the above one and remove this component, or make this a ROM component -->
<unit bldFile="/os/imagingext/imageadaptationextensions/group"/>
</component>
</collection>
<collection id="imagingmodules" name="Imaging Modules" level="hw-if">
<component id="exiflib" name="Exif Library" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/imagingext/imagingmodules/exiflib/group"/>
</component>
<component id="jp2kcodec" name="JPEG2000 Decoder Plugin" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/os/imagingext/imagingmodules/jp2kcodec/group"/>
</component>
</collection>
</package>
<package id="graphics" level="services" tech-domain="ui" levels="adaptation engines internal-adaptations device-interface internal-utils app-if" name="Graphics">
<collection id="graphicsaccelaration" name="Graphics Acceleration" level="adaptation">
<component id="vgi" name="VGI" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/graphics/graphicsaccelaration/vgi/group"/>
</component>
</collection>
<collection id="m3g" name="Mobile 3D Graphics" level="internal-adaptations">
<component id="m3gcore11" name="M3G Core 1.1" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/graphics/m3g/m3gcore11/group"/>
</component>
</collection>
<collection id="graphicsresourceservices" name="Graphics Resource Services" level="engines">
<component id="graphicsresource" name="Graphics Resource" introduced="^3" deprecated="^3" purpose="optional" target="device">
<unit bldFile="/os/graphics/graphicsresourceservices/graphicsresource/group" mrp="/os/graphics/graphicsresourceservices/graphicsresource/group/graphics_graphicsresource.mrp"/>
</component>
<component id="graphicsresourceadaptation" name="Graphics Resource Adaptation" introduced="^3" deprecated="^3" purpose="optional" target="device">
<unit bldFile="/os/graphics/graphicsresourceservices/graphicsresourceadaptation/group" mrp="/os/graphics/graphicsresourceservices/graphicsresourceadaptation/group/graphics_graphicsresourceadapter.mrp"/>
</component>
<component id="graphicsresourceimplementation" name="Graphics Resource Implementation" introduced="^4" purpose="optional" target="device">
<unit bldFile="/os/graphics/graphicsresourceservices/graphicsresourceimplementation/group" mrp="/os/graphics/graphicsresourceservices/graphicsresourceimplementation/group/graphics_graphicsresourceimplementation.mrp"/>
</component>
<component id="graphicsresourceinterface" name="Graphics Resource Interface" introduced="^4" purpose="optional" target="device">
<unit bldFile="/os/graphics/graphicsresourceservices/graphicsresourceinterface/group" mrp="/os/graphics/graphicsresourceservices/graphicsresourceinterface/group/graphics_graphicsresourceinterface.mrp"/>
</component>
</collection>
<collection id="graphicsutils" name="Graphics Utils" level="engines">
<component id="commongraphicsheaders" name="Common Graphics Headers" introduced="^3" purpose="mandatory" target="device">
<unit bldFile="/os/graphics/graphicsutils/commongraphicsheaders/group" mrp="/os/graphics/graphicsutils/commongraphicsheaders/group/graphics_commonheader.mrp"/>
</component>
</collection>
<collection id="graphicshwdrivers" name="Graphics Hardware Drivers" level="adaptation">
<!-- displayldd to be moved here -->
<component id="surfacemgr" name="Surface Manager" introduced="^3" purpose="optional" target="device">
<unit bldFile="/os/graphics/graphicshwdrivers/surfacemgr/group" mrp="/os/graphics/graphicshwdrivers/surfacemgr/group/graphics_surfacemanager.mrp"/>
</component>
</collection>
<collection id="graphicscomposition" name="Graphics Composition" level="engines">
<component id="openwfcinterface" name="OpenWF Composition Interface" introduced="^3" purpose="optional" target="device">
<unit bldFile="/os/graphics/graphicscomposition/openwfcinterface/group" mrp="/os/graphics/graphicscomposition/openwfcinterface/group/graphics_openwfcinterface.mrp"/>
</component>
<component id="openwfcompositionengine" name="OpenWF Composition Engine" introduced="^3" purpose="development" target="device">
<unit bldFile="/os/graphics/graphicscomposition/openwfcompositionengine/group" mrp="/os/graphics/graphicscomposition/openwfcompositionengine/group/graphics_openwfcompositionengine.mrp"/>
</component>
<component id="openwfsupport" name="OpenWF Support" introduced="^3" purpose="optional" target="device">
<unit bldFile="/os/graphics/graphicscomposition/openwfsupport/group" mrp="/os/graphics/graphicscomposition/openwfsupport/group/graphics_openwfsupport.mrp"/>
</component>
<component id="surfaceupdate" name="Surface Update" introduced="^3" purpose="optional" target="device">
<unit bldFile="/os/graphics/graphicscomposition/surfaceupdate/group" mrp="/os/graphics/graphicscomposition/surfaceupdate/group/graphics_surfaceupdate.mrp"/>
</component>
<component id="openwfc_ri_displaychannel" name="OpenWFC RI Display Channel" introduced="^4" purpose="optional" target="device">
<unit bldFile="/os/graphics/graphicscomposition/openwfc_ri_displaychannel/group" mrp="/os/graphics/graphicscomposition/openwfc_ri_displaychannel/group/openwfc_ri_displaychannel.mrp"/>
</component>
</collection>
<collection id="graphicstest" name="Graphics Test" level="app-if">
<component id="uibench" name="UI Bench" introduced="9.2" purpose="development" target="device">
<unit bldFile="/os/graphics/graphicstest/uibench/group" mrp="/os/graphics/graphicstest/uibench/group/graphics_ui_bench.mrp"/>
</component>
</collection>
<collection id="graphics_plat" name="Graphics Platform Interfaces" level="app-if">
<component id="m3g_core_api" name="M3G Core API" filter="sf_build" class="api" target="device" purpose="optional">
<unit bldFile="/os/graphics/graphics_plat/m3g_core_api/group"/>
</component>
</collection>
<collection id="graphics_info" name="Graphics Info" level="app-if">
<component id="graphicsdocs" name="Graphics Documentation" purpose="development" class="doc" target="device">
<unit mrp="/os/graphics/graphics_info/graphicsdocs/graphics_documentation.mrp"/>
</component>
<component id="graphics_metadata" name="Graphics Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/os/graphics/graphics_info/graphics_metadata/graphics_metadata.mrp"/>
</component>
</collection>
<collection id="windowing" name="Windowing" level="app-if">
<component id="windowserver" name="Window Server" purpose="mandatory" target="device">
<unit bldFile="/os/graphics/windowing/windowserver/group" mrp="/os/graphics/windowing/windowserver/group/graphics_wserv.mrp"/>
</component>
<component id="windowserverplugins" name="Window Server Plugins" introduced="^3" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/graphics/windowing/windowserverplugins/group" mrp="/os/graphics/windowing/windowserverplugins/group/graphics_wserv_std_plugins.mrp"/>
</component>
</collection>
<collection id="printingservices" name="Printing Services" level="app-if">
<component id="printerdriversupport" name="Printer Driver Support" purpose="optional" target="device">
<unit bldFile="/os/graphics/printingservices/printerdriversupport/group" mrp="/os/graphics/printingservices/printerdriversupport/group/graphics_pdrstore.mrp"/>
</component>
<component id="printerdrivers" name="Printer Drivers" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/graphics/printingservices/printerdrivers/group" mrp="/os/graphics/printingservices/printerdrivers/group/graphics_printdrv.mrp"/>
</component>
</collection>
<collection id="fbs" name="Font and Bitmap Server" level="device-interface">
<component id="fontandbitmapserver" name="Font and Bitmap Server" purpose="mandatory" target="device">
<unit bldFile="/os/graphics/fbs/fontandbitmapserver/group" mrp="/os/graphics/fbs/fontandbitmapserver/group/graphics_fbserv.mrp"/>
</component>
</collection>
<collection id="opengles" name="OpenGLES" level="internal-adaptations">
<component id="openglesinterface" name="OpenGL ES Interface" introduced="8.0" purpose="optional" target="device">
<unit bldFile="/os/graphics/opengles/openglesinterface/group" mrp="/os/graphics/opengles/openglesinterface/group/graphics_openglesheaders.mrp"/>
</component>
<component id="opengles_stub" name="OpenGL ES Stub" introduced="^2" filter="sf_build" purpose="optional" target="device">
<unit bldFile="/os/graphics/opengles/openglesinterface/group/opengles_stub"/>
</component>
</collection>
<collection id="openvg" name="OpenVG" level="internal-adaptations">
<component id="openvginterface" name="OpenVG Interface" introduced="^2" purpose="optional" target="device">
<unit bldFile="/os/graphics/openvg/openvginterface/group" mrp="/os/graphics/openvg/openvginterface/group/graphics_openvgheaders.mrp"/>
</component>
<component id="openvg11" name="OpenVG 1.1" filter="s60" target="device" purpose="optional">
<!-- this needs to be moved to it's own component directory, ie openvg/openvg11 -->
<unit bldFile="/os/graphics/openvg/openvginterface/group/openvg11"/>
</component>
<component id="sfopenvg" name="Khronos OpenVG Reference Implementation" introduced="^2" filter="sf_build" purpose="optional" target="device">
<unit bldFile="/os/graphics/openvg/openvgrefimplementation/sfopenvg/group"/>
</component>
</collection>
<collection id="egl" name="EGL" level="internal-adaptations">
<component id="eglinterface" name="EGL Interface" introduced="^2" purpose="mandatory" target="device">
<unit bldFile="/os/graphics/egl/eglinterface/group" mrp="/os/graphics/egl/eglinterface/group/graphics_eglheaders.mrp"/>
</component>
<component id="eglswitch" name="EGL Switch" introduced="^3" purpose="optional" target="device">
<unit bldFile="/os/graphics/egl/eglswitch/group" mrp="/os/graphics/egl/eglswitch/group/graphics_eglswitch.mrp"/>
</component>
<component id="eglrefimpl" name="EGL Reference Implementation" introduced="^3" purpose="optional" target="device">
<unit bldFile="/os/graphics/egl/eglrefimpl/group" mrp="/os/graphics/egl/eglrefimpl/group/graphics_eglrefimpl.mrp"/>
</component>
<component id="egltest" name="EGL Tests" introduced="^3" purpose="development" target="device">
<unit bldFile="/os/graphics/egl/egltest/group" mrp="/os/graphics/egl/egltest/group/graphics_egltest.mrp"/>
</component>
</collection>
<collection id="graphicsdeviceinterface" name="Graphics Device Interface" level="device-interface">
<component id="gdi" name="GDI" purpose="mandatory" target="device">
<unit bldFile="/os/graphics/graphicsdeviceinterface/gdi/group" mrp="/os/graphics/graphicsdeviceinterface/gdi/group/graphics_gdi.mrp"/>
</component>
<component id="bitgdi" name="BitGDI" filter="api_test" purpose="mandatory" target="device"> <!-- just api_test, not test -->
<unit bldFile="/os/graphics/graphicsdeviceinterface/bitgdi/group" mrp="/os/graphics/graphicsdeviceinterface/bitgdi/group/graphics_bitgdi.mrp"/>
</component>
<component id="colourpalette" name="Colour Palette" introduced="7.0s" purpose="optional" target="device">
<unit bldFile="/os/graphics/graphicsdeviceinterface/colourpalette/group" mrp="/os/graphics/graphicsdeviceinterface/colourpalette/group/graphics_palette.mrp"/>
</component>
<component id="screendriver" name="Screen Driver" introduced="6.1" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/graphics/graphicsdeviceinterface/screendriver/group" mrp="/os/graphics/graphicsdeviceinterface/screendriver/group/graphics_screendriver.mrp"/>
</component>
<component id="directgdi" name="DirectGDI" introduced="^3" deprecated="^3" purpose="optional" target="device">
<unit bldFile="/os/graphics/graphicsdeviceinterface/directgdi/group" mrp="/os/graphics/graphicsdeviceinterface/directgdi/group/graphics_directgdi.mrp"/>
</component>
<component id="directgdiinterface" name="DirectGDI Interface" introduced="^3" deprecated="^3" purpose="optional" target="device">
<unit bldFile="/os/graphics/graphicsdeviceinterface/directgdiinterface/group" mrp="/os/graphics/graphicsdeviceinterface/directgdiinterface/group/graphics_directgdiheaders.mrp"/>
</component>
<component id="directgdiadaptation" name="DirectGDI Adaptation" introduced="^3" deprecated="^3" purpose="optional" target="device">
<unit bldFile="/os/graphics/graphicsdeviceinterface/directgdiadaptation/group" mrp="/os/graphics/graphicsdeviceinterface/directgdiadaptation/group/graphics_directgdiadapter.mrp"/>
</component>
</collection>
<collection id="graphicstools" name="Graphics Tools" level="internal-utils">
<component id="gdi_tools" name="GDI Tools" target="desktop" purpose="development">
<unit bldFile="/os/graphics/graphicstools/gdi_tools/group" mrp="/os/graphics/graphicstools/gdi_tools/group/graphics_gditools.mrp"/>
</component>
</collection>
<collection id="graphicsapitest" name="Graphics API Tests" level="app-if">
</collection>
</package>
<package id="textandloc" level="services" tech-domain="ui" levels="encoding util fonts tools text" name="Text and Localisation Services">
<collection id="charconvfw" name="Character Conversion" level="encoding">
<component id="charconv_fw" name="Character Encoding and Conversion Framework" filter="api_test" purpose="optional" target="device"> <!-- both production and api_test-->
<meta rel="testbuild" type="auto">
<group name="test.syslibs_charconv"/>
</meta>
<unit bldFile="/os/textandloc/charconvfw/charconv_fw/group" mrp="/os/textandloc/charconvfw/charconv_fw/group/syslibs_charconv.mrp"/>
</component>
<component id="charconvplugins" name="Character Encoding and Conversion Plugins" filter="apit_test" purpose="optional" class="plugin" target="device"> <!-- both production and api_test-->
<meta rel="testbuild" type="auto">
<group name="test.syslibs_charconv_plugins"/>
</meta>
<unit bldFile="/os/textandloc/charconvfw/charconvplugins/group" mrp="/os/textandloc/charconvfw/charconvplugins/group/syslibs_charconv_plugins.mrp"/>
</component>
<component id="fatfilenameconversionplugins" name="FAT Filename Conversion Plugins" introduced="9.1" filter="api_test" purpose="optional" class="plugin" target="device"> <!-- both production and api_test-->
<meta rel="testbuild" type="auto">
<group name="test.syslibs_fatcharsetconv"/>
</meta>
<unit bldFile="/os/textandloc/charconvfw/fatfilenameconversionplugins/group" mrp="/os/textandloc/charconvfw/fatfilenameconversionplugins/group/syslibs_FATCharsetConv.mrp"/>
</component>
</collection>
<collection id="fontandtxtsrv" name="Font and Text Services" level="fonts">
<component id="iculayoutengine" name="ICU Layout Engine" introduced="9.2" deprecated="^4" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/textandloc/fontservices/textshaperplugin/group" mrp="/os/textandloc/fontservices/textshaperplugin/group/graphics_iculayoutengine.mrp"/>
</component>
<component id="fontstore" name="Font Store" filter="api_test" purpose="mandatory" target="device"> <!-- both production and api_test-->
<meta rel="testbuild" type="auto">
<group name="test.graphics_fntstore"/>
</meta>
<unit bldFile="/os/textandloc/fontservices/fontstore/group" mrp="/os/textandloc/fontservices/fontstore/group/graphics_fntstore.mrp"/>
</component>
<component id="textbase" name="Text Base" purpose="mandatory" target="device">
<!-- placeholder for text code from GDI -->
</component>
<component id="freetypefontrasteriser" name="FreeType Font Rasteriser" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/textandloc/fontservices/freetypefontrasteriser/group" mrp="/os/textandloc/fontservices/freetypefontrasteriser/group/graphics_freetype.mrp"/>
</component>
<component id="referencefonts" name="Reference Fonts" introduced="6.0" purpose="optional" target="device">
<unit bldFile="/os/textandloc/fontservices/referencefonts/group" mrp="/os/textandloc/fontservices/referencefonts/group/graphics_fonts.mrp"/>
</component>
</collection>
<collection id="textlayout" name="Text Layout" level="text">
<component id="texthandling" name="Text Handling" purpose="optional" target="device">
<unit bldFile="/os/textandloc/textrendering/texthandling/group" mrp="/os/textandloc/textrendering/texthandling/group/app-framework_etext.mrp"/>
</component>
<component id="textformatting" name="Text Formatting" purpose="optional" target="device">
<unit bldFile="/os/textandloc/textrendering/textformatting/group" mrp="/os/textandloc/textrendering/textformatting/group/app-framework_form.mrp"/>
</component>
</collection>
<collection id="textandlocutils" name="Text and Localisation Utils" level="util">
<component id="numbergrouping" name="Number Grouping" target="device" purpose="optional">
<unit bldFile="/os/textandloc/textandlocutils/numbergrouping/group" mrp="/os/textandloc/textandlocutils/numbergrouping/group/tls_numbergrouping.mrp"/>
</component>
<component id="jplangutil" name="Japanese Language Utilities" target="device" purpose="optional">
<unit bldFile="/os/textandloc/textandlocutils/jplangutil/group" mrp="/os/textandloc/textandlocutils/jplangutil/group/tls_jplangutil.mrp"/>
</component>
<component id="sortutil" name="Sorting Utility" target="device" purpose="optional">
<unit bldFile="/os/textandloc/textandlocutils/sortutil/group" mrp="/os/textandloc/textandlocutils/sortutil/group/tls_sortutil.mrp"/>
</component>
<component id="inlinetext" name="Inline Text" target="device" purpose="optional">
<unit bldFile="/os/textandloc/textandlocutils/inlinetext/group" mrp="/os/textandloc/textandlocutils/inlinetext/group/tls_inlinetext.mrp"/>
</component>
<component id="numberformatting" name="Number Formatting" introduced="7.0s" purpose="optional" target="device">
<unit bldFile="/os/textandloc/textrendering/numberformatting/group" mrp="/os/textandloc/textrendering/numberformatting/group/app-framework_numberconversion.mrp"/>
</component>
</collection>
<collection id="localesupport" name="Locale Support" level="util">
<component id="reflocales" name="Reference Locales" purpose="optional" class="plugin" target="device">
<unit bldFile="/os/textandloc/localisation/localesupport" mrp="/os/textandloc/localisation/localesupport/mmpfiles/base_loce32.mrp"/>
</component>
<component id="initlocale" name="Initialise Locale" introduced="^2" purpose="mandatory" target="device">
<!-- placeholder for split from bafl -->
</component>
</collection>
<collection id="textandloctools" name="Text and Localisation Tools" level="tools">
<component id="fontcompiler" name="Font Compiler" target="desktop" purpose="development">
<!-- placeholder for split from GDI Tools -->
</component>
<component id="bitmapfonttools" name="Bitmap Font Tools" target="desktop" purpose="development">
<unit bldFile="/os/graphics/graphicstools/bitmapfonttools/group" mrp="/os/graphics/graphicstools/bitmapfonttools/group/graphics_gdtran.mrp"/>
</component>
</collection>
<collection id="textandloc_info" name="Text and Localisation Info" level="text">
<component id="textandloc_metadata" name="Text and Localisation Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/os/textandloc/textandloc_info/textandloc_metadata/textandloc_metadata.mrp"/>
</component>
</collection>
</package>
<package id="xmlsrv" level="services" tech-domain="rt" levels="plugin server framework generic specific" name="XML Services">
<collection id="xmlsrv_plat" name="XML Services Platform Interfaces" level="specific">
<component id="xml_encryption_api" name="XML Encryption API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/xmlsrv/xmlsrv_plat/xml_encryption_api/group"/>
</component>
<component id="xml_signature_api" name="XML Signature API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/xmlsrv/xmlsrv_plat/xml_signature_api/group"/>
</component>
<component id="xml_security_engine_utils_api" name="XML Security Engine Utils API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/xmlsrv/xmlsrv_plat/xml_security_engine_utils_api/group"/>
</component>
<component id="cxml_library_api" name="cXml Library API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/xmlsrv/xmlsrv_plat/cxml_library_api/group"/>
</component>
<component id="xml_parser_api" name="XML Parser API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/os/xmlsrv/xmlsrv_plat/xml_parser_api/group"/>
</component>
</collection>
<collection id="xmlsecurityengine" name="XML Security Engine" level="framework">
<component id="xmlseccertman" name="XML Security Certificate Manager" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/xmlsrv/xmlsecurityengine/xmlseccertman/group"/>
</component>
<component id="xmlsec" name="XML Security" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/xmlsrv/xmlsecurityengine/xmlsec/group"/>
</component>
<component id="xmlseccrypto" name="XML Security Crypto" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/xmlsrv/xmlsecurityengine/xmlseccrypto/group"/>
</component>
<component id="xmlsecwrapper" name="XML Security Wrapper" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/xmlsrv/xmlsecurityengine/xmlsecwrapper/group"/>
</component>
</collection>
<collection id="xml" name="XML" level="generic">
<component id="xmlfw" name="XML Framework" introduced="7.0s" purpose="optional" target="device">
<meta rel="testbuild" type="auto">
<group name="xmlsrv_test_rtest"/>
</meta>
<unit bldFile="/os/xmlsrv/xml/xmlfw/group" mrp="/os/xmlsrv/xml/xmlfw/group/syslibs_xml.mrp" filter="!test"/>
</component>
<component id="libxml2libs" name="Libxml2 Libraries" introduced="^3" purpose="optional" target="device">
<meta rel="testbuild" type="auto">
<group name="xmlsrv_test_tef"/>
</meta>
<unit bldFile="/os/xmlsrv/xml/libxml2libs/group" mrp="/os/xmlsrv/xml/libxml2libs/group/syslibs_libxml2.mrp" filter="!test"/>
</component>
<component id="legacyminidomparser" name="Legacy Mini-DOM Parser" introduced="7.0s" purpose="optional" target="device">
<meta rel="testbuild" type="auto">
<group name="xmlsrv_test_rtest"/>
</meta>
<unit bldFile="/os/xmlsrv/xml/legacyminidomparser/GROUP" mrp="/os/xmlsrv/xml/legacyminidomparser/GROUP/syslibs_legacyminidomparser.mrp" filter="!test"/>
</component>
<component id="xmldomandxpath" name="XML DOM and XPath" introduced="^3" purpose="optional" target="device">
<meta rel="testbuild" type="auto">
<group name="xmlsrv_test_tef"/>
</meta>
<unit bldFile="/os/xmlsrv/xml/xmldomandxpath/group" mrp="/os/xmlsrv/xml/xmldomandxpath/group/syslibs_xmldom.mrp" filter="!test"/>
</component>
<component id="xmlexpatparser" name="XML Expat Parser" introduced="7.0s" purpose="optional" class="plugin" target="device">
<meta rel="testbuild" type="auto">
<group name="xmlsrv_test_rtest"/>
</meta>
<unit bldFile="/os/xmlsrv/xml/xmlexpatparser/group" mrp="/os/xmlsrv/xml/xmlexpatparser/group/syslibs_xmlparser.mrp" filter="!test"/>
</component>
<component id="xmllibxml2parser" name="XML Libxml2 Parser" introduced="^3" purpose="optional" class="plugin" target="device">
<meta rel="testbuild" type="auto">
<group name="xmlsrv_test_tef"/>
</meta>
<unit bldFile="/os/xmlsrv/xml/xmllibxml2parser/group" mrp="/os/xmlsrv/xml/xmllibxml2parser/group/syslibs_xmlparser2.mrp" filter="!test"/>
</component>
<component id="wbxmlparser" name="WBXML Parser" introduced="7.0s" purpose="optional" class="plugin" target="device">
<meta rel="testbuild" type="auto">
<group name="xmlsrv_test_rtest"/>
</meta>
<unit bldFile="/os/xmlsrv/xml/wbxmlparser/group" mrp="/os/xmlsrv/xml/wbxmlparser/group/syslibs_wbxmlparser.mrp" filter="!test"/>
</component>
<component id="cxmllibrary" name="cXml Library" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/xmlsrv/xml/cxmllibrary/group"/>
</component>
<component id="xmlparser" name="XML Interface" filter="s60" target="device" purpose="optional">
<unit bldFile="/os/xmlsrv/xml/xmlparser/group"/>
</component>
</collection>
<collection id="xmlsrv_info" name="XML Services Info" level="specific">
<component id="xmlsrv_metadata" name="XML Services Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/os/xmlsrv/xmlsrv_info/xmlsrv_metadata/xmlsrv_metadata.mrp"/>
</component>
</collection>
</package>
<package id="deviceplatformrelease" level="services" tech-domain="to" levels="bld mid top" name="Device Platform Release">
<collection id="s60extras" name="S60 Extras" level="mid">
<!-- collection is really a component. Need to move down a directory -->
<component id="s60extras_build" name="S60 Extras Build" filter="s60" purpose="development" class="config" target="device">
<unit bldFile="/os/deviceplatformrelease/s60extras/group"/>
</component>
</collection>
<collection id="version" name="Version" level="top">
<!-- collection is really a component. Need to move down a directory -->
<component id="version_build" name="Version Build" filter="s60" purpose="development" class="config" target="device">
<unit bldFile="/os/deviceplatformrelease/version/group"/>
</component>
</collection>
<collection id="symbianosbld" name="Symbian OS Build" level="bld">
<component id="cedarutils" name="Cedar Utils" purpose="development" target="device">
<unit mrp="/os/deviceplatformrelease/symbianosbld/cedarutils/tools_utils_cedar.mrp"/>
</component>
<component id="productionbldcbrconfig" name="Production Build CBR Config" filter="gt" purpose="development" class="config" target="device">
<unit mrp="/os/deviceplatformrelease/symbianosbld/productionbldcbrconfig/product_cbr_config.mrp"/>
</component>
</collection>
<collection id="foundation_system" name="Foundation System" level="top">
<component id="system_model" name="System Model" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/os/deviceplatformrelease/foundation_system/system_model/system_model.mrp"/>
</component>
<component id="sf_config" name="Foundation Config" introduced="^4" filter="s60,build_as_app" target="device" purpose="optional">
<unit bldFile="/os/deviceplatformrelease/foundation_system/sf_config/CI_external/group"/>
</component>
<component id="config" name="Config" filter="s60" purpose="development" class="config" target="device">
<unit base="/os/deviceplatformrelease/foundation_system/sf_config/config"/>
</component>
<component id="cenrep" name="ConE Central Repository Config" filter="sf_build" purpose="development" class="config" target="device">
<!-- will should give the id/path something more unique than cenrep -->
<unit bldFile="/os/deviceplatformrelease/foundation_system/sf_config/cenrep/group"/>
</component>
<component id="rombuild_syborg" name="Syborg iMaker Config" introduced="^3" filter="sf_build" purpose="development" class="config" target="device">
<unit bldFile="/os/deviceplatformrelease/foundation_system/sf_config/rombuild/syborg/group"/>
</component>
<component id="rombuild_zoom2" name="Zoom2 iMaker Config" introduced="^3" filter="sf_build" purpose="development" class="config" target="device">
<unit bldFile="/os/deviceplatformrelease/foundation_system/sf_config/rombuild/zoom2/group"/>
</component>
</collection>
<collection id="deviceplatformrelease_info" name="Device Platform Release Info" level="top">
<component id="deviceplatformrelease_metadata" name="Device Platform Release Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/os/deviceplatformrelease/deviceplatformrelease_info/deviceplatformrelease_metadata/deviceplatformrelease_metadata.mrp"/>
</component>
</collection>
</package>
<package id="osrndtools" level="services" tech-domain="to" levels="fw trace analysis" name="OS R&D tools">
<collection id="memspy" name="MemSpy" level="trace">
<component id="memspy_plat" name="MemSpy Platform Interfaces" filter="s60" purpose="development" class="api" target="device">
<unit bldFile="/os/osrndtools/memspy/memspy_plat/group"/>
</component>
<component id="driver" name="MemSpy Driver" filter="s60" purpose="development" target="device">
<unit bldFile="/os/osrndtools/memspy/driver/group"/>
</component>
<component id="memspy_engine" name="MemSpy Engine" filter="s60" purpose="development" target="device">
<unit bldFile="/os/osrndtools/memspy/engine/group"/>
</component>
<component id="commandline" name="MemSpy Command Line" filter="s60" purpose="development" target="device">
<unit bldFile="/os/osrndtools/memspy/commandline/group"/>
</component>
<component id="memspyserver" name="MemSpy Server" introduced="^4" filter="s60" purpose="development" target="device">
<unit bldFile="/os/osrndtools/memspy/MemSpyServer/group"/>
</component>
<component id="memspyclient" name="MemSpy Client" introduced="^4" filter="s60" purpose="development" target="device">
<unit bldFile="/os/osrndtools/memspy/MemSpyClient/group"/>
</component>
<component id="memspy_build" name="MemSpy Build" filter="s60" purpose="development" target="device">
<!-- move exports into self-contained component.-->
<unit bldFile="/os/osrndtools/memspy/group"/>
</component>
</collection>
<collection id="piprofiler" name="Performance Investigator Profiler" level="analysis">
<component id="piprofiler_build" name="Performance Investigator Profiler Build" introduced="^4" target="device" purpose="optional">
<unit bldFile="/os/osrndtools/piprofiler/group"/>
</component>
</collection>
<collection id="analyzetool" name="Analyze Tool" level="analysis">
<component id="analyzetool_build" name="Analyze Tool Build" introduced="^4" target="device" purpose="optional">
<unit bldFile="/os/osrndtools/analyzetool/group"/>
</component>
</collection>
</package>
<package id="ostesttools" level="services" tech-domain="to" levels="fw trace analysis" name="OS Test tools">
<collection id="stif" name="STIF" level="fw">
<component id="stif_plat" name="STIF Platform Interfaces" filter="s60" purpose="development" class="api" target="device">
<unit bldFile="/os/ostesttools/stif/stif_plat/group"/>
</component>
<component id="TestInterface" name="Test Interface" filter="s60" purpose="development" target="device">
<unit bldFile="/os/ostesttools/stif/TestInterface/group"/>
</component>
<component id="TestServer" name="Test Server" filter="s60" purpose="development" target="device">
<unit bldFile="/os/ostesttools/stif/TestServer/group"/>
</component>
<component id="TestEngine" name="Test Engine" filter="s60" purpose="development" target="device">
<unit bldFile="/os/ostesttools/stif/TestEngine/group"/>
</component>
<component id="TestServerStarter" name="Test Server Starter" filter="s60" purpose="development" target="device">
<unit bldFile="/os/ostesttools/stif/TestServerStarter/group"/>
</component>
<component id="StifTFwIf" name="STIF Test Framework Interface" filter="s60" purpose="development" target="device">
<unit bldFile="/os/ostesttools/stif/StifTFwIf/group"/>
</component>
<component id="ConsoleUI" name="Console UI" filter="s60" purpose="development" target="device">
<unit bldFile="/os/ostesttools/stif/ConsoleUI/group"/>
</component>
<component id="TestCombiner" name="Test Combiner" filter="s60" purpose="development" target="device">
<unit bldFile="/os/ostesttools/stif/TestCombiner/group"/>
</component>
<component id="DemoModule" name="Demo Module" filter="s60" purpose="development" target="device">
<unit bldFile="/os/ostesttools/stif/DemoModule/group"/>
</component>
<component id="ATSLogger" name="ATS Logger" filter="s60" purpose="development" target="device">
<unit bldFile="/os/ostesttools/stif/ATSLogger/group"/>
</component>
<component id="ATSInterface" name="ATS Interface" filter="s60" purpose="development" target="device">
<unit bldFile="/os/ostesttools/stif/ATSInterface/group"/>
</component>
<component id="TestScripter" name="Test Scripter" filter="s60" purpose="development" target="device">
<unit bldFile="/os/ostesttools/stif/TestScripter/group"/>
</component>
<component id="SUEvent" name="SU Event" filter="s60" purpose="development" target="device">
<unit bldFile="/os/ostesttools/stif/SUEvent/group"/>
</component>
<component id="StifKernelTestClassBase" name="STIF Kernel Test Class Base" filter="s60" purpose="development" target="device">
<unit bldFile="/os/ostesttools/stif/StifKernelTestClassBase/group"/>
</component>
<component id="stif_data" name="STIF Data" filter="s60" purpose="development" class="config" target="device">
<!-- This is a component. Should move down a directory. or move into other STIF components-->
<unit bldFile="/os/ostesttools/stif/group"/>
</component>
</collection>
<collection id="hti" name="Harmonized Test Interface" level="trace">
<component id="hti_plat" name="HTI Platform Interfaces" filter="s60" purpose="development" class="api" target="device">
<unit bldFile="/os/ostesttools/hti/hti_plat/group"/>
</component>
<component id="HtiCfg" name="HTI Config" filter="s60" purpose="development" target="device">
<unit bldFile="/os/ostesttools/hti/HtiCfg/group"/>
</component>
<component id="HtiAutoStart" name="HTI Autostart" filter="s60" purpose="development" target="device">
<unit bldFile="/os/ostesttools/hti/HtiAutoStart/group"/>
</component>
<component id="HtiFramework" name="HTI Framework" filter="s60" purpose="development" target="device">
<unit bldFile="/os/ostesttools/hti/HtiFramework/group"/>
</component>
<component id="hticommplugins" name="HTI Communication Plugins" filter="s60" purpose="development" class="plugin" target="device">
<!-- need to #include these from a single unit or separate into component at the right directory level -->
<unit bldFile="/os/ostesttools/hti/HtiCommPlugins/HtiBtCommPlugin/group"/>
<unit bldFile="/os/ostesttools/hti/HtiCommPlugins/HtiIPCommPlugin/group"/>
<unit bldFile="/os/ostesttools/hti/HtiCommPlugins/HtiSerialCommPlugin/group"/>
<unit bldFile="/os/ostesttools/hti/HtiCommPlugins/HtiUsbSerialCommPlugin/group"/>
</component>
<component id="htiserviceplugins" name="HTI Service Plugins" filter="s60" purpose="development" class="plugin" target="device">
<!-- need to #include these from a single unit or separate into component at the right directory level -->
<unit bldFile="/os/ostesttools/hti/HtiServicePlugins/HtiAppServicePlugin/group"/>
<unit bldFile="/os/ostesttools/hti/HtiServicePlugins/HtiEchoServicePlugin/group"/>
<unit bldFile="/os/ostesttools/hti/HtiServicePlugins/HtiFtpServicePlugin/group"/>
<unit bldFile="/os/ostesttools/hti/HtiServicePlugins/HtiIpProxyServicePlugin/group"/>
<unit bldFile="/os/ostesttools/hti/HtiServicePlugins/HtiStifTfServicePlugin/group"/>
</component>
<component id="HtiFileHlp" name="HTI File Help" filter="s60" purpose="development" target="device">
<unit bldFile="/os/ostesttools/hti/HtiFileHlp/group"/>
</component>
<component id="HtiWatchdog" name="HTI Watchdog" filter="s60" purpose="development" target="device">
<unit bldFile="/os/ostesttools/hti/HtiWatchdog/group"/>
</component>
<component id="hti_build" name="HTI Build" filter="s60" purpose="development" target="device">
<!-- move exports into self-contained component.-->
<unit bldFile="/os/ostesttools/hti/group"/>
</component>
</collection>
<collection id="symbianunittestfw" name="Symbian Unit Test Framework" level="analysis">
<component id="symbianunittestfw_build" name="Symbian Unit Test Framework Build" introduced="^4" target="device" purpose="optional">
<unit bldFile="/os/ostesttools/symbianunittestfw/group"/>
</component>
</collection>
<collection id="testexecmdw" name="testexecmdw" level="analysis">
<component id="tef" name="Test Execute Framework" introduced="^4" target="device" purpose="optional">
<unit bldFile="/os/ostesttools/testexecmdw/tef/group"/>
</component>
</collection>
</package>
</layer>
<layer id="mw" name="Middleware" levels="generic specific">
<package id="appsupport" level="generic" tech-domain="rt" levels="system plugin framework server generic specific" name="Generic Application Support">
<collection id="appsupport_pub" name="Generic Application Support Public Interfaces" level="specific">
<component id="flash_viewer_framework_api" name="Flash Viewer Framework API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_pub/flash_viewer_framework_api/group"/>
</component>
<component id="network_status_api" name="Network Status API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_pub/network_status_api/group"/>
</component>
</collection>
<collection id="appsupport_plat" name="Generic Application Support Platform Interfaces" level="specific">
<component id="action_plugin_api" name="Action Plug-In API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/action_plugin_api/group"/>
</component>
<component id="application_orientation_api" name="Application Orientation API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/application_orientation_api/group"/>
</component>
<component id="context_access_api" name="Context Access API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/context_access_api/group"/>
</component>
<component id="context_framework_services_api" name="Context Framework Services API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/context_framework_services_api/group"/>
</component>
<component id="context_framework_client_api" name="Context Framework Client API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/context_framework_client_api/group"/>
</component>
<component id="context_framework_listener_api" name="Context Framework Listener API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/context_framework_listener_api/group"/>
</component>
<component id="context_framework_version_api" name="Context Framework Version API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/context_framework_version_api/group"/>
</component>
<component id="context_source_plugin_api" name="Context Source Plug-In API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/context_source_plugin_api/group"/>
</component>
<component id="context_source_settings_manager_api" name="Context Source Settings Manager API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/context_source_settings_manager_api/group"/>
</component>
<component id="context_subscription_api" name="Context Subscription API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/context_subscription_api/group"/>
</component>
<component id="key_event_framework_api" name="Key Event Framework API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/key_event_framework_api/group"/>
</component>
<component id="key_event_framework_mapper_api" name="Key Event Framework Mapper API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/key_event_framework_mapper_api/group"/>
</component>
<component id="media_keys_definition_api" name="Media Keys Definition API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/media_keys_definition_api/group"/>
</component>
<component id="ood_threshold_api" name="OOD Threshold API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/ood_threshold_api/group"/>
</component>
<component id="oom_monitor_api" name="OOM Monitor API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/oom_monitor_api/group"/>
</component>
<component id="oom_monitor_plugin_api" name="OOM Monitor Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/oom_monitor_plugin_api/group"/>
</component>
<component id="operation_provider_api" name="Operation Provider API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/operation_provider_api/group"/>
</component>
<component id="phonecmdhandler_api" name="Phone Command Handler API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/phonecmdhandler_api/group"/>
</component>
<component id="restore_factory_settings_api" name="Restore Factory Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/restore_factory_settings_api/group"/>
</component>
<component id="restore_factory_settings_plugin_api" name="Restore Factory Settings Plug-in API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/restore_factory_settings_plugin_api/group"/>
</component>
<component id="secondary_display_accfw_api" name="Secondary Display Accessory Framework API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/secondary_display_accfw_api/group"/>
</component>
<component id="secondary_display_startup_api" name="Secondary Display Startup API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/secondary_display_startup_api/group"/>
</component>
<component id="secondary_display_sysap_api" name="Secondary Display System Application API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/secondary_display_sysap_api/group"/>
</component>
<component id="secondary_display_system_state_api" name="Secondary Display System State API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/secondary_display_system_state_api/group"/>
</component>
<component id="sensor_user_setting_api" name="Sensor User Setting API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/sensor_user_setting_api/group"/>
</component>
<component id="startup_configuration_api" name="Startup Configuration API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/startup_configuration_api/group"/>
</component>
<component id="system_application_key_handler_plugin_api" name="System Application Key Handler Plug-in API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/system_application_key_handler_plugin_api/group"/>
</component>
<component id="system_application_light_control_plugin_api" name="System Application Light Control Plug-in API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/system_application_light_control_plugin_api/group"/>
</component>
<component id="system_application_notification_api" name="System Application Notification API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/system_application_notification_api/group"/>
</component>
<component id="system_application_plugin_callback_api" name="System Application Plug-in Callback API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/system_application_plugin_callback_api/group"/>
</component>
<component id="flash_mmi_service_interface_custom_api" name="Flash MMI Service Interface Custom API" introduced="^2" filter="s60,!sf_build" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/flash_mmi_service_interface_custom_api/group"/>
</component>
<component id="flash_netscape_plugin_command_api" name="Flash Netscape Plugin Command API" introduced="^2" filter="s60,!sf_build" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/appsupport_plat/flash_netscape_plugin_command_api/group"/>
</component>
</collection>
<collection id="contextframework" name="Context Framework" level="framework">
<component id="cfw" name="Context Framework" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/contextframework/cfw/group"/>
</component>
<component id="cfwplugins" name="Context Framework Plugins" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/contextframework/cfwplugins/group"/>
</component>
</collection>
<collection id="coreapplicationuis" name="Core Application UIs" level="server">
<component id="dbrecovery" name="Database Recovery" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/coreapplicationuis/dbrecovery/group"/>
</component>
<component id="nspswsplugin" name="NSPS WS Plugin" filter="s60" class="plugin" target="device" purpose="optional">
<!-- No Service Power Save? Window Server? Please elaborate-->
<unit bldFile="/mw/appsupport/coreapplicationuis/nspswsplugin/group"/>
</component>
<component id="rfs" name="Restore Factory Settings" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/coreapplicationuis/rfs/group"/>
</component>
<component id="rfsplugins" name="Restore Factory Settings Plugins" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/coreapplicationuis/rfsplugins/group"/>
</component>
<component id="sysap" name="System Application" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/coreapplicationuis/sysap/group"/>
</component>
<component id="variatedsettings" name="Variated Settings" filter="s60" class="config" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/coreapplicationuis/variatedsettings/group"/>
</component>
<component id="accfwuinotifier" name="Accessory Framework UI Notifier" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/coreapplicationuis/accfwuinotifier/group"/>
</component>
<component id="kefmapper" name="Key Event Framework" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/coreapplicationuis/kefmapper/group"/>
</component>
<component id="advancedtspcontroller" name="Advanced TSP Controller" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/coreapplicationuis/advancedtspcontroller/group"/>
</component>
<component id="powersaveutilities" name="Power Save Utilities" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/coreapplicationuis/powersaveutilities" qt:proFile="powersaveutilities.pro"/>
</component>
<component id="gsserverenginestub" name="GS Server Engine Stub" deprecated="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/coreapplicationuis/gsserverenginestub/group"/>
</component>
<component id="gsserverengine" name="GS Server Engine" deprecated="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/coreapplicationuis/gsserverengine/group"/>
</component>
<component id="sensordatacompensatorplugin" name="Sensor Data Compensator Plugin" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/coreapplicationuis/sensordatacompensatorplugin/group"/>
</component>
<component id="atcmdplugin" name="AT Command Plugin" filter="s60,!oem_build" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/coreapplicationuis/atcmdplugin/group"/>
</component>
<component id="devicepowermenuplugin" name="Device Power Menu Plugin" introduced="^4" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/coreapplicationuis/devicepowermenuplugin" qt:proFile="devicepowermenuplugin.pro"/>
</component>
</collection>
<collection id="flashliteapi_3_1" name="Flash Lite API 3.1" level="specific">
<!-- collection is really a component. Move down a directory -->
<component id="flashliteapi_3_1_build" name="Flash Lite API Build" introduced="^2" filter="s60" target="device" purpose="optional">
<unit base="/mw/appsupport/flashliteapi_3_1/group"/>
</component>
</collection>
<collection id="mediakeys" name="Media Keys" level="plugin">
<!-- collection is really a component. Move down a directory -->
<component id="mediakeys_build" name="Media Keys Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/mediakeys/group"/>
</component>
</collection>
<collection id="startupservices" name="Startup Services" level="system">
<component id="splashscreen" name="Splash Screen" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/startupservices/splashscreen/group"/>
</component>
<component id="startupanimation" name="Startup Animation" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/startupservices/startupanimation/group"/>
</component>
<component id="startup" name="Startup Application" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/startupservices/startup/group"/>
</component>
</collection>
<collection id="sysresmonitoring" name="System Resource Monitoring" level="system">
<component id="oodmonitor" name="OOD Monitor" introduced="7.0s" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/sysresmonitoring/oodmonitor/group"/>
</component>
<component id="oommonitor" name="OOM Monitor" introduced="7.0s" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/sysresmonitoring/oommonitor/group"/>
</component>
</collection>
<collection id="systemsettings" name="System Settings" level="system">
<component id="gssensorplugin" name="GS Sensor Plugin" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/systemsettings/gssensorplugin/group"/>
</component>
<component id="accindicatorplugin" name="ACC Indicator Plugin" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/appsupport/systemsettings/accindicatorplugin" qt:proFile="accindicatorplugin.pro"/>
</component>
<component id="accindicatorsettings" name="ACC Indicator Settings" filter="s60" target="device" purpose="optional">
<!-- can't have a component inside another component -->
<unit bldFile="/mw/appsupport/systemsettings/accindicatorplugin/accindicatorsettings" qt:proFile="accindicatorsettings.pro"/>
</component>
</collection>
<collection id="filehandling" name="File Handling" level="server">
<component id="fileconverterfw" name="File Converter Framework" purpose="optional" target="device">
<unit bldFile="/mw/appsupport/filehandling/fileconverterfw/group" mrp="/mw/appsupport/filehandling/fileconverterfw/group/app-framework_conarc.mrp"/>
</component>
<component id="htmltorichtextconverter" name="HTML to RichText Converter" introduced="7.0" purpose="optional" class="plugin" target="device">
<unit bldFile="/mw/appsupport/filehandling/htmltorichtextconverter/group" mrp="/mw/appsupport/filehandling/htmltorichtextconverter/group/app-services_chtmltocrtconv.mrp"/>
</component>
<component id="richtexttohtmlconverter" name="RichText to HTML Converter" introduced="7.0s" purpose="optional" class="plugin" target="device">
<unit bldFile="/mw/appsupport/filehandling/richtexttohtmlconverter/Group" mrp="/mw/appsupport/filehandling/richtexttohtmlconverter/Group/app-services_richtexttohtmlconv.mrp"/>
</component>
</collection>
<collection id="hwresourceadaptation" name="Hardware Resource Adaptation" level="generic">
<component id="hwresourcemgruiplugin" name="Hardware Resource Manager UI Plugin" introduced="^2" deprecated="^4" purpose="optional" class="plugin" target="device">
<unit bldFile="/mw/appsupport/hwresourceadaptation/hwresourcemgruiplugin/group" mrp="/mw/appsupport/hwresourceadaptation/hwresourcemgruiplugin/group/telephony_hwrmuiplugin.mrp"/>
</component>
</collection>
<collection id="commonappservices" name="Common Application Services" level="framework">
<component id="alarmserver" name="Alarm Server" introduced="7.0" purpose="optional" target="device">
<unit bldFile="/mw/appsupport/commonappservices/alarmserver/Group" mrp="/mw/appsupport/commonappservices/alarmserver/Group/app-services_alarmserver.mrp"/>
</component>
<component id="alarmservertest" name="Alarm Server Test" introduced="8.1" deprecated="^3" purpose="development" target="device">
<unit bldFile="/mw/appsupport/commonappservices/alarmservertest/TestAlarmSrv" mrp="/mw/appsupport/commonappservices/alarmservertest/TestAlarmSrv/app-services_testalarmsrv.mrp"/>
</component>
<component id="appservicesdocs" name="Application Services Documentation" purpose="development" class="doc" target="device">
<unit mrp="/mw/appsupport/commonappservices/doc_pub/app-services_documentation.mrp"/>
</component>
<component id="backuprestorenotification" name="Backup Restore Notification" introduced="8.1" purpose="optional" target="device">
<unit bldFile="/mw/appsupport/commonappservices/backuprestorenotification/group" mrp="/mw/appsupport/commonappservices/backuprestorenotification/group/app-services_BackupRestoreNotification.mrp"/>
</component>
</collection>
<collection id="tzservices" name="Time Zone Services" level="plugin">
<component id="tzserver" name="Time Zone Server" introduced="9.1" purpose="optional" target="device">
<unit bldFile="/mw/appsupport/tzservices/tzserver/group" mrp="/mw/appsupport/tzservices/tzserver/group/app-services_tz.mrp"/>
</component>
<component id="tzloc" name="Time Zone Localization" introduced="9.1" purpose="optional" target="device">
<unit bldFile="/mw/appsupport/tzservices/tzloc/group" mrp="/mw/appsupport/tzservices/tzloc/group/app-services_timezonelocalization.mrp"/>
</component>
<component id="tzlocrscfactory" name="Time Zone Localization Resource Factory" introduced="9.1" purpose="optional" class="config" target="device">
<unit bldFile="/mw/appsupport/tzservices/tzlocrscfactory/group" mrp="/mw/appsupport/tzservices/tzlocrscfactory/group/app-services_tzlocalizationrscfactory.mrp"/>
</component>
<component id="tzdatabase" name="Time Zone Database" introduced="9.1" purpose="optional" class="config" target="device">
<unit bldFile="/mw/appsupport/tzservices/tzdatabase/group" mrp="/mw/appsupport/tzservices/tzdatabase/group/app-services_tzdb.mrp"/>
</component>
</collection>
<collection id="contenthandling" name="Content Handling" level="plugin">
<component id="webrecognisers" name="Web Recognisers" purpose="optional" class="plugin" target="device">
<unit bldFile="/mw/appsupport/contenthandling/webrecognisers/group" mrp="/mw/appsupport/contenthandling/webrecognisers/group/application-protocols_recognisers.mrp"/>
</component>
</collection>
<collection id="openenvutils" name="Open Environment Utilities" level="specific">
<component id="commandshell" name="Command Shell" introduced="^3" purpose="development" target="device">
<unit bldFile="/mw/appsupport/openenvutils/commandshell/group" mrp="/mw/appsupport/openenvutils/commandshell/group/oetools_zsh.mrp"/>
</component>
<component id="telnetserver" name="Telnet Server" introduced="^3" purpose="development" target="device">
<unit bldFile="/mw/appsupport/openenvutils/telnetserver/group" mrp="/mw/appsupport/openenvutils/telnetserver/group/oetools_telnetd.mrp"/>
</component>
</collection>
<collection id="printingsupport" name="Printing Support" level="generic">
<component id="printinguisupport" name="Printing UI Support" introduced="^2" deprecated="^3" purpose="optional" target="device">
<unit bldFile="/mw/appsupport/printingsupport/printinguisupport/group" mrp="/mw/appsupport/printingsupport/printinguisupport/group/app-framework_print.mrp"/>
</component>
</collection>
<collection id="appfw" name="Application Framework" level="framework">
<component id="apparchitecture" name="Application Architecture" purpose="mandatory" target="device">
<unit bldFile="/mw/appsupport/appfw/apparchitecture/group" mrp="/mw/appsupport/appfw/apparchitecture/group/app-framework_apparc.mrp"/>
</component>
<component id="viewserver" name="View Server" introduced="6.0" purpose="mandatory" target="device">
<unit bldFile="/mw/appsupport/appfw/viewserver/group" mrp="/mw/appsupport/appfw/viewserver/group/app-framework_viewsrv.mrp"/>
</component>
</collection>
<collection id="applaunchservices" name="Application Launch Services" level="generic">
<component id="aftermarketappstarter" name="After Market Application Starter" introduced="^3" purpose="optional" target="device">
<unit bldFile="/mw/appsupport/applaunchservices/aftermarketappstarter/group" mrp="/mw/appsupport/applaunchservices/aftermarketappstarter/group/app-framework_amastart.mrp"/>
</component>
<component id="applaunchplugins" name="Application Launch Plugins" introduced="^3" purpose="optional" target="device">
<unit bldFile="/mw/appsupport/applaunchservices/applaunchplugins/group" mrp="/mw/appsupport/applaunchservices/applaunchplugins/group/app-framework_aplp.mrp"/>
</component>
</collection>
<collection id="tzpcside" name="Time Zone PC Side" level="plugin">
<component id="tzcompiler" name="Time Zone Compiler" introduced="9.1" target="desktop" purpose="optional" class="config">
<unit bldFile="/mw/appsupport/tzpcside/tzcompiler/group" mrp="/mw/appsupport/tzpcside/tzcompiler/group/app-services_tzcompiler.mrp"/>
</component>
</collection>
<collection id="appsupport_info" name="Generic Application Support Info" level="specific">
<component id="appsupport_metadata" name="Generic Application Support Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/mw/appsupport/appsupport_info/appsupport_metadata/appsupport_metadata.mrp"/>
</component>
</collection>
</package>
<package id="securitysrv" level="generic" tech-domain="se" levels="plugin framework server generic specific" name="Security Services">
<collection id="secsrv_plat" name="Security Services Platform Interfaces" level="specific">
<component id="cms_api" name="CMS API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/secsrv_plat/cms_api/group"/>
</component>
<component id="pkcs12_parser_api" name="PKCS12 Parser API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/secsrv_plat/pkcs12_parser_api/group"/>
</component>
<component id="java_utils_api" name="Java Utils API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/secsrv_plat/java_utils_api/group"/>
</component>
<component id="wim_cert_api" name="WIM Cert API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/secsrv_plat/wim_cert_api/group"/>
</component>
<component id="device_key_store_encryption_plugin_api" name="Device Key Store Encryption Plug-in API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/secsrv_plat/device_key_store_encryption_plugin_api/group"/>
</component>
<component id="x509certnameparser_api" name="X.509 Certificate Name Parser API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/secsrv_plat/x509certnameparser_api/group"/>
</component>
<component id="remote_lock_api" name="Remote Lock API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/secsrv_plat/remote_lock_api/group"/>
</component>
<component id="pkidialog_api" name="PKI Dialog API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/secsrv_plat/pkidialog_api/group"/>
</component>
<component id="provisioning_api" name="Provisioning API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/secsrv_plat/provisioning_api/group"/>
</component>
<component id="keyguard_configuration_api" name="Keyguard Configuration API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/secsrv_plat/keyguard_configuration_api/group"/>
</component>
<component id="keylock_policy_api" name="Keylock Policy API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/secsrv_plat/keylock_policy_api/group"/>
</component>
<component id="security_code_ui_api" name="Security Code UI API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/secsrv_plat/security_code_ui_api/group"/>
</component>
<component id="gba_api" name="GBA API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/secsrv_plat/gba_api/group"/>
</component>
<component id="keyguard_access_api" name="Keyguard Access API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/secsrv_plat/keyguard_access_api/group"/>
</component>
<component id="devicelock_access_api" name="Device Lock Access API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/secsrv_plat/devicelock_access_api/group"/>
</component>
<component id="lockapp_server_api" name="Lock Application Server API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/secsrv_plat/lockapp_server_api/group"/>
</component>
<component id="devencadaptation_api" name="Device Encryption Adaptation API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/secsrv_plat/devencadaptation_api/group"/>
</component>
<component id="devenccommonutils_api" name="Device Encryption Common Utils API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/secsrv_plat/devenccommonutils_api/group"/>
</component>
</collection>
<collection id="cms" name="Certificate Management Service" level="server">
<!-- collection is really a component. Need to move down a directory-->
<component id="cms_build" name="CMS" introduced="^3" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/cms/group"/>
</component>
</collection>
<collection id="pkiutilities" name="PKI Utilities" level="plugin">
<component id="x509certnameparser" name="X.509 Certificate Name Parser" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/pkiutilities/x509certnameparser/group"/>
</component>
<component id="pkcs12" name="PKCS #12" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/pkiutilities/pkcs12/group"/>
</component>
<component id="ctsecuritydialogs" name="Crypto Token Security Dialogs" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/pkiutilities/ctsecuritydialogs/group"/>
</component>
<component id="certsaver" name="Certificate Saver" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/pkiutilities/certsaver/group"/>
</component>
<component id="devicetoken" name="Device Token" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/pkiutilities/devicetoken/group"/>
</component>
<component id="certificates" name="Certificates" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/pkiutilities/Certificates/group" filter="sf_build"/>
</component>
<component id="pkiutilities_build" name="PKI Utilities Build" filter="s60" target="device" purpose="optional">
<!-- need to split this into the above components -->
<unit bldFile="/mw/securitysrv/pkiutilities/group"/>
</component>
<component id="ocsp" name="Online Certificate Status Protocol" introduced="^2" purpose="optional" target="device">
<unit bldFile="/mw/securitysrv/pkiutilities/ocsp/group" mrp="/mw/securitysrv/pkiutilities/ocsp/group/securitysrv_ocsp.mrp"/>
</component>
<component id="untrustedcertificatedialog" name="Untrusted Certificate Dialog" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/pkiutilities/untrustedcertificatedialog" qt:proFile="untrustedcertificateplugin.pro" qt:qmakeArgs="-r"/>
</component>
</collection>
<collection id="wim" name="Wireless Identity Module" level="framework">
<!-- collection is really a component. Need to move down a directory-->
<component id="wim_build" name="WIM Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/wim/group"/>
</component>
</collection>
<collection id="remotelock" name="Remote Lock" level="generic">
<!-- collection is really a component. Need to move down a directory-->
<component id="remotelock_build" name="Remote Lock Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/remotelock/group"/>
</component>
</collection>
<collection id="securitydialogs" name="Security Dialogs" level="specific">
<component id="keylockpolicyapi" name="Keylock Policy API" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/securitydialogs/keylockpolicyapi/group"/>
</component>
<component id="secui" name="Security UI" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/securitydialogs/secui/group"/>
</component>
<component id="securitynotifier" name="Security Notifier" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/securitydialogs/securitynotifier/group"/>
</component>
<component id="lockclient" name="Lock Client" introduced="^3" filter="s60" target="device" purpose="optional">
<!-- This overwrites the bld.inf already in this dir. I'm pretty sure this will cause problems with the export -->
<unit bldFile="/mw/securitysrv/securitydialogs/lockclient/group" qt:proFile="lockclient.pro" qt:qmakeArgs="-r"/>
</component>
<component id="lockapp" name="Lock Application" introduced="^3" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/securitydialogs/lockapp/group"/>
</component>
<component id="secuinotifications" name="Security UI Notifications" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/securitydialogs/secuinotifications" qt:proFile="secuinotifications.pro" qt:qmakeArgs="-r"/>
</component>
<component id="indicatorautolockplugin" name="Auto Lock Indicator Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<!-- directory at the wrong level to be a component-->
<unit bldFile="/mw/securitysrv/securitydialogs/autolock/indicatorplugin" qt:proFile="indicatorautolockplugin.pro" qt:qmakeArgs="-r"/>
</component>
<component id="autolockuseractivityservice" name="Auto Lock User Activity Service" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- Can't have a component inside another. Need to move to securitydialogs/autolockuseractivityservice -->
<unit bldFile="/mw/securitysrv/securitydialogs/autolock/autolockuseractivityservice" qt:proFile="autolockuseractivityservice.pro" qt:qmakeArgs="-r"/>
</component>
<component id="autolocksrv" name="Auto Lock Server" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/securitydialogs/autolock" qt:proFile="autolock.pro" qt:qmakeArgs="-r"/>
</component>
</collection>
<collection id="cpsecplugins" name="Security Settings Plugins" level="plugin">
<component id="devicelockplugin" name="Device Lock Plugin" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/cpsecplugins/devicelockplugin" qt:proFile="devicelockplugin.pro" qt:qmakeArgs="-r"/>
</component>
<component id="simpincodeplugin" name="SIM PIN Code Plugin" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/cpsecplugins/simpincodeplugin" qt:proFile="pincodeplugin.pro" qt:qmakeArgs="-r"/>
</component>
<component id="cpadvancedsecplugin" name="Advanced Security Plugin" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/cpsecplugins/cpadvancedsecplugin/group" qt:proFile="advancedsecplugin.pro" qt:qmakeArgs="-r"/>
</component>
</collection>
<collection id="boottimeintegritycheck" name="Boot Time Integrity Check" level="plugin">
<!-- collection is really a component. Need to move down a directory-->
<component id="boottimeintegritycheck_build" name="Boot Time Integrity Check Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/boottimeintegritycheck/group"/>
</component>
</collection>
<collection id="gba" name="Generic Bootstrapping Architecture" level="server">
<component id="uicc" name="UICC" introduced="^2" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/gba/uicc/group"/>
</component>
<component id="gbaserver" name="GBA Server" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/gba/gbaserver/group"/>
</component>
<component id="gbaapi" name="GBA API" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/gba/gbaapi/group"/>
</component>
<component id="gbafilter" name="GBA HTTP Filter" introduced="^2" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/gba/gbafilter/group"/>
</component>
<component id="gba_build" name="Generic Boot Architecture Build" introduced="^2" filter="s60" target="device" purpose="optional">
<!-- need to split this into the above components, or remove #includes and make this GBA ROM -->
<unit bldFile="/mw/securitysrv/gba/group"/>
</component>
</collection>
<collection id="devencdiskutils" name="Device Encryption Disk Utils" level="server">
<component id="devenccommonutils" name="Device Encryption Common Utils" introduced="^3" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/devencdiskutils/DevEncCommonUtils/group"/>
</component>
<component id="devencrfsplugin" name="Device Encryption RFS Plugin" introduced="^3" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/devencdiskutils/DevEncRfsPlugin/group"/>
</component>
<component id="pk5recognizer" name="Device Encryption Pk5 Recognizer" introduced="^3" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/devencdiskutils/Pk5Recognizer/group"/>
</component>
<component id="devencstarter" name="Device Encryption Starter" introduced="^3" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/securitysrv/devencdiskutils/DevEncStarter/group"/>
</component>
<component id="devencdiskutils_build" name="Device Encryption Disk Utils Build" introduced="^3" filter="s60" target="device" purpose="optional">
<!-- need to split this into the above components, or remove #includes and make this a ROM component-->
<unit bldFile="/mw/securitysrv/devencdiskutils/group"/>
</component>
</collection>
<collection id="securitysrv_info" name="Security Services Info" level="specific">
<component id="securitysrv_test" name="Security Services Test" filter="s60,test,api_test" purpose="development" target="device">
</component>
<component id="securitysrv_metadata" name="Security Services Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/mw/securitysrv/securitysrv_info/securitysrv_metadata/securitysrv_metadata.mrp"/>
</component>
</collection>
</package>
<package id="drm" level="generic" tech-domain="se" levels="plugin framework server generic specific" name="DRM">
<collection id="drm_plat" name="DRM Platform Interfaces" level="specific">
<component id="roap_api" name="ROAP API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/drm/drm_plat/roap_api/group"/>
</component>
<component id="drm_common_api" name="DRM Common API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/drm/drm_plat/drm_common_api/group"/>
</component>
<component id="drm_rights_api" name="DRM Rights API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/drm/drm_plat/drm_rights_api/group"/>
</component>
<component id="drm_legacy_api" name="DRM Legacy API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/drm/drm_plat/drm_legacy_api/group"/>
</component>
<component id="dcf_repository_api" name="DCF Repository API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/drm/drm_plat/dcf_repository_api/group"/>
</component>
<component id="drm_service_api" name="DRM Service API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/drm/drm_plat/drm_service_api/group"/>
</component>
<component id="drm_secondary_display_api" name="DRM Secondary Display API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/drm/drm_plat/drm_secondary_display_api/group"/>
</component>
<component id="drm_license_manager_api" name="DRM License Manager API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/drm/drm_plat/drm_license_manager_api/group"/>
</component>
<component id="drm_utility_api" name="DRM Utility API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/drm/drm_plat/drm_utility_api/group"/>
</component>
<component id="drm_agents_api" name="DRM Agents API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/drm/drm_plat/drm_agents_api/group"/>
</component>
<component id="wmdrm_core_api" name="WM DRM Core API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/drm/drm_plat/wmdrm_core_api/group"/>
</component>
<component id="wmdrm_access_api" name="WM DRM Access API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/drm/drm_plat/wmdrm_access_api/group"/>
</component>
<component id="wmdrm_ota_access_api" name="WM DRM OTA Access API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/drm/drm_plat/wmdrm_ota_access_api/group"/>
</component>
<component id="camese_utility_api" name="Camese Utility API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/drm/drm_plat/camese_utility_api/group"/>
</component>
<component id="camese_framework_api" name="Camese Framework API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/drm/drm_plat/camese_framework_api/group"/>
</component>
</collection>
<collection id="drm_pub" name="DRM Public Interfaces" level="specific">
<component id="drm_helper_api" name="DRM Helper API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/drm/drm_pub/drm_helper_api/group"/>
</component>
<component id="oma_drm_caf_agent_api" name="OMA DRM CAF Agent API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/drm/drm_pub/oma_drm_caf_agent_api/group"/>
</component>
<component id="drm_license_checker_api" name="DRM License Checker API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/drm/drm_pub/drm_license_checker_api/group"/>
</component>
</collection>
<collection id="commondrm" 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 id="drmqtencryptor" name="DRM Qt Encryptor" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/drm/commondrm/drmqtencryptor" qt:proFile="qt_drmencryptor.pro" qt:qmakeArgs="-r"/>
</component>
<component id="drmrightsmanagerui" name="DRM Rights Manager UI" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/drm/commondrm/drmrightsmanagerui/help/group"/>
</component>
<component id="drmutility" name="DRM Utility" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/drm/commondrm/drmutility/group"/>
</component>
<component id="drmserviceapiwrapper" name="DRM Service API Wrapper" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/drm/commondrm/drmserviceapiwrapper/group"/>
</component>
<component id="drmrightsstoringlocation" name="DRM Rights Storing Location" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/drm/commondrm/drmrightsstoringlocation/group"/>
</component>
<component id="commondrm_build" name="Common DRM Build" filter="s60" target="device" purpose="optional">
<!-- should be split into the above files, or them collapsed into a single component -->
<unit bldFile="/mw/drm/commondrm/group"/>
</component>
<component id="commondrm_qt_build" name="Common DRM Qt Build" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- split up build components -->
<unit bldFile="/mw/drm/commondrm" qt:proFile="commondrm.pro" qt:qmakeArgs="-r"/>
</component>
</collection>
<collection id="omadrm" name="OMA DRM" level="server">
<!-- split up build components -->
<component id="omadrm_build" name="OMA DRM Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/drm/omadrm/group"/>
</component>
<component id="omadrm_qt_build" name="OMA DRM Qt Build" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/drm/omadrm" qt:proFile="omadrm.pro"/>
</component>
<component id="foundationcerts" name="Foundation Certificates" filter="sf_build" target="device" purpose="optional">
<unit bldFile="/mw/drm/omadrm/foundationcerts/group"/>
</component>
</collection>
<collection id="wmdrm" name="Windows Media DRM" level="framework">
<!-- collection is really a component. Move down a directory -->
<component id="wmdrm_build" name="WM DRM Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/drm/wmdrm/group"/>
</component>
</collection>
<collection id="drm_info" name="DRM Info" level="specific">
</collection>
</package>
<package id="locationsrv" level="specific" tech-domain="lo" levels="plugin fw server if" name="Location Services">
<collection id="locsrv_pub" name="Location Services Public Interfaces" level="if">
<component id="landmarks_search_api" name="Landmarks Search API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locsrv_pub/landmarks_search_api/group"/>
</component>
<component id="landmarks_api" name="Landmarks API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locsrv_pub/landmarks_api/group"/>
</component>
<component id="landmarks_database_management_api" name="Landmarks Database Management API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locsrv_pub/landmarks_database_management_api/group"/>
</component>
<component id="location_triggering_api" name="Location Triggering API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locsrv_pub/location_triggering_api/group"/>
</component>
<component id="blid_application_satellite_info_api" name="BLID Application Satellite Info API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locsrv_pub/blid_application_satellite_info_api/group"/>
</component>
</collection>
<collection id="locsrv_plat" name="Location Services Platform Interfaces" level="if">
<component id="geocoding_api" name="Geocoding API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locsrv_plat/geocoding_api/group"/>
</component>
<component id="supl_pos_message_plugin_api" name="SUPL POS Message Plugin API" filter="s60" class="api" target="device" purpose="optional">
<!-- placeholder
<meta rel="Api" href="locsrv_plat/supl_pos_message_plugin_api/supl_pos_message_plugin_api.metaxml"/>
<unit bldFile="locsrv_plat/supl_pos_message_plugin_api/group"/>
-->
</component>
<component id="landmarks_category_definition_api" name="Landmarks Category Definition API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locsrv_plat/landmarks_category_definition_api/group"/>
</component>
<component id="supl_settings_api" name="SUPL Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locsrv_plat/supl_settings_api/group"/>
</component>
<component id="np_proxy_configuration_api" name="NP Proxy Configuration API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locsrv_plat/np_proxy_configuration_api/group"/>
</component>
<component id="supl_terminal_initiation_api" name="SUPL Terminal Initiation API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locsrv_plat/supl_terminal_initiation_api/group"/>
</component>
<component id="supl_network_initiation_api" name="SUPL Network Initiation API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locsrv_plat/supl_network_initiation_api/group"/>
</component>
<component id="oma_supl_configuration_parameter_api" name="OMA SUPL Configuration Parameter API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locsrv_plat/oma_supl_configuration_parameter_api/group"/>
</component>
<component id="location_triggering_management_api" name="Location Triggering Management API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locsrv_plat/location_triggering_management_api/group"/>
</component>
<component id="location_triggering_status_information_api" name="Location Triggering Status Information API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locsrv_plat/location_triggering_status_information_api/group"/>
</component>
<component id="oma_supl_asn_codec_plugin_api" name="OMA SUPL ASN Codec Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locsrv_plat/oma_supl_asn_codec_plugin_api/group"/>
</component>
<component id="query_and_notification_api" name="Query and Notification API" introduced="^3" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locsrv_plat/query_and_notification_api/group"/>
</component>
<component id="location_local_variation_api" name="Location Local Variation API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locsrv_plat/location_local_variation_api/group"/>
</component>
</collection>
<collection id="genericpositioningplugins" name="Generic Positioning Plugins" level="plugin">
<component id="locationnpppsy" name="Location Positioning Proxy PSY" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/genericpositioningplugins/locationnpppsy/group"/>
</component>
<component id="locationsuplpsy" name="Location SUPL PSY" introduced="^3" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/genericpositioningplugins/locationsuplpsy/group"/>
</component>
<component id="genericpositioningplugins_rom" name="Generic Positioning Plugins ROM" filter="s60" class="config" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/genericpositioningplugins/rom"/>
</component>
</collection>
<collection id="landmarks" name="Landmarks" level="server">
<component id="locationlandmarks" name="Location Landmarks" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/landmarks/locationlandmarks/group"/>
</component>
</collection>
<collection id="locationsystemui" name="Location System UI" level="if">
<component id="locationsysui" name="Location System UI" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locationsystemui/locationsysui/group"/>
</component>
<component id="qtlocationsysui" name="Location System Qt UI" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locationsystemui/locationsysui" qt:proFile="locsysui.pro"/>
</component>
</collection>
<collection id="supl" name="SUPL" level="fw">
<component id="locationsuplfw" name="Location SUPL Framework" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/supl/locationsuplfw/group"/>
</component>
<component id="locationomasuplprotocolhandler" name="OMA SUPL Protocol Handler" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/supl/locationomasuplprotocolhandler/group"/>
</component>
<component id="supltiapiimplementation" name="SUPL TI API Implementation" introduced="^3" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/supl/supltiapiimplementation/group"/>
</component>
</collection>
<collection id="locationtriggering" name="Location Triggering" level="server">
<component id="ltlogger" name="LT Logger" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locationtriggering/ltlogger/group"/>
</component>
<component id="ltclientlib" name="LT Client Library" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locationtriggering/ltclientlib/group"/>
</component>
<component id="ltmanagementlib" name="LT Management Library" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locationtriggering/ltmanagementlib/group"/>
</component>
<component id="ltcontainer" name="LT Container" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locationtriggering/ltcontainer/group"/>
</component>
<component id="ltserver" name="LT Server" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locationtriggering/ltserver/group"/>
</component>
<component id="ltstrategypluginapi" name="LT Strategy Plugin API" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locationtriggering/ltstrategypluginapi/group"/>
</component>
<component id="ltstrategyengine" name="LT Strategy Engine" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locationtriggering/ltstrategyengine/group"/>
</component>
<component id="ltmovementdetectionpluginapi" name="Movement Detection Plugin API" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locationtriggering/ltmovementdetectionpluginapi/group"/>
</component>
<component id="ltcellidmovementdetector" name="Cell ID Movement Detector" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locationtriggering/ltcellidmovementdetector/group"/>
</component>
<component id="ltcontextsourceplugin" name="LT Context Source Plugin" introduced="^3" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locationtriggering/ltcontextsourceplugin/group"/>
</component>
<component id="locationtriggering_rom" name="Location Triggering ROM" filter="s60" class="config" target="device" purpose="optional">
<unit bldFile="/mw/locationsrv/locationtriggering/rom"/>
</component>
</collection>
</package>
<package id="accesssec" level="generic" tech-domain="dc" levels="plugin framework server generic specific" name="Access Security">
<collection id="accesssec_plat" name="Access Security Platform Interfaces" level="specific">
<component id="eap_vpn_api" name="EAP VPN API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/accesssec/accesssec_plat/eap_vpn_api/group"/>
</component>
<component id="eap_type_api" name="EAP Type API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/accesssec/accesssec_plat/eap_type_api/group"/>
</component>
<component id="eap_qt_configuration_api" name="EAP Qt Configuration API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/accesssec/accesssec_plat" qt:proFile="accesssec_plat.pro"/>
</component>
</collection>
<collection id="securitysettings" name="WLAN Security Settings" level="specific">
<component id="accesssec_qtconfigutils" name="Access Security Config Utils" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/accesssec/securitysettings/qtconfigutils" qt:proFile="qtconfigutils.pro"/>
</component>
<component id="cpwlansecurityuiplugins" name="Control Panel WLAN Security UI Plugins" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/accesssec/securitysettings/cpwlansecurityuiplugins" qt:proFile="cpwlansecurityuiplugins.pro"/>
</component>
<component id="cpeapuiplugins" name="Control Panel EAP UI Pugins" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/accesssec/securitysettings/cpeapuiplugins" qt:proFile="cpeapuiplugins.pro"/>
</component>
<component id="eapqtdialogs" name="EAP Qt Dialogs" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/accesssec/securitysettings/eapqtdialogs" qt:proFile="eapqtdialogs.pro"/>
</component>
</collection>
<collection id="eapol" name="EAPOL" level="framework">
<component id="eapol_framework" name="EAPOL Framework" introduced="9.2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/accesssec/eapol/group"/>
</component>
</collection>
</package>
<package id="ipconnmgmt" level="generic" tech-domain="dc" levels="plugin framework server utils api" name="IP Connectivity Management">
<collection id="ipcm_plat" name="IP Connectivity Management Platform Interfaces" level="api">
<component id="ipcm_plat_qt_build" name="IP Connectivity Management Qt Platform Interfaces" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/ipcm_plat" qt:proFile="ipcm_plat.pro"/>
</component>
<component id="access_point_engine_misc_api" name="Access Point Engine Misc API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/ipcm_plat/access_point_engine_misc_api/group"/>
</component>
<component id="bearer_settings_plugin_api" name="Bearer Settings Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/ipcm_plat/bearer_settings_plugin_api/group"/>
</component>
<component id="commsdat_wlan_api" name="CommsDat WLAN API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/ipcm_plat/commsdat_wlan_api/group"/>
</component>
<component id="connection_monitor_extension_api" name="Connection Monitor Extension API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/ipcm_plat/connection_monitor_extension_api/group"/>
</component>
<component id="connection_ui_utilities_api" name="Connection UI Utilities API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/ipcm_plat/connection_ui_utilities_api/group"/>
</component>
<component id="disconnect_dialog_api" name="Disconnect Dialog API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/ipcm_plat/disconnect_dialog_api/group"/>
</component>
<component id="disconnect_dialog_disable_api" name="Disconnect Dialog Disable API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/ipcm_plat/disconnect_dialog_disable_api/group"/>
</component>
<component id="extended_connection_settings_api" name="Extended Connection Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/ipcm_plat/extended_connection_settings_api/group"/>
</component>
<component id="pdpcontextmanager2_reset_factory_settings_api" name="PDP Context Manager 2 Reset Factory Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/ipcm_plat/pdpcontextmanager2_reset_factory_settings_api/group"/>
</component>
<component id="pdpcontextmanager2_settings_api" name="PDP Context Manager 2 Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/ipcm_plat/pdpcontextmanager2_settings_api/group"/>
</component>
<component id="mpm_connect_screen_api" name="MPM Connect Screen API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/ipcm_plat/mpm_connect_screen_api/group"/>
</component>
<component id="flextimer_api" name="Flex Timer API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/ipcm_plat/flextimer_api/group"/>
</component>
<component id="mpm_vpn_toggle_api" name="MPM VPN Toggle API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/ipcm_plat/mpm_vpn_toggle_api/group"/>
</component>
</collection>
<collection id="ipcm_pub" name="IP Connectivity Management Public Interfaces" level="api">
<component id="connection_settings_api" name="Connection Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/ipcm_pub/connection_settings_api/group"/>
</component>
<component id="access_point_engine_api" name="Access Point Engine API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/ipcm_pub/access_point_engine_api/group"/>
</component>
<component id="access_point_settings_handler_api" name="Access Point Settings Handler API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/ipcm_pub/access_point_settings_handler_api/group"/>
</component>
<component id="data_connection_log_counters_api" name="Data Connection Log Counters API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/ipcm_pub/data_connection_log_counters_api/group"/>
</component>
<component id="connection_monitor_server_api" name="Connection Monitor Server API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/ipcm_pub/connection_monitor_server_api/group"/>
</component>
<component id="connection_settings_ui_api" name="Connection Settings UI API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/ipcm_pub/connection_settings_ui_api/group"/>
</component>
<component id="agent_dialog_api" name="Agent Dialog API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/ipcm_pub/agent_dialog_api/group"/>
</component>
<component id="extendedconnpref_api" name="Extended Connection Preferences API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/ipcm_pub/extendedconnpref_api/group"/>
</component>
</collection>
<collection id="alwayson_net_plugin" name="Always Online Net Plugin" level="server">
<component id="pdpcontextmanager2" name="PDP Context Manager 2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/alwayson_net_plugin/pdpcontextmanager2/group"/>
</component>
</collection>
<collection id="apengine" name="Access Point Engine" level="framework">
<component id="apeng" name="Access Point Engine" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/apengine/apeng/group"/>
</component>
<component id="apsettingshandlerui" name="Access Point Settings Handler UI" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/apengine/apsettingshandlerui/group"/>
</component>
</collection>
<collection id="bearermanagement" name="Bearer Management" level="framework">
<component id="mpm" name="Mobility Policy Manager" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/bearermanagement/mpm/group"/>
</component>
<component id="extendedconnpref" name="Extended Connection Preferences" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/bearermanagement/extendedconnpref/group"/>
</component>
<component id="s60mcpr" name="S60 Meta-Connection Provider" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/bearermanagement/S60MCPR/group"/>
</component>
</collection>
<collection id="cmmanager" name="Connection Method Manager" level="framework">
<component id="cmmgr" name="CM Manager" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/cmmanager/cmmgr/group"/>
</component>
<component id="connection_settings_shim" name="Connection Settings Shim" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/cmmanager/connection_settings_shim" qt:proFile="connection_settings_shim.pro"/>
</component>
<component id="cmapplsettingsui" name="Connection Settings UI" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/cmmanager/cmapplsettingsui" qt:proFile="cmapplsettingsui.pro"/>
</component>
<component id="cpipsettingsplugin" name="Connection Settings IP Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/cmmanager/cpipsettingsplugin" qt:proFile="cpipsettingsplugin.pro"/>
</component>
<component id="cpdestinationplugin" name="CP Destination Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/cmmanager/cpdestinationplugin" qt:proFile="cpdestinationplugin.pro"/>
</component>
<component id="cppacketdataapplugin" name="CP Packet Data AP Pplugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/cmmanager/cppacketdataapplugin" qt:proFile="cppacketdataapplugin.pro"/>
</component>
<component id="cpwlanapplugin" name="CP WLAN AP Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/cmmanager/cpwlanapplugin" qt:proFile="cpwlanapplugin.pro"/>
</component>
</collection>
<collection id="connectionmonitoring" name="Connection Monitoring" level="server">
<component id="connmon" name="Connection Monitor" filter="s60" target="device" purpose="optional">
<!-- either split into two components, or #include from a common bld.inf -->
<unit bldFile="/mw/ipconnmgmt/connectionmonitoring/connmon/connectionmonitor/group"/>
<unit bldFile="/mw/ipconnmgmt/connectionmonitoring/connmon/dataconnectionlogger/group"/>
</component>
<component id="connmonext" name="Connection Monitor Extension API" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/connectionmonitoring/connmonext/group"/>
</component>
<component id="cellularindicatorplugin" name="Cellular Indicator Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/connectionmonitoring/cellularindicatorplugin" qt:proFile="cellularindicatorplugin.pro"/>
</component>
<component id="indicatorobserver" name="Indicator Observer" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/connectionmonitoring/indicatorobserver" qt:proFile="indicatorobserver.pro"/>
</component>
<component id="connectionmonitoringnview" name="Connection View" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/connectionmonitoring/connectionview" qt:proFile="connectionview.pro"/>
</component>
</collection>
<collection id="connectionutilities" name="Connection Utilities" level="utils">
<component id="connectiondialogs" name="Connection Dialogs" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/connectionutilities/connectiondialogs/group"/>
</component>
<component id="confirmqueries" name="Confirm Queries" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/connectionutilities/confirmqueries" qt:proFile="confirmqueries.pro"/>
</component>
</collection>
<collection id="keepalive" name="Keep Alive" level="server">
<component id="flextimer" name="Flex Timer" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/keepalive/flextimer/group"/>
</component>
</collection>
<collection id="dbcreator" name="DB Creator" level="utils">
<component id="commsdatcreator" name="Comms Database Creator" introduced="9.3" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/dbcreator/commsdatcreator/group"/>
</component>
<component id="commsdatcreatorrfsplugin" name="Comms Database Creator RFS Plugin" introduced="9.3" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/dbcreator/commsdatcreatorrfsplugin/group"/>
</component>
<component id="commsdatstartup" name="Comms Database Startup" introduced="9.3" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/dbcreator/commsdatstartup/group"/>
</component>
<component id="dbcreatorexe" name="DB Creator" introduced="9.3" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/dbcreator/dbcreatorexe/group"/>
</component>
<component id="dbcreator_conf" name="DB Creator Config" introduced="9.3" filter="s60" class="config" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/dbcreator/conf"/>
</component>
</collection>
<collection id="ipconnmgmt_info" name="IP Connectivity Management Info" level="api">
<component id="ipcm_data" name="IP Connectivity Management Data" filter="s60" class="config" target="device" purpose="optional">
<unit bldFile="/mw/ipconnmgmt/data"/>
</component>
</collection>
</package>
<package id="netprotocols" level="generic" tech-domain="dc" levels="plugin framework server generic specific" name="High-level Internet Protocols">
<collection id="netprotocols_plat" name="High-level Internet Protocols Platform Interfaces" level="specific">
<component id="cookie_manager_api" name="Cookie Manager API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/netprotocols/netprotocols_plat/cookie_manager_api/group"/>
</component>
<component id="http_cache_mgr_api" name="HTTP Cache Manager API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/netprotocols/netprotocols_plat/http_cache_mgr_api/group"/>
</component>
<component id="http_filters_api" name="HTTP Filters API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/netprotocols/netprotocols_plat/http_filters_api/group"/>
</component>
</collection>
<collection id="httpfilters" name="HTTP Filters" level="plugin">
<component id="httpfiltercommon" name="HTTP Filter Common" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/netprotocols/httpfilters/httpfiltercommon/group"/>
</component>
<component id="cookie" name="Cookie Filter" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/netprotocols/httpfilters/cookie/group"/>
</component>
<component id="deflatefilter" name="Deflate Filter" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/netprotocols/httpfilters/deflatefilter/group"/>
</component>
<component id="httpfilterauthentication" name="Authentication Filter" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/netprotocols/httpfilters/httpfilterauthentication/group"/>
</component>
<component id="httpfilterconnhandler" name="Connection Handler Fitler" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/netprotocols/httpfilters/httpfilterconnhandler/group"/>
</component>
<component id="httpfilteriop" name="HTTP IOP Filter" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/netprotocols/httpfilters/httpfilteriop/group"/>
</component>
<component id="httpfilterproxy" name="HTTP Proxy Filter" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/netprotocols/httpfilters/httpfilterproxy/group"/>
</component>
</collection>
<collection id="applayerprotocols" name="Application Layer Protocols" level="server">
<component id="httptransportfw" name="HTTP Transport Framework" introduced="6.2" purpose="optional" target="device">
<unit bldFile="/mw/netprotocols/applayerprotocols/httptransportfw/group" mrp="/mw/netprotocols/applayerprotocols/httptransportfw/group/http_transport-framework.mrp"/>
</component>
<component id="httpexamples" name="HTTP Examples" introduced="6.2" purpose="development" target="device">
<unit bldFile="/mw/netprotocols/applayerprotocols/httpexamples/group" mrp="/mw/netprotocols/applayerprotocols/httpexamples/group/http_examples.mrp"/>
</component>
<component id="wappushsupport" name="WAP Push Support" introduced="6.2" purpose="optional" target="device">
<unit bldFile="/mw/netprotocols/applayerprotocols/wappushsupport/Group" mrp="/mw/netprotocols/applayerprotocols/wappushsupport/Group/wap-browser_wappushsupport.mrp"/>
</component>
<component id="wapbase" name="WAP Base" introduced="6.0" purpose="optional" target="device">
<unit bldFile="/mw/netprotocols/applayerprotocols/wapbase/Group" mrp="/mw/netprotocols/applayerprotocols/wapbase/Group/wap-browser_wapbase.mrp"/>
</component>
<component id="ftpengine" name="FTP Engine" introduced="6.0" purpose="optional" target="device">
<unit bldFile="/mw/netprotocols/applayerprotocols/ftpengine/group" mrp="/mw/netprotocols/applayerprotocols/ftpengine/group/networking_ftp_e.mrp"/>
</component>
<component id="telnetengine" name="Telnet Engine" introduced="6.0" purpose="optional" target="device">
<unit bldFile="/mw/netprotocols/applayerprotocols/telnetengine/group" mrp="/mw/netprotocols/applayerprotocols/telnetengine/group/networking_telnet_e.mrp"/>
</component>
<component id="httpserviceapi" name="HTTP Service API" introduced="TB9.2" purpose="optional" target="device">
<unit bldFile="/mw/netprotocols/applayerprotocols/httpservice/group" mrp="/mw/netprotocols/applayerprotocols/httpservice/group/http_service.mrp"/>
</component>
</collection>
<collection id="applayerpluginsandutils" name="Application Layer Plugins and Utils" level="framework">
<component id="uripermissionservices" name="URI Permission Services" introduced="^2" purpose="optional" target="device">
<unit bldFile="/mw/netprotocols/applayerpluginsandutils/uripermissionservices/group" mrp="/mw/netprotocols/applayerpluginsandutils/uripermissionservices/group/application-protocols_ineturilist.mrp"/>
</component>
<component id="bookmarksupport" name="Bookmark Support" introduced="9.1" purpose="optional" target="device">
<unit bldFile="/mw/netprotocols/applayerpluginsandutils/bookmarksupport/group" mrp="/mw/netprotocols/applayerpluginsandutils/bookmarksupport/group/application-protocols_bookmarks.mrp"/>
</component>
<component id="httpprotocolplugins" name="HTTP Protocol Plugins" introduced="6.2" purpose="optional" class="plugin" target="device">
<unit bldFile="/mw/netprotocols/applayerpluginsandutils/httpprotocolplugins/group" mrp="/mw/netprotocols/applayerpluginsandutils/httpprotocolplugins/group/http_protocol-plugin.mrp"/>
</component>
<component id="httptransportplugins" name="HTTP Transport Plugins" introduced="6.2" purpose="optional" class="plugin" target="device">
<unit bldFile="/mw/netprotocols/applayerpluginsandutils/httptransportplugins/group" mrp="/mw/netprotocols/applayerpluginsandutils/httptransportplugins/group/http_transport-plugin.mrp"/>
</component>
</collection>
<collection id="netprotocols_info" name="High-level Internet Protocols Info" level="specific">
<component id="netprotocols_metadata" name="High-level Internet Protocols Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/mw/netprotocols/netprotocols_info/netprotocols_metadata/netprotocols_metadata.mrp"/>
</component>
</collection>
</package>
<package id="ipappprotocols" level="generic" tech-domain="dc" levels="plugin conn server if" name="IP App Protocols">
<collection id="ipappprotocols_plat" name="IP App Protocols Platform Interfaces" level="if">
<component id="srtp_api" name="SRTP API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipappprotocols/ipappprotocols_plat/srtp_api/group"/>
</component>
<component id="rtprtcp_api" name="RTP/RTCP API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipappprotocols/ipappprotocols_plat/rtprtcp_api/group"/>
</component>
</collection>
<collection id="rtp" name="RTP" level="server">
<component id="srtpstack" name="SRTP Stack" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/ipappprotocols/rtp/srtpstack/group"/>
</component>
<component id="rtpstack" name="RTP Stack" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/ipappprotocols/rtp/rtpstack/group"/>
</component>
</collection>
<collection id="realtimenetprots" name="Real Time Net Protocols" level="server">
<component id="symrtp" name="RTP" introduced="9.0" filter="s60" purpose="optional" target="device">
<!-- Real Time Data Protocol -->
<unit bldFile="/mw/ipappprotocols/realtimenetprots/rtp/group" mrp="/mw/ipappprotocols/realtimenetprots/rtp/group/mm-protocols_rtp.mrp"/>
</component>
<component id="sipfw" name="SIP Framework" introduced="9.2" filter="s60" purpose="optional" target="device">
<unit bldFile="/mw/ipappprotocols/realtimenetprots/sipfw/Group" mrp="/mw/ipappprotocols/realtimenetprots/sipfw/Group/mm-protocols_SIP2_Com.mrp" version="2"/>
</component>
</collection>
<collection id="sipplugins" name="SIP Plugins" level="plugin">
<component id="sippwlanplugin" name="SIP WLAN Plugin" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/ipappprotocols/sipplugins/sippwlanplugin/group"/>
</component>
<component id="sippsipsettingsui" name="SIP Settings UI" filter="s60" class="plugin" target="device" purpose="optional">
<!--<unit bldFile="sipplugins/sippsipsettingsui/group"/> -->
</component>
<component id="sippdevmgmtsipadapter" name="Device Management SIP Settings Adapter" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/ipappprotocols/sipplugins/sippdevmgmtsipadapter/group"/>
</component>
<component id="sippsystemstatemonitor" name="SIP System State Monitor" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/ipappprotocols/sipplugins/sippsystemstatemonitor/group"/>
</component>
<component id="sippsipadapter" name="SIP Adapter" introduced="^3" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/ipappprotocols/sipplugins/sippsipadapter/group"/>
</component>
</collection>
<collection id="sipproviderplugins" name="SIP Provider Plugins" level="conn">
<component id="sipprovider" name="SIP Provider" introduced="^2" filter="s60" purpose="optional" class="plugin" target="device">
<unit bldFile="/mw/ipappprotocols/sipproviderplugins/sipprovider/group" mrp="/mw/ipappprotocols/sipproviderplugins/sipprovider/group/mm-protocols_SipProvider.mrp"/>
</component>
</collection>
<collection id="ipappprotocols_info" name="IP App Protocols Info" level="if">
<component id="ipappprotocols_metadata" name="IP App Protocols Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/mw/ipappprotocols/ipappprotocols_info/ipappprotocols_metadata/ipappprotocols_metadata.mrp"/>
</component>
</collection>
</package>
<package id="wirelessacc" level="specific" tech-domain="dc" levels="framework generic ui" name="Wireless Access">
<collection id="hsfw_plat" name="HotSpot Framework Platform Interfaces" level="ui">
<component id="hotspot_framework_client_api" name="HotSpot Framework Client API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/wirelessacc/hsfw_plat/hotspot_framework_client_api/group"/>
</component>
<component id="internet_connectivity_test_service_api" name="Internet Connectivity Test Service API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/wirelessacc/hsfw_plat/internet_connectivity_test_service_api/group"/>
</component>
<component id="internet_connectivity_test_service_settings_api" name="Internet Connectivity Test Service Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/wirelessacc/hsfw_plat/internet_connectivity_test_service_settings_api/group"/>
</component>
<component id="hotspot_framework_client_plugin_api" name="HotSpot Framework Client Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/wirelessacc/hsfw_plat/hotspot_framework_client_plugin_api/group"/>
</component>
</collection>
<collection id="hotspotfw" name="HotSpot Framework" level="framework">
<!-- collection is really a component. Needs to move down a dir -->
<component id="hotspotfw_build" name="HotSpot Framework Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/wirelessacc/hotspotfw/group"/>
</component>
</collection>
<collection id="wlanutilities" name="WLAN Utilities" level="generic">
<component id="wlanqtutilities" name="WLAN Qt Utilities" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/wirelessacc/wlanutilities/wlanqtutilities" qt:proFile="wlanqtutilities.pro"/>
</component>
<component id="eapwizard" name="EAP Wizard" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/wirelessacc/wlanutilities/eapwizard" qt:proFile="eapwizard.pro"/>
</component>
<component id="wpswizard" name="WPS Wizard" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/wirelessacc/wlanutilities/wpswizard" qt:proFile="wpswizard.pro"/>
</component>
<component id="wlanwizard" name="WLAN Wizard" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/wirelessacc/wlanutilities/wlanwizard" qt:proFile="wlanwizard.pro"/>
</component>
<component id="wlansniffer" name="WLAN Sniffer" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/wirelessacc/wlanutilities/wlansniffer" qt:proFile="wlansniffer.pro"/>
</component>
<component id="wlanentryplugin" name="WLAN Entry Plugin" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/wirelessacc/wlanutilities/wlanentryplugin" qt:proFile="wlanentryplugin.pro"/>
</component>
<component id="wlanindicatorplugin" name="WLAN Indicator Plugin" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/wirelessacc/wlanutilities/wlanindicatorplugin" qt:proFile="wlanindicatorplugin.pro"/>
</component>
<component id="cpwlansettingsplugin" name="WLAN Settings Control Panel Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/wirelessacc/wlanutilities/cpwlansettingsplugin" qt:proFile="cpwlansettingsplugin.pro"/>
</component>
<component id="wlanlogin" name="WLAN Login" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/wirelessacc/wlanutilities/wlanlogin" qt:proFile="wlanlogin.pro"/>
</component>
</collection>
</package>
<package id="vpnclient" level="specific" tech-domain="dc" levels="engine ui api" name="VPN Client">
<collection id="vpnc_plat" name="VPN Client Platform Interfaces" level="api">
<component id="vpnapi" name="VPN API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/vpnclient/vpnc_plat/vpnapi/group"/>
</component>
</collection>
<collection id="vpnapiimpl" name="VPN API Implementation" level="engine">
<component id="vpnapi_impl" name="VPN Implementation" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/vpnclient/vpnapiimpl/group"/>
</component>
</collection>
</package>
<package id="ipappsrv" level="specific" tech-domain="vc" levels="framework generic server conn plugin" name="IP App Services">
<collection id="ipappsrv_plat" name="IP App Services Platform Interfaces" level="plugin">
<component id="transcoder_api" name="Transcoder API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipappsrv/ipappsrv_plat/transcoder_api/group"/>
</component>
<component id="comms_event_api" name="Comms Event API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipappsrv/ipappsrv_plat/comms_event_api/group"/>
</component>
<component id="floor_control_api" name="Floor Control API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipappsrv/ipappsrv_plat/floor_control_api/group"/>
</component>
<component id="media_control_api" name="Media Control API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipappsrv/ipappsrv_plat/media_control_api/group"/>
</component>
<component id="multimedia_comms_api" name="Multimedia Comms API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipappsrv/ipappsrv_plat/multimedia_comms_api/group"/>
</component>
<component id="nat_settings_api" name="NAT Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/ipappsrv/ipappsrv_plat/nat_settings_api/group"/>
</component>
</collection>
<collection id="natfw" name="NAT Framework" level="framework">
<!-- collection is really a component. Need to move down a directory -->
<component id="natfw_build" name="NAT Framework Build" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/ipappsrv/natfw/group"/>
</component>
</collection>
<collection id="multimediacommscontroller" name="Multimedia Comms Controller" level="conn">
<!-- collection is really a component. Need to move down a directory -->
<component id="multimediacommscontroller_build" name="Multimedia Comms Controller Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/ipappsrv/multimediacommscontroller/group"/>
</component>
</collection>
<collection id="multimediacommsengine" name="Multimedia Comms Engine" level="generic">
<!-- collection is really a component. Need to move down a directory -->
<component id="multimediacommsengine_build" name="Multimedia Comms Engine Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/ipappsrv/multimediacommsengine/group"/>
</component>
</collection>
<collection id="natplugins" name="NAT Plugins" level="plugin">
<component id="natpcliprovisioningnatfwadapter" name="Client Provisioning NAT Framework Traversal Adapter" introduced="^2" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/ipappsrv/natplugins/natpcliprovisioningnatfwadapter/group"/>
</component>
<component id="natpdevmgmtnatfwadapter" name="Device Management NAT Framework Traversal Adapter" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/ipappsrv/natplugins/natpdevmgmtnatfwadapter/group"/>
</component>
<component id="natptraversalcontroller" name="NAT Traversal Controller" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/ipappsrv/natplugins/natptraversalcontroller/group"/>
</component>
<component id="natpnatfwsdpprovider" name="NAT Framework SDP Provider" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/ipappsrv/natplugins/natpnatfwsdpprovider/group"/>
</component>
</collection>
<collection id="ipappsrv_info" name="IP App Services Info" level="plugin">
<component id="ipappsrv_build" name="IP App Services Build" filter="s60" target="device" purpose="optional">
<!-- remove the #includes from here and rename as xxx ROM or move iby/sis files into another component-->
<unit mrp="/mw/ipappsrv/group"/>
</component>
</collection>
</package>
<package id="phonesrv" level="specific" tech-domain="vc" levels="utils framework server ui specific" name="Telephony and SIM Services">
<collection id="phonesrv_plat" name="Telephony and SIM Services Platform Interfaces" level="specific">
<component id="string_parser_api" name="String Parser API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/string_parser_api/group"/>
</component>
<component id="cbs_mcn_client_api" name="CBS MCN Client API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/cbs_mcn_client_api/group"/>
</component>
<component id="converged_call_engine_api" name="Converged Call Engine API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/converged_call_engine_api/group"/>
</component>
<component id="aiw_dial_data_consumer_api" name="AIW Dial Data Consumer API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/aiw_dial_data_consumer_api/group"/>
</component>
<component id="phone_client_ussd_api" name="Phone Client USSD API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/phone_client_ussd_api/group"/>
</component>
<component id="sat_refresh_api" name="SAT Refresh API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/sat_refresh_api/group" filter="!test"/>
</component>
<component id="network_handling_engine_api" name="Network Handling Engine API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/network_handling_engine_api/group"/>
</component>
<component id="phone_client_emergency_call_api" name="Phone Client Emergency Call API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/phone_client_emergency_call_api/group"/>
</component>
<component id="sat_configuration_api" name="SAT Configuration API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/sat_configuration_api/group"/>
</component>
<component id="dial_utils_api" name="Dial Utils API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/dial_utils_api/group"/>
</component>
<component id="phone_client_image_handler_api" name="Phone Client Image Handler API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/phone_client_image_handler_api/group"/>
</component>
<component id="phone_client_messenger_api" name="Phone Client Messenger API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/phone_client_messenger_api/group"/>
</component>
<component id="sat_client_api" name="SAT Client API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/sat_client_api/group" filter="!test"/>
</component>
<component id="phone_client_api" name="Phone Client API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/phone_client_api/group"/>
</component>
<component id="sat_service_api" name="SAT Service API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/sat_service_api/group" filter="!test"/>
</component>
<component id="cbs_message_api" name="CBS Message API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/cbs_message_api/group"/>
</component>
<component id="phone_client_server_information_api" name="Phone Client Server Information API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/phone_client_server_information_api/group"/>
</component>
<component id="phone_client_ussd_internal_api" name="Phone Client USSD Internal API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/phone_client_ussd_internal_api/group"/>
</component>
<component id="phone_client_command_handler_api" name="Phone Client Command Handler API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/phone_client_command_handler_api/group"/>
</component>
<component id="phone_client_notify_api" name="Phone Client Notify API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/phone_client_notify_api/group"/>
</component>
<component id="phone_client_utility_api" name="Phone Client Utility API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/phone_client_utility_api/group"/>
</component>
<component id="telephony_network_information_api" name="Telephony Network Information API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/telephony_network_information_api/group"/>
</component>
<component id="secondary_display_sat_api" name="Secondary Display SAT API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/secondary_display_sat_api/group"/>
</component>
<component id="callui_reconnect_query_api" name="CallUI Reconnect Query API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/callui_reconnect_query_api/group"/>
</component>
<component id="service_provider_settings_api" name="Service Provider Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/service_provider_settings_api/group"/>
</component>
<component id="converged_call_provider_api" name="Converged Call Provider API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/converged_call_provider_api/group"/>
</component>
<component id="incoming_call_monitor_api" name="Incoming Call Monitor API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/incoming_call_monitor_api/group"/>
</component>
<component id="default_emergency_numbers_api" name="Default Emergency Numbers API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/default_emergency_numbers_api/group"/>
</component>
<component id="cenrep_database_api" name="Central Repository Database API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/cenrep_database_api/group"/>
</component>
<component id="ss_settings_api" name="SS Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/ss_settings_api/group"/>
</component>
<component id="phone_settings_observer_api" name="Phone Settings Observer API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/phone_settings_observer_api/group"/>
</component>
<component id="phone_settings_notes_ui_api" name="Phone Settings Notes UI API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/phone_settings_notes_ui_api/group"/>
</component>
<component id="phone_settings_api" name="Phone Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/phone_settings_api/group"/>
</component>
<component id="voice_mailbox_number_api" name="Voice Mailbox Number API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/voice_mailbox_number_api/group"/>
</component>
<component id="voice_mailbox_settings_api" name="Voice Mailbox Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/voice_mailbox_settings_api/group"/>
</component>
<component id="call_information_api" name="Call Information API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/call_information_api/group" filter="!test"/>
</component>
<component id="call_remote_party_information_api" name="Call Remote Party Information API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/call_remote_party_information_api/group" filter="!test"/>
</component>
<component id="telephony_mediator_api" name="Telephony Mediator API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/telephony_mediator_api/group" filter="!test"/>
</component>
<component id="dialpad_api" name="Dialpad API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/dialpad_api/group"/>
</component>
<component id="phone_settings_ui_notes_api" name="Phone Settings UI Notes API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonesrv_plat/phone_settings_ui_notes_api/group"/>
</component>
</collection>
<collection id="telutils" name="Telephony Utils" level="utils">
<component id="phoneparser" name="Phone Parser" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/telutils/phoneparser/group"/>
</component>
<component id="telephonyservice" name="Telephony Service" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/telutils/telephonyservice/group"/>
</component>
<component id="xqtelephonyservice" name="X Qt Telephony Service" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/telutils/xqtelephonyservice" qt:proFile="xqtelephonyservice.pro"/>
</component>
<component id="dialpad" name="Dial Pad" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/telutils/dialpad" qt:proFile="dialpad.pro"/>
</component>
<component id="keysequencerecognitionservice" name="Key Sequence Recognition Service" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/telutils/keysequencerecognitionservice" qt:proFile="keysequencerecognitionservice.pro"/>
</component>
</collection>
<collection id="cbs" name="Cellular Baseband Services" level="utils">
<component id="cbsserver" name="CBS Server" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/cbs/cbsserver/group"/>
</component>
</collection>
<collection id="cellular" name="Cellular" level="server">
<component id="telephonysettings" name="Telephony Settings" filter="s60" purpose="development" target="device">
<unit bldFile="/mw/phonesrv/cellular/telephonysettings/group" filter="!test"/>
</component>
<component id="psetwrapper" name="Provider Settings Wrapper" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- need to move to own component, not under sssettings -->
<unit bldFile="/mw/phonesrv/cellular/telephonysettings/xqbindings/psetwrapper" qt:proFile="psetwrapper.pro"/>
</component>
<component id="sssettings" name="Supplementary Service Settings" filter="s60" purpose="development" target="device">
<unit bldFile="/mw/phonesrv/cellular/sssettings/group" filter="!test"/>
</component>
<component id="sssettingswrapper" name="Supplementary Service Settings Wrapper" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- need to move to own component, not under sssettings -->
<unit bldFile="/mw/phonesrv/cellular/sssettings/xqbindings/sssettingswrapper" qt:proFile="sssettingswrapper.pro"/>
</component>
<component id="psetnotesui" name="Phone Settings Notes UI" filter="s60" purpose="development" target="device">
<unit bldFile="/mw/phonesrv/cellular/psetnotesui/group" filter="!test"/>
</component>
<component id="psuinotes" name="Phone Settings Notes UI" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/cellular/psuinotes" qt:proFile="psuinotes.pro"/>
</component>
<component id="servicerequest" name="Service Request" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/cellular/servicerequest/group"/>
</component>
</collection>
<collection id="convergedcallengine" name="Converged Call Engine" level="framework">
<component id="callprovider" name="Call Provider" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/convergedcallengine/callprovider/group"/>
</component>
<component id="cce" name="CCE" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/convergedcallengine/cce/group" filter="!test"/>
</component>
<component id="spsettings" name="Service Provider Settings" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/convergedcallengine/spsettings/group" filter="!test"/>
</component>
<component id="cenrepdatabase" name="CCE Cenrep Database" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/convergedcallengine/cenrepdatabase/group"/>
</component>
<component id="serviceselector" name="Service Selector" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/convergedcallengine/serviceselector/group"/>
</component>
</collection>
<collection id="networkhandling" name="Network Handling" level="framework">
<component id="networkhandlingengine" name="Network Handling Engine" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/networkhandling/networkhandlingengine/group"/>
</component>
</collection>
<collection id="phoneclientserver" name="Phone Client/Server" level="server">
<component id="enpolicy" name="Emergency Number Policy" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phoneclientserver/enpolicy/group"/>
</component>
<component id="aiwdialdata" name="AIW Dial Data" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phoneclientserver/aiwdialdata/group" filter="!test"/>
</component>
<component id="dialutils" name="Dial Utils" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phoneclientserver/dialutils/group" filter="!test"/>
</component>
<component id="phoneclient" name="Phone Client" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phoneclientserver/phoneclient/group" filter="!test"/>
</component>
<component id="phoneserver" name="Phone Server" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phoneclientserver/phoneserver/group"/>
</component>
</collection>
<collection id="phonecmdhandler" name="Phone Command Handler" level="generic">
<component id="phonecmdhnlr" name="Phone Command Handler" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/phonecmdhandler/phonecmdhnlr/group"/>
</component>
</collection>
<collection id="satengine" name="SAT Engine" level="server">
<component id="satserver" name="SAT Server" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/satengine/satserver/group"/>
</component>
</collection>
<collection id="satui" name="SAT UI" level="ui">
<component id="satshellcontroller" name="SAT Shell Controller" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/satui/satshellcontroller/group"/>
</component>
<component id="satapp" name="SAT Application" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/satui/satapp" qt:proFile="satapp.pro"/>
</component>
</collection>
<collection id="vmbx" name="Voice Mailbox" level="ui">
<component id="vmbxcpplugin" name="Voice Mailbox CP Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/vmbx/vmbxcpplugin" qt:proFile="vmbxcpplugin.pro"/>
</component>
<component id="vmbxengine" name="Voice Mailbox Engine" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/phonesrv/vmbx/vmbxengine" qt:proFile="vmbxengine.pro"/>
</component>
</collection>
</package>
<package id="messagingmw" level="specific" tech-domain="pr" levels="stack support fw api" name="Messaging Middleware">
<collection id="msgfw_plat" name="Messaging Middleware Platform Interfaces" level="api">
<component id="always_online_plugin_api" name="Always Online Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/messagingmw/msgfw_plat/always_online_plugin_api/group"/>
</component>
<component id="always_online_client_api" name="Always Online Client API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/messagingmw/msgfw_plat/always_online_client_api/group"/>
</component>
<component id="msg_common_utils_api" name="Messaging Common Utils API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/messagingmw/msgfw_plat/msg_common_utils_api/group"/>
</component>
<component id="muiu_utils_api" name="Messaging Center UI Utilities API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/messagingmw/msgfw_plat/muiu_utils_api/group"/>
</component>
</collection>
<collection id="messagingfw" name="Messaging Framework" level="fw">
<!-- should break this collection up into smaller related collections -->
<component id="send_ui_api" name="Send UI API" deprecated="^4" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/messagingmw/messagingfw/deprecate/send_ui_api/group"/>
</component>
<component id="send_ui_plugin_api" name="Send UI Plug-in API" deprecated="^4" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/messagingmw/messagingfw/deprecate/send_ui_plugin_api/group"/>
</component>
<component id="send_ui_datautils_api" name="Send UI Data Utils API" deprecated="^4" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/messagingmw/messagingfw/deprecate/send_ui_datautils_api/group"/>
</component>
<component id="alwaysonline" name="Always Online Server" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/messagingmw/messagingfw/alwaysonline/group"/>
</component>
<component id="msgcommonutils" name="Messaging Common Utils" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/messagingmw/messagingfw/msgcommonutils/group"/>
</component>
<component id="senduiservices" name="Send UI Services" introduced="^2" deprecated="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/messagingmw/messagingfw/deprecate/senduiservices/group"/>
</component>
<component id="muiuutils" name="Messaging Center UI Utilities" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/messagingmw/messagingfw/muiuutils/group"/>
</component>
<component id="scheduledsendmtm" name="Scheduled Send MTM" introduced="6.0" purpose="optional" class="plugin" target="device">
<unit bldFile="/mw/messagingmw/messagingfw/scheduledsendmtm/group" mrp="/mw/messagingmw/messagingfw/scheduledsendmtm/group/messaging_schedulesend.mrp"/>
</component>
<component id="msgsrvnstore" name="Message Server and Store" purpose="optional" target="device">
<unit bldFile="/mw/messagingmw/messagingfw/msgsrvnstore/group" mrp="/mw/messagingmw/messagingfw/msgsrvnstore/group/messaging_framework.mrp"/>
</component>
<component id="biomsgfw" name="BIO Messaging Framework" introduced="6.0" purpose="optional" target="device">
<unit bldFile="/mw/messagingmw/messagingfw/biomsgfw/group" mrp="/mw/messagingmw/messagingfw/biomsgfw/group/messaging_biomsg.mrp"/>
</component>
<component id="msgconf" name="Messaging Config" introduced="^2" purpose="optional" class="config" target="device">
<unit bldFile="/mw/messagingmw/messagingfw/msgconf/group" mrp="/mw/messagingmw/messagingfw/msgconf/group/messaging_config.mrp"/>
</component>
<component id="watcherfw" name="Watcher Framework" purpose="optional" target="device">
<unit bldFile="/mw/messagingmw/messagingfw/watcherfw/group" mrp="/mw/messagingmw/messagingfw/watcherfw/group/messaging_watcher.mrp"/>
</component>
<component id="msgtest" name="Messaging Test" purpose="development" target="device">
<unit bldFile="/mw/messagingmw/messagingfw/msgtest/group" mrp="/mw/messagingmw/messagingfw/msgtest/group/messaging_test.mrp"/>
</component>
<component id="sendas" name="Send As" purpose="optional" target="device">
<unit bldFile="/mw/messagingmw/messagingfw/sendas/group" mrp="/mw/messagingmw/messagingfw/sendas/group/messaging_sendas2.mrp"/>
</component>
<component id="msgurlhandler" name="Message URL Handler" introduced="7.0" purpose="optional" target="device">
<unit bldFile="/mw/messagingmw/messagingfw/msgurlhandler/group" mrp="/mw/messagingmw/messagingfw/msgurlhandler/group/messaging_urlhandler.mrp"/>
</component>
<component id="wappushfw" name="WAP Push Framework" introduced="6.1" purpose="optional" target="device">
<unit bldFile="/mw/messagingmw/messagingfw/wappushfw/group" mrp="/mw/messagingmw/messagingfw/wappushfw/group/wap-browser_wappush.mrp"/>
</component>
<component id="suplsmshandler" name="SUPL SMS Handler" introduced="^2" purpose="development" class="plugin" target="device">
<unit bldFile="/mw/messagingmw/messagingfw/suplsmshandler/group" mrp="/mw/messagingmw/messagingfw/suplsmshandler/group/lbs_suplsmstrigger.mrp"/>
</component>
<component id="suplwappushhandler" name="SUPL WAP Push Handler" introduced="^2" purpose="optional" class="plugin" target="device">
<unit bldFile="/mw/messagingmw/messagingfw/suplwappushhandler/group" mrp="/mw/messagingmw/messagingfw/suplwappushhandler/group/lbs_suplwappush.mrp"/>
</component>
</collection>
<collection id="messagingmw_info" name="Messaging Middleware Info" level="api">
<component id="messagingmw_metadata" name="Messaging Middleware Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/mw/messagingmw/messagingmw_info/messagingmw_metadata/messagingmw_metadata.mrp"/>
</component>
</collection>
</package>
<package id="imsrv" level="specific" tech-domain="pr" levels="plugin framework server generic specific" name="Instant Messaging and Presence Services">
<collection id="imsrv_plat" name="Instant Messaging and Presence Services Platform Interfaces" level="specific">
<component id="ximp_core_data_model_api" name="XIMP Core Data Model API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imsrv_plat/ximp_core_data_model_api/group"/>
</component>
<component id="ximp_presence_protocol_plugin_host_api" name="XIMP Presence Protocol Plug-in Host API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imsrv_plat/ximp_presence_protocol_plugin_host_api/group"/>
</component>
<component id="ximp_presence_data_model_api" name="XIMP Presence Data Model API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imsrv_plat/ximp_presence_data_model_api/group"/>
</component>
<component id="ximp_presence_protocol_plugin_api" name="XIMP Presence Protocol Plug-in API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imsrv_plat/ximp_presence_protocol_plugin_api/group"/>
</component>
<component id="ximp_presence_management_api" name="XIMP Presence Management API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imsrv_plat/ximp_presence_management_api/group"/>
</component>
<component id="ximp_core_protocol_plugin_host_api" name="XIMP Core Protocol Plug-in Host API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imsrv_plat/ximp_core_protocol_plugin_host_api/group"/>
</component>
<component id="ximp_core_management_api" name="XIMP Core Management API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imsrv_plat/ximp_core_management_api/group"/>
</component>
<component id="ximp_presence_base_api" name="XIMP Presence Base API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imsrv_plat/ximp_presence_base_api/group"/>
</component>
<component id="ximp_core_protocol_plugin_api" name="XIMP Core Protocol Plug-in API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imsrv_plat/ximp_core_protocol_plugin_api/group"/>
</component>
<component id="ximp_core_base_api" name="XIMP Core Base API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imsrv_plat/ximp_core_base_api/group"/>
</component>
<component id="ximp_presence_cache_api" name="XIMP Presence Cache API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imsrv_plat/ximp_presence_cache_api/group"/>
</component>
<component id="ximp_core_feature_plugin_api" name="XIMP Core Feature Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imsrv_plat/ximp_core_feature_plugin_api/group"/>
</component>
<component id="ximp_im_protocol_plugin_host_api" name="XIMP IM Protocol Plugin Host API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imsrv_plat/ximp_im_protocol_plugin_host_api/group"/>
</component>
<component id="ximp_im_data_model_api" name="XIMP IM Data Model API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imsrv_plat/ximp_im_data_model_api/group"/>
</component>
<component id="ximp_im_protocol_plugin_api" name="XIMP IM Protocol Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imsrv_plat/ximp_im_protocol_plugin_api/group"/>
</component>
<component id="ximp_im_management_api" name="XIMP IM Management API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imsrv_plat/ximp_im_management_api/group"/>
</component>
<component id="ximp_im_base_api" name="XIMP IM Base API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imsrv_plat/ximp_im_base_api/group"/>
</component>
<component id="ximp_search_protocol_plugin_host_api" name="XIMP Search Protocol Plugin Host API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imsrv_plat/ximp_search_protocol_plugin_host_api/group"/>
</component>
<component id="ximp_search_data_model_api" name="XIMP Search Data Model API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imsrv_plat/ximp_search_data_model_api/group"/>
</component>
<component id="ximp_search_protocol_plugin_api" name="XIMP search Protocol Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imsrv_plat/ximp_search_protocol_plugin_api/group"/>
</component>
<component id="ximp_search_management_api" name="XIMP Search Management API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imsrv_plat/ximp_search_management_api/group"/>
</component>
<component id="ximp_search_base_api" name="XIMP Search Base API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imsrv_plat/ximp_search_base_api/group"/>
</component>
<component id="xmpp_settings_api" name="XMPP Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imsrv_plat/xmpp_settings_api/group"/>
</component>
<component id="im_cache_client_api" name="IM Cache Client API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imsrv_plat/im_cache_client_api/group"/>
</component>
<component id="im_cache_server_api" name="IM Cache Server API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imsrv_plat/im_cache_server_api/group"/>
</component>
<component id="presence_avabilitytext" name="Presence Availability Text" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imsrv_plat/presence_avabilitytext/group"/>
</component>
</collection>
<collection id="ximpfw" name="XIMP Framework" level="framework">
<!-- collection is really a component. Needs to be moved down a directory -->
<component id="ximpfw_build" name="XIMP Framework Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/ximpfw/group"/>
</component>
</collection>
<collection id="imservices" name="IM Services" level="generic">
<component id="imfeatureplugin" name="IM Feature Plugin" introduced="^2" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imservices/imfeatureplugin/group"/>
</component>
<component id="searchfeatureplugin" name="Search Feature Plugin" introduced="^2" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imservices/searchfeatureplugin/group"/>
</component>
<component id="xmppsettingsapi" name="XMPP Settings API" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imservices/xmppsettingsapi/group"/>
</component>
<component id="xmppsettingsfetcher" name="XMPP Settings Fetcher" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imservices/xmppsettingsfetcher/group"/>
</component>
<component id="instantmessagingcache" name="Instant Messaging Cache" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/imservices/instantmessagingcache/group"/>
</component>
</collection>
<collection id="brandingserver" name="Branding Server" level="specific">
<!-- collection is really a component. Needs to be moved down a directory -->
<component id="brandingserver_build" name="Branding Server Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/imsrv/brandingserver/group"/>
</component>
</collection>
</package>
<package id="legacypresence" level="specific" tech-domain="pr" levels="engine fw ui" name="Legacy Presence Services">
<collection id="pressrv_plat" name="Legacy Presence Services Platform Interfaces" level="ui">
<component id="presence_list_api" name="Presence List API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/legacypresence/pressrv_plat/presence_list_api/group"/>
</component>
<component id="watcher_info_api" name="Watcher Info API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/legacypresence/pressrv_plat/watcher_info_api/group"/>
</component>
<component id="simple_documents_api" name="SIMPLE Documents API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/legacypresence/pressrv_plat/simple_documents_api/group"/>
</component>
<component id="authorization_api" name="Authorization API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/legacypresence/pressrv_plat/authorization_api/group"/>
</component>
<component id="xdm_protocol_plugin_api" name="XDM Protocol Plug-in API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/legacypresence/pressrv_plat/xdm_protocol_plugin_api/group"/>
</component>
<component id="watcher_api" name="Watcher API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/legacypresence/pressrv_plat/watcher_api/group"/>
</component>
<component id="xdm_api" name="XDM API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/legacypresence/pressrv_plat/xdm_api/group"/>
</component>
<component id="registration_api" name="Registration API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/legacypresence/pressrv_plat/registration_api/group"/>
</component>
<component id="publisher_api" name="Publisher API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/legacypresence/pressrv_plat/publisher_api/group"/>
</component>
<component id="messaging_connection_manager_api" name="Messaging Connection Manager API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/legacypresence/pressrv_plat/messaging_connection_manager_api/group"/>
</component>
<component id="xdm_settings_api" name="XDM Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/legacypresence/pressrv_plat/xdm_settings_api/group"/>
</component>
<component id="simple_settings_api" name="SIMPLE Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/legacypresence/pressrv_plat/simple_settings_api/group"/>
</component>
<component id="simple_instant_msg_api" name="Simple Instant Msg API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/legacypresence/pressrv_plat/simple_instant_msg_api/group"/>
</component>
</collection>
<collection id="xdmengine" name="XDM Engine" level="engine">
<!-- collection is really a component. Need to move down a directory (eg xdm/xdmengine)-->
<component id="xdmengine_build" name="XDM Engine Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/legacypresence/xdmengine/group"/>
</component>
</collection>
<collection id="simpleengine" name="SIMPLE Engine" level="engine">
<!-- collection is really a component. Need to move down a directory-->
<component id="simpleengine_build" name="SIMPLE Engine Build" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="simpleengine/group"/> not built -->
</component>
</collection>
</package>
<package id="searchsrv" level="specific" tech-domain="pr" levels="services engine generic api" name="Search Services">
<collection id="searchsrv_plat" name="Search Services Platform Interfaces" level="api">
<component id="cpix_utility_api" name="CPIX Utility API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/searchsrv/searchsrv_plat/cpix_utility_api/group"/>
</component>
<component id="cpix_framework_api" name="CPIX Framework API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/searchsrv/searchsrv_plat/cpix_framework_api/group"/>
</component>
<component id="cpix_search_api" name="CPIX Search API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/searchsrv/searchsrv_plat/cpix_search_api/group"/>
</component>
</collection>
<collection id="searchengine" name="Search Engine" level="engine">
<component id="searchengine_util" name="Search Engine Utils" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/searchsrv/searchengine/util/group"/>
</component>
<component id="searchengine_oss" name="Search Engine OSS" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/searchsrv/searchengine/oss/group"/>
</component>
<component id="cpix" name="Cross Platform Indexing Engine" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/searchsrv/searchengine/cpix/group"/>
</component>
</collection>
<collection id="searcher" name="Searcher" level="generic">
<component id="searchclient" name="Search Client" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/searchsrv/searcher/SearchClient/group"/>
</component>
<component id="searchserver" name="Search Server" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/searchsrv/searcher/SearchServer/group"/>
</component>
<component id="searcher_test" name="Searcher Tests" introduced="^4" filter="s60" purpose="development" target="device">
<!-- #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 id="searchsrv_harvester" name="Search Services Harvester" level="services">
<component id="searchsrv_pluginfw" name="Search Server" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/searchsrv/harvester/pluginfw/group"/>
</component>
<component id="searchsrv_harvesterserver" name="Search Harvester Server" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/searchsrv/harvester/harvesterserver" qt:proFile="harvester.pro"/>
</component>
</collection>
<collection id="searchsrv_watchdog" name="Search Services Watch Dog" level="services">
<component id="searchsrv_watchdog_build" name="Search Services Watch Dog Build" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/searchsrv/WatchDog/group"/>
</component>
</collection>
<collection id="qcpix" name="Qt CPIX" level="engine">
<component id="qcpix_build" name="Qt CPIX Build" introduced="^4" target="device" purpose="optional">
<unit bldFile="/mw/searchsrv/qcpix" qt:proFile="cpix.pro"/>
</component>
</collection>
<collection id="searchsrv_info" name="Search Services Info">
<component id="searchsrv_build" name="Search Services Build" introduced="^4" target="device" purpose="optional">
<!-- move exports to own component and remove this -->
<unit bldFile="/mw/searchsrv/group"/>
</component>
</collection>
</package>
<package id="remotemgmt" level="specific" tech-domain="dm" levels="plugin framework server generic specific" name="Remote Management">
<collection id="remotemgmt_pub" name="Remote Management Public Interfaces" level="specific">
<component id="synchronization_capability_api" name="Synchronization Capability API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_pub/synchronization_capability_api/group"/>
</component>
</collection>
<collection id="remotemgmt_plat" name="Remote Management Platform Interfaces" level="specific">
<component id="common_agent_util_and_definitions_api" name="Common Agent util and definitions API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/common_agent_util_and_definitions_api/group"/>
</component>
<component id="policy_management_certificate_api" name="Policy Management Certificate API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/policy_management_certificate_api/group"/>
</component>
<component id="oma_provisioning_adapter_api" name="OMA Provisioning Adapter API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/oma_provisioning_adapter_api/group"/>
</component>
<component id="device_management_parameter_api" name="Device Management Parameter API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/device_management_parameter_api/group"/>
</component>
<component id="data_synchronization_plugin_api" name="Data Synchronization Plug-in API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/data_synchronization_plugin_api/group"/>
</component>
<component id="sync_alert_handler_api" name="Sync Alert Handler API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/sync_alert_handler_api/group"/>
</component>
<component id="syncml_client_api" name="SyncML Client API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/syncml_client_api/group"/>
</component>
<component id="device_management_plugin_api" name="Device Management plug-in API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/device_management_plugin_api/group"/>
</component>
<component id="dm_tree_apis" name="DM Tree APIs" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/dm_tree_apis/group"/>
</component>
<component id="terminal_security_device_lock_api" name="Terminal Security Device Lock API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/terminal_security_device_lock_api/group"/>
</component>
<component id="policy_management_request_api" name="Policy Management Request API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/policy_management_request_api/group"/>
</component>
<component id="ds_constant_definitions_api" name="DS Constant Definitions API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/ds_constant_definitions_api/group"/>
</component>
<component id="scp_server_api" name="SCP Server API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/scp_server_api/group"/>
</component>
<component id="data_synchronization_notification_api" name="Data Synchronization Notification API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/data_synchronization_notification_api/group"/>
</component>
<component id="oma_provisioning_engine_api" name="OMA Provisioning Engine API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/oma_provisioning_engine_api/group"/>
</component>
<component id="dm_utils_api" name="DM Utils API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/dm_utils_api/group"/>
</component>
<component id="syncml_alert_api" name="SyncML Alert API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/syncml_alert_api/group"/>
</component>
<component id="obex_client_session_api" name="OBEX Client session API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/obex_client_session_api/group"/>
</component>
<component id="setting_enforcement_info_api" name="Setting Enforcement Info API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/setting_enforcement_info_api/group"/>
</component>
<component id="dm_constant_definitions_api" name="DM Constant Definitions API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/dm_constant_definitions_api/group"/>
</component>
<component id="oma_ds_extensions_api" name="OMA DS Extensions API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/oma_ds_extensions_api/group"/>
</component>
<component id="pnpms_utils_api" name="PNPMS Utils API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/pnpms_utils_api/group"/>
</component>
<component id="adaptive_history_list_api" name="Adaptive History List API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/adaptive_history_list_api/group"/>
</component>
<component id="adaptive_history_list_session_api" name="Adaptive History List Session API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/adaptive_history_list_session_api/group"/>
</component>
<component id="fota_engine_api" name="FOTA Engine API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/fota_engine_api/group"/>
</component>
<component id="update_package_storage_plugin_api" name="Update Package Storage Plug-in API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/update_package_storage_plugin_api/group"/>
</component>
<component id="dcmo_adapter_api" name="DCMO Adapter API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/dcmo_adapter_api/group"/>
</component>
<component id="dcmo_control_api" name="DCMO Control API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/dcmo_control_api/group"/>
</component>
<component id="ds_capability_mgmt_plugin_api" name="DS Capability Management Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/ds_capability_mgmt_plugin_api/group"/>
</component>
<component id="syncml_ds_customization_api" name="SyncML DS Customisation API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/syncml_ds_customization_api/group"/>
</component>
<component id="syncml_ds_error_reporting_api" name="SyncML DS Error Reporting API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/syncml_ds_error_reporting_api/group"/>
</component>
<component id="devicemgmt_dialogs_api" name="Device Management Dialogs API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/devicemgmt_dialogs_api/group"/>
</component>
<component id="dm_device_dialog_api" name="DM Device Dialog API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/remotemgmt_plat/dm_device_dialog_api/group"/>
</component>
</collection>
<collection id="policymanagement" name="Policy Management" level="generic">
<component id="policyenginepolicies" name="Policy Engine Policies" filter="s60,!dfs_build" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/policymanagement/policyengine/policyenginepolicies/group"/>
</component>
<component id="policyengine" name="Policy Engine" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/policymanagement/policyengine" qt:proFile="policyengine.pro"/>
</component>
<component id="policymanagement_config" name="Policy Management Config" filter="s60" class="config" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/policymanagement/group"/>
</component>
</collection>
<collection id="syncmlfw" name="SyncML Framework" level="server">
<component id="syncmlfw_build" name="SyncML Framework Build" filter="s60" target="device" purpose="optional">
<!-- need to break this up into components. Too convoluted a structure to be in a single bld.inf-->
<unit bldFile="/mw/remotemgmt/syncmlfw/group"/>
</component>
</collection>
<collection id="terminalsecurity" name="Terminal Security" level="specific">
<component id="scp" name="Security Code Proxy" filter="s60" target="device" purpose="optional">
<!-- can only have one unit, need to have these #included from a single bld.inf -->
<unit bldFile="/mw/remotemgmt/terminalsecurity/scp/scpclient/group"/>
<unit bldFile="/mw/remotemgmt/terminalsecurity/scp/scpdatabase/group"/>
<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 id="terminalsecurity_client" name="Terminal Control Client" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/terminalsecurity/client/group"/>
</component>
<component id="terminalsecurity_server" name="Terminal Control Server" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/terminalsecurity/server/group"/>
</component>
<component id="tcadapter" name="Terminal Control Adapter" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/terminalsecurity/tcadapter/bld"/>
</component>
<component id="terminalsecurity_build" name="Terminal Security Build" filter="s60" target="device" purpose="optional">
<!-- need to distribute exports, etc into the other components and remove this-->
<unit bldFile="/mw/remotemgmt/terminalsecurity/group"/>
</component>
</collection>
<collection id="omaprovisioning" name="OMA Provisioning" level="specific">
<component id="pnputil" name="PnP Util" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/omaprovisioning/pnputil/group"/>
</component>
<component id="provisioning" name="Provisioning" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/omaprovisioning/provisioning/group"/>
</component>
</collection>
<collection id="dcmofw" name="Device Capability Management Object Framework" level="framework">
<component id="dcmoclient" name="DCMO Client" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/dcmofw/dcmoclient/group"/>
</component>
<component id="dcmoserver" name="DCMO Server" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/dcmofw/dcmoserver/group"/>
</component>
<component id="dcmocustcmd" name="DCMO Custom Commands" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/dcmofw/dcmocustcmd/group"/>
</component>
<component id="dcmofw_build" name="DCMO Build" filter="s60" target="device" purpose="optional">
<!-- need to distribute exports, etc into the other components and remove this-->
<unit bldFile="/mw/remotemgmt/dcmofw/group"/>
</component>
</collection>
<collection id="fotaapplication" name="FOTA Application" level="generic">
<component id="fotaapplication_build" name="FOTA Application Build" filter="s60" target="device" purpose="optional">
<!-- need to make this a real component: move down a dir? break up? -->
<unit bldFile="/mw/remotemgmt/fotaapplication/group"/>
</component>
<component id="fotaserver" name="FOTA Server" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/fotaapplication/fotaserver" qt:proFile="fotaserver.pro"/>
</component>
</collection>
<collection id="devicemgmtnotifications" name="Device Management Notifications" level="server">
<component id="devicemgmtnotifications_rom" name="DM Notifications ROM" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/devicemgmtnotifications/group"/>
</component>
<component id="dmdevdialogclient" name="DM Device Dialog Client" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/devicemgmtnotifications/dmdevdialogclient/bld"/>
</component>
<component id="dmdevdialogserver" name="DM Device Dialog Server" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/remotemgmt/devicemgmtnotifications/dmdevdialogserver/bld"/>
</component>
</collection>
</package>
<package id="remoteconn" level="generic" tech-domain="de" levels="plugin framework server generic specific" name="Remote Connectivity">
<collection id="remoteconn_plat" name="Remote Connectivity Platform Interfaces" level="specific">
<component id="dialup_connection_status_api" name="Dialup Connection Status API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remoteconn/remoteconn_plat/dialup_connection_status_api/group"/>
</component>
<component id="dun_secondary_display_notification_api" name="Dialup Secondary Display Notification API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/remoteconn/remoteconn_plat/dun_secondary_display_notification_api/group"/>
</component>
<component id="generic_hid_api" name="Generic HID API" filter="s60" class="api" target="device" purpose="optional">
<!-- Missing? <meta rel="Api" href="remoteconn_plat/generic_hid_api/generic_hid_api.metaxml"/> -->
<unit bldFile="/mw/remoteconn/remoteconn_plat/generic_hid_api/group"/>
</component>
<component id="locod_bearer_plugin_api" name="Local Connectivity Daemon Bearer Plugin API" filter="s60" class="api" target="device" purpose="optional">
<!-- Missing? <meta rel="Api" href="remoteconn_plat/locod_bearer_plugin_api/locod_bearer_plugin_api.metaxml"/> -->
<unit bldFile="/mw/remoteconn/remoteconn_plat/locod_bearer_plugin_api/group"/>
</component>
<component id="locod_service_plugin_api" name="Local Connectivity Daemon Service Plugin API" filter="s60" class="api" target="device" purpose="optional">
<!-- Missing? <meta rel="Api" href="remoteconn_plat/locod_service_plugin_api/locod_service_plugin_api.metaxml"/> -->
<unit bldFile="/mw/remoteconn/remoteconn_plat/locod_service_plugin_api/group"/>
</component>
</collection>
<collection id="localconnectivityservice" name="Local Connectivity Service" level="server">
<component id="locod" name="Local Connectivity Daemon" introduced="^4" filter="s60" purpose="optional" target="device">
<unit bldFile="/mw/remoteconn/localconnectivityservice/locod/group"/>
</component>
<component id="dun" name="Dial-Up Networking" introduced="^4" filter="s60" purpose="optional" target="device">
<unit bldFile="/mw/remoteconn/localconnectivityservice/dun/group"/>
</component>
<component id="generichid" name="Generic Human-Interface Device" introduced="^4" filter="s60" purpose="optional" target="device">
<unit bldFile="/mw/remoteconn/localconnectivityservice/generichid/group"/>
</component>
<component id="headset" name="Headset" introduced="^4" filter="s60" purpose="optional" target="device">
<unit bldFile="/mw/remoteconn/localconnectivityservice/headset/group"/>
</component>
</collection>
<collection id="mtptransports" name="MTP Transports" level="plugin">
<component id="mtpusbtransport" name="MTP USB Transport" introduced="^2" purpose="optional" class="plugin" target="device">
<unit bldFile="/mw/remoteconn/mtptransports/mtpusbtransport/group" mrp="/mw/remoteconn/mtptransports/mtpusbtransport/group/mtp_usbsic.mrp"/>
</component>
<component id="mtpptpiptransport" name="MTP PTP-IP Transport" introduced="^3" purpose="optional" class="plugin" target="device">
<unit bldFile="/mw/remoteconn/mtptransports/mtpptpiptransport/group" mrp="/mw/remoteconn/mtptransports/mtpptpiptransport/group/mtp_ptpip.mrp"/>
</component>
</collection>
<collection id="mtpfws" name="MTP Frameworks" level="framework">
<component id="mtpfw" name="MTP Framework" introduced="^2" purpose="optional" target="device">
<unit bldFile="/mw/remoteconn/mtpfws/mtpfw/group" mrp="/mw/remoteconn/mtpfws/mtpfw/group/mtp_framework.mrp"/>
</component>
<component id="devdpextn" name="MTP Device Provider Extension" introduced="^4" purpose="optional" target="device">
<!-- can't have a component inside another component. Need to move to mtpfws/devdpextn/group -->
<unit bldFile="/mw/remoteconn/mtpfws/mtpfw/dataproviders/devdp/devdpextn/group"/>
</component>
</collection>
<collection id="mtpdataproviders" name="MTP Data Providers" level="generic">
<component id="mtpfileandfolderdp" name="MTP File and Folder Provider" introduced="^2" purpose="optional" class="plugin" target="device">
<unit bldFile="/mw/remoteconn/mtpdataproviders/mtpfileandfolderdp/group" mrp="/mw/remoteconn/mtpdataproviders/mtpfileandfolderdp/group/mtp_filedp.mrp"/>
</component>
<component id="mtpimagedp" name="MTP Image Data Provider" introduced="^3" filter="gt" purpose="optional" class="plugin" target="device">
<unit bldFile="/mw/remoteconn/mtpdataproviders/mtpimagedp/group" mrp="/mw/remoteconn/mtpdataproviders/mtpimagedp/group/mtp_imagedp.mrp"/>
</component>
<component id="mtppictbridgedp" name="MTP PictBridge Data Provider" introduced="^3" filter="gt" purpose="optional" class="plugin" target="device">
<unit bldFile="/mw/remoteconn/mtpdataproviders/mtppictbridgedp/group" mrp="/mw/remoteconn/mtpdataproviders/mtppictbridgedp/group/mtp_pictbridgedp.mrp"/>
</component>
<component id="pictbridgeengine" name="MTP PictBridge Engine" introduced="^4" filter="s60" purpose="optional" target="device">
<!-- can't have a component inside another component. Need to move to mtpdataproviders/pictbridgeengine/group -->
<unit bldFile="/mw/remoteconn/mtpdataproviders/mtppictbridgedp/pictbridgeengine/group"/>
</component>
<component id="mtpplaybackcontroldp" name="MTP Playback Control Data Provider" introduced="^4" filter="s60" purpose="optional" class="plugin" target="device">
<unit bldFile="/mw/remoteconn/mtpdataproviders/mtpplaybackcontroldp/group" mrp="/mw/remoteconn/mtpdataproviders/mtpplaybackcontroldp/group/mtp_playbackcontroldp.mrp"/>
</component>
</collection>
<collection id="backupandrestore" name="Backup and Restore" level="specific">
<component id="backupengine" name="Backup Engine" introduced="9.0" purpose="optional" target="device">
<unit bldFile="/mw/remoteconn/backupandrestore/backupengine/group" mrp="/mw/remoteconn/backupandrestore/backupengine/group/connectivity_backupengine.mrp"/>
</component>
</collection>
<collection id="obex" name="OBEX" level="generic">
<component id="obexprotocol" name="OBEX Protocol" introduced="9.1" purpose="optional" target="device">
<unit bldFile="/mw/remoteconn/obex/obexprotocol/group" mrp="/mw/remoteconn/obex/obexprotocol/group/obex.mrp"/>
</component>
<component id="obexextensionapi" name="OBEX Extension API" introduced="9.2" purpose="optional" target="device">
<unit bldFile="/mw/remoteconn/obex/obexextensionapi/group" mrp="/mw/remoteconn/obex/obexextensionapi/group/obex_extensionapis.mrp"/>
</component>
</collection>
</package>
<package id="srvdiscovery" level="generic" tech-domain="de" levels="plugin framework server generic specific" name="Service Discovery and Usage">
<collection id="upnpstack_plat" name="UPnP Stack Platform Interfaces" level="specific">
<component id="upnp_device_api" name="UPnP Device API" introduced="^3" filter="s60" purpose="optional" class="api" target="device">
<unit bldFile="/mw/srvdiscovery/upnp/upnpstack_plat/upnp_device_api/group"/>
</component>
<component id="upnp_common_api" name="UPnP Common API" introduced="^3" filter="s60" purpose="optional" class="api" target="device">
<unit bldFile="/mw/srvdiscovery/upnp/upnpstack_plat/upnp_common_api/group"/>
</component>
<component id="upnp_utils_api" name="UPnP Utils API" introduced="^3" filter="s60" purpose="optional" class="api" target="device">
<unit bldFile="/mw/srvdiscovery/upnp/upnpstack_plat/upnp_utils_api/group"/>
</component>
<component id="upnp_control_point_api" name="UPnP Control Point API" introduced="^3" filter="s60" purpose="optional" class="api" target="device">
<unit bldFile="/mw/srvdiscovery/upnp/upnpstack_plat/upnp_control_point_api/group"/>
</component>
<component id="upnp_httpserver_api" name="UPnP HTTP Server API" introduced="^3" filter="s60" purpose="optional" class="api" target="device">
<unit bldFile="/mw/srvdiscovery/upnp/upnpstack_plat/upnp_httpserver_api/group"/>
</component>
<component id="upnp_http_transfer_api" name="UPnP HTTP Transfer API" introduced="^3" filter="s60" purpose="optional" class="api" target="device">
<unit bldFile="/mw/srvdiscovery/upnp/upnpstack_plat/upnp_http_transfer_api/group"/>
</component>
</collection>
<collection id="servicediscoveryandcontrol" name="Service Discovery and Control" level="framework">
<component id="servicediscoveryfw" name="Service Discovery Framework" introduced="^3" filter="s60" purpose="optional" target="device">
<unit bldFile="/mw/srvdiscovery/servicediscoveryandcontrol/pnp/group" mrp="/mw/srvdiscovery/servicediscoveryandcontrol/pnp/group/servicediscoveryframework.mrp"/>
</component>
</collection>
<collection id="upnp" name="UPnP" level="server">
<component id="upnpstack" name="UPnP Stack" introduced="^3" filter="s60" purpose="optional" target="device">
<unit bldFile="/mw/srvdiscovery/upnp/upnpstack/group"/>
</component>
</collection>
<collection id="srvdiscovery_services" name="Service Discovery Services" level="server">
<component id="terminalmodeservice_plat" name="Terminal Mode Service Platform Interfaces" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/srvdiscovery/services/terminalmodeservice_plat/group"/>
</component>
<component id="terminalmodeservice" name="Terminal Mode Service" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/srvdiscovery/services/terminalmodeservice/group"/>
</component>
</collection>
<collection id="srvdiscovery_info" name="Service Discovery and Usage Info" level="specific">
<component id="srvdiscovery_metadata" name="Service Discovery and Usage Metadata" introduced="^2" filter="s60" target="desktop" purpose="development" class="config">
<unit mrp="/mw/srvdiscovery/srvdiscovery_info/srvdiscovery_metadata/srvdiscovery_metadata.mrp"/>
</component>
</collection>
</package>
<package id="dlnasrv" level="specific" tech-domain="de" levels="stack server ctrl framework plugin" name="DLNA Services">
<!-- uncomment all the units when configuration is in place, they're currently #included from other xxx_build components -->
<collection id="dlnasrv_plat" name="DLNA Services Platform Interfaces" level="plugin">
<component id="upnp_media_server_settings_api" name="UPnP Media Server Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/dlnasrv/dlnasrv_plat/upnp_media_server_settings_api/group"/>
</component>
<component id="upnp_av_objects_api" name="UPnP A/V Objects API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/dlnasrv/dlnasrv_plat/upnp_av_objects_api/group"/>
</component>
<component id="upnp_media_server_api" name="UPnP Media Server API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/dlnasrv/dlnasrv_plat/upnp_media_server_api/group"/>
</component>
<component id="upnp_security_plugin_api" name="UPnP Security Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/dlnasrv/dlnasrv_plat/upnp_security_plugin_api/group"/>
</component>
<component id="upnp_avcp_api" name="UPnP AVCP API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/dlnasrv/dlnasrv_plat/upnp_avcp_api/group"/>
</component>
<component id="upnp_media_server_metadata_api" name="UPnP Media Server Metadata API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/dlnasrv/dlnasrv_plat/upnp_media_server_metadata_api/group"/>
</component>
<component id="upnp_command_api" name="UPnP Command API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/dlnasrv/dlnasrv_plat/upnp_command_api/group"/>
</component>
<component id="upnp_plugin_api" name="UPnP Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/dlnasrv/dlnasrv_plat/upnp_plugin_api/group"/>
</component>
</collection>
<collection id="upnpavcontrolpoint" name="UPnP A/V Control Point" level="plugin">
<component id="avcontrolframework" name="A/V Control Famework" introduced="9.1" deprecated="^3" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/dlnasrv/upnpavcontrolpoint/avcontrolframework/group"/>
</component>
<component id="upnpavcontrolpoint_build" name="UPnP A/V Control Point Build" introduced="9.1" deprecated="^3" filter="s60" target="device" purpose="optional">
<!-- put exports in other component instead -->
<unit bldFile="/mw/dlnasrv/upnpavcontrolpoint/group"/>
</component>
</collection>
<collection id="upnpmediaserver" name="UPnP Media Server" level="server">
<component id="avobjects" name="A/V Objects" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/dlnasrv/upnpmediaserver/avobjects/group"/>
</component>
<component id="mediaserverclient" name="Media Server Client" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/dlnasrv/upnpmediaserver/mediaserverclient/group"/>
</component>
<component id="connectionmanagerservice" name="Connection Manager Service" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/dlnasrv/upnpmediaserver/connectionmanagerservice/group"/>
</component>
<component id="contentdirectoryservice" name="Content Directory Service" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/dlnasrv/upnpmediaserver/contentdirectoryservice/group"/>
</component>
<component id="mediaserverengine" name="Media Server Engine" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/dlnasrv/upnpmediaserver/mediaserverengine/group"/>
</component>
<component id="upnpmediaserver_build" name="UPnP Media Server Build" filter="s60" target="device" purpose="optional">
<!-- move exports into one of above components -->
<unit bldFile="/mw/dlnasrv/upnpmediaserver/group"/>
</component>
</collection>
<collection id="upnpavcontroller" name="UPnP A/V Controller" level="ctrl">
<component id="upnpxmlparser" name="UPnP XML Parser" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/dlnasrv/upnpavcontroller/upnpxmlparser/group"/>
</component>
<component id="upnpavcontrollerserver" name="UPnP A/V Controller Server" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/dlnasrv/upnpavcontroller/upnpavcontrollerserver/group"/>
</component>
<component id="upnpavcontrollerclient" name="UPnP A/V Ccontroller Client" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/dlnasrv/upnpavcontroller/upnpavcontrollerclient/group"/>
</component>
<component id="upnpavcontrollerhelper" name="UPnP A/V Controller Helper" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/dlnasrv/upnpavcontroller/upnpavcontrollerhelper/group"/>
</component>
<component id="upnpavcontroller_build" name="UPnP A/V Controller Build" introduced="^2" filter="s60" target="device" purpose="optional">
<!-- move exports content into one of above components -->
<unit bldFile="/mw/dlnasrv/upnpavcontroller/group"/>
</component>
</collection>
<collection id="upnpframework" name="UPnP Framework" level="framework">
<component id="upnputilities" name="UPnP Utilities" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/dlnasrv/upnpframework/upnputilities/group"/>
</component>
<component id="upnpmusicadapter" name="UPnP Music Adapter" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/dlnasrv/upnpframework/upnpmusicadapter/group"/>
</component>
<component id="upnpcommand" name="UPnP Command" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/dlnasrv/upnpframework/upnpcommand/group"/>
</component>
<component id="upnpframework_build" name="UPnP Framework Build" introduced="^2" filter="s60" target="device" purpose="optional">
<!-- move exports content into one or more of above components -->
<unit bldFile="/mw/dlnasrv/upnpframework/group"/>
</component>
</collection>
<collection id="upnpsettings" name="UPnP Settings" level="framework">
<component id="upnpsettingsengine" name="UPnP Settings Engine" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/dlnasrv/upnpsettings/upnpsettingsengine/group"/>
</component>
<component id="upnpsettings_build" name="UPnP Settings Build" introduced="^2" filter="s60" target="device" purpose="optional">
<!-- move exports content into one of above components -->
<unit bldFile="/mw/dlnasrv/upnpsettings/group"/>
</component>
</collection>
<collection id="upnpsharing" name="UPnP Sharing" level="server">
<component id="upnpdlnaprofiler" name="UPnP DLNA Profiler" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/dlnasrv/upnpsharing/upnpdlnaprofiler/group"/>
</component>
<component id="upnpsecurity" name="UPnP Security" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/dlnasrv/upnpsharing/upnpsecurity/group"/>
</component>
<component id="upnpcontentserver" name="UPnP Content Server" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/dlnasrv/upnpsharing/upnpcontentserver/group"/>
</component>
<component id="applicationengine" name="UPnP Application Engine" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/dlnasrv/upnpsharing/applicationengine/group"/>
</component>
<component id="upnpsharing_build" name="UPnP Sharing Build" introduced="^2" filter="s60" target="device" purpose="optional">
<!-- move exports content into one of above components -->
<unit bldFile="/mw/dlnasrv/upnpsharing/group"/>
</component>
</collection>
<collection id="upnpmpxplugins" name="UPnP MPX Plugins" level="plugin">
<component id="upnpplaybackplugins" name="UPnP Playback Plugins" introduced="^2" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/dlnasrv/upnpmpxplugins/upnpplaybackplugins/group"/>
</component>
<component id="upnpmpxplugins_build" name="UPnP MPX Plugins Build" introduced="^2" filter="s60" target="device" purpose="optional">
<!-- move exports content into other component? -->
<unit bldFile="/mw/dlnasrv/upnpmpxplugins/group"/>
</component>
</collection>
<collection id="dlnasrv_info" name="DLNA Services Info" level="plugin">
</collection>
</package>
<package id="btservices" level="generic" tech-domain="de" levels="framework server generic specific plugin" name="Bluetooth Services">
<collection id="btservices_pub" name="BT Services Public Interfaces" level="plugin">
<component id="bluetooth_power_state_api" name="Bluetooth Power State API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/btservices/btservices_pub/bluetooth_power_state_api/group"/>
</component>
<component id="bluetooth_notifier_api" name="Bluetooth Notifier API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/btservices/btservices_pub/bluetooth_notifier_api/group"/>
</component>
</collection>
<collection id="btservices_plat" name="BT Services Platform Interfaces" level="plugin">
<component id="bluetooth_dosserver_audio_api" name="Bluetooth DOS Server Audio API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/btservices/btservices_plat/bluetooth_dosserver_audio_api/group"/>
</component>
<component id="bluetooth_dut_mode_api" name="Bluetooth DUT Mode API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/btservices/btservices_plat/bluetooth_dut_mode_api/group"/>
</component>
<component id="bluetooth_engine_api" name="Bluetooth Engine API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/btservices/btservices_plat/bluetooth_engine_api/group"/>
</component>
<component id="bluetooth_engine_connection_management_api" name="Bluetooth Engine Connection Management API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/btservices/btservices_plat/bluetooth_engine_connection_management_api/group" filter="!test"/>
</component>
<component id="bluetooth_engine_device_management_api" name="Bluetooth Engine Device Management API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/btservices/btservices_plat/bluetooth_engine_device_management_api/group" filter="!test"/>
</component>
<component id="bluetooth_engine_discovery_api" name="Bluetooth Engine Discovery API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/btservices/btservices_plat/bluetooth_engine_discovery_api/group" filter="!test"/>
</component>
<component id="bluetooth_engine_features_api" name="Bluetooth Engine Features API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/btservices/btservices_plat/bluetooth_engine_features_api/group"/>
</component>
<component id="bluetooth_engine_settings_api" name="Bluetooth Engine Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/btservices/btservices_plat/bluetooth_engine_settings_api/group" filter="!test"/>
</component>
<component id="bluetooth_engine_plugin_api" name="Bluetooth Engine Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/btservices/btservices_plat/bluetooth_engine_plugin_api/group"/>
</component>
<component id="bluetooth_local_variation_api" name="Bluetooth Local Variation API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/btservices/btservices_plat/bluetooth_local_variation_api/group"/>
</component>
<component id="bluetooth_notifier_internal_api" name="Bluetooth Notifier internal API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/btservices/btservices_plat/bluetooth_notifier_internal_api/group"/>
</component>
<component id="bluetooth_sap_connection_state_api" name="Bluetooth SAP Connection State API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/btservices/btservices_plat/bluetooth_sap_connection_state_api/group"/>
</component>
<component id="bluetooth_secondary_display_notification_api" name="Bluetooth Secondary Display Notification API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/btservices/btservices_plat/bluetooth_secondary_display_notification_api/group"/>
</component>
<component id="obex_secondary_display_notification_api" name="OBEX Secondary Display Notification API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/btservices/btservices_plat/obex_secondary_display_notification_api/group"/>
</component>
<component id="obex_service_plugin_api" name="OBEX Service Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/btservices/btservices_plat/obex_service_plugin_api/group"/>
</component>
<component id="obex_service_utils_api" name="OBEX Service Utils API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/btservices/btservices_plat/obex_service_utils_api/group"/>
</component>
<component id="usb_obexservicemanager_client_api" name="OBEX Service Manager Client API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/btservices/btservices_plat/usb_obexservicemanager_client_api/group"/>
</component>
<component id="bt_remote_device_setting_api" name="BT Remote Device Setting API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/btservices/btservices_plat" qt:proFile="btservices_plat.pro"/>
</component>
</collection>
<collection id="bluetoothengine" name="Bluetooth Engine" level="framework">
<component id="btnotifclient" name="Bluetooth Notification Client" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- cannot put a component under another component. Move up a directory -->
<unit bldFile="/mw/btservices/bluetoothengine/btnotif/btnotifclient/group"/>
</component>
<component id="bteng" name="Bluetooth Engine" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/btservices/bluetoothengine/bteng/group"/>
</component>
<component id="btserviceutil" name="Bluetooth Service Utils" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/btservices/bluetoothengine/btserviceutil/group" filter="!test"/>
</component>
<component id="btnotif" name="Bluetooth Notifier" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/btservices/bluetoothengine/btnotif/group"/>
</component>
<component id="btdevicedialogplugin" name="Bluetooth Device Dialog Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/btservices/bluetoothengine/btnotif/btdevicedialogplugin" qt:proFile="btdevicedialogplugin.pro"/>
</component>
<component id="btaudioman" name="Bluetooth Audio Manager" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/btservices/bluetoothengine/btaudioman/group" filter="!test"/>
</component>
<component id="btmac" name="Bluetooth Mono Audio Controller" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/btservices/bluetoothengine/btmac/group"/>
</component>
<component id="btsac" name="Bluetooth Stereo Audio Controller" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/btservices/bluetoothengine/btsac/group"/>
</component>
<component id="btaudiostreamer" name="Bluetooth Audio Streamer" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/btservices/bluetoothengine/btaudiostreamer/group" filter="!test"/>
</component>
<component id="btsap" name="Bluetooth SIM Access Profile" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/btservices/bluetoothengine/btsap/group"/>
</component>
<component id="btui" name="Bluetooth UI" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/btservices/bluetoothengine/btui" qt:proFile="btui.pro"/>
</component>
<component id="btpbap" name="Bluetooth Phonebook Access Profile" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/btservices/bluetoothengine/btpbap/group"/>
</component>
<component id="bthid" name="Bluetooth HID" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/btservices/bluetoothengine/bthid/group"/>
</component>
<component id="btctrldcmoadapter" name="Bluetooth Control DCMO Adapter" introduced="^3" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/btservices/bluetoothengine/btctrldcmoadapter/group"/>
</component>
<component id="btindicator" name="Bluetooth Indicator" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/btservices/bluetoothengine/btindicator" qt:proFile="btindicator.pro"/>
</component>
</collection>
<collection id="bluetoothappprofiles" name="Bluetooth Application Profiles" level="plugin">
<component id="avrcp" name="Bluetooth AVRCP" introduced="9.1" purpose="optional" target="device">
<unit bldFile="/mw/btservices/bluetoothappprofiles/avrcp" mrp="/mw/btservices/bluetoothappprofiles/avrcp/bluetooth_avrcp.mrp"/>
</component>
</collection>
<collection id="atcommands" name="AT Commands" level="generic">
<component id="modematplugin" name="Modem AT Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/btservices/atcommands/modematplugin/group"/>
</component>
<component id="lccustomplugin" name="LC Custom Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/btservices/atcommands/lccustomplugin/group"/>
</component>
</collection>
<collection id="cbsatplugin" name="CBS AT Plugin" level="plugin">
<component id="atmisccmdplugin" name="AT Misc Commands Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/btservices/cbsatplugin/atmisccmdplugin/group"/>
</component>
</collection>
<collection id="btobexprofiles" name="BT OBEX Profiles" level="generic">
<component id="obexreceiveservices" name="OBEX Receive Services" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/btservices/btobexprofiles/obexreceiveservices/group"/>
</component>
<component id="btmsgviewer" name="BT Message Viewer" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- should be moved out from under obexreceiveservices into own component dir -->
<unit bldFile="/mw/btservices/btobexprofiles/obexreceiveservices/btmsgviewer" qt:proFile="btmsgviewer.pro"/>
</component>
<component id="obexsendservices" name="OBEX Send Services" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/btservices/btobexprofiles/obexsendservices/group"/>
</component>
<component id="obexhighway" name="OBEX Highway" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- should be moved out from under obexsendservices into own component dir -->
<unit bldFile="/mw/btservices/btobexprofiles/obexsendservices/obexhighway" qt:proFile="obexhighway.pro"/>
</component>
<component id="obexserviceman" name="OBEX Service Manager" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/btservices/btobexprofiles/obexserviceman/group"/>
</component>
</collection>
<collection id="btservices_info" name="BT Services Info" level="plugin">
<component id="btservices_metadata" name="BT Services Metadata" introduced="^3" target="desktop" purpose="development" class="config">
<unit mrp="/mw/btservices/btservices_info/btservices_metadata/btservices_metadata.mrp"/>
</component>
</collection>
</package>
<package id="usbservices" level="generic" tech-domain="de" levels="framework server generic specific plugin" name="USB Services">
<collection id="usbservices_plat" name="USB Services Platform Interfaces" level="plugin">
<component id="pictbridge_api" name="PictBridge API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/usbservices/usbservices_plat/pictbridge_api/group"/>
</component>
<component id="ptp_responder_api" name="PTP Responder API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/usbservices/usbservices_plat/ptp_responder_api/group"/>
</component>
<component id="ptp_transport_api" name="PTP Transport API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/usbservices/usbservices_plat/ptp_transport_api/group"/>
</component>
<component id="usb_device_control_plugin_api" name="USB Device Control Plug-in API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/usbservices/usbservices_plat/usb_device_control_plugin_api/group"/>
</component>
<component id="usb_notifier_api" name="USB Notifier API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/usbservices/usbservices_plat/usb_notifier_api/group"/>
</component>
<component id="usb_personality_api_header" name="USB Personality API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/usbservices/usbservices_plat/usb_personality_api_header/group"/>
</component>
<component id="usb_personality_plugin_api" name="USB Personality Plug-in API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/usbservices/usbservices_plat/usb_personality_plugin_api/group"/>
</component>
<component id="usb_secondary_display_api" name="USB Secondary Display API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/usbservices/usbservices_plat/usb_secondary_display_api/group"/>
</component>
<component id="usb_watcher_api" name="USB Watcher API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/usbservices/usbservices_plat/usb_watcher_api/group"/>
</component>
<component id="usb_watcher_info_api_header" name="USB Watcher Info API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/usbservices/usbservices_plat/usb_watcher_info_api_header/group"/>
</component>
</collection>
<collection id="usbengines" name="USB Engines" level="generic">
<component id="usbotgwatcher" name="USB OTG Watcher" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/usbservices/usbengines/usbotgwatcher/group" filter="!test"/>
</component>
<component id="usbwatcher" name="USB Watcher" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/usbservices/usbengines/usbwatcher/group"/>
</component>
<component id="usblocodplugin" name="USB Local Connectivity Domain Plugin" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/usbservices/usbengines/usblocodplugin/group"/>
</component>
<component id="usbdevcon" name="USB Device Control" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/usbservices/usbengines/usbdevcon/group"/>
</component>
<component id="usbremotepersonality" name="USB Remote Personality" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/usbservices/usbengines/usbremotepersonality/group"/>
</component>
</collection>
<collection id="usbclasses" name="USB Classes" level="framework">
<component id="usbobexclasscontroller" name="USB OBEX Class Controller" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/usbservices/usbclasses/usbobexclasscontroller/group"/>
</component>
<component id="usbbasicpersonality" name="USB Basic Personality" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/usbservices/usbclasses/usbbasicpersonality/group"/>
</component>
<component id="usbmscpersonality" name="USB MSC Personality" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/usbservices/usbclasses/usbmscpersonality/group"/>
</component>
<component id="usbphoneasmodem" name="USB Phone as Modem" introduced="^3" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/usbservices/usbclasses/usbphoneasmodem/group"/>
</component>
</collection>
<collection id="usbuis" name="USB UIs" level="specific">
<component id="usbuinotif" name="USB UI Notifiers" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/usbservices/usbuis/usbuinotif" filter="!test" qt:proFile="usbuinotif.pro"/>
</component>
<component id="imageprintuiprovider" name="ImagePrint UI Provider" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/usbservices/usbuis/imageprintuiprovider/group"/>
</component>
<component id="usbimageprintui" name="ImagePrint UI" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/usbservices/usbuis/imageprintui/group"/>
</component>
<component id="usbsettingsapp" name="USB Settings Application" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/usbservices/usbuis/usbsettingsapp" qt:proFile="usbsettingsapp.pro"/>
</component>
<component id="usbindicatorplugin" name="USB Indicator Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/usbservices/usbuis/usbindicatorplugin" qt:proFile="usbindicatorplugin.pro"/>
</component>
</collection>
<collection id="usb_testtools" name="USB Test Tools" level="server">
<component id="usb_stubsrv" name="USB Stub Server" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/usbservices/tsrc/testtools/stubsrv/group"/>
</component>
</collection>
</package>
<package id="imghandling" level="specific" tech-domain="mm" levels="lib util if" name="Image Handling">
<collection id="imagehandling_plat" name="Image Handling Platform Interfaces" level="if">
<component id="image_handling_library_api" name="Image Handling Library API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imghandling/imagehandling_plat/image_handling_library_api/group"/>
</component>
<component id="3gp_library_api" name="3GP Library API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imghandling/imagehandling_plat/3gp_library_api/group"/>
</component>
<component id="thumbnailmanager_api" name="Thumbnail Manager API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/imghandling/imagehandling_plat/thumbnailmanager_api/group" filter="!test"/>
</component>
</collection>
<collection id="imagehandlinglib" name="Image Handling Library" level="lib">
<!-- collection is really a component, need to move down a directory -->
<component id="ihl" name="IHL" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/imghandling/imagehandlinglib/group"/>
</component>
</collection>
<collection id="imagehandlingutilities" name="Image Handling Utilities" level="util">
<component id="thumbnailmanager" name="Thumbnail Manager" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/imghandling/imagehandlingutilities/thumbnailmanager/group"/>
</component>
<component id="thumbnailmanagerqt" name="Thumbnail Manager Qt" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/imghandling/imagehandlingutilities/thumbnailmanager/thumbnailmanagerqt" filter="!test" qt:proFile="thumbnailmanagerqt.pro" qt:qmakeArgs="-r"/>
</component>
</collection>
</package>
<package id="metadatasrv" level="specific" tech-domain="mm" levels="plugin framework server generic specific" name="Legacy Metadata Services">
<collection id="metadatasrv_pub" name="Legacy Metadata Services Public Interfaces" level="specific">
<component id="media_fetch_api" name="Media Fetch API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/metadatasrv/metadatasrv_pub/media_fetch_api/group"/>
</component>
</collection>
<collection id="metadatasrv_plat" name="Legacy Metadata Services Platform Interfaces" level="specific">
<component id="media_fetch_implementation_api" name="Media Fetch Implementation API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/metadatasrv/metadatasrv_plat/media_fetch_implementation_api/group"/>
</component>
</collection>
<collection id="mediamanagementutilities" name="Media Management Utilities" level="generic">
<component id="mediafetch" name="Media Fetch" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/metadatasrv/mediamanagementutilities/mediafetch/group"/>
</component>
</collection>
</package>
<package id="mds" level="specific" tech-domain="mm" levels="mgr eng server int" name="Metadata Services">
<collection id="mds_plat" name="Metadata Services Platform Interfaces" level="int">
<component id="context_engine_plugin_api" name="Context Engine Plugin API" introduced="^2" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mds/mds_plat/context_engine_plugin_api/group" filter="!test"/>
</component>
<component id="harvester_framework_api" name="Harvester Framework API" introduced="^2" filter="s60" class="api" target="device" purpose="optional">
<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 id="location_manager_api" name="Location Manager API" introduced="^2" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mds/mds_plat/location_manager_api/group" filter="!test"/>
</component>
<component id="metadata_engine_api" name="Metadata Engine API" introduced="^2" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mds/mds_plat/metadata_engine_api/group" filter="!test"/>
</component>
<component id="content_listing_framework_collection_manager_api" name="Content Listing Framework Collection Manager API" introduced="^2" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mds/mds_plat/content_listing_framework_collection_manager_api/group" filter="!test"/>
</component>
<component id="content_listing_framework_extended_api" name="Content Listing Framework Extended API" introduced="^2" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mds/mds_plat/content_listing_framework_extended_api/group"/>
</component>
</collection>
<collection id="mds_pub" name="Metadata Services Public Interfaces" level="int">
<component id="content_listing_framework_api" name="Content Listing Framework API" introduced="^2" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mds/mds_pub/content_listing_framework_api/group" filter="!test"/>
</component>
</collection>
<collection id="metadataengine" name="Metadata Engine" level="eng">
<component id="metadataengine_build" name="Metadata Engine Build" introduced="^2" filter="s60" target="device" purpose="optional">
<!--collection is really a component. Move down a directory -->
<unit bldFile="/mw/mds/metadataengine/group"/>
</component>
</collection>
<collection id="locationmanager" name="Location Manager" level="mgr">
<component id="geotagger" name="Geo Tagger" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mds/locationmanager/geotagger/group"/>
</component>
<component id="locationtrail" name="Location Trail" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mds/locationmanager/locationtrail/group"/>
</component>
<component id="locationmanager_server" name="Location Manager Server" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mds/locationmanager/server/group"/>
</component>
<component id="locationmanager_client" name="Location Manager Client" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mds/locationmanager/client/group"/>
</component>
<component id="locationmanager_data" name="Location Manager Data" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mds/locationmanager/data"/>
</component>
</collection>
<collection id="contextengine" name="Context Engine" level="eng">
<component id="contextengine_build" name="Context Engine Build" introduced="^2" filter="s60" target="device" purpose="optional">
<!-- collection is really a component. Move down a directory -->
<unit bldFile="/mw/mds/contextengine/group"/>
</component>
</collection>
<collection id="harvester" name="Harvester" level="eng">
<component id="blacklistclient" name="Blacklist Client" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mds/harvester/blacklistclient/group"/>
</component>
<component id="blacklistserver" name="Blacklist Server" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mds/harvester/blacklistserver/group"/>
</component>
<component id="harvester_common" name="Harvester Common" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mds/harvester/common/group"/>
</component>
<component id="composerplugins" name="Composer Plugins" introduced="^2" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/mds/harvester/composerplugins/group"/>
</component>
<component id="harvesterplugins" name="Harvester Plugins" introduced="^2" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/mds/harvester/harvesterplugins/group"/>
</component>
<component id="monitorplugins" name="Monitor Plugins" introduced="^2" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/mds/harvester/monitorplugins/group"/>
</component>
<component id="harvester_server" name="Harvester Server" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mds/harvester/server/group"/>
</component>
<component id="harvester_client" name="Harvester Client" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mds/harvester/client/group"/>
</component>
<component id="harvester_data" name="Harvester Data" introduced="^2" filter="s60" class="config" target="device" purpose="optional">
<!-- consider moving these exports into the other components -->
<unit bldFile="/mw/mds/harvester/data"/>
</component>
</collection>
<collection id="watchdog" name="Watchdog" level="server">
<!-- collection is really a component. Move down a directory -->
<component id="mdswatchdog" name="Metadata Watchdog" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mds/watchdog/group"/>
</component>
</collection>
<collection id="clfwrapper" name="Content Listing Framework Wrapper" level="int">
<!-- collection is really a component. Move down a directory -->
<component id="clfwrapper_build" name="CLF Wrapper Build" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mds/clfwrapper/group"/>
</component>
</collection>
<collection id="mds_info" name="Metadata Services Info" level="int">
<component id="mds_rom" name="Metadata Services ROM" introduced="^2" filter="s60" class="config" target="device" purpose="optional">
<!-- consider moving these exports into the other collections -->
<unit bldFile="/mw/mds/rom"/>
</component>
</collection>
</package>
<package id="videoutils" level="specific" tech-domain="mm" levels="eng util if" name="Video Utils">
<collection id="videoutils_plat" name="Video Utils Platform Interfaces" level="if">
<component id="videoplayer_constants_api" name="Videoplayer Constants API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/videoutils/videoutils_plat/videoplayer_constants_api/group"/>
</component>
</collection>
</package>
<package id="mmmw" level="generic" tech-domain="mm" levels="plugin framework server generic specific" name="Multimedia Middleware">
<collection id="mmmw_plat" name="Multimedia Middleware Platform Interfaces" level="specific">
<meta rel="testbuild" type="auto">
<group name="mmmw_tsrc_group"/>
</meta>
<component id="multimedia_data_source_api" name="Multimedia Data Source API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmmw_plat/multimedia_data_source_api/group"/>
</component>
<component id="enhanced_media_client_api" name="Enhanced Media Client API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmmw_plat/enhanced_media_client_api/group" filter="!test"/>
</component>
<component id="stream_control_custom_command_api" name="Stream Control Custom Command API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmmw_plat/stream_control_custom_command_api/group"/>
</component>
<component id="emc_buffer_source_api" name="EMC Buffer Source API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmmw_plat/emc_buffer_source_api/group"/>
</component>
<component id="emc_file_source_api" name="EMC File Source API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmmw_plat/emc_file_source_api/group"/>
</component>
<component id="audio_metadata_reader_api" name="Audio MetaData Reader API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmmw_plat/audio_metadata_reader_api/group" filter="!test"/>
</component>
<component id="emc_volume_effect_api" name="EMC Volume Effect API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmmw_plat/emc_volume_effect_api/group"/>
</component>
<component id="emc_balance_effect_api" name="EMC Balance Effect API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmmw_plat/emc_balance_effect_api/group"/>
</component>
<component id="emc_descriptor_source_api" name="EMC Descriptor Source API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmmw_plat/emc_descriptor_source_api/group"/>
</component>
<component id="emc_drm_config_intfc_api" name="EMC DRM Config Intfc API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmmw_plat/emc_drm_config_intfc_api/group"/>
</component>
<component id="voip_audio_services_api" name="VoIP Audio Services" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmmw_plat/voip_audio_services_api/group" filter="!test"/>
</component>
<component id="configuration_components_factory_api" name="Configuration Components Factory API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmmw_plat/configuration_components_factory_api/group"/>
</component>
<component id="audio_output_control_utility_api" name="Audio Output Control Utility API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmmw_plat/audio_output_control_utility_api/group" filter="!test"/>
</component>
<component id="audio_output_control_utility_proxy_api" name="Audio Output Control Utility Proxy API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmmw_plat/audio_output_control_utility_proxy_api/group"/>
</component>
<component id="emc_audio_effects_api" name="EMC Audio Effects API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmmw_plat/emc_audio_effects_api/group"/>
</component>
<component id="call_audio_control_api" name="Call AudioControl API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmmw_plat/call_audio_control_api/group" filter="!test"/>
</component>
<component id="radio_utilities_api" name="Radio Utilities API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmmw_plat/radio_utilities_api/group" filter="!test"/>
</component>
<component id="radio_preset_utilities_api" name="Radio Preset Utilities API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmmw_plat/radio_preset_utilities_api/group"/>
</component>
<component id="radio_monitor_api" name="Radio Monitor API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmmw_plat/radio_monitor_api/group"/>
</component>
<component id="thumbnail_engine_api" name="Thumbnail Engine API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmmw_plat/thumbnail_engine_api/group" filter="!test"/>
</component>
<component id="telephony_multimedia_service_api" name="Telephony Multimedia Service API" filter="s60" class="api" target="device" purpose="optional">
<meta rel="testbuild" type="auto">
<group name="mmmw_tms_tsrc_group"/>
</meta>
<unit bldFile="/mw/mmmw/mmmw_plat/telephony_multimedia_service_api/group" filter="!test"/>
</component>
<component id="openmax_al_api" name="OpenMAX AL API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmmw_plat/openmax_al_api/group" filter="!test"/>
</component>
<component id="openmax_al_ext_api" name="OpenMAX AL Extensions API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmmw_plat/openmax_al_ext_api/group"/>
</component>
<component id="system_tone_service_api" name="System Tone Service API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmmw_plat/system_tone_service_api/group"/>
</component>
</collection>
<collection id="khronosfws" name="Khronos Frameworks" level="framework">
<component id="openmax_al" name="OpenMAX AL" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/khronosfws/openmax_al/group"/>
</component>
</collection>
<collection id="mmfenh" name="MMF Enhancements" level="generic">
<component id="advancedaudiocontroller" name="Advanced Audio Controllers" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmfenh/advancedaudiocontroller/group"/>
</component>
<component id="audiooutputcontrolutility" name="Audio Output Control Utility" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmfenh/audiooutputcontrolutility/group"/>
</component>
<component id="configurationcomponentsfactory" name="Configuration Components Factory" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmfenh/configurationcomponentsfactory/group"/>
</component>
<component id="enhancedaudioplayerutility" name="Enhanced Audio Player Utility" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmfenh/enhancedaudioplayerutility/group"/>
</component>
<component id="enhancedmediaclient" name="Enhanced Media Client" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmfenh/enhancedmediaclient/group"/>
</component>
<component id="profilesettingsmonitor" name="Profile Settings Monitor" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmfenh/profilesettingsmonitor/group"/>
</component>
<component id="mmfenh_test" name="MMF Enhancements Tests" filter="s60,test,module_test,pref_test" purpose="development" target="device">
<meta rel="testbuild" type="auto">
<group name="advancedaudiocontroller_tsrc_group"/>
</meta>
</component>
</collection>
<collection id="mmserv" name="Multimedia Services" level="specific">
<component id="callaudiocontrol" name="Call Audio Control" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmserv/callaudiocontrol/group"/>
</component>
<component id="metadatautility" name="Metadata Utility" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmserv/metadatautility/group"/>
</component>
<component id="radioutility" name="Radio Utility" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmserv/radioutility/group"/>
</component>
<component id="thumbnailengine" name="Thumbnail Engine" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmserv/thumbnailengine/group"/>
</component>
<component id="tms" name="Telephony Multimedia Service" introduced="^3" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmserv/tms/group"/>
</component>
<component id="voipaudioservices" name="VoIP Audio Services" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmserv/voipaudioservices/group"/>
</component>
<component id="lib3gpextparser" name="3GP Extension Metadata Parser Library" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmserv/metadatautility/3GPExtParserLib_stub/group"/>
</component>
<component id="sts" name="System Tone Service" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mmmw/mmserv/sts/group"/>
</component>
</collection>
<collection id="mmmw_info" name="Multimedia Middleware Info" level="specific">
<component id="mmmw_metadata" name="Multimedia Middleware Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/mw/mmmw/mmmw_info/mmmw_metadata/mmmw_metadata.mrp"/>
</component>
</collection>
</package>
<package id="gstreamer" level="generic" tech-domain="mm" levels="plugin core api" name="GStreamer">
<!-- structure matches planned directory layout -->
<collection id="gstreamerfw" name="GStreamer Framework" level="core">
<component id="gstreamer_core" name="GStreamer Core" introduced="^3" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/gstreamer/gstreamer_core/group"/>
</component>
</collection>
<collection id="gst_plugins" name="GStreamer Plugins" level="plugin">
<component id="gst_plugins_base" name="GStreamer Base Plugins" introduced="^3" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/gstreamer/gst_plugins_base/group"/>
</component>
<component id="gst_plugins_good" name="GStreamer Good Plugins" introduced="^3" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/gstreamer/gst_plugins_good/group"/>
</component>
<component id="gst_plugins_symbian" name="GStreamer Sybmian Plugins" introduced="^3" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/gstreamer/gst_plugins_symbian/group" filter="!test"/>
</component>
</collection>
<collection id="gstregistrygenerator" name="GStreamer Registry Generator" level="core">
<!-- collection is really a component. Move down an directory -->
<component id="gstregistrygenerator_build" name="GStreamer Registry Generator Build" introduced="^3" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/gstreamer/gstregistrygenerator/group"/>
</component>
</collection>
<collection id="gst_test_apps" name="GStreamer Test Applications" level="api">
</collection>
<collection id="gstreamer_info" name="GStreamer Info" level="api">
<component id="gstreamer_rom" name="GStreamer ROM" introduced="^3" filter="s60" class="config" target="device" purpose="optional">
<unit bldFile="/mw/gstreamer/rom"/>
</component>
</collection>
</package>
<package id="helix" level="generic" tech-domain="mm" levels="plugin framework server generic specific" name="Helix">
<collection id="helix_ren" name="Helix Engine" level="framework">
<component id="helix_ren_build" name="Helix Engine Build" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/helix/helix_ren/group"/>
</component>
<component id="helix_stub" name="Helix Stub" introduced="^2" filter="sf_build" class="api" target="device" purpose="optional">
<unit bldFile="/mw/helix/helix_ren/helix_stub/group"/>
</component>
<component id="helixrfsplugin" name="Helix RFS Plugin" introduced="^2" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/helix/helix_ren/helixrfsplugin/group"/>
</component>
</collection>
</package>
<package id="camerasrv" level="specific" tech-domain="mm" levels="plugin fw api" name="Camera Services">
<collection id="camerasrv_plat" name="Camera Services Platform Interfaces" level="api">
<component id="media_recorder_sink_api" name="Media Recorder Sink API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/camerasrv/camerasrv_plat/media_recorder_sink_api/group"/>
</component>
<component id="custom_onboard_camera_api" name="Custom Onboard Camera API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/camerasrv/camerasrv_plat/custom_onboard_camera_api/group"/>
</component>
<component id="imaging_configuration_manager_api" name="Imaging Configuration Manager API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/camerasrv/camerasrv_plat/imaging_configuration_manager_api/group" filter="!test"/>
</component>
<component id="media_recorder_api" name="Media Recorder API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/camerasrv/camerasrv_plat/media_recorder_api/group" filter="!test"/>
</component>
<component id="3gp_file_composer_api" name="3GP File Composer API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/camerasrv/camerasrv_plat/3gp_file_composer_api/group"/>
</component>
</collection>
<collection id="camcordermmfplugin" name="Camcorder MMF Plugin" level="plugin">
<!-- collection is really a component. Should move down a directory -->
<component id="camcordermmfplugin_build" name="Camcorder MMF Plugin Build" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/camerasrv/camcordermmfplugin/build"/>
</component>
</collection>
<collection id="configmanagers" name="Config Managers" level="api">
<component id="imagingconfigmanager" name="Imaging Config Manager" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/camerasrv/configmanagers/imagingconfigmanager/group"/>
</component>
</collection>
</package>
<package id="mmappfw" level="specific" tech-domain="mm" levels="fw utils if" name="Multimedia App Framework">
<collection id="mmappfw_plat" name="Multimedia App Framework Platform Interfaces" level="if">
<component id="collection_helper_api" name="Collection Helper API" introduced="^1" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappfw_plat/collection_helper_api/group"/>
</component>
<component id="harvester_collection_mediator_api" name="Harvester Collection Mediator API" introduced="^1" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappfw_plat/harvester_collection_mediator_api/group"/>
</component>
<component id="harvester_metadata_extractor_api" name="Harvester Metadata Extractor API" introduced="^1" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappfw_plat/harvester_metadata_extractor_api/group"/>
</component>
<component id="harvester_server_api" name="Harvester Server API" introduced="^1" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappfw_plat/harvester_server_api/group"/>
</component>
<component id="harvester_utility_api" name="Harvester Utility API" introduced="^1" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappfw_plat/harvester_utility_api/group"/>
</component>
<component id="playlist_engine_api" name="Playlist Engine API" introduced="^1" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappfw_plat/playlist_engine_api/group"/>
</component>
<component id="mtp_keys_api" name="MTP Keys API" introduced="^1" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappfw_plat/mtp_keys_api/group"/>
</component>
<component id="mpx_collection_common_definition_api" name="MPX Collection Common Definition API" introduced="^1" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappfw_plat/mpx_collection_common_definition_api/group"/>
</component>
<component id="mpx_collection_utility_api" name="MPX Collection Utility API" introduced="^1" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappfw_plat/mpx_collection_utility_api/group"/>
</component>
<component id="mpx_common_api" name="MPX Common API" introduced="^1" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappfw_plat/mpx_common_api/group"/>
</component>
<component id="mpx_common_definition_api" name="MPX Common Definition API" introduced="^1" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappfw_plat/mpx_common_definition_api/group"/>
</component>
<component id="mpx_playback_common_definition_api" name="MPX Playback Common Definition API" introduced="^1" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappfw_plat/mpx_playback_common_definition_api/group"/>
</component>
<component id="mpx_playback_utility_api" name="MPX Playback Utility API" introduced="^1" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappfw_plat/mpx_playback_utility_api/group"/>
</component>
<component id="mpx_base_view_plugins_api" name="MPX Base View Plugins API" introduced="^1" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappfw_plat/mpx_base_view_plugins_api/group"/>
</component>
<component id="mpx_view_utility_api" name="MPX View Utility API" introduced="^1" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappfw_plat/mpx_view_utility_api/group"/>
</component>
<component id="mpx_albumart_utility_api" name="MPX Album Art Utility API" introduced="^1" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappfw_plat/mpx_albumart_utility_api/group"/>
</component>
<component id="media_player_settings_engine_api" name="Media Player Settings Engine API" introduced="^1" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappfw_plat/media_player_settings_engine_api/group"/>
</component>
<component id="asx_parser_api" name="ASX Parser API" introduced="^1" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappfw_plat/asx_parser_api/group"/>
</component>
<component id="playback_helper_api" name="Playback Helper API" introduced="^1" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappfw_plat/playback_helper_api/group"/>
</component>
<component id="videoplaylist_utility_api" name="Video Playlist Utility API" introduced="^1" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappfw_plat/videoplaylist_utility_api/group"/>
</component>
<component id="qt_telephony_multimedia_service_api" name="Qt Telephony Multimedia Service API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappfw_plat/qt_telephony_multimedia_service_api/group"/>
</component>
</collection>
<collection id="mpx" name="Multimedia Player" level="fw">
<component id="commonframework" name="MPX Common Framework" introduced="^1" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mpx/commonframework/group"/>
</component>
<component id="playbackframework" name="MPX Playback Framework" introduced="^1" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mpx/playbackframework/group"/>
</component>
<component id="mpxcollectionfw" name="MPX Collection Framework" introduced="^1" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mpx/collectionframework/group"/>
</component>
<component id="mpxviewfw" name="MPX View Framework" introduced="^1" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mpx/viewframework/group"/>
</component>
<component id="mpxviewframeworkqt" name="MPX View Framework Qt" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mpx/mpxviewframeworkqt" qt:proFile="mpxviewframeworkqt.pro" qt:qmakeArgs="-r -config rom"/>
</component>
<component id="mpx_build" name="MPX Build" introduced="^1" filter="s60" target="device" purpose="optional">
<!-- Move the export to another component or remove the #includes from this one -->
<unit bldFile="/mw/mmappfw/mpx/group"/>
</component>
</collection>
<collection id="mmappcomponents" name="Multimedia App Components" level="utils">
<component id="mmappcomponents_build" name="Multimedia App Components Build" introduced="^1" filter="s60" target="device" purpose="optional">
<!-- needed for #ifdefs and hrh include. Need to #include the .hrh file in each bld.inf
Can remove this once configuration is in place-->
<unit bldFile="/mw/mmappfw/mmappcomponents/group"/>
</component>
<component id="collectionhelper" name="Media Player Collection Helper" introduced="^1" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappcomponents/collectionhelper/group"/>
</component>
<component id="playlistengine" name="Playlist Engine" introduced="^1" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappcomponents/playlistengine/group"/>
</component>
<component id="mpxharvester" name="Media Player Harvester" introduced="^1" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappcomponents/harvester/group"/>
</component>
<component id="mmappcommonui" name="Multimedia App Common UI" introduced="^1" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappcomponents/mmappcommonui/group"/>
</component>
<component id="mediaplayersettingsengine" name="Media Player Settings Engine" introduced="^1" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappcomponents/mediaplayersettingsengine/group"/>
</component>
<component id="asxparser" name="ASX Parser" introduced="^1" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappcomponents/asxparser/group"/>
</component>
<component id="playbackhelper" name="Playback Helper" introduced="^3" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappcomponents/playbackhelper/group"/>
</component>
<component id="videoplaylistutility" name="Video Playlist Utility" introduced="^3" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappcomponents/videoplaylistutility/group"/>
</component>
<component id="mmmtpdataprovider" name="Multimedia MTP Data Provider" introduced="^3" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/mmappfw/mmappcomponents/mmmtpdataprovider/group"/>
</component>
</collection>
<collection id="qtms" name="Qt Telephony Multimedia Services" level="fw">
<component id="qtms_build" name="Qt Telephony Multimedia Services Build" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- Collection is really a component. Move down a dir -->
<unit bldFile="/mw/mmappfw/qtms" qt:proFile="qtmsapi.pro" qt:qmakeArgs="-r -config rom"/>
</component>
</collection>
<collection id="mmappfw_info" name="Multimedia App Framework Info" level="if">
<component id="mmappfw_build" name="Multimedia App Framework Build" introduced="^1" filter="s60" target="device" purpose="optional">
<!-- Move the export to another component or remove the #includes from this one -->
<unit bldFile="/mw/mmappfw/group"/>
</component>
<component id="mmappfw_test" name="Multimedia App Framework Test" introduced="^1" filter="s60,test,api_test,pref_test" purpose="development" target="device">
</component>
</collection>
</package>
<package id="hgwidgets" level="specific" tech-domain="mm" levels="framework service api" name="Multimedia Widgets">
<collection id="hgwidgets_plat" name="Multimedia Widgets Platform Interfaces" level="api">
<component id="ganeswidgets_api" name="Ganes Widgets API" introduced="^4" class="api" target="device" purpose="optional">
<!-- should separate out unit -->
</component>
<component id="hgcacheproxymodel_api" name="Hg Cache Proxy Model API" introduced="^4" class="api" target="device" purpose="optional">
<!-- should separate out unit -->
</component>
<component id="hgwidgets_plat_build" name="Multimedia Widgets Platform Interfaces Build" introduced="^4" class="api" target="device" purpose="optional">
<!-- break this up into separate components -->
<unit bldFile="/mw/hgwidgets/hgwidgets_plat" qt:proFile="hgwidgets_plat.pro"/>
</component>
</collection>
<collection id="ganeswidgets" name="Ganes Widgets" level="service">
<!-- really a component, should move down a dir level and have a unit -->
<component id="ganeswidgets_build" name="Ganes Widgets Build" introduced="^4" filter="build_as_app" target="device" purpose="optional">
<unit bldFile="/mw/hgwidgets/ganeswidgets" qt:proFile="ganeswidgets.pro"/>
</component>
</collection>
<collection id="hgcacheproxymodel" name="Hurriganes Cache Proxy Model" level="framework" filter="build_as_app">
<!-- really a component, should move down a dir level and have a unit -->
<component id="hgcacheproxymodel_build" name="Hurriganes Cache Proxy Model Build" introduced="^4" target="device" purpose="optional">
<unit bldFile="/mw/hgwidgets/hgcacheproxymodel" qt:proFile="hgcacheproxymodel.pro"/>
</component>
</collection>
</package>
<package id="inputmethods" level="generic" tech-domain="ui" levels="plugin engine framework api" name="Input Methods">
<collection id="inputmethods_pub" name="Input Methods Public Interfaces" level="api">
<component id="ptiengine_iti_api" name="PTI Engine API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/inputmethods/inputmethods_pub/ptiengine_iti_api/group"/>
</component>
<component id="optical_character_recognition_api" name="Optical Character Recognition API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/inputmethods/inputmethods_pub/optical_character_recognition_api/group"/>
</component>
<component id="input_language_info_api" name="Input Language Info API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/inputmethods/inputmethods_pub/input_language_info_api/group"/>
</component>
</collection>
<collection id="inputmethods_plat" name="Input Methods Platform Interfaces" level="api">
<component id="pen_input_server_api" name="Pen Input Server API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/inputmethods/inputmethods_plat/pen_input_server_api/group"/>
</component>
<component id="ptiengine_hwr_api" name="PTI Engine Handwriting Recognition API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/inputmethods/inputmethods_plat/ptiengine_hwr_api/group"/>
</component>
<component id="aknfep_settings_api" name="Avkon FEP Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/inputmethods/inputmethods_plat/aknfep_settings_api/group"/>
</component>
<component id="aknfep_status_api" name="Avkon FEP Status API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/inputmethods/inputmethods_plat/aknfep_status_api/group"/>
</component>
<component id="ptiengine_key_definations_api" name="PTI Engine Key Definitions API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/inputmethods/inputmethods_plat/ptiengine_key_definations_api/group"/>
</component>
<component id="aknfep_definitions_api" name="Avkon FEP Definitions API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/inputmethods/inputmethods_plat/aknfep_definitions_api/group"/>
</component>
<component id="aknfep_pen_support_api" name="Avkon FEP Pen Support API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/inputmethods/inputmethods_plat/aknfep_pen_support_api/group"/>
</component>
<component id="ptiengine_indic_definitions_api" name="PTI Engine Indic Definitions API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/inputmethods/inputmethods_plat/ptiengine_indic_definitions_api/group"/>
</component>
<component id="aknfep_uiinterface_api" name="Avkon FEP UI Interface API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/inputmethods/inputmethods_plat/aknfep_uiinterface_api/group"/>
</component>
</collection>
<collection id="textinput" name="Text Input" level="framework">
<component id="ptienginev2" name="Predictive Text Input Engine" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/inputmethods/textinput/ptienginev2/group"/>
</component>
<component id="akninputlanguage" name="Avkon Input Language" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/inputmethods/textinput/akninputlanguage/group"/>
</component>
<component id="peninputarc" name="Pen Input Arc" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/inputmethods/textinput/peninputarc/group"/>
</component>
</collection>
<collection id="fep" name="FEP" level="engine">
<component id="aknfep" name="Avkon FEP" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/inputmethods/fepstub/group"/>
</component>
<component id="frontendprocessor" name="Front End Processor" purpose="mandatory" target="device">
<unit bldFile="/mw/inputmethods/fep/frontendprocessor/group" mrp="/mw/inputmethods/fep/frontendprocessor/group/app-framework_fepbase.mrp"/>
</component>
</collection>
<collection id="inputmethods_info" name="Input Methods Info" level="api">
<component id="inputmethods_metadata" name="Input Methods Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/mw/inputmethods/inputmethods_info/inputmethods_metadata/inputmethods_metadata.mrp"/>
</component>
</collection>
</package>
<package id="qt" level="generic" tech-domain="ui" levels="tool mw app" name="Qt">
<collection id="qtconf" name="Qt Config" level="tool">
<component id="qt_deviceconfiguration" name="Qt Device Configuration" introduced="^2" filter="s60,qt_tools" class="config tool" target="device" purpose="optional">
<unit bldFile="/mw/qt/src/s60installs/deviceconfiguration"/>
</component>
</collection>
<collection id="qt_info" name="Qt Info" level="mw">
<component id="qt_build" name="Qt Build" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/qt/." qt:proFile="projects.pro"/>
</component>
</collection>
<collection id="qtdemos" name="Qt Demos" level="app">
</collection>
<collection id="qtexamples" name="Qt Examples" level="app">
<meta rel="qtexamples" type="auto">
<group name="qtdemos"/>
</meta>
</collection>
<collection id="qt_tests" name="Qt Tests" level="app">
</collection>
</package>
<package id="qtmobility" level="generic" tech-domain="ui" levels="tool mw app" name="Qt Mobility">
<collection id="qtmobility_info" name="Qt Mobility Info" level="mw">
<component id="qtmobilityconf" name="Qt Mobility Config" introduced="^4" filter="s60,tools" target="device" purpose="optional">
<unit bldFile="/mw/qtmobility/group"/>
</component>
<component id="qtmobility_build" name="Qt Mobility Build" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/qtmobility/." qt:proFile="qtmobility.pro"/>
</component>
</collection>
<collection id="qtmobility_examples" name="Qt Mobility Examples" level="app">
</collection>
<collection id="tests" name="Qt Mobility Tests">
</collection>
</package>
<package id="qtextensions" level="generic" tech-domain="ui" levels="tool mw app" name="Qt Extensions">
<collection id="qtecomplugins" name="Qt ECom Plugins" level="app">
<component id="qtecomplugins_build" name="Qt ECom Plugin" introduced="^4" filter="s60,qtecomplugins" purpose="development" class="plugin" target="device">
<unit bldFile="/mw/qtextensions/qtecomplugins" qt:proFile="qtecomplugins.pro"/>
</component>
<component id="qtextensions_examples" name="Qt ECom Plugin Examples" introduced="^4" filter="s60,qtextensionsexamples,build_as_app" purpose="development" target="device">
<meta rel="testbuild" type="auto">
<group name="qtextensionsexamples"/>
</meta>
<unit bldFile="/mw/qtextensions/qtecomplugins/examples" qt:proFile="examples.pro"/>
</component>
</collection>
<collection id="qthighway" name="Qt Highway" level="app">
<component id="qthighway_build" name="Qt Highway" introduced="^4" filter="s60,qthighway" purpose="development" target="device">
<unit bldFile="/mw/qtextensions/qthighway" qt:proFile="qthighway.pro"/>
</component>
</collection>
<collection id="qtmobileextensions" name="Qt Mobile Extensions" level="app">
<component id="qtmobileextensions_build" name="Qt Mobile Extensions" introduced="^4" filter="s60,qtextension" purpose="development" target="device">
<unit bldFile="/mw/qtextensions/qtmobileextensions" qt:proFile="qtmobileextensions.pro"/>
</component>
<component id="qtmobileextensions_examples" name="Qt Mobile Extensions Examples" introduced="^4" filter="s60,qtextensionsexamples,build_as_app" purpose="development" target="device">
<meta rel="testbuild" type="auto">
<group name="qtextensionsexamples"/>
</meta>
<unit bldFile="/mw/qtextensions/qtmobileextensions/examples" qt:proFile="examples.pro"/>
</component>
</collection>
<collection id="qhbstyle" name="Qt Orbit Style" level="mw">
<component id="qhbstyle_build" name="Qt Orbit Style Build" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/qtextensions/qhbstyle" qt:proFile="qhbstyle.pro"/>
</component>
</collection>
<collection id="qtextensions_info" name="Qt Extensions Info" level="app">
<component id="qtextensions_conf" name="Qt Extensions Confgure" introduced="^4" filter="s60,qt_tools" class="config" target="device" purpose="optional">
<unit bldFile="/mw/qtextensions/group"/>
</component>
</collection>
</package>
<package id="hb" level="generic" tech-domain="ui" levels="engine test api" name="Orbit">
<collection id="hb_info" name="Orbit Info" level="api">
<component id="hb_build" name="Orbit Build" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- should break this down into actual components -->
<unit bldFile="/mw/hb/." qt:proFile="hb.pro" qt:qmakeArgs="-r MMP_RULES+=EXPORTUNFROZEN"/>
</component>
</collection>
</package>
<package id="classicui" level="generic" tech-domain="ui" levels="base support server generic specific" name="Classic UI">
<collection id="classicui_plat" name="Classic UI Platform Interfaces" level="specific">
<component id="signal_pane_api" name="Signal Pane API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/signal_pane_api/group" filter="!test"/>
</component>
<component id="global_popup_priority_controller_api" name="Global Popup Priority Controller API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/global_popup_priority_controller_api/group" filter="!test"/>
</component>
<component id="item_finder_api" name="Item Finder API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/item_finder_api/group" filter="!test"/>
</component>
<component id="avkon_fonts_api" name="Avkon Fonts API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/avkon_fonts_api/group" filter="!test"/>
</component>
<component id="extended_utilities_api" name="Extended Utilities API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/extended_utilities_api/group" filter="!test"/>
</component>
<component id="extended_aiw_criteria_api" name="Extended AIW Criteria API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/extended_aiw_criteria_api/group" filter="!test"/>
</component>
<component id="volume_popup_api" name="Volume Popup API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/volume_popup_api/group" filter="!test"/>
</component>
<component id="avkon_secondary_display_support_api" name="AVKON Secondary Display Support API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/avkon_secondary_display_support_api/group" filter="!test"/>
</component>
<component id="extended_setting_pages_api" name="Extended Setting Pages API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/extended_setting_pages_api/group" filter="!test"/>
</component>
<component id="extended_lists_api" name="Extended Lists API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/extended_lists_api/group" filter="!test"/>
</component>
<component id="input_block_api" name="Input Block API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/input_block_api/group" filter="!test"/>
</component>
<component id="avkon_ui_server_api" name="AVKON UI Server API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/avkon_ui_server_api/group" filter="!test"/>
</component>
<component id="extended_status_pane_api" name="Extended Status Pane API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/extended_status_pane_api/group" filter="!test"/>
</component>
<component id="extended_notifiers_api" name="Extended Notifiers API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/extended_notifiers_api/group" filter="!test"/>
</component>
<component id="task_list_api" name="Task List API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/task_list_api/group" filter="!test"/>
</component>
<component id="key_event_utilities_api" name="Key Event Utilities API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/key_event_utilities_api/group"/>
</component>
<component id="emergency_call_support_api" name="Emergency Call Support API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/emergency_call_support_api/group" filter="!test"/>
</component>
<component id="extended_dialogs_api" name="Extended Dialogs API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/extended_dialogs_api/group"/>
</component>
<component id="legacy_ui_framework_headers_api" name="Legacy UI Framework Headers API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/legacy_ui_framework_headers_api/group"/>
</component>
<component id="extended_editors_api" name="Extended Editors API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/extended_editors_api/group" filter="!test"/>
</component>
<component id="alarm_api" name="Alarm API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/alarm_api/group" filter="!test"/>
</component>
<component id="aiw_service_interface_base_api" name="AIW Service Interface Base API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/aiw_service_interface_base_api/group" filter="!test"/>
</component>
<component id="list_effects_api" name="List Effects API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/list_effects_api/group" filter="!test"/>
</component>
<component id="find_item_ui_api" name="Find Item UI API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/find_item_ui_api/group" filter="!test"/>
</component>
<component id="server_application_services_api" name="Server Application Services API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/server_application_services_api/group" filter="!test"/>
</component>
<component id="common_ui_settings_api" name="Common UI Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/common_ui_settings_api/group"/>
</component>
<component id="aiw_service_interface_menu_api" name="AIW Service Interface Menu API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/aiw_service_interface_menu_api/group" filter="!test"/>
</component>
<component id="eikon_server_extension_client_api" name="EIKON Server Extension Client API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/eikon_server_extension_client_api/group" filter="!test"/>
</component>
<component id="skinnable_clock_api" name="Skinnable Clock API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/skinnable_clock_api/group" filter="!test"/>
</component>
<component id="battery_pane_api" name="Battery Pane API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/battery_pane_api/group" filter="!test"/>
</component>
<component id="fep_document_navigation_api" name="FEP Document Navigation API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/fep_document_navigation_api/group"/>
</component>
<component id="memory_card_ui_api" name="Memory Card UI API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/memory_card_ui_api/group" filter="!test"/>
</component>
<component id="avkon_status_api" name="AVKON Status API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/avkon_status_api/group"/>
</component>
<component id="application_switching_api" name="Application Switching API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/application_switching_api/group" filter="!test"/>
</component>
<component id="avkon_localised_texts_api" name="AVKON Localised Texts API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/avkon_localised_texts_api/group"/>
</component>
<component id="avkon_secondary_display_api" name="AVKON Secondary Display API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/avkon_secondary_display_api/group"/>
</component>
<component id="extended_animation_api" name="Extended Animation API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/extended_animation_api/group" filter="!test"/>
</component>
<component id="extended_notes_api" name="Extended Notes API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/extended_notes_api/group" filter="!test"/>
</component>
<component id="text_scroller_api" name="Text Scroller API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/text_scroller_api/group" filter="!test"/>
</component>
<component id="custom_cursors_api" name="Custom Cursors API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/custom_cursors_api/group" filter="!test"/>
</component>
<component id="global_window_priorities_api" name="Global Window Priorities API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/global_window_priorities_api/group"/>
</component>
<component id="extended_indicators_api" name="Extended Indicators API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/extended_indicators_api/group" filter="!test"/>
</component>
<component id="special_character_table_api" name="Special Character Table API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/special_character_table_api/group" filter="!test"/>
</component>
<component id="avkon_settings_api" name="AVKON Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/avkon_settings_api/group"/>
</component>
<component id="extended_sounds_api" name="Extended Sounds API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/extended_sounds_api/group"/>
</component>
<component id="themes_settings_api" name="Themes Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/themes_settings_api/group"/>
</component>
<component id="media_shared_document_api" name="Media Shared Document API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/media_shared_document_api/group" filter="!test"/>
</component>
<component id="extended_queries_api" name="Extended Queries API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/extended_queries_api/group"/>
</component>
<component id="phone_number_text_utilities_api" name="Phone Number Text Utilities API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/phone_number_text_utilities_api/group" filter="!test"/>
</component>
<component id="extended_scroller_api" name="Extended Scroller API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/extended_scroller_api/group"/>
</component>
<component id="key_rotator_api" name="Key Rotator API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/key_rotator_api/group" filter="!test"/>
</component>
<component id="extended_grids_api" name="Extended Grids API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/extended_grids_api/group" filter="!test"/>
</component>
<component id="generic_parameter_api" name="Generic Parameter API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/generic_parameter_api/group" filter="!test"/>
</component>
<component id="indicator_touch_observer_api" name="Indicator Touch Observer API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/indicator_touch_observer_api/group"/>
</component>
<component id="popup_form_api" name="Popup Form API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/popup_form_api/group" filter="!test"/>
</component>
<component id="stylus_activated_popup_api" name="Stylus Activated Pop-up API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/stylus_activated_popup_api/group" filter="!test"/>
</component>
<component id="indicator_plugin_api" name="Indicator Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/indicator_plugin_api/group" filter="!test"/>
</component>
<component id="layout_configuration_api" name="Layout Configuration API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/layout_configuration_api/group" filter="!test"/>
</component>
<component id="common_file_dialogs_filter_factory_api" name="Common File Dialogs Filter Factory API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/common_file_dialogs_filter_factory_api/group"/>
</component>
<component id="avkon_anim_dll_api" name="AVKON Anim DLL API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/avkon_anim_dll_api/group"/>
</component>
<component id="extended_initialization_api" name="Extended Initialization API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/extended_initialization_api/group" filter="!test"/>
</component>
<component id="long_tap_animation_api" name="Long Tap Animation API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/long_tap_animation_api/group" filter="!test"/>
</component>
<component id="extended_ui_framework_definitions_api" name="Extended UI Framework Definitions API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/extended_ui_framework_definitions_api/group"/>
</component>
<component id="extended_buttons_api" name="Extended Buttons API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/extended_buttons_api/group" filter="!test"/>
</component>
<component id="aiw_provider_utility_api" name="AIW Provider Utility API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/aiw_provider_utility_api/group" filter="!test"/>
</component>
<component id="transition_effect_parameters_api" name="Transition Effect Parameters API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/transition_effect_parameters_api/group" filter="!test"/>
</component>
<component id="extended_input_capabilities_api" name="Extended Input Capabilities API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/extended_input_capabilities_api/group" filter="!test"/>
</component>
<component id="uikon_status_api" name="UIKON Status API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/uikon_status_api/group"/>
</component>
<component id="transition_effect_utilities_api" name="Transition Effect Utilities API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/transition_effect_utilities_api/group" filter="!test"/>
</component>
<component id="pointer_event_modifier_api" name="Pointer Event Modifier API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/pointer_event_modifier_api/group" filter="!test"/>
</component>
<component id="avkon_testability_api" name="AVKON Testability API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/avkon_testability_api/group"/>
</component>
<component id="ode_api" name="Ode API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/ode_api/group"/>
</component>
<component id="physics_api" name="Physics API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/physics_api/group"/>
</component>
<component id="touch_pane_api" name="Touch Pane API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/touch_pane_api/group" filter="!test"/>
</component>
<component id="touch_pane_observer_api" name="Touch Pane Observer API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/touch_pane_observer_api/group"/>
</component>
<component id="alternate_fs_api" name="Alternate FS API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/alternate_fs_api/group"/>
</component>
<component id="discreet_popup_api" name="Discreet Popup API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/discreet_popup_api/group"/>
</component>
<component id="extended_options_menu_api" name="Extended Options Menu API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/extended_options_menu_api/group" filter="!test"/>
</component>
<component id="directory_localizer_api" name="Directory Localizer API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/directory_localizer_api/group"/>
</component>
<component id="findutil_api" name="Find Util API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/findutil_api/group"/>
</component>
<component id="input_frame_api" name="Input Frame API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/input_frame_api/group" filter="!test"/>
</component>
<component id="window_server_event_observer_api" name="Window Server Event Observer API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/window_server_event_observer_api/group" filter="!test"/>
</component>
<component id="application_framework_api" name="Application Framework API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/application_framework_api/group" filter="!test"/>
</component>
<component id="scroller_api" name="Scroller API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/scroller_api/group" filter="!test"/>
</component>
<component id="ui_framework_utilities_api" name="UI Framework Utilities API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/ui_framework_utilities_api/group" filter="!test"/>
</component>
<component id="ui_framework_definitions_api" name="UI Framework Definitions API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/ui_framework_definitions_api/group" filter="!test"/>
</component>
<component id="buttons_api" name="Buttons API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/buttons_api/group" filter="!test"/>
</component>
<component id="queries_api" name="Queries API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/queries_api/group" filter="!test"/>
</component>
<component id="aiw_generic_parameter_api" name="AIW Generic Parameter API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/aiw_generic_parameter_api/group" filter="!test"/>
</component>
<component id="editors_api" name="Editors API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/editors_api/group" filter="!test"/>
</component>
<component id="common_file_dialogs_api" name="Common File Dialogs API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/common_file_dialogs_api/group"/>
</component>
<component id="dialog_shutter_api" name="Dialog Shutter API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/dialog_shutter_api/group" filter="!test"/>
</component>
<component id="fonts_api" name="Fonts API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/fonts_api/group" filter="!test"/>
</component>
<component id="screen_clearer_api" name="Screen Clearer API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/screen_clearer_api/group" filter="!test"/>
</component>
<component id="notifiers_api" name="Notifiers API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/notifiers_api/group" filter="!test"/>
</component>
<component id="notes_api" name="Notes API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/notes_api/group" filter="!test"/>
</component>
<component id="status_pane_api" name="Status Pane API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/status_pane_api/group" filter="!test"/>
</component>
<component id="base_controls_api" name="Base Controls API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/base_controls_api/group" filter="!test"/>
</component>
<component id="grids_api" name="Grids API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/grids_api/group" filter="!test"/>
</component>
<component id="context_pane_api" name="Context Pane API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/context_pane_api/group" filter="!test"/>
</component>
<component id="lists_api" name="Lists API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/lists_api/group" filter="!test"/>
</component>
<component id="popups_api" name="Popups API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/popups_api/group" filter="!test"/>
</component>
<component id="misc_controls_api" name="Misc Controls API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/misc_controls_api/group" filter="!test"/>
</component>
<component id="keylock_api" name="Keylock API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/keylock_api/group" filter="!test"/>
</component>
<component id="options_menu_api" name="Options Menu API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/options_menu_api/group" filter="!test"/>
</component>
<component id="hierarchical_lists_api" name="Hierarchical Lists API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/hierarchical_lists_api/group" filter="!test"/>
</component>
<component id="navigation_pane_api" name="Navigation Pane API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/navigation_pane_api/group" filter="!test"/>
</component>
<component id="tabs_api" name="Tabs API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/tabs_api/group" filter="!test"/>
</component>
<component id="title_pane_touch_observer_api" name="Title Pane Touch Observer API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/title_pane_touch_observer_api/group"/>
</component>
<component id="choice_list_api" name="Choice List API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/choice_list_api/group" filter="!test"/>
</component>
<component id="info_popup_note_api" name="Info Popup Note API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/info_popup_note_api/group" filter="!test"/>
</component>
<component id="setting_pages_api" name="Setting Pages API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/setting_pages_api/group" filter="!test"/>
</component>
<component id="screen_mode_api" name="Screen Mode API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/screen_mode_api/group" filter="!test"/>
</component>
<component id="indicators_api" name="Indicators API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/indicators_api/group" filter="!test"/>
</component>
<component id="error_ui_api" name="Error UI API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/error_ui_api/group" filter="!test"/>
</component>
<component id="animation_api" name="Animation API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/animation_api/group" filter="!test"/>
</component>
<component id="searchfield_api" name="Searchfield API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/searchfield_api/group" filter="!test"/>
</component>
<component id="labels_api" name="Labels API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/labels_api/group" filter="!test"/>
</component>
<component id="hotkeys_api" name="Hotkeys API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/hotkeys_api/group" filter="!test"/>
</component>
<component id="initialization_api" name="Initialization API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/initialization_api/group" filter="!test"/>
</component>
<component id="volume_control_api" name="Volume Control API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/volume_control_api/group" filter="!test"/>
</component>
<component id="title_pane_api" name="Title Pane API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/title_pane_api/group" filter="!test"/>
</component>
<component id="sounds_api" name="Sounds API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/sounds_api/group" filter="!test"/>
</component>
<component id="aiw_service_handler_api" name="AIW Service Handler API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/aiw_service_handler_api/group" filter="!test"/>
</component>
<component id="aiw_criteria_api" name="AIW Criteria API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/aiw_criteria_api/group" filter="!test"/>
</component>
<component id="touch_ui_utilities_api" name="Touch UI Utilities API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/touch_ui_utilities_api/group" filter="!test"/>
</component>
<component id="generic_button_api" name="Generic Button API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/generic_button_api/group" filter="!test"/>
</component>
<component id="form_api" name="Form API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/form_api/group" filter="!test"/>
</component>
<component id="uikon_core_controls" name="Uikon Core Controls" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/uikon_core_controls/group" filter="!test"/>
</component>
<component id="calendar_api" name="Calendar API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/calendar_api/group"/>
</component>
<component id="toolbar_api" name="Toolbar API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/toolbar_api/group" filter="!test"/>
</component>
<component id="server_application_api" name="Server Application API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/server_application_api/group"/>
</component>
<component id="slider_api" name="Slider API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/slider_api/group" filter="!test"/>
</component>
<component id="private_ui_framework_api" name="Private UI Framework API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/private_ui_framework_api/group" filter="!test"/>
</component>
<component id="dialogs_api" name="Dialogs API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/dialogs_api/group" filter="!test"/>
</component>
<component id="document_handler_api" name="Document handler API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/document_handler_api/group"/>
</component>
<component id="images_api" name="Images API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/images_api/group" filter="!test"/>
</component>
<component id="stylus_popup_menu_api" name="Stylus Pop-up Menu API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/stylus_popup_menu_api/group" filter="!test"/>
</component>
<component id="information_preview_popup_api" name="Information Preview Popup API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/information_preview_popup_api/group" filter="!test"/>
</component>
<component id="intermediate_state_api" name="Intermediate State API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/intermediate_state_api/group"/>
</component>
<component id="help_launcher_api" name="Help Launcher API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/classicui/classicui_plat/help_launcher_api/group"/>
</component>
</collection>
<collection id="ode" name="Open Dynamics Engine" level="support">
<!-- the collection is really a component. Move down a directory.-->
<component id="ode_build" name="ODE" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/classicui/ode/group"/>
</component>
</collection>
<collection id="uifw" name="UI Framework" level="server">
<component id="uiklaf" name="Uikon Look-and-Feel" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/classicui/uifw/uiklaf/group"/>
</component>
<component id="eikctl" name="Eikon Controls" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/classicui/uifw/eikctl/group"/>
</component>
<component id="avkon" name="Avkon" filter="s60" target="device" purpose="optional">
<!-- can only have one unit. Split into 3 components, or #include all from same bld.inf -->
<unit bldFile="/mw/classicui/uifw/avkon/aknphysics/group"/>
<unit bldFile="/mw/classicui/uifw/avkon/group"/>
<unit bldFile="/mw/classicui/uifw/avkon/aknconf/group"/>
</component>
<component id="eikstd" name="Eikon Standard" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/classicui/uifw/eikstd/group"/>
</component>
<component id="aknglobalui" name="Avkon Global UI" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/classicui/uifw/aknglobalui/group"/>
</component>
</collection>
<collection id="commonuis" name="Common UIs" level="specific">
<component id="commonui" name="Common UI" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/classicui/commonuis/commonui/group"/>
</component>
<component id="commondialogs" name="Common Dialogs" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/classicui/commonuis/commondialogs/group"/>
</component>
</collection>
<collection id="applicationinterworkingfw" name="Application Interworking Framework" level="generic">
<component id="aifwservicehandler" name="Application Interworking Service Handler" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/classicui/applicationinterworkingfw/servicehandler/group"/>
</component>
</collection>
<collection id="uiutils" name="UI Utils" level="specific">
<component id="localizer" name="Directory Localizer" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/classicui/uiutils/localizer/group"/>
</component>
<component id="findutil" name="Find Utility" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/classicui/uiutils/findutil/group"/>
</component>
<component id="hlplch" name="Help Launcher" filter="s60,bldfirst" target="device" purpose="optional">
<unit bldFile="/mw/classicui/uiutils/hlplch/group"/>
</component>
</collection>
<collection id="commonuisupport" name="Common UI Support" level="support">
<component id="uikon" name="Uikon" introduced="6.0" purpose="mandatory" target="device">
<unit bldFile="/mw/classicui/commonuisupport/uikon/group" mrp="/mw/classicui/commonuisupport/uikon/group/app-framework_uikon.mrp"/>
</component>
<component id="uikon_ncp" name="Uikon (NCP)" introduced="S^4" purpose="mandatory" target="device">
<unit bldFile="/mw/classicui/commonuisupport/uikon/group_ncp"/>
</component>
<component id="errorresolverdata" name="Error Resolver Data" purpose="mandatory" target="device">
<unit bldFile="/mw/classicui/commonuisupport/errorresolverdata/group" mrp="/mw/classicui/commonuisupport/errorresolverdata/group/app-framework_errorresgt.mrp"/>
</component>
<component id="uilaf" name="UI Look and Feel" introduced="6.0" purpose="mandatory" target="device">
<unit bldFile="/mw/classicui/commonuisupport/uilaf/GROUP" mrp="/mw/classicui/commonuisupport/uilaf/GROUP/app-framework_uiklafgt.mrp"/>
</component>
<component id="grid" name="Grid" purpose="optional" target="device">
<unit bldFile="/mw/classicui/commonuisupport/grid/group" mrp="/mw/classicui/commonuisupport/grid/group/app-framework_grid.mrp"/>
</component>
<component id="uifwsdocs" name="UI Frameworks Documentation" purpose="development" class="doc" target="device">
<unit mrp="/mw/classicui/commonuisupport/uifwsdocs/app-framework_documentation.mrp"/>
</component>
</collection>
<collection id="lafagnosticuifoundation" name="Look-and-Feel Agnostic UI Foundation" level="base">
<component id="cone" name="Control Environment" purpose="mandatory" target="device">
<unit bldFile="/mw/classicui/lafagnosticuifoundation/cone/group" mrp="/mw/classicui/lafagnosticuifoundation/cone/group/app-framework_cone.mrp"/>
</component>
<component id="graphicseffects" name="Graphics Effects" introduced="9.2" purpose="optional" target="device">
<unit bldFile="/mw/classicui/lafagnosticuifoundation/graphicseffects/group" mrp="/mw/classicui/lafagnosticuifoundation/graphicseffects/group/app-framework_gfxtranseffect.mrp"/>
</component>
<component id="uigraphicsutils" name="UI Graphics Utilities" purpose="mandatory" target="device">
<unit bldFile="/mw/classicui/lafagnosticuifoundation/uigraphicsutils/group" mrp="/mw/classicui/lafagnosticuifoundation/uigraphicsutils/group/app-framework_egul.mrp"/>
</component>
<component id="clockanim" name="Clock" purpose="optional" class="plugin" target="device">
<unit bldFile="/mw/classicui/lafagnosticuifoundation/clockanim/group" mrp="/mw/classicui/lafagnosticuifoundation/clockanim/group/app-framework_clock.mrp"/>
</component>
<component id="bmpanimation" name="BMP Animation" introduced="6.0" purpose="optional" target="device">
<unit bldFile="/mw/classicui/lafagnosticuifoundation/bmpanimation/group" mrp="/mw/classicui/lafagnosticuifoundation/bmpanimation/group/app-framework_bmpanim.mrp"/>
</component>
<component id="animation" name="Animation" introduced="9.1" purpose="optional" target="device">
<unit bldFile="/mw/classicui/lafagnosticuifoundation/animation/group" mrp="/mw/classicui/lafagnosticuifoundation/animation/group/app-framework_animation.mrp"/>
</component>
</collection>
<collection id="classicui_info" name="Classic UI Info" level="specific">
<!-- the multiple units in the API test components need to be resolved -->
<component id="classicui_metadata" name="Classic UI Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/mw/classicui/classicui_info/classicui_metadata/classicui_metadata.mrp"/>
</component>
</collection>
</package>
<package id="svgt" level="generic" tech-domain="ui" levels="util ui" name="SVG Tiny">
<collection id="svgt_plat" name="SVG Tiny Platform Interfaces" level="ui">
<component id="svgt_api" name="SVGT API" introduced="9.2" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/svgt/svgt_plat/svgt_api/group"/>
</component>
<component id="nvg_api" name="NVG API" introduced="9.2" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/svgt/svgt_plat/nvg_api/group"/>
</component>
</collection>
<collection id="svgtopt" name="SVG-T Engine" level="util">
<component id="svgtopt_build" name="SVG Engine" introduced="9.2" filter="s60" target="device" purpose="optional">
<!-- component is at collection level. Needs to be moved down a directory -->
<unit bldFile="/mw/svgt/svgtopt/group"/>
</component>
</collection>
</package>
<package id="uiaccelerator" level="generic" tech-domain="ui" levels="plugin framework server ex if" name="UI Accelerator">
<collection id="uiaccelerator_plat" name="UI Accelerator Platform Interfaces" level="if">
<component id="alf_core_toolkit_api" name="ALF Core Toolkit API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uiaccelerator/uiaccelerator_plat/alf_core_toolkit_api/group"/>
</component>
<component id="alf_visual_api" name="ALF Visual API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uiaccelerator/uiaccelerator_plat/alf_visual_api/group"/>
</component>
<component id="alf_extended_visual_api" name="ALF Extended Visual API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uiaccelerator/uiaccelerator_plat/alf_extended_visual_api/group"/>
</component>
<component id="alf_extension_api" name="ALF Extension API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uiaccelerator/uiaccelerator_plat/alf_extension_api/group"/>
</component>
<component id="alf_tracing_api" name="ALF Tracing API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uiaccelerator/uiaccelerator_plat/alf_tracing_api/group"/>
</component>
<component id="alf_client_server_api" name="ALF Client Server API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uiaccelerator/uiaccelerator_plat/alf_client_server_api/group"/>
</component>
</collection>
<collection id="uiacceltk" name="UI Accelerator Toolkit" level="framework">
<component id="hitchcock" name="Hitchcock" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/uiaccelerator/uiacceltk/hitchcock/group"/>
</component>
<component id="uiacceltk_build" name="UI Accelerator Toolkit Build" filter="s60" target="device" purpose="optional">
<!-- move into the other component, or remove the #include and make this UI Accelerator Toolkit ROM-->
<unit bldFile="/mw/uiaccelerator/uiacceltk/group"/>
</component>
</collection>
<collection id="uiaccelerator_test" name="UI Accelerator Test" level="ex">
</collection>
</package>
<package id="uiresources" level="generic" tech-domain="ui" levels="compile plugin framework server generic data" name="UI Resources">
<!-- are the custom filters below needed? -->
<collection id="uiresources_pub" name="UI Resources Public Interfaces" level="data">
<component id="pictograph_api" name="Pictograph API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/uiresources_pub/pictograph_api/group" filter="!test"/>
</component>
<component id="skins_api" name="Skins API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/uiresources_pub/skins_api/group" filter="!test"/>
</component>
<component id="font_definition_api" name="Font Definition API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/uiresources_pub/font_definition_api/group" filter="!test"/>
</component>
<component id="graphics_api" name="Graphics API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/uiresources_pub/graphics_api/group" filter="!test"/>
</component>
<component id="scalable_icons_api" name="Scalable Icons API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/uiresources_pub/scalable_icons_api/group"/>
</component>
<component id="layout_id_definitions_api" name="Layout ID Definitions API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/uiresources_pub/layout_id_definitions_api/group"/>
</component>
</collection>
<collection id="uiresources_plat" name="UI Resources Platform Interfaces" level="data">
<component id="layout_system_private_api" name="Layout System Private API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/uiresources_plat/layout_system_private_api/group" filter="!test"/>
</component>
<component id="layout_data_api" name="Layout Data API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/uiresources_plat/layout_data_api/group" filter="!test"/>
</component>
<component id="cdl_api" name="CDL API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/uiresources_plat/cdl_api/group" filter="!test"/>
</component>
<component id="extended_skins_api" name="Extended Skins API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/uiresources_plat/extended_skins_api/group" filter="!test"/>
</component>
<component id="tfx_server_controller_plugin_api" name="TFX Server Controller Plug-in API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/uiresources_plat/tfx_server_controller_plugin_api/group"/>
</component>
<component id="extended_fonts_api" name="Extended Fonts API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/uiresources_plat/extended_fonts_api/group" filter="!test"/>
</component>
<component id="graphic_configuration_api" name="Graphic Configuration API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/uiresources_plat/graphic_configuration_api/group" filter="!test"/>
</component>
<component id="mif_header_cdl_api" name="MIF Header CDL API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/uiresources_plat/mif_header_cdl_api/group"/>
</component>
<component id="personalisation_and_skins_settings_api" name="Personalisation and Skins Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/uiresources_plat/personalisation_and_skins_settings_api/group"/>
</component>
<component id="tfx_effect_setup_plugin_api" name="TFX Effect Setup Plug-in API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/uiresources_plat/tfx_effect_setup_plugin_api/group"/>
</component>
<component id="mifconv_definitions_api" name="Mifconv Definitions API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/uiresources_plat/mifconv_definitions_api/group"/>
</component>
<component id="wallpaper_configuration_api" name="Wallpaper Configuration API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/uiresources_plat/wallpaper_configuration_api/group"/>
</component>
<component id="language_code_definitions_api" name="Language Code Definitions API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/uiresources_plat/language_code_definitions_api/group"/>
</component>
<component id="skins_image_attributes_api" name="Skins Image Attributes API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/uiresources_plat/skins_image_attributes_api/group" filter="!test"/>
</component>
<component id="private_user_area_code_definitions_api" name="Private User Area Code Definitions API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/uiresources_plat/private_user_area_code_definitions_api/group"/>
</component>
<component id="tfx_server_plugin_ids_api" name="TFX Server Plug-in IDs API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/uiresources_plat/tfx_server_plugin_ids_api/group"/>
</component>
</collection>
<collection id="uiresources_info" name="UI Resources Info" level="data">
<component id="uiresources_test" name="UI Resources Tests" filter="s60,test,api_test" purpose="development" target="device">
</component>
</collection>
<collection id="uigraphics" name="UI Graphics" level="generic">
<component id="bitmaps2" name="Bitmaps 2" filter="s60" class="config" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/uigraphics/bitmaps2/group"/>
</component>
<component id="icons" name="Icons" filter="s60" class="config" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/uigraphics/icons/group"/>
</component>
<component id="variatedbitmaps" name="Variated Bitmaps" filter="s60" class="config" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/uigraphics/variatedbitmaps/group"/>
</component>
<component id="aknicon" name="Avkon Icon Framework" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/uigraphics/aknicon/group"/>
</component>
<component id="nvgrenderstage" name="NVG Render Stage" filter="sf_build" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/uigraphics/nvgrenderstage/group"/>
</component>
</collection>
<collection id="layouts" name="Layouts" level="plugin">
<component id="cdl" name="Customization Definition Language" filter="s60" target="device" purpose="optional">
<!-- can only have one unit. Need to #include them or split into multiple components -->
<unit bldFile="/mw/uiresources/layouts/cdl/cdlengine/group"/>
<unit bldFile="/mw/uiresources/layouts/cdl/cdlserver/group"/>
</component>
<component id="aknlayout2" name="Avkon Layout 2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/layouts/aknlayout2/group"/>
</component>
</collection>
<collection id="skins" name="Skins" level="data">
<component id="aknskincontent" name="Avkon Skin Content" filter="s60" class="config" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/skins/aknskincontent/group"/>
</component>
<component id="aknskins" name="Avkon Skin Compiler" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/skins/aknskins/group"/>
</component>
</collection>
<collection id="pictographs" name="Pictographs" level="data">
<component id="aknpictograph" name="Avkon Pictograph" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/pictographs/aknpictograph/group"/>
</component>
</collection>
<collection id="locales" name="Locales" level="framework">
<component id="locales_build" name="Locales Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/locales/loce32"/>
</component>
</collection>
<collection id="uiconfig" name="UI Config" level="server">
<component id="s60config" name="S60 UI Config" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/uiconfig/s60config/group"/>
</component>
</collection>
<collection id="fontsupport" name="Font Support" level="generic">
<component id="fontprovider" name="Font Provider" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/fontsupport/fontprovider/group"/>
</component>
<component id="fontutils" name="Font Utils" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/fontsupport/fontutils/FontUtils/group"/>
</component>
</collection>
<collection id="helpthemes" name="Help Themes" level="data">
<!-- collection is really a component. Need to move down a directory -->
<component id="helpthemes_build" name="Help Themes Build" filter="s60" class="config" target="device" purpose="optional">
<unit bldFile="/mw/uiresources/helpthemes/group"/>
</component>
</collection>
</package>
<package id="hapticsservices" level="generic" tech-domain="ui" levels="fw server api" name="Haptics Services">
<collection id="hapticsservices_plat" name="Haptics Services Platform Interfaces" level="api">
<component id="tacticon_api" name="Tacticon API" introduced="^1" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/hapticsservices/hapticsservices_plat/tacticon_api/group"/>
</component>
<component id="tactile_feedback_core_api" name="Tactile Feedback Core API" introduced="^1" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/hapticsservices/hapticsservices_plat/tactile_feedback_core_api/group"/>
</component>
<component id="tactile_feedback_server_api" name="Tactile Feedback Server API" introduced="^1" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/hapticsservices/hapticsservices_plat/tactile_feedback_server_api/group"/>
</component>
</collection>
<collection id="hapticsservices_pub" name="Haptics Services Public Interfaces" level="api">
<component id="tactile_feedback_client_api" name="Tactile Feedback Client API" introduced="^1" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/hapticsservices/hapticsservices_pub/tactile_feedback_client_api/group"/>
</component>
</collection>
<collection id="tacticonserver" name="Tacticon Server" level="server">
<!-- collection is really a component. Move down a directory -->
<component id="tacticonserver_build" name="Tacticon Server Build" introduced="^3" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/hapticsservices/tacticonserver/group"/>
<!-- clients and servers are usualy the same component. Consider moving plugins to separate components if needed -->
</component>
<component id="tacticonhapticsplugin" name="Tacticon Haptics Plugin" introduced="^3" filter="s60,dfs_build" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/hapticsservices/tacticonserver/server/tacticonpluginfw/tacticonhapticsplugin/group"/>
</component>
</collection>
<collection id="tactilefeedback" name="Tactile Feedback" level="fw">
<component id="tactilearearegistry" name="Tactile Area Registry" introduced="^1" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/hapticsservices/tactilefeedback/tactilearearegistry/group"/>
</component>
<component id="tactilefeedbackresolver" name="Tactile Feedback Resolver" introduced="^1" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/hapticsservices/tactilefeedback/tactilefeedbackresolver/group"/>
</component>
<component id="tactilefeedbackresolver_plugins" name="Tactile Feedback Resolver Plugins" introduced="^1" filter="s60,dfs_build" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/hapticsservices/tactilefeedback/tactilefeedbackresolver/plugins/group"/>
</component>
<component id="tactileclickplugin" name="Tactile Click Plugin" introduced="^1" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/hapticsservices/tactilefeedback/tactileclickplugin/group"/>
</component>
<component id="tactilefeedbackclient" name="Tactile Feedback Client" introduced="^1" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/hapticsservices/tactilefeedback/tactilefeedbackclient/group"/>
</component>
<component id="tactileactionplugin" name="Tactile Action Plugin" introduced="^1" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/hapticsservices/tactilefeedback/tactileactionplugin/group"/>
</component>
<component id="tactilefeedback_rom" name="Tactile Feedback ROM" introduced="^1" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/hapticsservices/tactilefeedback/rom"/>
</component>
</collection>
</package>
<package id="platformthemes" level="specific" tech-domain="ui" levels="framework generic ui" name="Platform Themes">
<collection id="platformthemes_info" name="Platform Themes Info">
<component id="platformthemes_build" name="Platform Themes Build" filter="s60" target="device" purpose="optional">
<!-- no real structure in this package. Should break into collections / components -->
<unit bldFile="/mw/platformthemes/." qt:proFile="platformthemes.pro"/>
</component>
</collection>
</package>
<package id="gsprofilesrv" level="generic" tech-domain="ui" levels="system plugin framework server generic specific" name="General Settings and Profiles Services">
<collection id="gsprofilesrv_pub" name="GS and Profiles Services Public Interfaces" level="specific">
<component id="profiles_engine_active_profile_settings_api" name="Profiles Engine Active Profile Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/gsprofilesrv/gsprofilesrv_pub/profiles_engine_active_profile_settings_api/group"/>
</component>
<component id="profiles_engine_wrapper_api" name="Profiles Engine Wrapper API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/gsprofilesrv/gsprofilesrv_pub/profiles_engine_wrapper_api/group"/>
</component>
</collection>
<collection id="gsprofilesrv_plat" name="GS and Profiles Services Platform Interfaces" level="specific">
<component id="ftuwizardmodel_api" name="FTU Wizard Model API" filter="bldfirst,s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/gsprofilesrv/gsprofilesrv_plat/ftuwizardmodel_api" qt:proFile="ftuwizardmodel_api.pro" qt:qmakeArgs="-r -config rom"/>
</component>
<component id="profiles_engine_api" name="Profiles Engine API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/gsprofilesrv/gsprofilesrv_plat/profiles_engine_api/group"/>
</component>
<component id="settings_uis_cenrep_collection_api" name="Settings UIs CenRep Collection API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/gsprofilesrv/gsprofilesrv_plat/settings_uis_cenrep_collection_api/group"/>
</component>
</collection>
<collection id="ftuwizardmodel" name="FTU Wizard Model" level="generic">
<component id="ftuwizardmodel_build" name="FTU Wizardmodel Build" filter="bldfirst" target="device" purpose="optional">
<unit bldFile="/mw/gsprofilesrv/ftuwizardmodel" qt:proFile="ftuwizardmodel.pro" qt:qmakeArgs="-r -config rom"/>
</component>
</collection>
<collection id="controlpanel" name="Control Panel" level="generic">
<component id="controlpanel_rom" name="Control Panel ROM" filter="s60" target="device" purpose="optional">
<!-- Need to create a real .pro file for this
<unit bldFile="controlpanel/rom" qt:proFile="cp_rom.pri" qt:qmakeArgs="-r -config rom"/> -->
</component>
<component id="controlpanel_config" name="Control Panel Config" introduced="^4" filter="s60" class="config" target="device" purpose="optional">
<!-- Need to create a real .pro file for this
<unit bldFile="controlpanel/conf" qt:proFile="conf.pri" qt:qmakeArgs="-r -config rom"/> -->
</component>
<component id="controlpanel_source" name="Control Panel Source" filter="s60" target="device" purpose="optional">
<!-- Uncomment when controlpanel_build is removed
<unit bldFile="controlpanel/src" qt:qmakeArgs="-r -config rom" qt:proFile="src.pro"/> -->
</component>
<component id="controlpanel_build" name="Control Panel Build" filter="s60" target="device" purpose="optional">
<!-- need to make included .pri file into a real .pro file -->
<unit bldFile="/mw/gsprofilesrv/controlpanel" qt:proFile="controlpanel.pro" qt:qmakeArgs="-r -config rom"/>
</component>
</collection>
<collection id="profilesservices" name="Profiles Services" level="server">
<component id="profileengine" name="Profile Engine" introduced="9.1" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/gsprofilesrv/profilesservices/profileengine/group"/>
</component>
</collection>
</package>
<package id="homescreensrv" level="specific" tech-domain="ui" levels="plugin framework server generic specific" name="Home Screen Services">
<collection id="hswidgetmodel" name="Home Screen Widget Model" level="framework">
<component id="hswidgetmodel_build" name="Home Screen Widget Model Build" introduced="^4" target="device" purpose="optional">
<unit bldFile="/mw/homescreensrv/hswidgetmodel" qt:proFile="hswidgetmodel.pro" qt:qmakeArgs="-r"/>
</component>
</collection>
<collection id="contentstorage" name="Content Storage" level="framework">
<component id="cautils" name="Content Arsenal Utils" introduced="^4" target="device" purpose="optional">
<unit bldFile="/mw/homescreensrv/contentstorage/cautils" qt:proFile="cautils.pro" qt:qmakeArgs="-r"/>
</component>
<component id="contentstorage_build" name="Content Storage Build" introduced="^4" target="device" purpose="optional">
<unit bldFile="/mw/homescreensrv/contentstorage/group" qt:proFile="group.pro" qt:qmakeArgs="-r"/>
</component>
<component id="casrv/calocalizerscanner" name="Content Arsenal Server Localizer Scanner" introduced="^4" target="device" purpose="optional">
<unit bldFile="/mw/homescreensrv/contentstorage/casrv/calocalizerscanner" qt:proFile="calocalizerscanner.pro" qt:qmakeArgs="-r"/>
</component>
<component id="cahandler" name="Content Arsenal Handler" introduced="^4" target="device" purpose="optional">
<unit bldFile="/mw/homescreensrv/contentstorage/cahandler" qt:proFile="cahandler.pro" qt:qmakeArgs="-r"/>
</component>
<component id="caclient" name="Content Arsenal Client" introduced="^4" target="device" purpose="optional">
<unit bldFile="/mw/homescreensrv/contentstorage/caclient" qt:proFile="caclient.pro" qt:qmakeArgs="-r"/>
</component>
<component id="casoftwareregistry" name="Content Arsenal Software Registry" introduced="^4" target="device" purpose="optional">
<unit bldFile="/mw/homescreensrv/contentstorage/casoftwareregistry" qt:proFile="casoftwareregistry.pro" qt:qmakeArgs="-r"/>
</component>
</collection>
<collection id="homescreensrv_plat" name="Home Screen Services Platform Interfaces" level="specific">
<component id="homescreensrv_plat_build" name="Home Screen Services Platform Interfaces build" introduced="^4" target="device" purpose="optional">
<unit bldFile="/mw/homescreensrv/homescreensrv_plat" qt:proFile="homescreensrv_plat.pro" qt:qmakeArgs="-r"/>
</component>
<component id="menu_sat_interface_api" name="Menu SAT Interface API" filter="s60" class="api" target="device" purpose="optional">
<unit base="/mw/homescreensrv/homescreensrv_plat/menu_sat_interface_api"/>
</component>
<component id="contentstorage_api" name="Content Storage API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit base="/mw/homescreensrv/homescreensrv_plat/contentstorage_api"/>
</component>
<component id="hswidgetmodel_api" name="HS Widget Model API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit base="/mw/homescreensrv/homescreensrv_plat/hswidgetmodel_api"/>
</component>
<component id="homescreen_information_api" name="Homescreen Information API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit base="/mw/homescreensrv/homescreensrv_plat/homescreen_information_api"/>
</component>
</collection>
<collection id="hsactivityfw" name="Activity Framework" level="fw">
<component id="hsactivityfw_build" name="Activity Framework Build" introduced="^4" target="device" purpose="optional">
<unit bldFile="/mw/homescreensrv/activityfw" qt:proFile="activityfw.pro" qt:qmakeArgs="-r"/>
</component>
</collection>
<collection id="tstaskmonitor" name="Task Switcher Task Monitor" level="fw">
<!-- move collection down to a component directory or split up into component .pro files -->
<component id="tstaskmonitor_build" name="Task Switcher Task Monitor Build" introduced="^4" target="device" purpose="optional">
<unit bldFile="/mw/homescreensrv/tstaskmonitor" qt:proFile="tstaskmonitor.pro" qt:qmakeArgs="-r"/>
</component>
</collection>
<collection id="hsappkeyhandler" name="HS Appplication Key Handler" level="server">
<component id="hsappkeyhandler_build" name="Appplication Key Handler Build" introduced="^4" target="device" purpose="optional">
<unit bldFile="/mw/homescreensrv/hsappkeyhandler" qt:proFile="hsappkeyhandler.pro" qt:qmakeArgs="-r"/>
</component>
</collection>
<collection id="tsdevicedialog" name="Task Switcher Device Dialog" level="plugin">
<component id="tsdevicedialog_build" name="Task Switcher Device Dialog Build" introduced="^4" target="device" purpose="optional">
<!-- break this up into real components -->
<unit bldFile="/mw/homescreensrv/tsdevicedialog" qt:proFile="tsdevicedialog.pro" qt:qmakeArgs="-r"/>
</component>
</collection>
<collection id="homescreensrv_info" name="Home Screen Services Info" level="specific">
<component id="homescreensrvconf" name="Home Screen Services Config" introduced="^4" class="config" target="device" purpose="optional">
<unit bldFile="/mw/homescreensrv/." qt:proFile="homescreensrv_exports_to_rom.pri" qt:qmakeArgs="-r"/>
</component>
<component id="homescreensrvrom" name="Home Screen Services ROM" introduced="^4" target="device" purpose="optional">
<unit bldFile="/mw/homescreensrv/group"/>
</component>
</collection>
</package>
<package id="homescreensrvlegacy" level="generic" tech-domain="ui" levels="plugin framework server generic specific" name="Legacy Home Screen Services">
<collection id="homescreensrvlegacy_plat" name="Legacy Home Screen Services Platform Interfaces" level="specific">
<component id="ai_content_model_api" name="AI Content Model API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/homescreensrvlegacy/ai_content_model_api/group" qt:proFile="group.pro"/>
</component>
<component id="ai_plugin_information_api" name="AI Plug-in Information API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/homescreensrvlegacy/ai_plugin_information_api/group" qt:proFile="group.pro"/>
</component>
<component id="content_harvester_plugin_api" name="Content Harvester Plugin API " filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/homescreensrvlegacy/content_harvester_plugin_api/group"/>
</component>
</collection>
</package>
<package id="appinstall" level="generic" tech-domain="rt" levels="tool framework generic api" name="Application Installation">
<collection id="appinstall_plat" name="Application Installation Platform Interfaces" level="api">
<component id="iaupdate_api" name="IA Update API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appinstall/appinstall_plat/iaupdate_api/group"/>
</component>
<component id="task_plugin_api" name="Task Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appinstall/appinstall_plat/task_plugin_api/group"/>
</component>
<component id="sw_installer_common_ui_api" name="SW Installer Common UI API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appinstall/appinstall_plat/sw_installer_common_ui_api/group"/>
</component>
<component id="sw_installer_launcher_api" name="SW Installer Launcher API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appinstall/appinstall_plat/sw_installer_launcher_api/group"/>
</component>
<component id="task_management_api" name="Task Management API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appinstall/appinstall_plat/task_management_api/group"/>
</component>
<component id="sw_installer_ui_plugin_api" name="SW Installer UI Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appinstall/appinstall_plat/sw_installer_ui_plugin_api/group"/>
</component>
<component id="sw_installer_cr_keys" name="SW Installer CR Keys" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appinstall/appinstall_plat/sw_installer_cr_keys/group"/>
</component>
<component id="sw_installer_ps_keys" name="SW Installer PS Keys" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appinstall/appinstall_plat/sw_installer_ps_keys/group"/>
</component>
<component id="sifui_api" name="STIF UI API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appinstall/appinstall_plat/sifui_api/group"/>
</component>
</collection>
<collection id="appinstall_pub" name="Application Installation Public Interfaces" level="api">
<component id="startup_list_management_api" name="Startup List Management API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/appinstall/appinstall_pub/startup_list_management_api/group"/>
</component>
</collection>
<collection id="ncdengine" name="Nokia Content Discover" level="framework">
<component id="ncdengine_build" name="NCD Engine" introduced="^1" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/appinstall/ncdengine/group"/>
</component>
<component id="ncdengine_qt_build" name="NCD Qt Engine" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/appinstall/ncdengine/engine" qt:proFile="engine.pro"/>
</component>
</collection>
<collection id="appinstaller" name="Application Installer" level="generic">
<component id="appinstui" name="Application Installer UI" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/appinstall/appinstaller/appinstui/group"/>
</component>
<component id="appinstui_qt" name="Application Installer Qt UI" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/appinstall/appinstaller/appinstui" qt:proFile="appinstui.pro"/>
</component>
</collection>
<collection id="iaupdateapi_stub" name="IA Update API Stub" level="api">
<!-- the collection is really a component. Move down a directory.-->
<component id="iaupdateapi_stub_build" name="IA Update API Stub Build" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/appinstall/iaupdateapi_stub/group"/>
</component>
</collection>
<collection id="iaupdate" name="Independent Apps Update" level="api">
<!-- Should reorganise into actual components -->
<component id="iad" name="Independent App delivery" introduced="^4" filter="s60" purpose="development" target="device">
<unit bldFile="/mw/appinstall/iaupdate" qt:proFile="iaupdate.pro"/>
</component>
<component id="iaupdate_build" name="IA Update Build" introduced="^2" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/appinstall/iaupdate/group"/>
</component>
</collection>
<collection id="installationservices" name="Installation Services" level="generic">
<component id="swi" name="Secure Software Install" purpose="optional" target="device">
<unit bldFile="/mw/appinstall/installationservices/swi/group" mrp="/mw/appinstall/installationservices/swi/group/security_swi.mrp"/>
</component>
<component id="swidevicetools" name="Secure Software Install Device Tools" introduced="8.1" purpose="development" target="device">
<unit bldFile="/mw/appinstall/installationservices/swidevicetools/group" mrp="/mw/appinstall/installationservices/swidevicetools/group/security_switools_device.mrp"/>
</component>
<component id="swcomponentregistry" name="Software Component Registry" introduced="^4" purpose="mandatory" target="device">
<unit bldFile="/mw/appinstall/installationservices/swcomponentregistry/group" mrp="/mw/appinstall/installationservices/swcomponentregistry/group/security_softwarecomponentregistry.mrp"/>
</component>
<component id="swinstallationfw" name="Software Installation Framework" introduced="^4" purpose="optional" target="device">
<unit bldFile="/mw/appinstall/installationservices/swinstallationfw/group" mrp="/mw/appinstall/installationservices/swinstallationfw/group/security_softwareinstallframework.mrp"/>
</component>
<component id="swtransactionservices" name="Software Transaction Services" introduced="^4" purpose="optional" target="device">
<unit bldFile="/mw/appinstall/installationservices/swtransactionservices/group" mrp="/mw/appinstall/installationservices/swtransactionservices/group/security_softwaretransactionservices.mrp"/>
</component>
<component id="refswinstallationplugin" name="Reference Software Installation Plugin" introduced="^4" purpose="development" class="plugin" target="device">
<unit bldFile="/mw/appinstall/installationservices/refswinstallationplugin/group" mrp="/mw/appinstall/installationservices/refswinstallationplugin/group/security_sifrefplugin.mrp"/>
</component>
<component id="refsoftwareappmgr" name="Reference Software Application Manager" introduced="^4" purpose="development" target="device">
<unit bldFile="/mw/appinstall/installationservices/refsoftwareappmgr/group" mrp="/mw/appinstall/installationservices/refsoftwareappmgr/group/security_referenceapplicationmanager.mrp"/>
</component>
<component id="swiconfig" name="Software Install Config" introduced="9.1" purpose="optional" class="config" target="device">
<unit bldFile="/mw/appinstall/installationservices/swiconfig/group" mrp="/mw/appinstall/installationservices/swiconfig/group/install_config.mrp"/>
</component>
</collection>
<collection id="secureswitools" name="Secure Software Install Tools" level="tool">
<component id="makekeys" name="MakeKeys" introduced="6.0" filter="gt" target="desktop" purpose="optional">
<unit bldFile="/mw/appinstall/secureswitools/makekeys/group" mrp="/mw/appinstall/secureswitools/makekeys/group/security_makekeys.mrp"/>
</component>
<component id="swianalysistoolkit" name="SWI Analysis Toolkit" target="desktop" purpose="development">
<unit bldFile="/mw/appinstall/secureswitools/swianalysistoolkit/group" mrp="/mw/appinstall/secureswitools/swianalysistoolkit/group/security_switools.mrp"/>
</component>
<component id="openssllib" name="OpenSSL Library" target="desktop" purpose="optional">
<unit mrp="/mw/appinstall/secureswitools/openssllib/security_openssl.mrp"/>
</component>
<component id="swisistools" name="Secure Software Install SIS Tools" target="desktop" purpose="optional">
<unit bldFile="/mw/appinstall/secureswitools/swisistools/group" mrp="/mw/appinstall/secureswitools/swisistools/group/security_sistools.mrp"/>
</component>
</collection>
<collection id="appinstall_info" name="Application Installation Info" level="api">
<component id="appinstall_metadata" name="Application Installation Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/mw/appinstall/appinstall_info/appinstall_metadata/appinstall_metadata.mrp"/>
</component>
</collection>
</package>
<package id="serviceapifw" level="specific" tech-domain="rt" levels="plugin framework server generic specific" name="Service API Framework">
<collection id="serviceapifw_pub" name="Service API Framework Public Interfaces" level="specific"/>
<collection id="serviceapifw_plat" name="Service API Framework Platform Interfaces" level="specific">
<component id="rtsecuritymanager_common_api" name="Runtime Security Manager Common API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/serviceapifw/serviceapifw_plat/rtsecuritymanager_common_api/group"/>
</component>
<component id="rtsecuritymanager_utility_api" name="Runtime Security Manager Utility API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/serviceapifw/serviceapifw_plat/rtsecuritymanager_utility_api/group"/>
</component>
<component id="rtsecuritymanager_client_api" name="Runtime Security Manager Client API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/serviceapifw/serviceapifw_plat/rtsecuritymanager_client_api/group"/>
</component>
<component id="liw_provider_utility_api" name="LIW Provider Utility API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/serviceapifw/serviceapifw_plat/liw_provider_utility_api/group"/>
</component>
<component id="liw_service_interface_base_api" name="LIW Service Interface Base API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/serviceapifw/serviceapifw_plat/liw_service_interface_base_api/group"/>
</component>
<component id="liw_service_interface_menu_api" name="LIW Service Interface Menu API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/serviceapifw/serviceapifw_plat/liw_service_interface_menu_api/group"/>
</component>
<component id="liw_criteria_api" name="LIW Criteria API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/serviceapifw/serviceapifw_plat/liw_criteria_api/group"/>
</component>
<component id="liw_generic_parameter_api" name="LIW Generic Parameter API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/serviceapifw/serviceapifw_plat/liw_generic_parameter_api/group"/>
</component>
<component id="liw_service_handler_api" name="LIW Service Handler API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/serviceapifw/serviceapifw_plat/liw_service_handler_api/group"/>
</component>
</collection>
<collection id="rtsecuritymanager" name="Runtime Security Manager" level="server">
<component id="rtsecuritymanagerutil" name="Runtime Security Manager Util" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/serviceapifw/rtsecuritymanager/rtsecuritymanagerutil/group"/>
</component>
<component id="rtsecuritymanagerserver" name="Runtime Security Manager Server" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/serviceapifw/rtsecuritymanager/rtsecuritymanagerserver/group"/>
</component>
<component id="rtsecuritymanagerclient" name="Runtime Security Manager Client" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/serviceapifw/rtsecuritymanager/rtsecuritymanagerclient/group"/>
</component>
<component id="rtsecuritymanager_build" name="Runtime Security Manager Build" filter="s60" target="device" purpose="optional">
<!-- Move the export to the appropriate components, or make this a ROM component by removing the #includes -->
<unit bldFile="/mw/serviceapifw/rtsecuritymanager/group"/>
</component>
</collection>
<collection id="languageinterworkingfw" name="Language Interworking Framework" level="framework">
<component id="lifwservicehandler" name="Service Handler" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/serviceapifw/languageinterworkingfw/servicehandler/group"/>
</component>
</collection>
</package>
<package id="serviceapi" level="specific" tech-domain="rt" levels="os mw1 mw2 app" name="Service API">
<!-- should break up this collection into something meaningful -->
<collection id="serviceproviders" name="Service Providers" level="mw1">
<!-- are commented out components to be removed? -->
<component id="sapi_contacts_vpbk" name="Contacts Phonebook SAPI" filter="s60" class="plugin" target="device" purpose="optional">
<!--<unit bldFile="serviceproviders/sapi_contacts_vpbk/group"/>-->
</component>
<component id="sapi_location" name="Location SAPI" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/serviceapi/serviceproviders/sapi_location/group"/>
</component>
<component id="sapi_mediamanagement" name="Media Management SAPI" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/serviceapi/serviceproviders/sapi_mediamanagement/group"/>
</component>
<component id="sapi_landmarks" name="Landmarks SAPI" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/serviceapi/serviceproviders/sapi_landmarks/group"/>
</component>
<component id="sapi_messaging" name="Messaging SAPI" filter="s60" class="plugin" target="device" purpose="optional">
<!-- <unit bldFile="serviceproviders/sapi_messaging/group"/> -->
</component>
<component id="sapi_applicationmanager" name="Application Manager SAPI" filter="s60" class="plugin" target="device" purpose="optional">
<!-- <unit bldFile="serviceproviders/sapi_applicationmanager/group"/>-->
</component>
<component id="sapi_calendar" name="Calendar SAPI" filter="s60" class="plugin" target="device" purpose="optional">
<!-- <unit bldFile="serviceproviders/sapi_calendar/group"/> -->
</component>
<component id="sapi_logging" name="Logging SAPI" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/serviceapi/serviceproviders/sapi_logging/group"/>
</component>
<component id="sapi_sensor" name="Sensor SAPI" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/serviceapi/serviceproviders/sapi_sensor/group"/>
</component>
<component id="sapi_sysinfo" name="Sysinfo SAPI" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/serviceapi/serviceproviders/sapi_sysinfo/group"/>
</component>
<component id="sapi_serviceregistry" name="Service Registry SAPI" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/serviceapi/serviceproviders/sapi_serviceregistry/group"/>
</component>
<component id="jsapi" name="Javascript API" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/serviceapi/serviceproviders/jsapi/group"/>
</component>
<component id="serviceproviders_build" name="Service API Build" filter="s60" target="device" purpose="optional">
<!-- distribute the exports or make this a ROM component by removing the #includes -->
<unit bldFile="/mw/serviceapi/serviceproviders/group"/>
</component>
</collection>
</package>
<package id="browser" level="specific" tech-domain="rt" levels="plugin utils support main" name="Browser">
<collection id="bookmarksengine" name="Bookmarks Engine" level="support">
<component id="bookmarksengine_build" name="Bookmarks Engine Build" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/browser/bookmarksengine" qt:proFile="bookmarksengine.pro"/>
</component>
</collection>
</package>
<package id="web" level="specific" tech-domain="rt" levels="plugin utils server generic specific" name="Web">
<collection id="web_pub" name="Web Public Interfaces" level="specific">
<component id="browser_control_api" name="Browser Control API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/web/web_pub/browser_control_api/group"/>
</component>
<component id="download_mgr_client_api" name="Download Manager Client API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/web/web_pub/download_mgr_client_api/group"/>
</component>
<component id="download_mgr_ui_api" name="Download Manager UI Library API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/web/web_pub/download_mgr_ui_api/group"/>
</component>
<component id="favourites_engine_api" name="Favourites Engine API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/web/web_pub/favourites_engine_api/group"/>
</component>
<component id="browser_plugin_api" name="Browser Plug-in API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/web/web_pub/browser_plugin_api/group"/>
</component>
<component id="settings_api" name="Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/web/web_pub/settings_api/group"/>
</component>
</collection>
<collection id="web_plat" name="Web Platform Interfaces" level="specific">
<component id="aiw_browser_provider_api" name="AIW Browser Provider API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/web/web_plat/aiw_browser_provider_api/group"/>
</component>
<component id="browser_dialogs_provider_api" name="Browser Dialogs Provider API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/web/web_plat/browser_dialogs_provider_api/group"/>
</component>
<component id="browser_platform_api" name="Browser Platform API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/web/web_plat/browser_platform_api/group"/>
</component>
<component id="cod_handler_api" name="COD Handler API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/web/web_plat/cod_handler_api/group"/>
</component>
<component id="connection_manager_api" name="Connection Manager API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/web/web_plat/connection_manager_api/group"/>
</component>
<component id="download_mgr_client_api_extn" name="Download Manager Client API Extension" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/web/web_plat/download_mgr_client_api_extn/group"/>
</component>
<component id="feeds_engine_api" name="Feeds Engine API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/web/web_plat/feeds_engine_api/group"/>
</component>
<component id="launcher_api" name="Launcher API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/web/web_plat/launcher_api/group"/>
</component>
<component id="recent_url_store_api" name="Recent URL Store API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/web/web_plat/recent_url_store_api/group"/>
</component>
<component id="rt_gesturehelper_api" name="Runtime Gesture Helper API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/web/web_plat/rt_gesturehelper_api/group"/>
</component>
<component id="scheme_handler_plugin_api" name="Scheme Handler Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/web/web_plat/scheme_handler_plugin_api/group"/>
</component>
<component id="scriptable_plugin_api" name="Scriptable Plugin API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/web/web_plat/scriptable_plugin_api/group"/>
</component>
<component id="webutils_api" name="Web Utils API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/web/web_plat/webutils_api/group"/>
</component>
<component id="widget_registry_api" name="Widget Registry API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/web/web_plat/widget_registry_api/group"/>
</component>
</collection>
<collection id="browserutilities" name="Browser Utilities" level="utils">
<component id="browserdialogsprovider" name="Browser Dialogs Provider" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/web/browserutilities/browserdialogsprovider/group"/>
</component>
<component id="recenturlstore" name="Recent URL Store" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/web/browserutilities/recenturlstore/group"/>
</component>
<component id="downloadmgr" name="Download Manager" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/web/browserutilities/downloadmgr/group"/>
</component>
<component id="connectionmanager" name="Connection Manager" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/web/browserutilities/connectionmanager/group"/>
</component>
<component id="browsertelservice" name="Browser Telephony Service" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/web/browserutilities/browsertelservice/group"/>
</component>
<component id="favouritesengine" name="Favourites Engine" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/web/browserutilities/favouritesengine/group"/>
</component>
<component id="feedsengine" name="Feeds Engine" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/web/browserutilities/feedsengine/group"/>
</component>
<component id="schemehandler" name="Scheme Handler" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/web/browserutilities/schemehandler/group"/>
</component>
<component id="webutils" name="Web Utils" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/web/browserutilities/webutils/group"/>
</component>
<component id="aiwbrowserprovider" name="AIW Browser Provider" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/web/browserutilities/aiwbrowserprovider/group"/>
</component>
</collection>
<collection id="webengine" name="Web Engine" level="server">
<component id="osswebengine" name="OSS Web Engine" filter="s60" target="device" purpose="optional">
<!-- can only have one unit. Either split into multiple components or #include from a single main bld.inf -->
<unit bldFile="/mw/web/webengine/osswebengine/cache/group"/>
<unit bldFile="/mw/web/webengine/osswebengine/memorymanager/group"/>
<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 id="webkitutils" name="WebKit Utils" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/web/webengine/webkitutils/group"/>
</component>
<component id="pagescaler" name="Page Scaler" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/web/webengine/pagescaler/group"/>
</component>
<component id="webwidgetinstaller" name="Widget Installer" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/web/webengine/widgetinstaller/group"/>
</component>
<component id="widgetregistry" name="Widget Registry" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/web/webengine/widgetregistry/group"/>
</component>
<component id="device" name="Device" filter="s60" target="device" purpose="optional">
<!-- this needs a more meaningful name -->
<unit bldFile="/mw/web/webengine/device/group"/>
</component>
<component id="widgetengine" name="Widget Engine" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/web/webengine/widgetengine/group"/>
</component>
<component id="web_memoryplugin" name="Memory Plugin" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/web/webengine/memoryplugin/group"/>
</component>
<component id="widgetmemoryplugin" name="Widget Memory Plugin" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/web/webengine/widgetmemoryplugin/group"/>
</component>
<component id="widgetbackuprestore" name="Widget Backup and Restore" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/web/webengine/widgetbackuprestore/group"/>
</component>
<component id="browserrecognizers" name="Browser Recognizers" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/web/webengine/browserrecognizers/group"/>
</component>
<component id="wrtharvester" name="Web Runtime Harvester" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/web/webengine/wrtharvester/group"/>
</component>
</collection>
<collection id="codhandler" name="Content Object Descriptor Handler" level="specific">
<component id="codeng" name="COD Engine" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/web/codhandler/codeng/group"/>
</component>
<component id="codui" name="COD UI" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/web/codhandler/codui/group"/>
</component>
<component id="codrecog" name="COD Recogniser" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/web/codhandler/codrecog/group"/>
</component>
<component id="codviewer" name="COD Viewer" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/web/codhandler/codviewer/group"/>
</component>
<component id="ddrecog" name="Download Descriptor Recogniser" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/web/codhandler/ddrecog/group"/>
</component>
<component id="ddviewer" name="Download Descriptor Viewer" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/web/codhandler/ddviewer/group"/>
</component>
<component id="coddownload" name="COD Download" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/web/codhandler/coddownload/group"/>
</component>
<component id="roapapp" name="ROAP Application" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/web/codhandler/roapapp/group"/>
</component>
<component id="codhandler_build" name="COD Handler Build" filter="s60" target="device" purpose="optional">
<!-- Exports need to go into another component or make this self-contained.
#included .hrh file needs to be #included in each of the other components -->
<unit bldFile="/mw/web/codhandler/group"/>
</component>
</collection>
<collection id="widgets" name="Web Widget Framework" level="generic">
<component id="widgetrecognizer" name="Widget Recognizer" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/web/widgets/widgetrecognizer/group"/>
</component>
<component id="widgetinstaller" name="Widget Installer UI" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/web/widgets/widgetinstaller/group"/>
</component>
<component id="widgetlauncher" name="Widget Launcher" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/web/widgets/widgetlauncher/group"/>
</component>
<component id="widgetapp" name="Widget UI" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/web/widgets/widgetapp/group"/>
</component>
</collection>
</package>
<package id="websrv" level="generic" tech-domain="rt" levels="plugin framework server generic specific" name="Web Services">
<collection id="websrv_pub" name="Web Services Public Interfaces" level="specific">
<component id="web_service_description_api" name="Web Service Description API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/websrv/websrv_pub/web_service_description_api/group"/>
</component>
<component id="web_service_connection_api" name="Web Service Connection API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/websrv/websrv_pub/web_service_connection_api/group"/>
</component>
<component id="web_service_manager_api" name="Web Service Manager API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/websrv/websrv_pub/web_service_manager_api/group"/>
</component>
<component id="hostlet_connection_api" name="Hostlet Connection API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/websrv/websrv_pub/hostlet_connection_api/group"/>
</component>
<component id="web_service_messaging_api" name="Web Service Messaging API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/websrv/websrv_pub/web_service_messaging_api/group"/>
</component>
<component id="xml_extensions_api" name="XML Extensions API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/websrv/websrv_pub/xml_extensions_api/group"/>
</component>
<component id="xml_fragment_api" name="XML Fragment API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/websrv/websrv_pub/xml_fragment_api/group"/>
</component>
</collection>
<collection id="webservices" name="Web Services Framework" level="generic">
<!-- consider breaking this collection into more meaningful subsets -->
<component id="wsnotifierplugins" name="WS Notifier Plugins" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/websrv/webservices/wsnotifierplugins/group"/>
</component>
<component id="wslogger" name="WS Logger" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/websrv/webservices/wslogger/group"/>
</component>
<component id="wsxml" name="WS XML Extensions" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/websrv/webservices/wsxml/group"/>
</component>
<component id="wsutils" name="WS Utils" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/websrv/webservices/wsutils/group"/>
</component>
<component id="wsfragment" name="WS Fragment" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/websrv/webservices/wsfragment/group"/>
</component>
<component id="wsdescription" name="WS Service Description" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/websrv/webservices/wsdescription/group"/>
</component>
<component id="wsconnection" name="WS Service Connection" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/websrv/webservices/wsconnection/group"/>
</component>
<component id="wsmessages" name="WS Messages" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/websrv/webservices/wsmessages/group"/>
</component>
<component id="wscredentialmanager" name="WS Credential Manager" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/websrv/webservices/wscredentialmanager/group"/>
</component>
<component id="wsframework" name="WS Framework" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/websrv/webservices/wsframework/group"/>
</component>
<component id="wshttpchanneltransportplugin" name="WS HTTP Channel Transport Plugin" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/websrv/webservices/wshttpchanneltransportplugin/group"/>
</component>
<component id="wsconnectionagent" name="WS Connection Agent" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/websrv/webservices/wsconnectionagent/group"/>
</component>
<component id="wsprovider" name="WS Provider" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/websrv/webservices/wsprovider/group"/>
</component>
<component id="wshostletconnection" name="WS Hostlet Connection" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/websrv/webservices/wshostletconnection/group"/>
</component>
<component id="wsmanager" name="WS Service Manager" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/websrv/webservices/wsmanager/group"/>
</component>
<component id="wsidentitymanager" name="WS Identity Manager" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/websrv/webservices/wsidentitymanager/group"/>
</component>
<component id="idwsfplugin" name="ID-WSF Plugin" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/websrv/webservices/idwsfplugin/group"/>
</component>
<component id="wsibasicplugin" name="WS-I Basic Plugin" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/websrv/webservices/wsibasicplugin/group"/>
</component>
<component id="wsrestplugin" name="WS REST Plugin" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/websrv/webservices/wsrestplugin/group"/>
</component>
<component id="idwsfsecuritymechanism" name="ID-WSF Security Mechanism" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/websrv/webservices/idwsfsecuritymechanism/group"/>
</component>
<component id="wspasswordtransforms" name="WS Password Transforms" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/websrv/webservices/wspasswordtransforms/group"/>
</component>
<component id="wscore" name="WS Core Service Manager" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/websrv/webservices/wscore/group"/>
</component>
<component id="wslocaltransportplugin" name="WS Local Transport Plugin" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/websrv/webservices/wslocaltransportplugin/group"/>
</component>
<component id="wshostlettransportplugin" name="WS Hostlet Transport Plugin" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/mw/websrv/webservices/wshostlettransportplugin/group"/>
</component>
<component id="wsstar" name="WS Star" filter="s60" target="device" purpose="optional">
<!-- can only have one unit. Need to split into separate components or #include from a single bld.inf -->
<unit bldFile="/mw/websrv/webservices/wsstar/wsstarpolicy/group"/>
<unit bldFile="/mw/websrv/webservices/wsstar/wsstarplugin/group"/>
<unit bldFile="/mw/websrv/webservices/wsstar/wsstarmessagehandlers/group"/>
</component>
<component id="wsoviplugin" name="WS Ovi Plugin" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/websrv/webservices/wsoviplugin/group"/>
</component>
<component id="webservices_build" name="Web Services Build" filter="s60" target="device" purpose="optional">
<!-- need to split into self-contained components -->
<unit bldFile="/mw/websrv/webservices/group"/>
</component>
</collection>
<collection id="websrv_info" name="Web Services Info" level="specific">
<component id="websrv_bld" name="Web Services Build" filter="s60" target="device" purpose="optional">
<!-- need to include common .hrh in each unit -->
<unit bldFile="/mw/websrv/group"/>
</component>
</collection>
</package>
<package id="webruntime" level="specific" tech-domain="rt" name="Web Runtime">
<!-- need to break up this package into collections and components -->
<collection id="webruntime_info" name="Web Runtime Info">
<component id="webruntime_build" name="Web Runtime Build" introduced="^4" target="device" purpose="optional">
<unit bldFile="/mw/webruntime/." qt:proFile="cwrt.pro" qt:qmakeArgs=""what+=qtsfw" "what+=tenone" "what+=usif" "what+=services" "what+=wrtlite" "what+=exportiby""/>
</component>
</collection>
</package>
<package id="platformtools" level="generic" tech-domain="to" name="Platform Tools">
<collection id="gfxconversion" name="Graphics Conversion">
<component id="bmconv_s60" name="S60 Bitmap Converter" filter="s60" target="desktop" purpose="optional">
<!-- Removed bmconv from builds <unit bldFile="gfxconversion/bmconv_s60/group"/> -->
</component>
<component id="mifconv" name="Multi Icon File Converter" filter="s60" target="desktop" purpose="optional">
<unit bldFile="/mw/platformtools/gfxconversion/mifconv/group"/>
</component>
</collection>
</package>
<package id="uitools" level="specific" tech-domain="to" levels="compile encode tool if" name="UI Tools">
<collection id="uitools_pub" name="UI Tools Public Interfaces" level="if">
<component id="third_party_bitmap_palette_api" name="Third Party Bitmap Palette API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uitools/uitools_pub/third_party_bitmap_palette_api/group"/>
</component>
</collection>
<collection id="uitools_plat" name="UI Tools Platform Interfaces" level="if">
<component id="uitools_cdl_api" name="CDL API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uitools/uitools_plat/cdl_api/group"/>
</component>
<component id="uitools_layout_system_private_api" name="Layout System Private API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/mw/uitools/uitools_plat/layout_system_private_api/group"/>
</component>
</collection>
<collection id="cdlcompilertoolkit" name="CDL Compiler Toolkit" level="compile">
<!-- collection is actually a component. Needs to be moved down a directory -->
<component id="cdlcompilertoolkit_build" name="CDL Compiler Toolkit Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/uitools/cdlcompilertoolkit/group"/>
</component>
</collection>
<collection id="cdlcompiler" name="CDL Compiler" level="compile">
<!-- collection is actually a component. Needs to be moved down a directory -->
<component id="cdlcompiler_build" name="CDL Compiler Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/uitools/cdlcompiler/group"/>
</component>
</collection>
<collection id="gfxtools" name="Graphics Tools" level="tool">
<component id="color" name="Bitmap Colour Palette" filter="s60" target="desktop" purpose="optional">
<unit bldFile="/mw/uitools/gfxtools/color/group"/>
</component>
</collection>
<collection id="aknlayoutcompiler" name="Avkon Layout Compiler" level="compile">
<!-- collection is actually a component. Needs to be moved down a directory -->
<component id="aknlayoutcompiler_build" name="Avkon Layout Compiler Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/uitools/aknlayoutcompiler/group"/>
</component>
</collection>
<collection id="skincompiler" name="Skin Compiler" level="compile">
<component id="aknskindesccompiler" name="Avkon Skin Descriptor Compiler" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/uitools/skincompiler/AknSkinDescCompiler/group"/>
</component>
</collection>
<collection id="reszip" name="Resource Zip" level="encode">
<!-- collection is actually a component. Needs to be moved down a directory -->
<component id="reszip_build" name="Resource Zip Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/mw/uitools/reszip/group"/>
</component>
</collection>
<collection id="toollibraries" name="Tool Libraries" level="tool"/>
<collection id="svgtencoder" name="SVGT Encoder" level="encode">
<component id="svgtenc" name="Standalone SVGT Encoder" filter="s60" target="desktop" purpose="optional">
<unit bldFile="/mw/uitools/svgtencoder/svgtenc/standalone/group"/>
</component>
</collection>
</package>
<package id="socialmobilefw" level="specific" tech-domain="pr" name="Social Mobile Framework">
<collection id="smf_example" name="SMF Examples">
</collection>
<collection id="flickr_example" name="Flickr Examples">
</collection>
<collection id="fb_example" name="Facebook Examples">
</collection>
<collection id="smf" name="Social Mobile Framework">
<component id="smfcredentialmgr" name="Credential Manager" target="device" purpose="optional">
<unit bldFile="/mw/socialmobilefw/smf/smfcredentialmgr" qt:proFile="smfcredentialmgr.pro"/>
</component>
<component id="smfservermodule" name="Server Module" target="device" purpose="optional">
<unit bldFile="/mw/socialmobilefw/smf/smfservermodule" qt:proFile="smfservermodule.pro"/>
</component>
<component id="smfsettingsui" name="Settings UI" target="device" purpose="optional">
<unit bldFile="/mw/socialmobilefw/smf/smfsettingsui" qt:proFile="smfsettingsui.pro"/>
</component>
</collection>
</package>
</layer>
<layer id="app" name="Applications" levels="services apps">
<package id="location" level="apps" tech-domain="lo" levels="ui events loc api" name="Location Apps">
<collection id="location_plat" name="Location Apps Platform Interfaces" level="api">
<component id="location_picker_service_api" name="Location Picker Service API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/app/location/location_plat" qt:proFile="location_plat.pro"/>
</component>
</collection>
<collection id="locationpickerservice" name="Location Picker Service" level="loc">
<!--collection is really a component. Should move down a directory -->
<component id="locationpickerservice_build" name="Location Picker Service Build" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/location/locationpickerservice" qt:proFile="locationpickerservice.pro"/>
</component>
</collection>
<collection id="locationdataharvester" name="Location Data Harvester" level="events">
<!--collection is really a component. Should move down a directory -->
<component id="locationdataharvester_build" name="Location Data Harvester Build" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/location/locationdataharvester" qt:proFile="locationdataharvester.pro"/>
</component>
</collection>
</package> <!-- pending removal -->
<package id="phone" level="apps" span="2" tech-domain="vc" levels="engine plugin ui app" name="Phone Apps">
<collection id="phoneapp" name="Phone Application" level="app">
<component id="blacklist" name="Phone Blacklist Clearing" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneapp/blacklist/group"/>
</component>
<component id="phoneringingtoneplayer" name="Phone Ringingtone Player" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneapp/phoneringingtoneplayer/group"/>
</component>
<component id="phoneuicontrol" name="Phone UI Control" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneapp/phoneuicontrol/group"/>
</component>
<component id="phoneuistates" name="Phone UI States" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneapp/phoneuistates/group"/>
</component>
<component id="phoneuiutils" name="Phone UI Utils" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneapp/phoneuiutils/group"/>
</component>
<component id="silenceactionplugin" name="Silence Action Plugin" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneapp/silenceactionplugin/group"/>
</component>
<component id="phonemediatorcenter" name="Phone Mediator Center" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneapp/phonemediatorcenter/group"/>
</component>
<component id="phoneuiview2" name="Phone UI View" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneapp/phoneuiview2" qt:proFile="phoneuiview2.pro"/>
</component>
<component id="phoneuiqtviewadapter" name="Phone UI Qt View Adapter" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneapp/phoneuiqtviewadapter" qt:proFile="phoneuiqtviewadapter.pro"/>
</component>
<component id="phonestringloader" name="Phone String Loader" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneapp/phonestringloader" qt:proFile="phonestringloader.pro"/>
</component>
<component id="phoneui2" name="Phone UI" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneapp/phoneui2" qt:proFile="phoneui2.pro"/>
</component>
<component id="phoneuivoipextension" name="Phone UI VOIP Extension" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneapp/phoneuivoipextension/group"/>
</component>
</collection>
<collection id="phoneengine" name="Phone Engine" level="engine">
<component id="phonecntfinder2" name="Phone Contact Finder" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneengine/phonecntfinder2" qt:proFile="phonecntfinder2.pro"/>
</component>
<component id="audiohandling" name="Phone Audio Handling" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneengine/audiohandling/group"/>
</component>
<component id="callhandling" name="Call Handling" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneengine/callhandling/group"/>
</component>
<component id="contacthandling2" name="Phone Contact Handling" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneengine/contacthandling2/group"/>
</component>
<component id="loghandling" name="Phone Log Handling" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneengine/loghandling/group"/>
</component>
<component id="engineinfo" name="Phone Engine Info" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneengine/engineinfo/group"/>
</component>
<component id="phonemodel" name="Phone Model" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneengine/phonemodel" qt:proFile="phonemodel.pro"/>
</component>
<component id="servicehandling" name="Phone Service Handling" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneengine/servicehandling/group"/>
</component>
<component id="phoneservices" name="Phone Server" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneengine/phoneservices" qt:proFile="phoneservices.pro"/>
</component>
<component id="networkhandlingstarter" name="Network Handling Starter" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneengine/networkhandlingstarter" qt:proFile="networkhandlingstarter.pro"/>
</component>
</collection>
<collection id="phoneuis" name="Phone UIs" level="ui">
<component id="bubblemanager2" name="Phone Bubble Manager" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneuis/bubblemanager2" qt:proFile="bubblemanager2.pro"/>
</component>
<component id="telephonydevicemode" name="Telephony Device Mode" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneuis/telephonydevicemode/group"/>
</component>
<component id="ussdeditor" name="USSD Editor" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneuis/ussdeditor" qt:proFile="ussdeditor.pro"/>
</component>
</collection>
<collection id="phone_plat" name="Phone Apps Platform Interfaces" level="app">
<component id="3d_ringing_tone_enabler_api" name="3D Ringing Tone Enabler API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/app/phone/phone_plat/3d_ringing_tone_enabler_api/group"/>
</component>
<component id="telephony_comms_information_api" name="Telephony Comms Information API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/app/phone/phone_plat/telephony_comms_information_api/group"/>
</component>
<component id="telephony_information_api" name="Telephony Information API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/app/phone/phone_plat/telephony_information_api/group"/>
</component>
<component id="telephony_device_mode_api" name="Telephony Device Mode API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/app/phone/phone_plat/telephony_device_mode_api/group"/>
</component>
<component id="telephony_menu_extension_api" name="Telephony Menu Extension API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/app/phone/phone_plat/telephony_menu_extension_api/group"/>
</component>
<component id="telephony_remote_party_information_api" name="Telephony Remote Party Information API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/app/phone/phone_plat/telephony_remote_party_information_api/group"/>
</component>
<component id="telephony_video_mailbox_settings_api" name="Telephony Video Mailbox Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/app/phone/phone_plat/telephony_video_mailbox_settings_api/group"/>
</component>
<component id="telephony_microphone_mute_status_api" name="Telephony Microphone Mute Status API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/app/phone/phone_plat/telephony_microphone_mute_status_api/group"/>
</component>
<component id="telephony_logging_extension_api" name="Telephony Logging Extension API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/app/phone/phone_plat/telephony_logging_extension_api/group"/>
</component>
<component id="telephony_matching_extension_api" name="Telephony Matching Extension API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/app/phone/phone_plat/telephony_matching_extension_api/group"/>
</component>
<component id="phone_application_commands_api" name="Phone Application Commands API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/app/phone/phone_plat/phone_application_commands_api/group"/>
</component>
<component id="phone_application_voip_commands_api" name="Phone Application VOIP Commands API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/app/phone/phone_plat/phone_application_voip_commands_api/group"/>
</component>
<component id="phone_telephony_mediator_api" name="Telephony Mediator API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/app/phone/phone_plat/telephony_mediator_api/group"/>
</component>
<component id="video_telephony_mediator_api" name="Video Telephony Mediator API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/app/phone/phone_plat/video_telephony_mediator_api/group"/>
</component>
<component id="video_telephony_control_mediator_api" name="Video Telephony Control Mediator API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/app/phone/phone_plat/video_telephony_control_mediator_api/group"/>
</component>
</collection>
<collection id="phoneplugins" name="Phone Plugins" level="plugin">
<component id="csplugin" name="Circuit Switched Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneplugins/csplugin/group"/>
</component>
<component id="phoneindicatorplugin" name="Phone Indicator Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneplugins/phoneindicatorplugin" qt:proFile="phoneindicatorplugin.pro"/>
</component>
<component id="dialerwidgetplugin" name="Dialer Widget Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneplugins/dialerwidgetplugin" qt:proFile="dialerwidgetplugin.pro"/>
</component>
<component id="infowidgetplugin" name="Info Widget Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/phone/phoneplugins/infowidgetplugin" qt:proFile="infowidgetplugin.pro"/>
</component>
</collection>
<collection id="phonesettings" name="Phone Settings" level="plugin">
<component id="cpphonesettingsplugins" name="Control Panel Phone Settings Plugins" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/phone/phonesettings/cpphonesettingsplugins" qt:proFile="cpphonesettingsplugins.pro"/>
</component>
</collection>
</package>
<package id="recents" level="apps" tech-domain="vc" levels="engine support ui api" name="Recent Events">
<collection id="recents_plat" name="Recent Events Platform Interfaces" level="api">
<component id="logs_services_api" name="Logs Services API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit base="/app/recents/recents_plat/logs_services_api"/>
</component>
<component id="logs_engine_api" name="Logs Engine API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit base="/app/recents/recents_plat/logs_engine_api"/>
</component>
<component id="logs_timers_api" name="Logs Timers API" filter="s60" class="api" target="device" purpose="optional">
<unit base="/app/recents/recents_plat/logs_timers_api"/>
</component>
<component id="logs_engine_api_extensions" name="Logs Engine API Extensions" filter="s60" class="api" target="device" purpose="optional">
<unit base="/app/recents/recents_plat/logs_engine_api_extensions"/>
</component>
</collection>
<collection id="logsui" name="Logs UI" level="ui">
<!-- split into actual components -->
<component id="logsservices" name="Logs Services" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="logsui/logsservices" qt:proFile="logsui.pro"/> -->
</component>
<component id="logscntfinder" name="Logs Contact finder" filter="s60" target="device" purpose="optional">
<!--<unit bldFile="logsui/logscntfinder" qt:proFile="logscntfinder.pro"/> -->
</component>
<component id="logsengine" name="Logs Engine" introduced="^4" filter="s60" target="device" purpose="optional">
<!--<unit bldFile="logsui/logsengine" qt:proFile="logsengine.pro"/> -->
</component>
<component id="logsapp" name="Logs Application" filter="s60" target="device" purpose="optional">
<!--<unit bldFile="logsui/logsengine" qt:proFile="logsengine.pro"/> -->
</component>
<component id="logsui_build" name="Logs UI Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/recents/logsui" qt:proFile="logsui.pro"/>
</component>
</collection>
</package>
<package id="settingsuis" level="services" tech-domain="dm" levels="plugin ui" name="Settings UIs">
<collection id="controlpanelplugins" name="Control Panel Plugins" level="plugin">
<component id="themeplugin" name="Theme Plugin" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/settingsuis/controlpanelplugins/themeplugin" qt:proFile="themeplugin.pro" qt:qmakeArgs="-r -config rom"/>
</component>
</collection>
<collection id="controlpanelui" name="Control Panel UI" level="ui">
<!-- collection is really a component, move down a dir -->
<component id="controlpanelui_build" name="Control Panel UI Build" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/settingsuis/controlpanelui" qt:proFile="controlpanelui.pro" qt:qmakeArgs="-r -config rom"/>
</component>
</collection>
</package>
<package id="contentcontrol" level="services" tech-domain="dm" levels="plugin framework app" name="Content Control Daemons">
<collection id="contentctrl_plat" name="Content Control Daemons Platforn Interfaces" level="app">
<component id="ds_contactsdatastoreextension_api" name="DS Contacts Data Store Extension API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/app/contentcontrol/contentctrl_plat/ds_contactsdatastoreextension_api/group"/>
</component>
<component id="ds_data_modification_api" name="DS Data Modification API" introduced="^3" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/app/contentcontrol/contentctrl_plat/ds_data_modification_api/group"/>
</component>
<component id="ds_contact_adapter_customization_api" name="DS Contact Adapter Customization API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/app/contentcontrol/contentctrl_plat/ds_contact_adapter_customization_api/group"/>
</component>
</collection>
<collection id="connectivitymodules" name="Connectivity Modules" level="framework">
<component id="secon" name="Service Controllers" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/contentcontrol/connectivitymodules/secon/group"/>
</component>
</collection>
<collection id="dsdcmoadapter" name="Data Sync DCMO Adapter" level="plugin">
<!-- Component at wrong rank, should move down a directory -->
<component id="dsdcmoadapter_build" name="Data Sync Control DCMO Adapter" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/contentcontrol/dsdcmoadapter/group"/>
</component>
</collection>
<collection id="omads" name="OMA Data Sync" level="app">
<component id="omads_build" name="OMA DS Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/contentcontrol/omads/group"/> <!-- need to remove #include and rename and OMA DS ROM -->
</component>
<component id="omadsextensions" name="OMA DS Extensions" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/contentcontrol/omads/omadsextensions/group"/>
</component>
<component id="omadsextensions_qt" name="OMA DS Qt Extensions" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/contentcontrol/omads/omadsextensions" qt:proFile="omadsextensions.pro"/>
</component>
</collection>
</package>
<package id="firsttimeuse" level="apps" tech-domain="dm" levels="support services ui app" name="First Time Use">
<!-- these empty collections are really components. Move down a directory and supply units -->
<collection id="ftuapplication" name="First Time Use Application" level="app"/>
<collection id="fturuntimeservices" name="First Time Use Runtime Services" level="services"/>
<collection id="wizardproviders" name="Wizard Providers" level="support"/>
<collection id="stateproviders" name="State Providers" level="support"/>
<collection id="runtimeproviders" name="Runtime Providers" level="support"/>
<collection id="firsttimeuse_info" name="First Time Use Info" level="ui">
<component id="firsttimeuse_build" name="First Time Use Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/firsttimeuse/." qt:proFile="ftu.pro" qt:qmakeArgs="-r -config rom"/>
</component>
</collection>
</package>
<package id="devicecontrol" level="services" tech-domain="dm" levels="support mid app" name="Device Control Daemons">
<collection id="devicemgmtdialogsplugin" name="Device Management Dialogs Plugin" level="support">
<!-- need to put component at the proper directory level -->
<component id="devicemanagementnotifiersplugin" name="Device Management Notifiers Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/devicecontrol/devicemgmtdialogsplugin" qt:proFile="devicemgmtdialogsplugin.pro"/>
</component>
</collection>
<collection id="devicemgmtindicatorsplugin" name="Device Management Indicators Plugin" level="support">
<!-- collection is really a component. Need to move down a dir -->
<component id="devicemgmtindicatorsplugin_build" name="Device Management Indicators Plugin Build" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/devicecontrol/devicemgmtindicatorsplugin" qt:proFile="devicemgmtindicatorsplugin.pro"/>
</component>
</collection>
<collection id="deviceupdatesui" name="Device Updates UI" level="app">
<component id="deviceupdates" name="Device Updates" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/devicecontrol/deviceupdatesui/deviceupdates" qt:proFile="deviceupdates.pro"/>
</component>
<component id="deviceupdatesplugin" name="Device Updates Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/devicecontrol/deviceupdatesui/deviceupdatesplugin" qt:proFile="deviceupdatesplugin.pro"/>
</component>
<component id="deviceupdatesqtsp" name="Device Updates Qt Service Provider" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/devicecontrol/deviceupdatesui/deviceupdatesqtsp" qt:proFile="deviceupdatesqtsp.pro"/>
</component>
</collection>
<collection id="clientprovisioning" name="Client Provisioning" level="mid">
<component id="cpqtsp" name="Client Provisioning Qt Service Provider" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/devicecontrol/clientprovisioning/cpqtsp" qt:proFile="cpqtsp.pro"/>
</component>
</collection>
<collection id="applicationmanagement" name="Applicaton Management" level="mid">
<component id="applicationmgmtserver" name="Applicaton Management Server" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/devicecontrol/applicationmanagement/server" qt:proFile="server.pro"/>
</component>
<component id="applicationmgmt_build" name="Applicaton Management Build" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- need to break up into components or move down a directory -->
<unit bldFile="/app/devicecontrol/applicationmanagement/group"/>
</component>
</collection>
<collection id="omadmadapters" name="OMA DM Adapters" level="support">
<component id="omadmadapters_build" name="OMA DM Adapters Build" filter="s60" target="device" purpose="optional">
<!-- need to split IBY into the components or make this a ROM component -->
<unit bldFile="/app/devicecontrol/omadmadapters/bld"/>
</component>
<component id="devinfo" name="Device Info" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/devicecontrol/omadmadapters/devinfo/bld"/>
</component>
<component id="devdetail" name="Device Detail" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/devicecontrol/omadmadapters/devdetail/bld"/>
</component>
<component id="syncmldm" name="SyncML DM" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/devicecontrol/omadmadapters/syncmldm/bld"/>
</component>
<component id="syncmldm12" name="SyncML DM 1.2" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/devicecontrol/omadmadapters/syncmldm12/bld"/>
</component>
<component id="omadm_browseradapter" name="Browser Adapter" filter="s60" class="plugin" target="device" purpose="optional">
<!-- <unit bldFile="omadmadapters/browseradapter/bld"/> -->
</component>
<component id="omadm_streamingadapter" name="Streaming Adapter" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/devicecontrol/omadmadapters/streamingadapter/bld"/>
</component>
<component id="globalwlansettings" name="Global WLAN Settings" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/devicecontrol/omadmadapters/globalwlansettings/group"/>
</component>
<component id="nsmldminternet" name="nsmldminternet" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/devicecontrol/omadmadapters/nsmldminternet/group"/>
</component>
<component id="nsmldmalwaysonadapter" name="Always Online Device Management Adapter" introduced="9.1" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/devicecontrol/omadmadapters/nsmldmalwaysonadapter/group"/>
</component>
<component id="nsmldmbmadapter" name="NSML DM BM Adapter" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/devicecontrol/omadmadapters/nsmldmbmadapter/group"/>
</component>
<component id="connmoadapter" name="Connection Management Object Adapter" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/devicecontrol/omadmadapters/connmoadapter/group"/>
</component>
<component id="syncmlds" name="SyncML Data Sync" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/devicecontrol/omadmadapters/syncmlds/bld"/>
</component>
<component id="omadm_email" name="OMA DM Email" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/devicecontrol/omadmadapters/email/bld"/>
</component>
<component id="omadm_mms" name="OMA DM MMS" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/devicecontrol/omadmadapters/mms/bld"/>
</component>
<component id="omadm_fota" name="OMA DM FOTA" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/devicecontrol/omadmadapters/fota/bld"/>
</component>
<component id="omadm_imps" name="OMA DM IMPS" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="omadmadapters/imps/bld"/> -->
</component>
<component id="dcmodmadapter" name="DC Management Object DM Adapter" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/devicecontrol/omadmadapters/dcmodmadapter/group"/>
</component>
</collection>
<collection id="omadcmoadapters" name="OMA DC Management Object Adapters" level="support">
<component id="omadcmoadapters_build" name="OMA DCMA Adapters Build" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- need to break up into components -->
<unit bldFile="/app/devicecontrol/omadcmoadapters/group"/>
</component>
</collection>
<collection id="omacpadapters" name="OMA Client Provisioning Adapters" level="support">
<component id="omacpadapters_build" name="OMA CP Adapters Build" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- need to break up into components -->
<unit bldFile="/app/devicecontrol/omacpadapters/bld"/>
</component>
</collection>
</package>
<package id="printing" level="services" tech-domain="de" name="Printing"/>
<package id="files" level="apps" tech-domain="pr" levels="support apps" name="File Manager Apps">
<collection id="filemanager" name="File Manager" level="apps">
<component id="filemanager_plat" name="File Manager Platform Interfaces" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit base="/app/files/filemanager/filemanager_plat"/>
</component>
<component id="fmbkupengine" name="File Manager Backup Engine" introduced="^4" filter="s60,bldfirst" target="device" purpose="optional">
<unit bldFile="/app/files/filemanager/src/fmbkupengine/group"/>
</component>
<component id="fmfiledialog" name="File Manager File Dialog" introduced="^4" filter="s60,bldfirst" target="device" purpose="optional">
<unit bldFile="/app/files/filemanager/src/fmfiledialog" qt:proFile="fmfiledialog.pro" qt:qmakeArgs="-r -config rom"/>
</component>
<component id="filemanager_build" name="File Manager Build" filter="s60" target="device" purpose="optional">
<!-- break this up into components or move down a directory -->
<unit bldFile="/app/files/filemanager" qt:proFile="filemanager.pro" qt:qmakeArgs="-r"/>
</component>
</collection>
</package>
<package id="search" level="apps" tech-domain="pr" levels="eng base app api" name="Search Apps">
<collection id="search_info" name="Search Info" level="base">
<component id="search_build" name="Search Build" introduced="^4" target="device" purpose="optional">
<unit bldFile="/app/search/group"/>
</component>
</collection>
<collection id="search_plat" name="Search Platform Interfaces" level="api">
<component id="search_plat_build" name="Search Platform Interfaces Build" introduced="^4" class="api" target="device" purpose="optional">
<unit bldFile="/app/search/search_plat" qt:proFile="search_plat.pro"/>
</component>
</collection>
<collection id="onlinesearchproviders" name="Online Search Providers" level="eng">
<component id="onlinesearchproviders_build" name="Online Search Providers Build" introduced="^4" target="device" purpose="optional">
<unit bldFile="/app/search/onlinesearchproviders" qt:proFile="onlinesearchproviders.pro"/>
</component>
</collection>
<collection id="search_harvesterplugins" name="Search Harvester Plugins" level="base">
<component id="search_qtemailfetcher" name="Search Qt Email Fetcher" introduced="^4" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/search/harvesterplugins/messaging/email/qtemailfetcher" qt:proFile="qtemailfetcher.pro"/>
</component>
</collection>
<collection id="searchui" name="Search UI" level="app">
<component id="searchui_build" name="Search UI Build" introduced="^4" target="device" purpose="optional">
<unit bldFile="/app/search/searchui" qt:proFile="searchui.pro"/>
</component>
</collection>
</package>
<package id="contacts" level="apps" span="2" tech-domain="pr" levels="engine support services plugin ui" name="Contacts Apps">
<collection id="contacts_plat" name="Contacts Apps Platform Interfaces" level="ui">
<component id="qt_mobility_contacts_api" name="Qt Mobility Contacts API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit base="/app/contacts/contacts_plat/qt_mobility_contacts_api"/>
</component>
</collection>
<collection id="phonebookui" name="Phonebook UI" level="ui">
<component id="cnthistorymodel" name="Contacts History Model" introduced="^4" filter="s60" target="device" purpose="optional">
<!--<unit bldFile="phonebookui/cnthistorymodel" qt:proFile="cnthistorymodel.pro"/> -->
</component>
<component id="pbkcommonui" name="Phonebook Common UI" introduced="^4" filter="s60" target="device" purpose="optional">
<!--<unit bldFile="phonebookui/pbkcommonui" qt:proFile="pbkcommonui.pro"/> -->
</component>
<component id="phonebookapp" name="Phonebook Application" introduced="^4" filter="s60" target="device" purpose="optional">
<!--<unit bldFile="phonebookui/phonebookapp" qt:proFile="phonebookapp.pro"/> -->
</component>
<component id="phonebookservices" name="Phonebook Services" introduced="^4" filter="s60" target="device" purpose="optional">
<!--<unit bldFile="phonebookui/phonebookservices" qt:proFile="phonebookservices.pro"/> -->
</component>
<component id="phonebookui_build" name="Phonebook UI Build" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- break up into components -->
<unit bldFile="/app/contacts/phonebookui" qt:proFile="phonebookui.pro"/>
</component>
</collection>
<collection id="phonebookengines" name="Phonebook Engines" level="engine">
<component id="cntfindplugin" name="Contacts Find Plugin" introduced="^2" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/contacts/phonebookengines/cntfindplugin" qt:proFile="cntfindplugin.pro"/>
</component>
<component id="cntsortplugin" name="Contacts Sort Plugin" introduced="^2" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/contacts/phonebookengines/cntsortplugin" qt:proFile="cntsortplugin.pro"/>
</component>
<component id="qtcontactsmobility" name="Qt Contacts Mobility" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<!-- need to move to this actual dir rather than including something from another collection -->
<!-- <unit bldFile="qtcontactsmobility" qt:proFile="qtcontactsmobility.pro"/> -->
</component>
<component id="cntlistmodel" name="Contact List Model" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/contacts/phonebookengines/cntlistmodel" qt:proFile="cntlistmodel.pro"/>
</component>
<component id="cntactions" name="Contacts Actions" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/contacts/phonebookengines/cntactions" qt:proFile="cntactions.pro"/>
</component>
<component id="cntmaptileservice" name="Contacts Map Tile Service" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/contacts/phonebookengines/cntmaptileservice" qt:proFile="cntmaptileservice.pro"/>
</component>
<component id="cntsimutility" name="Contacts SIM Utility" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/contacts/phonebookengines/cntsimutility" qt:proFile="cntsimutility.pro"/>
</component>
<component id="cntimageutility" name="Contacts Image Utility" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/contacts/phonebookengines/cntimageutility" qt:proFile="cntimageutility.pro"/>
</component>
</collection>
<collection id="pimprotocols" name="PIM Protocols" level="services">
<component id="phonebooksync" name="Phonebook Sync" purpose="optional" class="plugin" target="device">
<unit bldFile="/app/contacts/pimprotocols/phonebooksync/group" mrp="/app/contacts/pimprotocols/phonebooksync/group/telephony_phbksync.mrp"/>
</component>
<component id="pbap" name="Bluetooth PBAP" introduced="9.2" filter="s60" purpose="optional" target="device">
<unit bldFile="/app/contacts/pimprotocols/pbap/group" mrp="/app/contacts/pimprotocols/pbap/group/bluetooth_accesshost.mrp"/>
</component>
</collection>
<collection id="presencecache" name="Presence Cache" level="support">
<component id="presencecachesymbian" name="Presence Cache Symbian" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/contacts/presencecache/presencecachesymbian" qt:proFile="presencecachesymbian.pro"/>
</component>
<component id="presencecacheqt" name="Presence Cache Qt" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/contacts/presencecache/presencecacheqt" qt:proFile="presencecacheqt.pro"/>
</component>
</collection>
<collection id="contactwidgethsplugin" name="Contact Widget Homescreen Plugin" level="plugin">
<!-- collection is really a component, move down a directory -->
<component id="contactwidgethsplugin_build" name="Contact Widget Homescreen Plugin Build" introduced="^4" target="device" purpose="optional">
<unit bldFile="/app/contacts/contactwidgethsplugin" qt:proFile="contactwidgethsplugin.pro"/>
</component>
</collection>
<collection id="contacts_info" name="Contacts Apps Info" level="ui">
<component id="contacts_metadata" name="Contacts Apps Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/app/contacts/contacts_info/contacts_metadata/contacts_metadata.mrp"/>
</component>
</collection>
</package>
<package id="organizer" level="apps" span="2" tech-domain="pr" levels="support services engine ui app" name="Organizer Application Suite">
<collection id="organizer_pub" name="Organizer Application Suite Public Interfaces" level="app">
<component id="calendar_interim_utils2_api" name="Calendar Interim Utils 2 API" filter="s60" class="api" target="device" purpose="optional">
<!-- move into own .pro file -->
<unit bldFile="/app/organizer/organizer_pub" qt:proFile="organizer_pub.pro"/>
</component>
</collection>
<collection id="organizer_plat" name="Organizer Application Suite Platform Interfaces" level="app">
<component id="organizer_plat_build" name="Organizer Application Suite Platform Interface Build" filter="s60" class="api" target="device" purpose="optional">
<!-- break up into individual .pro files, move the above metaxmls to those components -->
<unit bldFile="/app/organizer/organizer_plat" qt:proFile="organizer_plat.pro"/>
</component>
<component id="agenda_versit_2_api" name="Agenda Versit 2 API" filter="s60" class="api" target="device" purpose="optional">
<!-- <unit bldFile="organizer_plat/agenda_versit_2_api/group"/>-->
</component>
<component id="calendar_exporter_api" name="Calendar Exporter API" filter="s60" class="api" target="device" purpose="optional">
<!--<unit bldFile="organizer_plat/calendar_exporter_api/group"/>-->
</component>
<component id="calendar_importer_api" name="Calendar Importer API" filter="s60" class="api" target="device" purpose="optional">
<!--<unit bldFile="organizer_plat/calendar_importer_api/group"/>-->
</component>
<component id="calendar_launcher_api" name="Calendar Launcher API" filter="s60" class="api" target="device" purpose="optional">
<!--<unit bldFile="organizer_plat/calendar_launcher_api/group"/> -->
</component>
<component id="agenda_interface_api" name="Agenda Interface API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit base="/app/organizer/organizer_plat/agenda_interface_api"/>
</component>
<component id="calendar_editor_api" name="Calendar Editor API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit base="/app/organizer/organizer_plat/calendar_editor_api"/>
</component>
<component id="notes_editor_api" name="Notes Editor API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit base="/app/organizer/organizer_plat/notes_editor_api"/>
</component>
<component id="clock_settingsview_plugin_api" name="Clock Settings View Plugin API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit base="/app/organizer/organizer_plat/clock_settingsview_plugin_api"/>
</component>
</collection>
<collection id="agendainterface" name="Agenda Interface" level="services">
<!-- collection is really a component, should move down a directory -->
<component id="agendainterface_build" name="Agenda Interface Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/organizer/agendainterface" qt:proFile="agendainterface.pro"/>
</component>
</collection>
<collection id="calendarui" name="Calendar UI" level="ui">
<component id="commonutils" name="Calendar Common Utils" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/organizer/calendarui/commonutils" qt:proFile="commonutils.pro"/>
</component>
<component id="calenlauncher" name="Calendar Launcher" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/organizer/calendarui/calenlauncher" qt:proFile="calenlauncher.pro"/>
</component>
<component id="caleneditor" name="Calendar Editor" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/organizer/calendarui/caleneditor" qt:proFile="caleneditor.pro"/>
</component>
<component id="agendaeventviewer" name="Agenda Event Viewer" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/organizer/calendarui/agendaeventviewer" qt:proFile="agendaeventviewer.pro"/>
</component>
<component id="globaldata" name="Calendar Global Data" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/organizer/calendarui/globaldata" qt:proFile="globaldata.pro"/>
</component>
<component id="settings" name="Calendar Settings" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/organizer/calendarui/settings" qt:proFile="settings.pro"/>
</component>
<component id="calenplugins" name="Calendar Plugins" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/organizer/calendarui/calenplugins" qt:proFile="calenplugins.pro"/>
</component>
<component id="customisationmanager" name="Calendar Customisation Manager" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/organizer/calendarui/customisationmanager" qt:proFile="customisationmanager.pro"/>
</component>
<component id="calendarui_views" name="Calendar Views" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/organizer/calendarui/views" qt:proFile="views.pro"/>
</component>
<component id="calendarui_controller" name="Calendar Controller" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/organizer/calendarui/controller" qt:proFile="controller.pro"/>
</component>
<component id="calendarui_application" name="Calendar Application" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/organizer/calendarui/application" qt:proFile="application.pro"/>
</component>
<component id="regionalplugins" name="Regional Plugins" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/organizer/calendarui/regionalplugins" qt:proFile="regionalplugins.pro"/>
</component>
<component id="calenviewerservice" name="Calendar Viewer Service" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/organizer/calendarui/calenviewerservice" qt:proFile="calenviewerservice.pro"/>
</component>
<component id="caldav" name="CalDAV" introduced="^3" filter="sf_build" class="plugin" target="device" purpose="optional">
<!-- not yet delivered in S^4 <unit bldFile="calendarui/caldav/group"/>-->
</component>
</collection>
<collection id="notes" name="Notes" level="ui">
<component id="notes_build" name="Notes Build" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/organizer/notes" qt:proFile="notes.pro"/>
</component>
</collection>
<collection id="calendarengines" name="Calendar Engines" level="engine">
<component id="versit2" name="Versit 2 iCal Parser" introduced="9.2" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/organizer/calendarengines/versit2/group"/>
</component>
<component id="agnversit2" name="Versit 2 Agenda Interface" introduced="9.2" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/organizer/calendarengines/agnversit2/group"/>
</component>
<component id="caleninterimutils" name="Calendar Interim Utils" introduced="9.1" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/organizer/calendarengines/caleninterimutils/group"/>
</component>
<component id="calenimp" name="Calendar Import Wrapper" introduced="7.0s" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/organizer/calendarengines/calenimp/group"/>
</component>
<component id="caldavsrv" name="CalDAV Server" introduced="^3" filter="sf_build" target="device" purpose="optional">
<!-- Not yet delivered in S^4 <unit bldFile="calendarengines/caldav/group"/> -->
</component>
</collection>
<collection id="clock" name="Clock" level="app">
<!-- uncomment unit when block_build is split up-->
<component id="clockengines" name="Clock Engines" filter="s60" target="device" purpose="optional">
<!--<unit bldFile="clock/clockengines" qt:proFile="clockengines.pro"/> -->
</component>
<component id="clockmw" name="Clock Middleware" introduced="^4" filter="s60" target="device" purpose="optional">
<!--<unit bldFile="clock/clockmw" qt:proFile="clockmw.pro"/>-->
</component>
<component id="clockui" name="Clock UI" filter="s60" target="device" purpose="optional">
<!--<unit bldFile="clock/clockui" qt:proFile="clockui.pro"/>-->
</component>
<component id="clock_build" name="Clock Build" filter="s60" target="device" purpose="optional">
<!-- make exports into a component, or just move to one of the above components, then remove this and uncomment the above -->
<unit bldFile="/app/organizer/clock" qt:proFile="clock.pro"/>
</component>
</collection>
<collection id="pimappservices" name="PIM Application Services" level="services">
<component id="calendar" name="Calendar" introduced="9.2" purpose="optional" target="device">
<unit bldFile="/app/organizer/pimappservices/calendar/group" mrp="/app/organizer/pimappservices/calendar/group/app-engines_calendar.mrp" version="2"/>
</component>
<component id="calendarvcalplugin" name="Calendar vCal Plugin" introduced="8.1" purpose="optional" class="plugin" target="device">
<unit bldFile="/app/organizer/pimappservices/calendarvcalplugin/group" mrp="/app/organizer/pimappservices/calendarvcalplugin/group/app-engines_agnversit2.mrp" version="2"/>
</component>
<component id="appenginesdocs" name="Application Engines Documentation" purpose="development" class="doc" target="device">
<unit mrp="/app/organizer/pimappservices/appenginesdocs/app-engines_documentation.mrp"/>
</component>
</collection>
<collection id="pimappsupport" name="PIM Application Support" level="support">
<component id="vcardandvcal" name="vCard and vCal" introduced="ER5" purpose="optional" target="device">
<unit bldFile="/app/organizer/pimappsupport/vcardandvcal/group" mrp="/app/organizer/pimappsupport/vcardandvcal/group/app-services_versit.mrp"/>
</component>
<component id="chinesecalendarconverter" name="Chinese Calendar Converter" introduced="6.1" purpose="optional" target="device">
<unit bldFile="/app/organizer/pimappsupport/chinesecalendarconverter/group" mrp="/app/organizer/pimappsupport/chinesecalendarconverter/group/app-services_calcon.mrp"/>
</component>
<component id="chinesecalendaralg" name="Chinese Calendar Algorithm" introduced="^2" purpose="optional" class="plugin" target="device">
<unit bldFile="/app/organizer/pimappsupport/chinesecalendaralg/group" mrp="/app/organizer/pimappsupport/chinesecalendaralg/group/app-services_chinesecalendaralgorithm.mrp"/>
</component>
</collection>
<collection id="alarmui" name="Alarm UI" level="app">
<!-- collection is really a component, should move down a directory -->
<component id="alarmui_build" name="Alarm UI Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/organizer/alarmui" qt:proFile="alarmui.pro"/>
</component>
</collection>
<collection id="organizer_info" name="Organizer Application Suite Info" level="app">
<component id="organizer_metadata" name="Organizer Application Suite Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/app/organizer/organizer_info/organizer_metadata/organizer_metadata.mrp"/>
</component>
</collection>
</package>
<package id="calendarwidget" level="apps" tech-domain="pr" levels="build app" name="Calendar Widget">
<collection id="calendarwidget_info" name="Calendar Widget Info" level="build">
<component id="calendarwidget_rom" name="Calendar Widget ROM" introduced="^4" filter="dfs_build" target="device" purpose="optional">
<!-- remove subdirs and put exports into a real bld.inf -->
<unit bldFile="/app/calendarwidget/." qt:proFile="calendarwidget.pro" qt:qmakeArgs="-r"/>
</component>
</collection>
<collection id="calendarwidgetinstaller" name="Calendar Widget Installer" level="build">
<!-- collection is really a component, need to move down a directory -->
<component id="calendarwidgetinstaller_build" name="Calendar Widget Installer Build" introduced="^4" filter="dfs_build" target="device" purpose="optional">
<!-- built by calendarwidget_rom
<unit bldFile="calendarwidgetinstaller" qt:qmakeArgs="-r" qt:proFile="calendarwidgetinstaller.pro"/> -->
</component>
</collection>
<collection id="calendarwidgetplugin" name="Calendar Widget Plugin" level="app">
<!-- collection is really a component, need to move down a directory -->
<component id="calendarwidgetplugin_build" name="Calendar Widget Plugin Build" introduced="^4" filter="dfs_build" class="plugin" target="device" purpose="optional">
<!-- built by calendarwidget_rom
<unit bldFile="calendarwidgetplugin" qt:qmakeArgs="-r" qt:proFile="calendarwidgetplugin.pro"/> -->
</component>
<component id="calendarwidgetplugin_test" name="Calendar Widget Plugin Test" introduced="^4" filter="dfs_build" target="device" purpose="optional">
<unit bldFile="/app/calendarwidget/calendarwidgetplugin/tsrc" qt:proFile="tsrc.pro" qt:qmakeArgs="-r"/>
</component>
</collection>
</package>
<package id="messaging" level="apps" span="2" tech-domain="pr" levels="plugin eng base app api" name="Messaging Apps">
<collection id="msg_plat" name="Messaging Apps Platform APIs" level="api">
<component id="messaging_media_resolver_api" name="Messaging Media Resolver API" filter="s60" class="api" target="device" purpose="optional">
<unit base="/app/messaging/msg_plat/messaging_media_resolver_api"/>
</component>
<component id="mms_application_api" name="MMS Application API" filter="s60" class="api" target="device" purpose="optional">
<unit base="/app/messaging/msg_plat/mms_application_api"/>
</component>
<component id="mms_codec_client_api" name="MMS Codec Client API" filter="s60" class="api" target="device" purpose="optional">
<unit base="/app/messaging/msg_plat/mms_codec_client_api"/>
</component>
<component id="mms_conformance_api" name="MMS Conformance API" filter="s60" class="api" target="device" purpose="optional">
<unit base="/app/messaging/msg_plat/mms_conformance_api"/>
</component>
<component id="mms_engine_settings_api" name="MMS Engine Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit base="/app/messaging/msg_plat/mms_engine_settings_api"/>
</component>
<component id="mms_server_settings_api" name="MMS Server Settings API" filter="s60" class="api" target="device" purpose="optional">
<unit base="/app/messaging/msg_plat/mms_server_settings_api"/>
</component>
<component id="conversation_services_client_api" name="Conversation Services Client API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit base="/app/messaging/msg_plat/conversation_services_client_api"/>
</component>
<component id="conversation_services_plugin_api" name="Conversation Services Plugin API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit base="/app/messaging/msg_plat/conversation_services_plugin_api"/>
</component>
<component id="conversation_services_utilities_api" name="Conversation Services Utilities API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit base="/app/messaging/msg_plat/conversation_services_utilities_api"/>
</component>
<component id="shareui_api" name="Share UI API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit base="/app/messaging/msg_plat/shareui_api"/>
</component>
<component id="messaging_history_api" name="Messaging History API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit base="/app/messaging/msg_plat/messaging_history_api"/>
</component>
<component id="msg_plat_build" name="Messaging Apps Platform APIs Build" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<!-- break this up into the above units and replace their base attributes with bldFile, etc -->
<unit bldFile="/app/messaging/msg_plat" qt:proFile="msg_plat.pro" qt:qmakeArgs="-r"/>
</component>
</collection>
<collection id="msg_pub" name="Messaging Apps Public APIs" level="api">
<component id="mms_client_mtm_api" name="MMS Client MTM API" filter="s60" class="api" target="device" purpose="optional">
<unit base="/app/messaging/msg_pub/mms_client_mtm_api"/>
</component>
<component id="msg_smil_dtd_api" name="Messaging SMIL DTD API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<unit base="/app/messaging/msg_pub/msg_smil_dtd_api"/>
</component>
<component id="msg_pub_build" name="Messaging Apps Public APIs Build" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<!-- break this up into the above units and replace their base attributes with bldFile, etc -->
<unit bldFile="/app/messaging/msg_pub" qt:proFile="msg_pub.pro" qt:qmakeArgs="-r"/>
</component>
</collection>
<collection id="mobilemessaging" name="Mobile Messaging" level="plugin">
<component id="smsmtm" name="SMS MTM" purpose="optional" class="plugin" target="device">
<unit bldFile="/app/messaging/mobilemessaging/smsmtm/group" mrp="/app/messaging/mobilemessaging/smsmtm/group/messaging_sms.mrp"/>
</component>
</collection>
<collection id="messagingappbase" name="Messaging App Base" level="base">
<component id="messagingappbase_build" name="Messaging App Base Build" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- break this up into the below components -->
<unit bldFile="/app/messaging/messagingappbase" qt:proFile="messagingappbase.pro" qt:qmakeArgs="-r"/>
</component>
<component id="msgmedia" name="Message Media" filter="s60" target="device" purpose="optional">
<unit base="/app/messaging/messagingappbase/msgmedia"/>
</component>
<component id="smilparser" name="SMIL Parser" introduced="7.0s" purpose="optional" target="device">
<unit bldFile="/app/messaging/messagingappbase/smilparser/GROUP" mrp="/app/messaging/messagingappbase/smilparser/GROUP/messaging_gmxml.mrp"/>
</component>
<component id="obexmtms" name="OBEX MTMs" introduced="7.0s" purpose="optional" class="plugin" target="device">
<unit bldFile="/app/messaging/messagingappbase/obexmtms/Group" mrp="/app/messaging/messagingappbase/obexmtms/Group/messaging_obex.mrp"/>
</component>
</collection>
<collection id="mmsengine" name="MMS Engine" level="eng">
<component id="mmsconninit" name="MMS Connection Initiator" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="mmsengine/mmsconninit/bld"/> -->
</component>
<component id="genutils" name="General Utils" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="mmsengine/genutils/bld"/> -->
</component>
<component id="mmsserversettings" name="MMS Server Settings" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="mmsengine/mmsserversettings/bld"/> -->
</component>
<component id="mmsmessage" name="MMS Message" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="mmsengine/mmsmessage/bld"/> -->
</component>
<component id="mmshttptransport" name="MMS HTTP Transport" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="mmsengine/mmshttptransport/bld"/> -->
</component>
<component id="mmscodec" name="MMS Codec" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="mmsengine/mmscodec/bld"/> -->
</component>
<component id="mmsserver" name="MMS Server" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="mmsengine/mmsserver/bld"/> -->
</component>
<component id="clientmtm" name="MMS Client MTM" filter="s60" class="plugin" target="device" purpose="optional">
<!-- <unit bldFile="mmsengine/clientmtm/bld"/> -->
</component>
<component id="mmswatcher" name="MMS Watcher" filter="s60" class="plugin" target="device" purpose="optional">
<!-- <unit bldFile="mmsengine/mmswatcher/bld"/> -->
</component>
<component id="mmspushhandler" name="MMS Push Handler" filter="s60" class="plugin" target="device" purpose="optional">
<!-- <unit bldFile="mmsengine/mmspushhandler/bld"/> -->
</component>
<component id="applicationadapter" name="MMS Application Adapter" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="mmsengine/applicationadapter/bld"/> -->
</component>
<component id="mmscodecclient" name="MMS Codec Client" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="mmsengine/mmscodecclient/bld"/> -->
</component>
<component id="mmssettings" name="MMS Settings" introduced="9.2" purpose="optional" target="device">
<unit bldFile="/app/messaging/mmsengine/mmssettings/group" mrp="/app/messaging/mmsengine/mmssettings/group/messaging_mmssettings.mrp"/>
</component>
<component id="mmsconf" name="MMS Configuration" purpose="optional" target="device">
<unit bldFile="/app/messaging/mmsengine/mmsconf" mrp="/app/messaging/mmsengine/mmsconf/messaging_mmssettings-config.mrp"/>
</component>
<component id="mmsengine_build" name="MMS Engine Build" filter="s60" target="device" purpose="optional">
<!-- this should be broken up into the individual other components -->
<unit bldFile="/app/messaging/mmsengine" qt:proFile="mmsengine.pro" qt:qmakeArgs="-r"/>
</component>
</collection>
<collection id="messagingapp" name="Messaging Application" level="app">
<component id="messaging_conf" name="Messaging Application Configuration" introduced="^4" filter="s60" class="config" target="device" purpose="optional">
<unit bldFile="/app/messaging/messagingapp/conf" qt:proFile="messaging_conf.pro" qt:qmakeArgs="-r"/>
</component>
<component id="msgutils" name="Messaging Utils" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/messaging/messagingapp/msgutils" qt:proFile="msgutils.pro" qt:qmakeArgs="-r"/>
</component>
<component id="msgappfw" name="Messaging Application Framework" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/messaging/messagingapp/msgappfw" qt:proFile="msgappfw.pro" qt:qmakeArgs="-r"/>
</component>
<component id="msgsettings" name="Messaging Settings" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/messaging/messagingapp/msgsettings" qt:proFile="msgsettings.pro" qt:qmakeArgs="-r"/>
</component>
<component id="msgnotifications" name="Messaging Notifications" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/messaging/messagingapp/msgnotifications" qt:proFile="msgnotifications.pro" qt:qmakeArgs="-r"/>
</component>
<component id="smartmessaging" name="Smart Messaging" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/messaging/messagingapp/smartmessaging" qt:proFile="smartmessaging.pro" qt:qmakeArgs="-r"/>
</component>
<component id="shareui" name="Shared UI" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/messaging/messagingapp/shareui" qt:proFile="shareui.pro" qt:qmakeArgs="-r"/>
</component>
<component id="msgui" name="Messaging UI" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/messaging/messagingapp/msgui" qt:proFile="msgui.pro" qt:qmakeArgs="-r"/>
</component>
<component id="msgservices" name="Messaging Services" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/messaging/messagingapp/msgservices" qt:proFile="msgservices.pro" qt:qmakeArgs="-r"/>
</component>
</collection>
<collection id="email" name="Email" level="plugin">
<!-- use commonemail instead -->
<component id="pop3andsmtpmtm" name="POP3 and SMTP MTM" deprecated="^3" purpose="optional" class="plugin" target="device">
<unit bldFile="/app/messaging/email/pop3andsmtpmtm/group" mrp="/app/messaging/email/pop3andsmtpmtm/group/messaging_email.mrp"/>
</component>
<component id="imap4mtm" name="IMAP4 MTM" introduced="9.2" deprecated="^3" purpose="optional" class="plugin" target="device">
<unit bldFile="/app/messaging/email/imap4mtm/group" mrp="/app/messaging/email/imap4mtm/group/messaging_email_imap.mrp"/>
</component>
</collection>
<collection id="messaging_info" name="Messaging Apps Info" level="api">
<component id="messaging_metadata" name="Messaging Apps Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/app/messaging/messaging_info/messaging_metadata/messaging_metadata.mrp"/>
</component>
</collection>
</package>
<package id="commonemail" level="apps" span="2" tech-domain="pr" levels="service support ui app" name="Email Apps">
<!-- need to resolve the qt parts into proper components, then uncomment the units -->
<collection id="email_plat" name="Email Apps Platform Interfaces" level="app">
<component id="nmail_client_api" name="NMail Client API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<!--<unit bldFile="email_plat/nmail_client_api" qt:proFile="nmail_client_api.pro"/> -->
</component>
<component id="email_services_api" name="Email Services API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<!--<unit bldFile="email_plat/email_services_api" qt:proFile="email_services_api.pro"/> -->
</component>
<component id="nmail_settings_api" name="NMail Settings API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<!--<unit bldFile="email_plat/nmail_settings_api" qt:proFile="nmail_settings_api.pro"/> -->
</component>
<component id="email_client_api" name="EMail Client API" introduced="^4" filter="s60" class="api" target="device" purpose="optional">
<!--<unit bldFile="email_plat/email_client_api" qt:proFile="email_client_api.pro"/> -->
</component>
</collection>
<collection id="emailservices" name="Email Services" level="service">
<component id="nmailbase" name="NMail Base" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="emailservices/nmailbase" qt:proFile="nmailbase.pro"/> -->
</component>
<component id="emailcommon" name="Email Common" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="emailservices/emailcommon" qt:proFile="emailcommon.pro"/>-->
</component>
<component id="emailframework" name="Email Framework" introduced="^2" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="emailservices/emailframework" qt:proFile="emailframework.pro"/>-->
</component>
<component id="emailstore" name="Email Store" introduced="^2" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="emailservices/emailstore" qt:proFile="emailstore.pro"/>-->
</component>
<component id="nmclientapi" name="Nmail Client API" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="emailservices/nmclientapi" qt:proFile="nmclientapi.pro"/>-->
</component>
<component id="nmailagent" name="Nmail Agent" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="emailservices/nmailagent" qt:proFile="nmailagent.pro"/>-->
</component>
<component id="nmutilities" name="Nmail Utilities" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="emailservices/nmutilities" qt:proFile="nmutilities.pro"/> -->
</component>
</collection>
<collection id="ipsservices" name="IMAP/POP/SMTP Services" level="service">
<component id="ipssosplugin" name="IPS SOS Plugin" introduced="^2" filter="s60" class="plugin" target="device" purpose="optional">
<!-- SOS? Consider spelling it out since the abbreviation is ambiguous -->
<!--<unit bldFile="ipsservices/ipssosplugin" qt:proFile="ipssosplugin.pro" />-->
</component>
<component id="nmimapclientplugin" name="NM IMAP Client Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<!--<unit bldFile="ipsservices/nmimapclientplugin" qt:proFile="nmimapclientplugin.pro"/>-->
</component>
<component id="nmipsmtms" name="NM IPS Client Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<!-- <unit bldFile="ipsservices/nmipsmtms" qt:proFile="nmipsmtms.pro"/>-->
</component>
<component id="nmipssettings" name="NM IPS Settings" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="ipsservices/nmipssettings" qt:proFile="nmipssettings.pro"/>-->
</component>
<component id="ipsservices_build" name="IPS Services Build" introduced="^2" filter="s60" target="device" purpose="optional">
<!--<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 id="emailuis" name="Email UIs" level="app">
<component id="nmailuiengine" name="Nmail UI Engine" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="emailuis/nmailuiengine" qt:proFile="nmailuiengine.pro"/> -->
</component>
<component id="nmailuiwidgets" name="Nmail UI Widgets" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="emailuis/nmailuiwidgets" qt:proFile="nmailuiwidgets.pro"/> -->
</component>
<component id="nmailuiwidgetsplugin" name="Nmail UI Widgets Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<!-- <unit bldFile="emailuis/nmailuiwidgetsplugin" qt:proFile="nmailuiwidgetsplugin.pro"/> -->
</component>
<component id="nmsettingui" name="Nmail Setting UI" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<!-- <unit bldFile="emailuis/nmsettingui" qt:proFile="nmsettingui.pro"/> -->
</component>
<component id="nmailcpplugin" name="Nmail CP Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<!-- <unit bldFile="emailuis/nmailcpplugin" qt:proFile="nmailcpplugin.pro"/> -->
</component>
<component id="nmailui" name="Nmail UI" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="emailuis/nmailui" qt:proFile="nmailui.pro"/> -->
</component>
<component id="nmindicatorplugin" name="Nmail Indicator Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<!-- <unit bldFile="emailuis/nmindicatorplugin" qt:proFile="nmindicatorplugin.pro"/> -->
</component>
<component id="nmframeworkadapter" name="Nmail Framework Adapter" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<!-- <unit bldFile="emailuis/nmframeworkadapter" qt:proFile="nmframeworkadapter.pro"/> -->
</component>
</collection>
<collection id="commonemail_info" name="Email Apps Info" level="app">
<component id="commonemail_build" name="Email Apps Build" introduced="^4" target="device" purpose="optional">
<!-- split into actual components -->
<unit bldFile="/app/commonemail/." qt:proFile="nmail.pro" qt:qmakeArgs="-r"/>
</component>
</collection>
</package>
<package id="camera" level="apps" tech-domain="ma" name="Camera Apps">
<collection id="camerauis" name="Camera UIs">
<component id="cameraxui" name="CameraX UIs" filter="s60" target="device" purpose="optional">
<meta rel="testbuild" type="auto">
<group name="camera_unit_tests"/>
</meta>
<unit bldFile="/app/camera/camerauis/cameraxui" filter="!test" qt:proFile="camerax.pro"/>
</component>
</collection>
</package>
<package id="imgeditor" level="apps" tech-domain="ma" name="Image Editor"/>
<package id="videoeditor" level="apps" tech-domain="ma" name="Video Editor"/>
<package id="videoplayer" level="apps" tech-domain="ma" levels="support plugin util apps" name="Video Player Apps">
<collection id="videoplayer_plat" name="Video Player Apps Platform Interfaces" level="apps">
<component id="videoplayer_startup_api" name="Video Player Startup API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/app/videoplayer/videoplayer_plat/videoplayer_startup_api/group"/>
</component>
<component id="videocollection_api" name="Video Collection API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/app/videoplayer/videoplayer_plat/videocollection_api/group"/>
</component>
</collection>
<collection id="videocollection" name="Video Collection" level="util">
<component id="mpxmyvideoscollection" name="MPX My Videos Collection" introduced="^3" filter="s60" target="device" purpose="optional">
<meta rel="testbuild" type="auto">
<group name="vado.101_mpxmyvideoscollection_tsrc"/>
</meta>
<unit bldFile="/app/videoplayer/videocollection/mpxmyvideoscollection/group" filter="!test"/>
</component>
<component id="videocollectionwrapper" name="Video Collection Wrapper" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/videoplayer/videocollection/videocollectionwrapper" qt:proFile="videocollectionwrapper.pro" qt:qmakeArgs="-r"/>
</component>
<component id="videocollectionview" name="Video Collection View" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/videoplayer/videocollection/videocollectionview" qt:proFile="videocollectionview.pro" qt:qmakeArgs="-r"/>
</component>
<component id="videofiledetailsview" name="Video File Details View" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/videoplayer/videocollection/videofiledetailsview" qt:proFile="videofiledetailsview.pro" qt:qmakeArgs="-r"/>
</component>
</collection>
<collection id="mediasettings" name="Media Settings" level="support">
<component id="mediasettingsengine" name="Media Settings Engine" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/videoplayer/mediasettings/mediasettingsengine/group"/>
</component>
<component id="videosettingsplugin" name="Video Settings Plugin" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/videoplayer/mediasettings/videosettingsplugin" qt:proFile="videosettingsplugin.pro"/>
</component>
</collection>
<collection id="videoplayerapp" name="Video Player App" level="apps">
<component id="videoplayerengine" name="Video Player Engine" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/videoplayer/videoplayerapp/videoplayerengine" qt:proFile="videoplayerengine.pro" qt:qmakeArgs="-r"/>
</component>
<component id="hbvideoplayer" name="Video Player" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/videoplayer/videoplayerapp/videoplayer" qt:proFile="videoplayer.pro" qt:qmakeArgs="-r"/>
</component>
</collection>
<collection id="videoplayback" name="Video Playback Plugins" level="plugin">
<component id="videoplaybackview" name="HB Video Playback View" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/videoplayer/videoplayback/videoplaybackview" qt:proFile="videoplaybackview.pro" qt:qmakeArgs="-r"/>
</component>
<component id="videoplaybackviewplugin" name="HB Video Playback View Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/videoplayer/videoplayback/videoplaybackviewplugin" qt:proFile="videoplaybackviewplugin.pro" qt:qmakeArgs="-r"/>
</component>
<component id="videohelix" name="Video Helix" introduced="^3" filter="s60" class="plugin" target="device" purpose="optional">
<meta rel="testbuild" type="auto">
<group name="vado.101_videoplayback_tsrc"/>
</meta>
<unit bldFile="/app/videoplayer/videoplayback/videohelix/group" filter="!test"/>
</component>
</collection>
</package>
<package id="photos" level="apps" tech-domain="ma" levels="util support ui app" name="Photos">
<collection id="photos_group" name="Photos Group" level="support">
<component id="photos_group_build" name="Photos Group Build" introduced="^4" filter="s60" target="device" purpose="optional">
<!--<unit bldFile="group" qt:proFile="group.pro"/> -->
</component>
</collection>
<collection id="photos_loggers" name="Photos Loggers" level="util">
<component id="photos_loggerqt" name="Photos Logger Qt" introduced="^4" filter="s60" target="device" purpose="optional">
<!--<unit bldFile="loggers/loggerqt" qt:proFile="loggerqt.pro"/> -->
</component>
</collection>
<collection id="photos_commonutilities" name="Photos Common Utilities" level="util">
<component id="photos_externalutility" name="Photos External Utility" introduced="^4" filter="s60" target="device" purpose="optional">
<!--<unit bldFile="commonutilities/externalutility" qt:proFile="externalutility.pro"/> -->
</component>
<component id="imagedecoderwrapper" name="Image Decoder Wrapper" introduced="^4" filter="s60" target="device" purpose="optional">
<!--<unit bldFile="commonutilities/imagedecoderwrapper" qt:proFile="imagedecoderwrapper.pro"/> -->
</component>
</collection>
<collection id="photos_ui" name="Photos UI" level="ui">
<!-- need to move exports from ui.pro into separate .pro or bld.inf -->
<component id="detailscustomwidget" name="Details Custom Widget" introduced="^4" filter="s60" target="device" purpose="optional">
<!--<unit bldFile="ui/detailscustomwidget " qt:proFile="detailscustomwidget .pro"/> -->
</component>
<component id="photos_uiengine" name="Photos UI Engine" introduced="^4" filter="s60" target="device" purpose="optional">
<!--<unit bldFile="ui/uiengine" qt:proFile="uiengine.pro"/> -->
</component>
<component id="photos_commandhandlers" name="Photos Command Handlers" introduced="^4" filter="s60" target="device" purpose="optional">
<!--<unit bldFile="ui/commandhandlers" qt:proFile="commandhandlers.pro"/> -->
</component>
<component id="photos_viewutilities" name="Photos View Utilities" introduced="^4" filter="s60" target="device" purpose="optional">
<!--<unit bldFile="ui/viewutilities" qt:proFile="commandhandlers.pro"/> -->
</component>
<component id="photos_widgets" name="Photos Widgets" introduced="^4" filter="s60" target="device" purpose="optional">
<!--<unit bldFile="ui/widgets" qt:proFile="widgets.pro"/> -->
</component>
<component id="photos_views" name="Photos Views" introduced="^4" filter="s60" target="device" purpose="optional">
<!--<unit bldFile="ui/views" qt:proFile="views.pro"/> -->
</component>
<component id="photos_viewmanagement" name="Photos View Management" introduced="^4" filter="s60" target="device" purpose="optional">
<!--<unit bldFile="ui/viewmanagement" qt:proFile="viewmanagement.pro"/> -->
</component>
</collection>
<collection id="photos_main" name="Photos Main" level="support">
<component id="photos_main_build" name="Photos Main Build" introduced="^4" filter="s60" target="device" purpose="optional">
<!--<unit bldFile="main" qt:proFile="main.pro"/> -->
</component>
</collection>
<collection id="gallery" name="Gallery" level="ui">
<component id="gallery_build" name="Gallery Build" introduced="^4" filter="s60" target="device" purpose="optional">
<!--<unit bldFile="gallery" qt:proFile="gallery.pro"/> -->
</component>
</collection>
<collection id="imageviewerapp" name="Image Viewer App" level="support">
<component id="imageviewerapp_build" name="Image Viewer App Build" introduced="^4" filter="s60" target="device" purpose="optional">
<!--<unit bldFile="imageviewerapp" qt:proFile="imageviewerapp.pro"/> -->
</component>
</collection>
<collection id="photos_info" name="Photos Info" level="support">
<component id="photos_build" name="Photos Build" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- split this up into the above components -->
<unit bldFile="/app/photos/." qt:proFile="photos.pro"/>
</component>
</collection>
</package>
<package id="musicplayer" level="apps" tech-domain="ma" levels="plugins support engine app" name="Music Player Apps">
<!-- move the rom .pri files into their components and uncomment the units -->
<collection id="mpdata" name="Music Player Data" level="support">
<!-- collection is really a component, move down a directory -->
<component id="mpdata_build" name="Music Player Data Build" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="mpdata" qt:proFile="mpdata.pro" qt:qmakeArgs="-r -config rom"/> -->
</component>
</collection>
<collection id="mpengine" name="Music Player Engine" level="engine">
<!-- collection is really a component, move down a directory -->
<component id="mpengine_build" name="Music Player Engine Build" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="mpengine" qt:proFile="mpengine.pro" qt:qmakeArgs="-r -config rom"/> -->
</component>
</collection>
<collection id="musicplayer_utilities" name="Music Player Utilities" level="support">
<component id="mpnowplayingbanner" name="MP Now Playing Banner" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="utilities/mpnowplayingbanner" qt:proFile="mpnowplayingbanner.pro" qt:qmakeArgs="-r -config rom"/> -->
</component>
<component id="mpsettingsmanager" name="MP Settings Manager" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="utilities/mpsettingsmanager" qt:proFile="mpsettingsmanager.pro" qt:qmakeArgs="-r -config rom"/> -->
</component>
</collection>
<collection id="musicservices" name="Music Services" level="support">
<!-- collection is really a component, move down a directory -->
<component id="musicservices_build" name="Music Services Build" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="musicservices" qt:proFile="musicservices.pro" qt:qmakeArgs="-r -config rom"/> -->
</component>
</collection>
<collection id="musicplayer_app" name="Music Player Application" level="app">
<!-- collection is really a component, move down a directory -->
<component id="musicplayer_app_build" name="Music Player Application Build" introduced="^4" filter="s60" target="device" purpose="optional">
<!-- <unit bldFile="app" qt:proFile="app.pro" qt:qmakeArgs="-r -config rom"/> -->
</component>
</collection>
<collection id="mpviewplugins" name="Music Player View Plugins" level="plugins">
<component id="mpcollectionviewplugin" name="MP Collection View Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<!--<unit bldFile="mpviewplugins/mpcollectionviewplugin" qt:proFile="mpcollectionviewplugin.pro" qt:qmakeArgs="-r -config rom"/> -->
</component>
<component id="mpplaybackviewplugin" name="MP Playback View Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<!--<unit bldFile="mpviewplugins/mpplaybackviewplugin" qt:proFile="mpplaybackviewplugin.pro" qt:qmakeArgs="-r -config rom"/> -->
</component>
<component id="mpsettingsviewplugin" name="MP Settings View Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<!--<unit bldFile="mpviewplugins/mpsettingsviewplugin" qt:proFile="mpsettingsviewplugin.pro" qt:qmakeArgs="-r -config rom"/> -->
</component>
<component id="mpdetailsviewplugin" name="MP Details View Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<!--<unit bldFile="mpviewplugins/mpdetailsviewplugin" qt:proFile="mpdetailsviewplugin.pro" qt:qmakeArgs="-r -config rom"/> -->
</component>
<component id="mpmediawallviewplugin" name="MP Media Wall View Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<!--<unit bldFile="mpviewplugins/mpmediawallviewplugin" qt:proFile="mpmediawallviewplugin.pro" qt:qmakeArgs="-r -config rom"/> -->
</component>
</collection>
<collection id="musicwidgetplugin" name="Music Widget Plugin" level="plugins">
<component id="musicwidgetplugin_build" name="Music Widget Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<!--<unit bldFile="musicwidgetplugin" qt:proFile="musicwidgetplugin.pro" qt:qmakeArgs="-r -config rom"/> -->
</component>
</collection>
<collection id="mpserviceplugins" name="Music Player Service Plugins" level="plugins">
<component id="audioeffects" name="Audio Effects" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<!--<unit bldFile="mpserviceplugins/audioeffects/group"/>-->
</component>
<component id="localaudio" name="Local Audio" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<!--<unit bldFile="mpserviceplugins/localaudio/group"/>-->
</component>
<!-- Note: it's called SQLite, not SQLLite, just the one "L" -->
<component id="mpxsqlitedbcommon" name="MPX SQLite Database Common" introduced="^4" filter="s60" target="device" purpose="optional">
<!--<unit bldFile="mpserviceplugins/mpxsqlitedbcommon/group"/>-->
</component>
<component id="mpxsqlitedbhgplugin" name="MPX SQLite Database Hg Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<!--<unit bldFile="mpserviceplugins/mpxsqlitedbhgplugin/group"/>-->
</component>
<component id="mpxsqlitedbplugin" name="MPX SQLite Database Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<!--<unit bldFile="mpserviceplugins/mpxsqlitedbplugin/group"/>-->
</component>
<component id="mpxsqlitepodcastdbplugin" name="MPX SQLlite Podcast Database Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<!--<unit bldFile="mpserviceplugins/mpxsqlitepodcastdbplugin/group"/>-->
</component>
<component id="mpxinmemoryplugin" name="MPX In-Memory Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<!--<unit bldFile="mpserviceplugins/mpxinmemoryplugin/group"/>-->
</component>
<component id="m3uplaylistplugin" name="M3U Playlist Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<!--<unit bldFile="mpserviceplugins/mpxsqlitepodcastdbplugin/group"/>-->
</component>
</collection>
<collection id="musicplayer_info" name="Music Player Apps Info" level="app">
<component id="musicplayer_build" name="Music Player Build" filter="s60" target="device" purpose="optional">
<!-- break up into individual components. ROM includes should be in their components -->
<unit bldFile="/app/musicplayer/." qt:proFile="qtmusicplayer.pro" qt:qmakeArgs="-r -config rom"/>
</component>
</collection>
</package>
<package id="radio" level="apps" tech-domain="ma" levels="engine plugin ui" name="Radio Apps">
<collection id="radioengine" name="Radio Engine" level="engine">
<component id="radioengineutils" name="Radio Engine Utils" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/radio/radioengine/utils/group"/>
</component>
<component id="radioenginesettings" name="Radio Engine Settings" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/radio/radioengine/settings/group"/>
</component>
<component id="radioengine_engine" name="Radio Engine" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/radio/radioengine/engine/group"/>
</component>
</collection>
<collection id="radioapp" name="Radio App" level="ui">
<component id="radioenginewrapper" name="Radio Engine Wrapper" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/radio/radioapp/radioenginewrapper" qt:proFile="radioenginewrapper.pro"/>
</component>
<component id="radiopresetstorage" name="Radio Preset Storage" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/radio/radioapp/radiopresetstorage" qt:proFile="radiopresetstorage.pro"/>
</component>
<component id="radiouiengine" name="Radio UI Engine" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/radio/radioapp/radiouiengine" qt:proFile="radiouiengine.pro"/>
</component>
<component id="radiowidgets" name="Radio Widgets" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/radio/radioapp/radiowidgets" qt:proFile="radiowidgets.pro"/>
</component>
<component id="radioapplication" name="Radio Application" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/radio/radioapp/radioapplication" qt:proFile="radioapplication.pro"/>
</component>
<component id="radiowidgetsplugin" name="Radio Widgets Plugin" introduced="^4" filter="s60" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/radio/radioapp/radiowidgetsplugin" qt:proFile="radiowidgetsplugin.pro"/>
</component>
<component id="radio_rom" name="Radio ROM" introduced="^4" filter="s60" class="config" target="device" purpose="optional">
<unit bldFile="/app/radio/rom"/>
</component>
</collection>
<collection id="radiohswidget" name="Radio Homescreen Widget" level="plugin">
<!-- collection is really a component. Move down a directory -->
<component id="radiohswidget_build" name="Radio HS Widget Build" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/radio/radiohswidget" qt:proFile="radiohswidget.pro"/>
</component>
</collection>
</package>
<package id="internetradio" level="apps" tech-domain="ma" levels="engine server ui" name="Internet Radio Apps">
<collection id="internetradio2_0" name="Internet Radio 2.0" level="ui">
<!-- collection is really a component. Move down a dir -->
<component id="internetradio2_0_build" name="Internet Radio 2.0 Build" target="device" purpose="optional">
<unit bldFile="/app/internetradio/internetradio2.0/group"/>
</component>
</collection>
<collection id="presetserver" name="Preset Server" level="server">
<!-- collection is really a component. Move down a dir -->
<component id="presetserver_build" name="Preset Server Build" target="device" purpose="optional">
<unit bldFile="/app/internetradio/presetserver/group"/>
</component>
</collection>
<collection id="qtinternetradio" name="Qt Internet Radio">
<component id="qtinternetradio_build" name="Qt Internet Radio Build" target="device" purpose="optional">
<!-- Move down a dir or break into components-->
<unit bldFile="/app/internetradio/qtinternetradio" qt:proFile="all.pro" qt:qmakeArgs="-r -config rom"/>
</component>
</collection>
</package>
<package id="podcatcher" level="apps" tech-domain="ma" levels="app" name="Podcatcher">
<collection id="podcatcher_info" name="Podcatcher" level="app">
<component id="podcatcher_build" name="Podcatcher Build" introduced="^3" filter="sf_build" target="device" purpose="optional">
<!-- has exports from top level bld.inf -->
<unit bldFile="/app/podcatcher/group"/>
</component>
<component id="podcatcher_app" name="Podcatcher Application" introduced="^3" filter="sf_build" target="device" purpose="optional">
<unit bldFile="/app/podcatcher/application/group"/>
</component>
<component id="podcatcher_engine" name="Podcatcher Engine" introduced="^3" filter="sf_build" target="device" purpose="optional">
<unit bldFile="/app/podcatcher/engine/group"/>
</component>
</collection>
</package>
<package id="homescreen" level="apps" tech-domain="ui" levels="support task ss hs" name="Home Screen Apps">
<collection id="homescreen_test" name="Home Screen Test" level="support">
</collection>
<collection id="homescreen_plat" name="Home Screen Platform API" level="support">
<component id="homescreen_plat_build" name="Home Screen Platform API Build" target="device" purpose="optional">
<unit bldFile="/app/homescreen/homescreen_plat" qt:proFile="homescreen_plat.pro"/>
</component>
</collection>
<collection id="homescreenapp" name="Home Screen Application" level="hs">
<component id="hsutils" name="Home Screen Utils" introduced="^4" target="device" purpose="optional">
<unit bldFile="/app/homescreen/homescreenapp/hsutils" qt:proFile="hsutils.pro" qt:qmakeArgs="-r -config rom"/>
</component>
<component id="hsdomainmodel" name="HS Domain Model" introduced="^4" target="device" purpose="optional">
<unit bldFile="/app/homescreen/homescreenapp/hsdomainmodel" qt:proFile="hsdomainmodel.pro" qt:qmakeArgs="-r -config rom"/>
</component>
<component id="hs_serviceproviders" name="HS Service Providers" introduced="^4" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/homescreen/homescreenapp/serviceproviders" qt:proFile="serviceproviders.pro" qt:qmakeArgs="-r -config rom"/>
</component>
<component id="hs_stateplugins" name="HS State Plugins" introduced="^4" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/homescreen/homescreenapp/stateplugins" qt:proFile="stateplugins.pro" qt:qmakeArgs="-r -config rom"/>
</component>
<component id="hs_widgetplugins" name="HS Widget Plugins" introduced="^4" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/homescreen/homescreenapp/widgetplugins" qt:proFile="widgetplugins.pro" qt:qmakeArgs="-r -config rom"/>
</component>
<component id="hsapplication" name="Home Screen Application" introduced="^4" target="device" purpose="optional">
<unit bldFile="/app/homescreen/homescreenapp/hsapplication" qt:proFile="hsapplication.pro" qt:qmakeArgs="-r -config rom"/>
</component>
<component id="hsmenuclientplugin" name="Home Screen Menu Client Plugin" introduced="^4" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/homescreen/homescreenapp/hsmenuclientplugin" qt:proFile="hsmenuclientplugin.pro" qt:qmakeArgs="-r -config rom"/>
</component>
<component id="hshomescreenclientplugin" name="HS Menu Client Plugin" introduced="^4" class="plugin" target="device" purpose="optional">
<unit bldFile="/app/homescreen/homescreenapp/hshomescreenclientplugin" qt:proFile="hshomescreenclientplugin.pro" qt:qmakeArgs="-r -config rom"/>
</component>
<component id="hswidgetuninstaller" name="HS Widget Uninstaller" introduced="^4" target="device" purpose="optional">
<unit bldFile="/app/homescreen/homescreenapp/hswidgetuninstaller" qt:proFile="hswidgetuninstaller.pro" qt:qmakeArgs="-r -config rom"/>
</component>
</collection>
<collection id="screensaver" name="Screen Saver" level="ss">
<!-- break collection into components, or move down a dir and make it a component -->
<component id="screensaver_build" name="Screen Saver Build" target="device" purpose="optional">
<unit bldFile="/app/homescreen/screensaver" qt:proFile="screensaver.pro" qt:qmakeArgs="-r -config rom"/>
</component>
</collection>
</package>
<package id="jrt" level="services" tech-domain="rt" levels="util generic rt ui" name="Java Runtime">
<collection id="jrt_plat" name="JRT Platform Interfaces" level="ui">
<component id="java_registry_api" name="Java Registry API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/app/jrt/jrt_plat/java_registry_api/build"/>
</component>
<component id="java_env_info_api" name="Java Environment Info API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/app/jrt/jrt_plat/java_env_info_api/build"/>
</component>
<component id="java_debug_api" name="Java Debug API" filter="s60" class="api" target="device" purpose="optional">
<unit bldFile="/app/jrt/jrt_plat/java_debug_api/build"/>
</component>
</collection>
<collection id="build_nativejava" name="Build Native Java">
<component id="nativejava" name="Build Native Java" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/jrt/build"/>
</component>
</collection>
<collection id="javacommons" name="Java Commons" level="generic">
<component id="javacommons_build" name="Java Commons Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/jrt/javacommons" qt:proFile="javacommons.pro"/>
</component>
</collection>
<collection id="javaruntimes" name="Java Runtimes" level="rt">
<component id="javaruntimes_build" name="Java Runtimes Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/jrt/javaruntimes" qt:proFile="javaruntimes.pro"/>
</component>
</collection>
<collection id="javauis" name="Java UIs" level="ui">
<component id="javauis_build" name="Java UIs Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/jrt/javauis" qt:proFile="javauis.pro"/>
</component>
</collection>
<collection id="javamanager" name="Java Manager" level="generic">
<component id="javamanager_build" name="Java Manager Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/jrt/javamanager" qt:proFile="javamanager.pro"/>
</component>
</collection>
<collection id="javatools" name="Java Tools" level="util">
<component id="javatools_build" name="Java Tools Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/jrt/javatools" qt:proFile="javatools.pro"/>
</component>
</collection>
<collection id="javaextensions" name="Java Extensions" level="generic">
<component id="javaextensions_build" name="Java Extensions Build" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/jrt/javaextensions" qt:proFile="javaextensions.pro"/>
</component>
</collection>
</package>
<package id="browserui" level="services" tech-domain="rt" levels="utils support ui" name="Browser UI">
<collection id="browserui_info" name="Browser UI Info" level="ui">
<component id="browserui_build" name="Bookmarks Engine Build" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/browserui/." qt:proFile="browserui.pro"/>
</component>
</collection>
</package>
<package id="conntools" level="services" tech-domain="dc" levels="config app" name="Connectivity Tools">
<collection id="nettools" name="Net Tools" level="app">
<component id="conntest" name="Connection Test" filter="s60" purpose="development" target="device">
<unit bldFile="/app/conntools/nettools/conntest/group"/>
</component>
</collection>
<collection id="emulatorlan" name="Emulator LAN" level="config">
<!-- component is actually a colleciton, should be moved down a directory -->
<component id="emulatorlan_build" name="Emulator LAN Build" filter="s60" purpose="development" class="config" target="device">
<unit bldFile="/app/conntools/emulatorlan/group"/>
</component>
</collection>
</package>
<package id="rndtools" level="services" tech-domain="to" levels="support generic test util" name="R&D tools">
<collection id="creator" name="Creator" level="support">
<!-- collection is really a component. Should move down a directory -->
<component id="creator_build" name="Creator Tool" filter="s60" target="device" purpose="development" class="tool">
<unit bldFile="/app/rndtools/creator" qt:proFile="creator.pro"/>
</component>
</collection>
<collection id="filebrowser" name="File Browser" level="util">
<!-- collection is really a component. Should move down a directory -->
<component id="filebrowser_build" name="File Browser Build" filter="s60" target="device" purpose="development" class="tool">
<unit bldFile="/app/rndtools/filebrowser" qt:proFile="filebrowser.pro"/>
</component>
</collection>
<collection id="launcher" name="Launcher" level="util">
<!-- collection is really a component. Should move down a directory -->
<component id="launcher_build" name="Launcher Utility" filter="s60" target="device" purpose="development" class="tool">
<unit bldFile="/app/rndtools/launcher" qt:proFile="launcher.pro"/>
</component>
</collection>
<collection id="loadgen" name="Load Generator" level="test">
<!-- collection is really a component. Should move down a directory -->
<component id="loadgen_build" name="Load Generator Application" filter="s60" target="device" purpose="development" class="tool">
<unit bldFile="/app/rndtools/loadgen" qt:proFile="loadgen.pro"/>
</component>
</collection>
<collection id="perfmon" name="Performance Monitor" level="test">
<!-- collection is really a component. Should move down a directory -->
<component id="perfmon_build" name="Performance Monitor Tool" filter="s60" target="device" purpose="development" class="tool">
<unit bldFile="/app/rndtools/perfmon" qt:proFile="perfmon.pro"/>
</component>
</collection>
<collection id="piprofilerui" name="Performance Investigator Profiler UI" level="generic">
<!-- collection is really a component. Should move down a directory -->
<component id="piprofilerui_build" name="Performance Investigator Profiler UI Build" introduced="^4" filter="s60" target="device" purpose="development">
<unit bldFile="/app/rndtools/piprofilerui" qt:proFile="piprofilerui.pro"/>
</component>
</collection>
<collection id="screengrabber" name="Screen Grabber" level="util">
<!-- collection is really a component. Should move down a directory -->
<component id="screengrabber_build" name="ScreenGrabber" filter="s60" target="device" purpose="development" class="tool">
<unit bldFile="/app/rndtools/screengrabber" qt:proFile="screengrabber.pro"/>
</component>
</collection>
<collection id="memspyui" name="Memspy UI" level="generic">
<!-- collection is really a component. Should move down a directory -->
<component id="memspyui_build" name="Memspy UI Application" filter="s60" target="device" purpose="development" class="tool">
<unit bldFile="/app/rndtools/memspyui" qt:proFile="memspyui.pro"/>
</component>
</collection>
</package>
<package id="helps" level="apps" span="2" tech-domain="ui" levels="eng tools if ui" name="Help Apps">
<collection id="userguide" name="User Guide" level="if">
<!-- collection is really a component. Move down a directory -->
<component id="userguide_build" name="User Guide Build" introduced="^4" filter="s60" target="device" purpose="optional">
<unit bldFile="/app/helps/userguide" qt:proFile="Userguide.pro"/>
</component>
</collection>
<collection id="symhelp" name="Symbian Help" level="eng">
<component id="helpmodel" name="Help" introduced="6.0" purpose="optional" target="device">
<unit bldFile="/app/helps/symhelp/helpmodel/group" mrp="/app/helps/symhelp/helpmodel/group/app-services_hlpmodel.mrp"/>
</component>
</collection>
</package>
<package id="techview" level="apps" span="2" tech-domain="ui" levels="services ui utils apps1 apps2 apps3" name="Techview">
<collection id="techviewplat" name="Techview Platform" level="services">
</collection>
<collection id="techviewui" name="Techview UI" level="ui">
</collection>
<collection id="tv_controlpanel" name="Control Panel" level="ui">
</collection>
<collection id="pimapps" name="PIM Apps" level="apps3">
</collection>
<collection id="securityapps" name="Security Apps" level="apps3">
</collection>
<collection id="utilityapps" name="Utility Apps" level="apps2">
</collection>
<collection id="installationapps" name="Installation Apps" level="apps2">
</collection>
<collection id="messagingapps" name="Messaging Apps" level="apps2">
</collection>
<collection id="telephonyapps" name="Telephony Apps" level="apps1">
</collection>
<collection id="networkingapps" name="Networking Apps" level="apps1">
</collection>
<collection id="networkingutils" name="Networking Utils" level="utils">
</collection>
<collection id="shortlinkapps" name="Shortlink Apps" level="apps1">
</collection>
<collection id="testapps" name="Test Apps" level="utils">
</collection>
<collection id="avapps" name="A/V Apps" level="apps3">
</collection>
<collection id="toolkit" name="Toolkit" level="utils">
</collection>
<collection id="techview_info" name="Techview Info" level="apps3">
<component id="techview_metadata" name="Techview Metadata" introduced="^2" target="desktop" purpose="development" class="config">
<unit mrp="/app/techview/techview_info/techview_metadata/techview_metadata.mrp"/>
</component>
</collection>
</package>
</layer>
</systemModel>
</SystemDefinition>