williamr@2: // Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies). williamr@2: // All rights reserved. williamr@2: // This component and the accompanying materials are made available williamr@4: // under the terms of "Eclipse Public License v1.0" williamr@2: // which accompanies this distribution, and is available williamr@4: // at the URL "http://www.eclipse.org/legal/epl-v10.html". williamr@2: // williamr@2: // Initial Contributors: williamr@2: // Nokia Corporation - initial contribution. williamr@2: // williamr@2: // Contributors: williamr@2: // williamr@2: // Description: williamr@2: // Symbian_OS.hrh williamr@2: // Configuration options for Symbian OS williamr@2: // This file is managed by the Master Codeline Forum williamr@4: williamr@4: /** This include is for PREQ2621 */ williamr@4: #include "platform_paths.hrh" williamr@4: williamr@2: // SYMBIAN_JAVA_NOT_INCLUDED williamr@4: // For Sphinx and later versions, J2ME will no longer be included in the williamr@2: // build. williamr@4: // This #define supports PREQ1791 williamr@2: // williamr@2: // williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: */ williamr@2: #define SYMBIAN_JAVA_NOT_INCLUDED williamr@2: williamr@2: /** williamr@4: @publishedPartner williamr@4: @released williamr@4: williamr@4: SYMBIAN_HCI_API_V2 williamr@4: williamr@4: If SYMBIAN_HCI_API_V2 is defined then the HCI APIs provided in PREQ750 williamr@4: (Bluetooth HCI improvements) will be required for use by a version 2 williamr@4: Bluetooth Stack and a version 2 HCI. These APIs are neither binary nor williamr@4: source compatible with the previous version 1 HCI APIs. Both the original williamr@4: version 1 Bluetooth stack and HCI, and the new version 2 Bluetooth stack williamr@4: and HCI will be built, but both rombuild and the emulator will be williamr@4: configured to use the version 2 binaries. The version 2 HCI will support williamr@4: all commands and events listed in Bluetooth v2.0 specification. williamr@4: williamr@4: If SYMBIAN_HCI_API_V2 is not defined then only the version 1 Bluetooth williamr@4: stack and HCI will be built and used by rombuild and the emulator. williamr@4: The version 1 HCI supports most but NOT all commands and events listed williamr@4: in Bluetooth v2.0 specification. williamr@4: williamr@4: See BR1613 for more information. williamr@4: */ williamr@4: #define SYMBIAN_HCI_API_V2 williamr@4: williamr@4: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: __WATCHER_API_V2__ williamr@2: williamr@2: If __WATCHER_API_V2__ is defined then the williamr@2: watcher framework supports ECOM watcher plugins. williamr@2: */ williamr@2: #define __WATCHER_API_V2__ williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: __HIDE_WATCHER_API_V1__ williamr@2: williamr@2: Hides support APIs for loading non-ECOM watcher plugins. Non-ECOM watcher williamr@2: plugins are still loaded. The associated define __REMOVE_WATCHER_API_V1__ williamr@2: removes the implementation of the support APIs. williamr@2: williamr@2: Assumes that __WATCHER_API_V2__ has been defined. williamr@2: */ williamr@2: #define __HIDE_WATCHER_API_V1__ williamr@2: #define __REMOVE_WATCHER_API_V1__ williamr@2: williamr@2: /** williamr@2: SYMBIAN_TIMEZONE_SUPPORT_V1 williamr@2: williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: When SYMBIAN_TIMEZONE_SUPPORT_V1 is defined the App-services TzClient.dll williamr@2: module (and accompanying import library) is made available for client williamr@2: application use. williamr@2: williamr@2: This #define supports PREQ663 williamr@2: */ williamr@2: #define SYMBIAN_TIMEZONE_SUPPORT_V1 williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: SYMBIAN_ENABLE_MMF_MULTISCREEN_SUPPORT williamr@2: williamr@2: If SYMBIAN_ENABLE_MMF_MULTISCREEN_SUPPORT is defined then williamr@2: the Multimedia Framework (MMF) can support video playback on williamr@2: a secondary display. The default screen will be the screen williamr@2: number in the cone environment. williamr@2: williamr@2: @see CVideoPlayerUtility williamr@2: */ williamr@2: #define SYMBIAN_ENABLE_MMF_MULTISCREEN_SUPPORT williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: SYMBIAN_EXTENDED_COMPOSITE_FILESYSTEM williamr@2: williamr@2: If SYMBIAN_EXTENDED_COMPOSITE_FILESYSTEM is defined, the Composite williamr@2: File System allows more than one ROFS partition to be included in williamr@2: the composite Z: drive. williamr@2: williamr@2: This #define supports PREQ1085 williamr@2: */ williamr@2: #define SYMBIAN_EXTENDED_COMPOSITE_FILESYSTEM williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: __SECURE_BIN__ williamr@2: williamr@2: When __SECURE_BIN__ is defined, executable files stored as williamr@2: "data" in the XIP ROM are assumed to be in their data-caged williamr@2: locations. The presence of this #define does not imply that williamr@2: data-caging is enforced, and does not imply that binaries have williamr@2: been relocated to sys\bin. williamr@2: williamr@2: This #define supports PREQ537 "Platform security - file system layout". williamr@2: */ williamr@2: #define __SECURE_BIN__ williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: SYMBIAN_COREAPPS_API_V2 williamr@2: williamr@2: If SYMBIAN_COREAPPS_API_V2 is defined then new functionality is available within williamr@2: the Core Apps sub-system (Contacts Model, Agenda Model and World Server) to williamr@2: support a platform secured OS. williamr@2: */ williamr@2: #define SYMBIAN_COREAPPS_API_V2 williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: SYMBIAN_APPARC_APPINFO_CACHE williamr@2: williamr@2: If SYMBIAN_APPARC_APPINFO_CACHE is defined then apparc creates williamr@2: a file of application information on the first boot, which is williamr@2: used during subsequent boots for application information. williamr@2: */ williamr@2: #define SYMBIAN_APPARC_APPINFO_CACHE williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: SYMBIAN_NETWORKING_IPSEC_IKE_V2 williamr@2: williamr@2: If SYMBIAN_NETWORKING_IPSEC_IKE_V2 is defined, IPSEC will williamr@2: be able to support Internet Key Exchange version 2 in williamr@2: addition to IKE v1. This involves a change in the size of williamr@2: the TPfkeyMsgBase class - see BR1736.1. williamr@2: williamr@2: Actual support for IKE v2 will depend on the provision williamr@2: of a suitable plugin to the Key Management Daemon. williamr@2: williamr@2: This #define supports PREQ1223. williamr@2: */ williamr@2: #define SYMBIAN_NETWORKING_IPSEC_IKE_V2 williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: SYMBIAN_UIKON_UNIFICATION williamr@2: williamr@2: When SYMBIAN_UIKON_UNIFICATION is defined, the existing williamr@2: CEikSrvAppUiBase class is replaced with a customisable class williamr@2: provided by the System GUI. williamr@2: williamr@2: This #define supports PREQ819 and PREQ826 williamr@2: */ williamr@2: #define SYMBIAN_UIKON_UNIFICATION williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: __SECURITY_PLATSEC_ARCH__ williamr@2: williamr@2: If this macro is defined, then platform security aware security services williamr@2: APIs will be present. This includes architectural changes to several williamr@2: components. williamr@2: williamr@2: If this macro is not defined, the original version (since 8.0) of the williamr@2: security services APIs will be present. williamr@2: williamr@2: The following components are affected: williamr@2: cryptotokens williamr@2: certman williamr@2: filetokens williamr@2: williamr@2: */ williamr@2: #define __SECURITY_PLATSEC_ARCH__ williamr@2: williamr@2: /** williamr@2: SYMBIAN_ECAM_CHUNKAPI williamr@2: williamr@2: @publishedAll williamr@2: @released williamr@2: williamr@2: Specifies that an extended API will be used in the multimedia williamr@2: camera interface. This has a v2 observer which allows camera data williamr@2: to be returned without buffer copy, and also allows clients to set williamr@2: camera access priority williamr@2: williamr@2: @see CCamera williamr@2: @see MCameraObserver2 williamr@2: williamr@2: This #define supports PREQ799. williamr@2: */ williamr@2: #define SYMBIAN_ECAM_CHUNKAPI williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: SYMBIAN_SECURE_ECOM williamr@2: williamr@2: When SYMBIAN_SECURE_ECOM is not defined, ECOM plugins are discovered by williamr@2: searching for DLLs in System\libs\plugins, and inferring the name of williamr@2: the resource file from the UID3 of the DLL. williamr@2: williamr@2: When SYMBIAN_SECURE_ECOM is defined, ECOM plugins will also be discovered williamr@2: by searching for resource files in \Resource\Plugins, and inferring the williamr@2: name of the DLL from the name of the resource file. When platform security williamr@2: is fully enforced, only this new style of discovery will work. williamr@2: */ williamr@2: #define SYMBIAN_SECURE_ECOM williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: SYMBIAN_INETPROTUTILS_RFC3986 williamr@2: williamr@2: Description: williamr@2: If SYMBIAN_INETPROTUTILS_RFC3986 is defined, the Internet williamr@2: Protocol Utility Library supports RFC 3986, which increases williamr@2: the set of reserved characters. williamr@2: williamr@2: @see EscapeUtils::IsExcludedChar williamr@2: williamr@2: This #define implements BR2009. williamr@2: */ williamr@2: #define SYMBIAN_INETPROTUTILS_RFC3986 williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: SYMBIAN_FONT_METRICS_V2 williamr@2: williamr@2: If this is defined, then classes which derive from COpenFont (usually williamr@2: these are part of a font rasterizer implementation) must set the williamr@2: protected member variables: williamr@2: iFontAscentOfCapitals williamr@2: iFontAscentIncAccents williamr@2: iFontDescent williamr@2: iFontLineGap williamr@2: to appropriate values during the creation of a font. williamr@2: If this macro is not defined then these member variables do not exist. williamr@2: williamr@2: @see COpenFont williamr@2: */ williamr@2: #define SYMBIAN_FONT_METRICS_V2 williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: __OBEX_USER_DEFINED_HEADERS__ williamr@2: williamr@2: If __OBEX_USER_DEFINED_HEADERS__ is defined then the new API support for extended Headers will be available. williamr@2: This new support includes USER DEFINED HEADERS and the COUNT header. williamr@2: If this functionality is compiled out then the old API is available as before. williamr@2: For more information on see documents shown below. williamr@2: williamr@2: @see SGL.GT171.097 - Obex Header Extension how to williamr@2: @see SGL.GT171.095 - Obex Extension Design Document williamr@2: */ williamr@2: #define __OBEX_USER_DEFINED_HEADERS__ williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: SYMBIAN_CENTREP_NOC williamr@2: williamr@2: If SYMBIAN_CENTREP_NOC is defined, the Central Repository williamr@2: includes Notify-Only Client Optimization. This will cause williamr@2: repositories to be unloaded after a timeout even if the williamr@2: connection is still open. williamr@2: williamr@2: This #define supports PREQ1228. williamr@2: */ williamr@2: #define SYMBIAN_CENTREP_NOC williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: @since 8.1 williamr@2: williamr@2: SYMBIAN_BLUETOOTH_REQUIRES_HCI_FLUSH_COMPLETE_EVENT williamr@2: williamr@2: If this is defined, the MHCIEventObserver class must implement williamr@2: the FlushCompleteEvent virtual function, which will be used by williamr@2: the link manager to send Flush Complete events up to the stack. williamr@2: If this macro is not defined, Flush Complete events will be discarded. williamr@2: williamr@2: @see MHCIEventObserver williamr@2: @see CHCIFacade williamr@2: */ williamr@2: #define SYMBIAN_BLUETOOTH_REQUIRES_HCI_FLUSH_COMPLETE_EVENT williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: SYMBIAN_MULTIMEDIA_CODEC_API williamr@2: williamr@2: If SYMBIAN_MULTIMEDIA_CODEC_API is defined then support is williamr@2: available for PREQ1024 delivered Processing Unit or williamr@2: OpenMAX based codecs and Multimedia hardware devices. williamr@2: */ williamr@2: #define SYMBIAN_MULTIMEDIA_CODEC_API williamr@4: /** williamr@4: @publishedAll williamr@4: @released williamr@4: williamr@4: williamr@4: SYMBIAN_MULTIMEDIA_SUBTITLE_SUPPORT williamr@4: williamr@4: Provides support control the presentation of subtitle and closed captioning text williamr@4: from video playback controllers in the Multimedia Framework as part of @see CVideoPlayerUtility2. williamr@4: Note that this support is dependent on the following being present in ROM: williamr@4: - GCE version of Graphics (migration component) williamr@4: - GCE version of Videorender (optional component). williamr@4: - The Subtitle plugin (optional component). williamr@4: williamr@4: This #define supports PREQ1939 williamr@4: */ williamr@4: #define SYMBIAN_MULTIMEDIA_SUBTITLE_SUPPORT williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: __MESSAGING_API_V2__ williamr@2: williamr@2: If __MESSAGING_API_V2__ is defined then new functionality williamr@2: is available within the Messaging sub-system to support a williamr@2: platform secured OS, e.g. the Attachment API. williamr@2: */ williamr@2: #define __MESSAGING_API_V2__ williamr@2: #define __HIDE_MESSAGING_API_V1__ williamr@2: #define __REMOVE_MESSAGING_API_V1__ williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: SYMBIAN_BOOKMARK_DATABASE williamr@2: williamr@2: The Bookmark Database is an API used to provide system-wide williamr@2: storage and management functionality for URI bookmarks. williamr@2: If defined, this macro indicates that the Bookmark Database williamr@2: API is present in the platform. williamr@2: */ williamr@2: #define SYMBIAN_BOOKMARK_DATABASE williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: SYMBIAN_NETWORKING_UMTSR5 williamr@2: williamr@2: If SYMBIAN_NETWORKING_UMTSR5 is defined support for the QoS williamr@2: and IMS parameters introduced by Release 5 of the 3GPP williamr@2: specification will be enabled. This involves a BC break in williamr@2: TContextConfig - see BR1582.1 for details. williamr@2: williamr@2: @see TContextConfig williamr@2: williamr@2: This #define supports PREQ192 and PREQ635. williamr@2: */ williamr@2: #define SYMBIAN_NETWORKING_UMTSR5 williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: SYMBIAN_NETWORKING_3GPPDEFAULTQOS williamr@2: williamr@2: If SYMBIAN_NETWORKING_3GPPDEFAULTQOS is defined, support williamr@2: for QoS modification on the default PDP context will be williamr@2: enabled via the RSubconnection API. williamr@2: williamr@2: This #define supports PREQ870. williamr@2: */ williamr@2: #define SYMBIAN_NETWORKING_3GPPDEFAULTQOS williamr@2: williamr@2: williamr@2: /** williamr@2: SYMBIAN_STAGED_SYSTEM_STARTUP williamr@2: williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: When SYMBIAN_STAGED_SYSTEM_STARTUP is defined, the staged williamr@2: start-up architecture has been introduced into the OS and williamr@2: 'Start-up State Aware' components can make use of the williamr@2: architecture. williamr@2: williamr@2: This #define supports PREQ 810. williamr@2: */ williamr@2: #define SYMBIAN_STAGED_SYSTEM_STARTUP williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: __HIDE_IPC_V1__ williamr@2: williamr@2: If __HIDE_IPC_V1__ is defined then the deprecated insecure IPC APIs will be removed from various Symbian OS header files. Classes affected include CSession, CServer, RMessage and RMessageptr. williamr@2: williamr@2: For more information see the document listed below. williamr@2: williamr@2: @see SMG.SM0005.004 - Platform Security Development for Zephyr williamr@2: @see CSession williamr@2: @see CServer williamr@2: @see RMessage williamr@2: @see RMessagePtr williamr@2: */ williamr@2: #define __HIDE_IPC_V1__ williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: SYMBIAN_NETWORKING_DHCPSERVER williamr@2: williamr@2: If SYMBIAN_NETWORKING_DHCPSERVER is defined, Symbian OS includes a williamr@2: simplified DHCPv4 server capable of dealing with single client. williamr@2: williamr@2: This #define provides functionality to support PREQ749. williamr@2: */ williamr@2: #define SYMBIAN_NETWORKING_DHCPSERVER williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: SYMBIAN_REMOVE_TRIVIAL_ENCRYPTION williamr@2: williamr@2: This macro removes the trivial encryption APIs that are exported by EUSER. williamr@2: williamr@2: See BR1320 for more details williamr@2: williamr@2: */ williamr@2: #define SYMBIAN_REMOVE_TRIVIAL_ENCRYPTION williamr@2: williamr@2: /** williamr@2: @internalTechnology williamr@2: williamr@2: SYMBIAN_WAPPUSH_WHITELIST_BLACKLIST williamr@2: williamr@2: Description: williamr@2: If SYMBIAN_WAPPUSH_WHITELIST_BLACKLIST is defined, the WAP Push williamr@2: watcher compares the origin of Push messages against URIs in a williamr@2: "White list" and "Black list". williamr@2: williamr@2: This #define supports PREQ1505 williamr@2: */ williamr@2: #define SYMBIAN_WAPPUSH_WHITELIST_BLACKLIST williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: SYMBIAN_FLEXIBLE_ALARM williamr@2: williamr@2: When this macro is defined, Calendar Interim API, Alarm server and UIKON williamr@2: Alert Server will support additional functionality. williamr@2: - Extra data can be attached to calendar alarm and allow UI app williamr@2: to retrieve the associated data. williamr@2: - The Alarm server can send multiple expired alarms to Alert Server without williamr@2: waiting for the previous alarm acknowledged first williamr@2: - A Resource file can be used to configure alarm play intervals and durations, williamr@2: or to disable alarm sound control. williamr@2: williamr@2: This #define supports PREQ1118 williamr@2: */ williamr@2: #define SYMBIAN_FLEXIBLE_ALARM williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: SYMBIAN_PKCS12 williamr@2: williamr@2: If SYMBIAN_PKCS12 is defined, the PKCS#12 Key Derivation williamr@2: Algorithm is supplied. williamr@2: williamr@2: This #define supports PREQ1054. williamr@2: */ williamr@2: #define SYMBIAN_PKCS12 williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: SYMBIAN_MMF_AUTOPAUSE_RESUME williamr@2: williamr@2: This #define enables extra features in the MMF APIs for auto pause williamr@2: and resume of audio streams. williamr@2: */ williamr@2: #define SYMBIAN_MMF_AUTOPAUSE_RESUME williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: __SECURE_BACKUP__ williamr@2: williamr@2: If __SECURE_BACKUP__ is defined, the Secure Backup server replaces williamr@2: the use of SCRemFs for backup and restore, changing the backup protocol. williamr@2: Applications which have private data need to provide additional backup williamr@2: registration files, and may use Publish & Subscribe to receive williamr@2: notification of backup requests. williamr@2: williamr@2: This #define supports PREQ716 - Provide support for secure backup and williamr@2: restore for licensee PC Connectivity software williamr@2: */ williamr@2: #define __SECURE_BACKUP__ williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: SYMBIAN_NETWORKING_REMOVE_RGENERIC williamr@2: williamr@2: If this macro is defined the deprecated APIs RGenericAgent, williamr@2: RNif, RNifMonitor and Nifman are removed. All of these APIs, williamr@2: exported by NIFMAN, have been deprecated and replaced by williamr@2: the RConnection API exported by ESOCK. williamr@2: williamr@2: @see Break request BR1070 williamr@2: */ williamr@2: #define SYMBIAN_NETWORKING_REMOVE_RGENERIC williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@2: @released 9.0 williamr@2: williamr@2: SYMBIAN_NETWORKING_RSUBCONNECTION williamr@2: williamr@2: If SYMBIAN_NETWORKING_RSUBCONNECTION is defined, the RQosChannel API is williamr@2: removed, and the RSubConnection API exported by ESOCK must be used instead. williamr@2: williamr@2: This #define supports PREQ 26. williamr@2: */ williamr@2: #define SYMBIAN_NETWORKING_RSUBCONNECTION williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: SYMBIAN_HIDE_COREAPPS_API_V1 williamr@2: williamr@2: If SYMBIAN_HIDE_COREAPPS_API_V1 is defined then the insecure CoreApps APIs williamr@2: will be removed from various Symbian OS header files. Components affected are williamr@2: Contacts Model, Agenda Model and World Server. williamr@2: williamr@2: The related define SYMBIAN_REMOVE_COREAPPS_API_V1 removes the underlying implementations, williamr@2: causing a binary compatibility break to match the source compatibility break. williamr@2: */ williamr@2: #define SYMBIAN_HIDE_COREAPPS_API_V1 williamr@2: #define SYMBIAN_REMOVE_COREAPPS_API_V1 williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: __UI_FRAMEWORKS_V2__ williamr@2: williamr@2: If __UI_FRAMEWORKS_V2__ is defined then PlatSec aware UI Frameworks API's will be available. williamr@2: The following frameworks will be affected: williamr@2: williamr@2: Applications williamr@2: File Recognizers williamr@2: Data Recognizers williamr@2: Notifiers williamr@2: Control Panel Plugins williamr@2: Feps williamr@2: App-initialization (CEikLibrary) williamr@2: Converters williamr@2: Error-Resolving williamr@2: */ williamr@2: #define __UI_FRAMEWORKS_V2__ williamr@2: #define SYMBIAN_HIDE_UI_FRAMEWORKS_V1 williamr@2: #define SYMBIAN_REMOVE_UI_FRAMEWORKS_V1 williamr@2: williamr@2: /** williamr@2: @internalAll williamr@2: williamr@2: __BC_FUTURE_PROOFING__ williamr@2: williamr@2: Support for the implementation of PREQ743 "Introduction of interface williamr@2: robustness patterns to support future binary compatibility". williamr@2: */ williamr@2: #define __BC_FUTURE_PROOFING__ williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@4: williamr@2: SYMBIAN_TELEPHONY_USAT5 williamr@2: williamr@2: If SYMBIAN_TELEPHONY_USAT5 is defined then support for 3GPP williamr@2: Release 5 (U)SAT will be enabled. williamr@2: williamr@2: @see RSat::TCallControlV5 williamr@2: williamr@2: This #define supports PREQ1234. williamr@2: */ williamr@2: #define SYMBIAN_TELEPHONY_USAT5 williamr@2: williamr@2: /** williamr@2: SYMBIAN_GENERIC_SYSTEM_STARTUP williamr@2: williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: This #define enables the generic start-up architecture in williamr@2: which the System Starter process is responsible for the williamr@2: controlled startup of the system. williamr@2: williamr@2: The #define supports PREQ808 and PREQ809. williamr@2: */ williamr@2: #define SYMBIAN_GENERIC_SYSTEM_STARTUP williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: SYMBIAN_SECURE_PUBLISH_AND_SUBSCRIBE williamr@2: williamr@2: If this macro is defined, then the Bluetooth stack reconfigures to take williamr@2: advantage of security mechanisms in Publish and Subscribe. Any other williamr@2: components requiring reconfiguration to make use of Publish and Subscribe williamr@2: can also use this macro. williamr@2: williamr@2: */ williamr@2: #define SYMBIAN_SECURE_PUBLISH_AND_SUBSCRIBE williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: SYMBIAN_SECURITY_CAF_RFILE_HANDLE williamr@2: williamr@2: If SYMBIAN_SECURITY_CAF_RFILE_HANDLE is defined then it enables the Content Access williamr@2: Framework to read from files passed to it as an open RFile handles instead of CAF williamr@2: opening the file itself. This allows files stored in a data caged directory to be williamr@2: read by CAF. williamr@2: williamr@2: */ williamr@2: #define SYMBIAN_SECURITY_CAF_RFILE_HANDLE williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: __JAVACUSTOMINSTALL__ williamr@2: williamr@2: If __JAVACUSTOMINSTALL__ is defined then an additional UI callback is made after MIDlet williamr@2: installation has succeeded or failed. This callback is intended for information only and the williamr@2: information passed can be licensee customised. The intention would be that the device user williamr@2: can use this information to diagnose install problems in conjunction with network operators. williamr@2: If this #define is not present then the callback is not present and is not called. williamr@2: For more information on see documents shown below. williamr@2: williamr@2: @see SGL.GT0188.253 CDMA Java MIDlet Installer Component Design williamr@2: */ williamr@2: #define __JAVACUSTOMINSTALL__ williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: SYMBIAN_MDF_API_V2 williamr@2: williamr@2: This macro selects the Symbian OS 9.x phase of development in williamr@2: the Media Device Framework API, including changes to enable williamr@2: MDF Video Decoder Hardware devices to support applications, williamr@2: streaming and demux. williamr@2: williamr@2: @see CMMFVideoPlayHwDevice williamr@2: */ williamr@2: #define SYMBIAN_MDF_API_V2 williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: SYMBIAN_SMS_REL6_SUPPORT williamr@2: williamr@2: SMS Release 6 support is defined in the 3GPP specifications williamr@2: (3GPP TS 23.040 V6.5.0 and 3GPP TS 23.038 V6.1.0). williamr@2: If defined, this macro indicates that Symbian OS SMS APIs williamr@2: shall support Release 6 functionality. williamr@2: */ williamr@2: #define SYMBIAN_SMS_REL6_SUPPORT williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: SYMBIAN_SWI_POST_INSTALL_REVOCATION williamr@2: williamr@2: When SYMBIAN_SWI_POST_INSTALL_REVOCATION is defined, williamr@2: support for the SWI post install revocation service is enabled. williamr@2: williamr@2: This #define supports PREQ919 williamr@2: */ williamr@2: #define SYMBIAN_SWI_POST_INSTALL_REVOCATION williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: SYMBIAN_TELEPHONY_IMS williamr@2: williamr@2: If SYMBIAN_TELEPHONY_IMS is defined then IMS related APIs are included williamr@2: in Telephony components. williamr@2: williamr@2: This #define supports PREQ61. williamr@2: */ williamr@2: #define SYMBIAN_TELEPHONY_IMS williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: SYMBIAN_IGNORE_BIN_TARGETPATH williamr@2: williamr@2: When SYMBIAN_IGNORE_BIN_TARGETPATH is defined the TARGETPATH keyword in MMP files is ignored for executables. williamr@2: Executables for the emulator instead get built to the default location. williamr@2: e.g. \epoc32\release\winscw\udeb williamr@2: */ williamr@2: #define SYMBIAN_IGNORE_BIN_TARGETPATH williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: SYMBIAN_COMMS_REPOSITORY williamr@2: williamr@2: Comms data is now stored in the Central Repository rather than the DBMS server. williamr@2: A new module, CommsDat.dll, replaces Commdb.dll as the interface for comms data stored on a device. williamr@2: CommsDat has a different API to Commdb, but provides equivalent functionality. williamr@2: There is no longer an SQL API for access to Comms Data. williamr@2: Commdb tools have been migrated for use with CommsDat williamr@2: Commdb is deprecated and should not be used, though it remains as a temporary BC shim on top of CommsDat. williamr@2: */ williamr@2: #define SYMBIAN_COMMS_REPOSITORY williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: SYMBIAN_VARIABLE_BITRATE_CODEC williamr@2: williamr@2: If SYMBIAN_VARIABLE_BITRATE_CODEC is defined then williamr@2: CMMFSwCodecWrapper based audio hardware devices in the williamr@2: Multimedia Framework (MMF) can support variable bitrate codecs. williamr@2: williamr@2: @see CMMFSwCodecWrapper williamr@2: */ williamr@2: #define SYMBIAN_VARIABLE_BITRATE_CODEC williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: __SECURE_TELEPHONY__ williamr@2: williamr@2: If __SECURE_TELEPHONY__ is defined, all Platform Security functionality williamr@2: within the Telephony subsystem will be enabled. williamr@2: If __SECURE_TELEPHONY__ is not defined, no Platform Security functionality williamr@2: within the Telephony subsystem is enabled. williamr@2: */ williamr@2: #define __SECURE_TELEPHONY__ williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: SYMBIAN_CAF_V2 williamr@2: williamr@2: The SYMBIAN_CAF_V2 flag indicates the CAF API v2 is present. williamr@2: CAF v2 supports files containing multiple content objects, which requires williamr@2: a change of API for CAF agents: agents written for CAF v1 will not compile williamr@2: against CAF v2. See BR.1219.2 for migration information. williamr@2: williamr@2: This #define supports PREQ780. williamr@2: */ williamr@2: #define SYMBIAN_CAF_V2 williamr@2: williamr@2: /** williamr@2: SYMBIAN_ROM_STATIC_PLUGIN_INFORMATION williamr@2: williamr@2: @publishedPartner williamr@4: @released williamr@4: williamr@2: This macro enables a consolidation phase in the ROM building williamr@2: process to generate additional metadata for each ROM drive. williamr@2: The metadata describes the content and structure of the ROM williamr@2: conveniently filtered for any component that requires it. williamr@2: williamr@2: Components supply metadata with the "spidata" BUILDROM keyword. williamr@2: williamr@2: This macro supports PREQ806 and other requirements that williamr@2: eliminate run-time scanning of ROM content. williamr@2: */ williamr@2: #define SYMBIAN_ROM_STATIC_PLUGIN_INFORMATION williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: SYMBIAN_BLUETOOTH_ESCO_ENABLED williamr@2: williamr@2: Enable support for Bluetooth eSCO synchronous links. williamr@2: Defining this macro extends the interface to CHCIBase to support williamr@2: the Synchronous connection commands added in Bluetooth 1.2. williamr@2: */ williamr@2: #define SYMBIAN_BLUETOOTH_ESCO_ENABLED williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: SYMBIAN_SECURE_MIDLET_INSTALL williamr@2: williamr@2: If SYMBIAN_SECURE_MIDLET_INSTALL is defined then the Java MIDlet williamr@2: Installer supports installation under Platform Security policies, williamr@2: using the interface published by security\JavaMIDletInstaller. williamr@2: williamr@2: If SYMBIAN_SECURE_MIDLET_INSTALL is not defined then Java MIDlet williamr@2: installation is achieved through the security\appinst interfaces. williamr@2: */ williamr@2: #define SYMBIAN_SECURE_MIDLET_INSTALL williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: SYMBIAN_UI_FRAMEWORKS_CONTROL_API_V2 williamr@2: williamr@2: If SYMBIAN_UI_FRAMEWORKS_CONTROL_API_V2 is defined then williamr@2: the following additional features will be available in CONE. williamr@2: 1) Functions to set and get the background of a control. williamr@2: 2) Functions to add components to a compound control in a simpler way. williamr@2: 3) Hooks for the support of layout managers. williamr@2: 4) A component that will provide fonts and cache them for easier use williamr@2: of these fonts by controls. williamr@2: williamr@2: @see CCoeControl williamr@2: */ williamr@2: #define SYMBIAN_UI_FRAMEWORKS_CONTROL_API_V2 williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: SYMBIAN_CNTMODEL_V2 williamr@2: williamr@2: If SYMBIAN_CNTMODEL_V2 is defined, clients of the williamr@2: Contacts Model can exploit the efficiency improvements williamr@2: introduced by PREQ811, e.g. efficient use of transactions. williamr@2: williamr@2: This #define supports PREQ811 williamr@2: */ williamr@2: #define SYMBIAN_CNTMODEL_V2 williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: SYMBIAN_COREAPPS_PLUGIN_API_V2 williamr@2: williamr@2: If SYMBIAN_COREAPPS_PLUGIN_API_V2 is defined then Ecom solely is used as loading williamr@2: mechanism.The legacy plugin loading mechanism is used otherwise. williamr@2: */ williamr@2: #define SYMBIAN_COREAPPS_PLUGIN_API_V2 williamr@2: williamr@2: /** williamr@2: @internalAll williamr@2: williamr@2: DO_NOT_USE_THIS_MACRO williamr@2: williamr@2: If DO_NOT_USE_THIS_MACRO is defined, assume the Cedar platform. williamr@2: If DO_NOT_USE_THIS_MACRO is not defined, assume the Beech platform. williamr@2: williamr@2: This macro was originally introduced as a stopgap measure, to williamr@2: identify differences between Symbian OS v7.0s and Symbian OS v8.0b williamr@2: which were not specifically to do with the change from Kernel williamr@2: Architecture 1 to Kernel Architecture 2. williamr@2: williamr@2: This macro will be deprecated when a suitable alternative is provided. williamr@2: */ williamr@2: #ifndef DO_NOT_USE_THIS_MACRO williamr@2: #define DO_NOT_USE_THIS_MACRO williamr@2: #endif williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: SYMBIAN_C32ROOT_API_V2 williamr@2: williamr@2: Strengthens the C32Root API and extends it to include williamr@2: configuration of queue length for bindings. williamr@2: williamr@2: This #define supports PREQ318. williamr@2: */ williamr@2: #define SYMBIAN_C32ROOT_API_V2 williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: __SECURE_API__ williamr@2: williamr@2: Hides unsecure APIs. Many of these have been replaced by Secure variants williamr@2: but some are no longer available in a Secure platform. williamr@2: williamr@2: e.g. williamr@2: williamr@2: @see User::RenameThread williamr@2: @see User::CommandLine williamr@2: williamr@2: */ williamr@2: #define __SECURE_API__ williamr@2: #define SYMBIAN_REMOVE_INSECURE_API williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: __CNF_FORMAT_V2__ williamr@2: williamr@2: If __CNF_FORMAT_V2__ is defined, assume that Epoccnf.pl generates williamr@2: files in version 2 of the CNF format, and that both versions 1 williamr@2: and 2 of this file format can be read by Conarc. williamr@2: If __CNF_FORMAT_V2__ is not defined, assume that Epoccnf.pl williamr@2: generates files in version 1 of the CNF format, and that only williamr@2: version 1 of this file format can be read by Conarc. williamr@2: */ williamr@2: #define __CNF_FORMAT_V2__ williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: SYMBIAN_SUPPORT_LINKED_FONTS williamr@2: williamr@2: If SYMBIAN_SUPPORT_LINKED_FONTS is defined then APIs are provided williamr@2: to create 'linked' font instances which combine glyph sets from williamr@2: multiple existing font glyph sets. williamr@2: williamr@2: @see CLinkedTypefaceElement williamr@2: @see CLinkedTypefaceSpecification williamr@2: williamr@2: This #define supports PREQ1431. williamr@2: */ williamr@2: #define SYMBIAN_SUPPORT_LINKED_FONTS williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: SYMBIAN_SECURE_DBMS williamr@2: williamr@2: When SYMBIAN_SECURE_DBMS is defined, support for secure williamr@2: shared databases is enabled within DBMS. williamr@2: When not defined, all secure-shared-database-specific APIs williamr@2: take the form of dummy implementations which return KErrNone. williamr@2: */ williamr@2: #define SYMBIAN_SECURE_DBMS williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: SYMBIAN_ASSUME_SECURE_DATA williamr@2: williamr@2: When this macro is defined, all data files are assumed to be in their secure williamr@2: locations, and all code which provided backward compatibility for the williamr@2: insecure locations is removed. For example, ICL extended resource files williamr@2: will not be loaded from System\Libs\Plugins, only from \Resource\ICL. williamr@2: williamr@2: This macro only makes sense if __SECURE_DATA__ is defined. williamr@2: */ williamr@2: #define SYMBIAN_ASSUME_SECURE_DATA williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@2: @deprecated williamr@2: @since 8.0 williamr@2: williamr@2: __KEYSTORE_API_V2__ williamr@2: williamr@2: */ williamr@2: #define __KEYSTORE_API_V2__ williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: __SECURE_DATA__ williamr@2: williamr@2: When __SECURE_DATA__ is defined, public read-only files are williamr@2: assumed to be in their data-caged locations. The presence of williamr@2: this #define does not imply that data-caging is enforced, and williamr@2: does not imply that binaries have been relocated to sys\bin. williamr@2: williamr@2: This #define supports PREQ537 "Platform security - file system layout". williamr@2: */ williamr@2: #define __SECURE_DATA__ williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: SYMBIAN_NETWORKING_PLATSEC williamr@2: williamr@2: If SYMBIAN_NETWORKING_PLATSEC is defined, additional platform security williamr@2: related functionality in enabled in the Comms-Infras and Networking williamr@2: subsystems (e.g. API policing). williamr@2: */ williamr@2: #define SYMBIAN_NETWORKING_PLATSEC williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: __CONDITIONS_SCHEDULES_VALID__ williamr@2: williamr@2: If __CONDITIONS_SCHEDULES_VALID__ is defined then the Task Scheduler component williamr@2: supports creating persistent schedules based on a set of conditions and a williamr@2: timeout. The schedule is run when either all the conditions are met or the williamr@2: timeout is reached. williamr@2: williamr@2: This functionality is part of PREQ694 - PREQ 694 - Automatic sending of SMS on williamr@2: network reconnection. williamr@2: */ williamr@2: #define __CONDITIONS_SCHEDULES_VALID__ williamr@2: williamr@2: /** williamr@2: @internalComponent williamr@2: williamr@2: __LEAVE_EQUALS_THROW__ williamr@2: williamr@2: If __LEAVE_EQUALS_THROW__ is defined, User::Leave() and TRAP() are williamr@2: implemented in terms of C++ exceptions where the compiler supports this. williamr@2: If __LEAVE_EQUALS_THROW__ is not defined, the legacy Symbian exception williamr@2: mechanism is used instead. williamr@2: williamr@2: Support for C++ exceptions by the compiler is indicated by the williamr@2: internal macro __SUPPORT_CPP_EXCEPTIONS__ supplied by the tools. williamr@2: Where this macro is not present, __LEAVE_EQUALS_THROW__ is automatically williamr@2: undefined. williamr@2: williamr@2: This macro supports PREQ519 "Implement User::Leave() in terms of throw()". williamr@2: */ williamr@2: #define __LEAVE_EQUALS_THROW__ williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: __BLUETOOTH_API_V2__ williamr@2: williamr@2: If __BLUETOOTH_API_V2__ is defined assume that version 2 of the bluetooth williamr@2: subsystem will be built. This is binary compatible with version 1 for all williamr@2: published-all APIs but is not source compatible. Users of classes defined williamr@2: in BTDevice.h and BTManClient.h may need to make source changes. williamr@2: williamr@2: The BTRegistry.dll is removed, users should link instead against BTManClient.lib. williamr@2: The APIs provided by that DLL were classified as published-partner. williamr@2: williamr@2: @see CBTDevice williamr@2: @see SGL.GT172.103 - Bluetooth Compatibility Specification williamr@2: williamr@2: If __BLUETOOTH_API_V2__ is not defined then version 1 of the bluetooth subsystem williamr@2: will be built. williamr@2: williamr@2: */ williamr@2: #define __BLUETOOTH_API_V2__ williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: __BLUETOOTH_HCI_ALLOWS_AFH__ williamr@2: williamr@2: If __BLUETOOTH_HCI_ALLOWS_AFH__ is defined the HCI interface will require the Adaptive Frequency Hopping CHCIBase pure virtual functions to be implemented in any derived class in Licensee produced host controller interface (HCI) code. williamr@2: If this is not defined no AFH commands may be sent to the host controller, and no AFH events will be received from the host controller. williamr@2: The APIs provided by the HCI DLL were classified as published-partner. williamr@2: williamr@2: @see CHCIBase williamr@2: @see MHCIEventObserver williamr@2: williamr@2: */ williamr@2: #define __BLUETOOTH_HCI_ALLOWS_AFH__ williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: EKA2 williamr@2: williamr@2: If EKA2 is defined, assume Kernel Architecture 2. williamr@2: If EKA2 is not defined, assume Kernel Architecture 1 williamr@2: williamr@2: Kernel Architecture 2 is a defining property of the Cedar platform. williamr@2: Kernel Architecture 1 is a defining property of the Beech platform. williamr@2: */ williamr@2: #ifndef EKA2 williamr@2: #define EKA2 williamr@2: #endif williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: SYMBIAN_GRAPHICS_ALPHA_SUPPORT_V1 williamr@2: williamr@2: When SYMBIAN_GRAPHICS_ALPHA_SUPPORT_V1 is defined a new EColor16MA williamr@2: display mode is available, having an alpha channel. The alpha support williamr@2: is tailored to the needs of wserv server-side, although some alpha williamr@2: support will also be available to client applications. williamr@2: williamr@2: This #define supports PREQ915. williamr@2: */ williamr@2: #define SYMBIAN_GRAPHICS_ALPHA_SUPPORT_V1 williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: __SECURE_SOFTWARE_INSTALL__ williamr@2: williamr@2: When __SECURE_SOFTWARE_INSTALL__ is defined, the Software williamr@2: Install APIs are replaced with versions appropriate to williamr@2: the Secure Platform. williamr@2: williamr@2: This #define supports PREQ56 "Software install enhancements" williamr@2: */ williamr@2: #define __SECURE_SOFTWARE_INSTALL__ williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: SYMBIAN_ESOCK_V3 williamr@2: williamr@2: If SYMBIAN_ESOCK_V3 is defined, the socket server allows protocol williamr@2: families to run in individual threads to protect one protocol family williamr@2: from the behaviour of another. The allocation of protocol families to williamr@2: threads is determined by a naming convention on the ESK files. williamr@2: williamr@2: This #define supports PREQ318. williamr@2: */ williamr@2: #define SYMBIAN_ESOCK_V3 williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@4: @released williamr@2: williamr@2: SYMBIAN_CURB_SYSTEMSERVER_PRIORITIES williamr@2: williamr@2: If SYMBIAN_CURB_SYSTEMSERVER_PRIORITIES is defined, threads at williamr@2: priority SystemServer/More (i.e. process priorities EPriorityFileServer, williamr@2: EPriorityWindowServer or EPrioritySupervisor with relative thread priority williamr@2: EPriorityMore) are mapped to absolute priority 23, equal to the highest williamr@2: priority available to normal applications. This lowers the Window Server williamr@2: and File Server priorities so application threads can timeslice with them, williamr@2: benefitting audio and other pseudo real-time applications. williamr@2: williamr@2: If SYMBIAN_CURB_SYSTEMSERVER_PRIORITIES is not defined, these system server williamr@2: priorities remain at 24, preempting all normal user application threads. williamr@2: williamr@2: This #define supports PREQ955, and BR1821. williamr@2: */ williamr@2: #define SYMBIAN_CURB_SYSTEMSERVER_PRIORITIES williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@2: @deprecated williamr@2: @since 8.0 williamr@2: williamr@2: SYMBIAN_CRYPTO williamr@2: williamr@2: */ williamr@2: #define SYMBIAN_CRYPTO williamr@2: williamr@4: /** williamr@4: @internalAll williamr@4: SYMBIAN_J2ME_USE_CALENDAR williamr@4: williamr@4: Internal macro - do not use outside Symbian code. williamr@4: */ williamr@4: #define SYMBIAN_J2ME_USE_CALENDAR williamr@4: williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@4: williamr@4: SYMBIAN_CENREPNOTIFIERHANDLER williamr@4: williamr@4: If SYMBIAN_CENREPNOTIFIERHANDLER is defined, the Central williamr@4: Repository notifier handler is present. williamr@4: williamr@4: @see CCenRepNotifyHandler williamr@4: @see MCenRepNotifyHandlerCallback williamr@4: williamr@4: This #define supports PREQ1802. williamr@2: */ williamr@4: #define SYMBIAN_CENREPNOTIFIERHANDLER williamr@4: williamr@2: williamr@2: /** williamr@2: @publishedAll williamr@2: @released williamr@2: williamr@2: SYMBIAN_BAFL_SYSUTIL williamr@4: williamr@2: If SYMBIAN_BAFL_SYSUTIL is defined, the bafl sysutil.dll is present, williamr@2: providing APIs for obtaining system version information and williamr@2: APIs for monitoring free disk space. williamr@2: williamr@2: @see SysUtil::GetSWVersion williamr@2: @see SysUtil::DiskSpaceBelowCriticalLevelL williamr@2: williamr@2: This #define supports PREQ1802. williamr@2: */ williamr@4: #define SYMBIAN_BAFL_SYSUTIL williamr@4: williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@2: @released williamr@2: williamr@2: SYMBIAN_BAFL_ACTIVITYMGR williamr@2: williamr@2: If SYMBIAN_BAFL_ACTIVITYMGR is defined, the bafl activitymgr.dll is williamr@2: presentand provides an API that allows the client to take action at the williamr@2: start and/or end of a period of user inactivity. williamr@2: williamr@2: @see CUserActivityManager::Start williamr@2: williamr@2: This #define supports PREQ1802. williamr@2: */ williamr@4: #define SYMBIAN_BAFL_ACTIVITYMGR williamr@4: williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@4: williamr@4: SYMBIAN_CLIENTPROV_V2 williamr@4: williamr@4: If SYMBIAN_CLIENTPROV_V2 is defined then the client provisioning williamr@4: documents will be pushed to Inbox by default, and a new API is williamr@4: added to submit the documents from Inbox back to CPAgent. williamr@4: williamr@4: @see RCpMsvDocInputSession williamr@4: williamr@4: This is a source and binary compatibility break: see BR2092. williamr@4: williamr@4: This #define supports PREQ1664 williamr@2: */ williamr@4: #define SYMBIAN_CLIENTPROV_V2 williamr@4: williamr@4: williamr@4: /** williamr@4: @publishedPartner williamr@4: @released williamr@4: williamr@4: SYMBIAN_CRYPTOSPI williamr@4: williamr@4: The SYMBIAN_CRYPTOSPI flag indicates that the Crypto SPI is present. williamr@4: Crypto SPI (Service Provider Interface) supports licensee-pluggable williamr@4: cryptographic algorithms (e.g. for enabling hardware acceleration), williamr@4: and also allows for future extensibility of the cryptography williamr@4: interfaces (e.g. for supporting future hashes and ciphers and williamr@4: to support non-extractable private keys). williamr@4: williamr@4: This #define supports PREQ57. williamr@4: */ williamr@4: #define SYMBIAN_CRYPTOSPI williamr@4: williamr@4: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: SYMBIAN_C32_SERCOMMS_V2 williamr@2: williamr@2: Description: williamr@2: If SYMBIAN_C32_SERCOMMS_V2 is defined, the Comms Server allows grouped CSYs williamr@2: to get loaded into individual threads in order to avoid CSY blocking. williamr@2: The allocation of CSYs to threads is determined by naming convention from williamr@2: the configurator/INI file. williamr@2: This #define supports PREQ890 williamr@2: williamr@2: */ williamr@2: #define SYMBIAN_C32_SERCOMMS_V2 williamr@2: williamr@4: williamr@2: /** williamr@4: @publishedPartner williamr@4: @released williamr@4: williamr@4: SYMBIAN_DEVMAN_BEARER_CONFIGURABLE williamr@4: williamr@4: If SYMBIAN_DEVMAN_BEARER_CONFIGURABLE is defined then the williamr@4: device management support for network bearers can configured williamr@4: using the resource file 'dmnapddf.rss' williamr@4: williamr@4: This #define supports CR1011 williamr@2: */ williamr@4: #define SYMBIAN_DEVMAN_BEARER_CONFIGURABLE williamr@4: williamr@4: williamr@4: /** williamr@4: @publishedPartner williamr@4: @released williamr@4: williamr@4: SYMBIAN_NETWORKING_DHCP_MSG_HEADERS williamr@4: williamr@4: If SYMBIAN_NETWORKING_DHCP_MSG_HEADERS is defined, the williamr@4: Symbian OS DHCPv4 daemon supports retrieval of williamr@4: DHCP message header fields and also 'Parameter Request List' williamr@4: in the DHCP request message to the remote DHCP server is williamr@4: configurable. williamr@4: williamr@4: This #define supports PREQ1647 and PREQ1648 williamr@4: */ williamr@4: #define SYMBIAN_NETWORKING_DHCP_MSG_HEADERS williamr@4: williamr@4: williamr@4: williamr@4: /** williamr@4: @publishedAll williamr@4: @released williamr@4: williamr@4: SYMBIAN_DRM_3RD_PARTY_PLAYBACK williamr@4: williamr@4: If SYMBIAN_DRM_3RD_PARTY_PLAYBACK is defined, the Multimedia Framework williamr@4: supports the playback of DRM-protected content by processes which do not williamr@4: have the DRM capability. williamr@4: williamr@4: @see RMMFController williamr@4: williamr@4: This #define supports CR1058. williamr@4: */ williamr@4: #define SYMBIAN_DRM_3RD_PARTY_PLAYBACK williamr@4: williamr@4: williamr@4: /** williamr@4: @publishedAll williamr@4: @released williamr@4: williamr@4: SYMBIAN_USE_MMF_RUF_RECOGNIZER williamr@4: williamr@4: If SYMBIAN_USE_MMF_RUF_RECOGNIZER is defined, the MMF recognizer is able to williamr@4: recognize formats such as MPEG4, MPEG2, AAC and Divx. williamr@4: */ williamr@4: #define SYMBIAN_USE_MMF_RUF_RECOGNIZER williamr@4: williamr@2: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@4: williamr@4: SYMBIAN_ENABLE_1630_JPEG_EXTENSIONS williamr@4: williamr@4: If SYMBIAN_ENABLE_1630_JPEG_EXTENSIONS is defined, the Symbian JPEG williamr@4: codec implements the PREQ1630 ICL API extensions. williamr@4: williamr@4: @see CImageDecoder::SetClippingRectL williamr@4: @see CImageDecoder::GetDestinationSize williamr@4: @see CImageDecoder::PrepareL williamr@4: @see CImageDecoder::OperationL williamr@4: @see CImageDecoder::ScalerL williamr@4: @see CImageDecoder::BlockStreamerL williamr@4: @see CImageEncoder::PrepareL williamr@4: @see CImageEncoder::OperationL williamr@4: @see CImageEncoder::BlockStreamerL williamr@4: williamr@4: This #define supports PREQ1630. williamr@4: */ williamr@4: #define SYMBIAN_ENABLE_1630_JPEG_EXTENSIONS williamr@4: williamr@4: /** williamr@4: @publishedPartner williamr@4: @released williamr@4: williamr@4: SYMBIAN_LFFS_SIBLEY_NORFLASH williamr@4: williamr@4: If SYMBIAN_LFFS_SIBLEY_NORFLASH is defined support for LFFS on williamr@4: Intel Sibley NOR flash is enabled. williamr@4: williamr@4: This #define supports PREQ912 and involves a BC break in the williamr@4: parameter list for DMediaDriverFlash::Caps() - see BR1680 for details. williamr@4: */ williamr@4: #define SYMBIAN_LFFS_SIBLEY_NORFLASH williamr@4: williamr@4: /** williamr@4: @publishedPartner williamr@4: @released williamr@2: williamr@2: SYMBIAN_LOCATION_PRIVACY_V2 williamr@2: williamr@2: If SYMBIAN_LOCATION_PRIVACY_V2 is defined, the Symbian LBS sub-system williamr@2: includes support for the advanced privacy dialogs and standalone williamr@2: privacy components. williamr@2: williamr@2: This #define supports PREQ1660. williamr@2: */ williamr@2: #define SYMBIAN_LOCATION_PRIVACY_V2 williamr@2: williamr@4: williamr@2: /** williamr@2: @publishedPartner williamr@4: @released williamr@2: williamr@2: SYMBIAN_MDF_SHAREDCHUNK_SOUNDDRIVER williamr@4: williamr@2: If SYMBIAN_MDF_SHAREDCHUNK_SOUNDDRIVER is defined, the Media Device williamr@2: Framework (MDF) will use the RSoundSc sound driver interface. williamr@2: If this macro is not defined, MDF will use the older RMdaDevSound interface. williamr@2: williamr@2: BR2079 gives further details of the migration needed by customers who williamr@2: are using the Symbian reference DevSound with their own implementation williamr@2: of RMdaDevSound. williamr@2: williamr@2: @see RMdaDevSound williamr@2: @see RSoundSc williamr@2: */ williamr@2: #define SYMBIAN_MDF_SHAREDCHUNK_SOUNDDRIVER williamr@2: williamr@4: williamr@4: /** williamr@4: @publishedPartner williamr@4: @released williamr@4: williamr@4: SYMBIAN_MESSAGESTORE_USING_SQLDB williamr@4: williamr@4: If SYMBIAN_MESSAGESTORE_USING_SQLDB is defined then messaging server williamr@4: uses the SQLite database to store message index data. williamr@4: */ williamr@4: #define SYMBIAN_MESSAGESTORE_USING_SQLDB williamr@4: williamr@4: williamr@4: /** williamr@4: @publishedAll williamr@4: @released williamr@4: williamr@4: SYMBIAN_WSERV_AND_CONE_MULTIPLE_SCREENS williamr@4: williamr@4: If SYMBIAN_WSERV_AND_CONE_MULTIPLE_SCREENS is defined, new williamr@4: APIs are provided in cone.lib and ws32.lib which allow williamr@4: applications to draw to multiple displays simultaneously and williamr@4: react to a change of the active display. williamr@4: williamr@4: This #define supports PREQ1227 williamr@4: williamr@4: @see CCoeEnv::ScreenDevice williamr@4: @see CScreenItem williamr@4: */ williamr@4: #define SYMBIAN_WSERV_AND_CONE_MULTIPLE_SCREENS williamr@4: williamr@4: williamr@2: /** williamr@4: @publishedPartner williamr@4: @released williamr@4: williamr@4: SYMBIAN_POWER_RESOURCE_MANAGER_API williamr@4: williamr@4: If SYMBIAN_POWER_RESOURCE_MANAGER_API is defined, the Power Resource williamr@4: Manager is available. williamr@4: williamr@4: @see PowerResourceManager williamr@4: @see DPowerResourceController williamr@4: williamr@4: This #define supports PREQ1398. williamr@4: */ williamr@4: #define SYMBIAN_POWER_RESOURCE_MANAGER_API williamr@4: williamr@4: williamr@4: /** williamr@4: @publishedAll williamr@4: @released williamr@4: williamr@4: SYMBIAN_PROCESS_MONITORING_AND_STARTUP williamr@4: williamr@4: If defined, the System Startup architecture supports dynamic startup williamr@4: for after market applications, and provides the SysMon process to williamr@4: monitor critical system processes. williamr@4: williamr@4: @see DscStore::Connect williamr@4: @see ERestartOS williamr@4: williamr@4: This define supports PREQ871 and PREQ1089. williamr@4: */ williamr@4: #define SYMBIAN_PROCESS_MONITORING_AND_STARTUP williamr@4: williamr@4: williamr@4: /** williamr@4: @publishedAll williamr@4: @released williamr@4: williamr@4: SYMBIAN_TUNER_RDS_ANNOUNCEMENT williamr@4: williamr@4: If SYMBIAN_TUNER_RDS_ANNOUNCEMENT is defined, the RDS Tuner API williamr@4: is provided, allowing applications to be notified if the radio williamr@4: is retuned to another station in order to listen to an announcement. williamr@4: williamr@4: @see MMMRdsTunerUtilityImpl williamr@4: @see MMMRdsAnnouncementObserver2 williamr@4: @see CMMRdsTunerUtility williamr@4: williamr@4: This #define supports CR1097. williamr@4: */ williamr@4: #define SYMBIAN_TUNER_RDS_ANNOUNCEMENT williamr@4: williamr@4: williamr@4: /** williamr@4: @publishedAll williamr@4: @released williamr@4: williamr@4: SYMBIAN_USER_PROMPT_SERVICE williamr@4: williamr@4: If SYMBIAN_USER_PROMPT_SERVICE is defined, the User Prompt williamr@4: Service is available, allowing system servers to prompt the williamr@4: user to make a security decision about a request from a client williamr@4: application, e.g. "Allow application X to send an SMS message?" williamr@4: williamr@4: @see RupSubsession::Authorise williamr@4: williamr@4: This #define is associated with PREQ1262. williamr@4: */ williamr@4: #define SYMBIAN_USER_PROMPT_SERVICE williamr@4: williamr@4: williamr@4: williamr@4: /** williamr@4: @publishedPartner williamr@4: @released williamr@4: williamr@4: SYMBIAN_MULTIMEDIA_MUF williamr@4: williamr@4: If SYMBIAN_MULTIMEDIA_MUF is defined, then the PREQ1823 Multimedia williamr@4: Metadata Utility Framework is delivered in to the OS. williamr@4: williamr@4: @see CMetaDataClientUtility williamr@4: @see CMUFParserType williamr@4: @see MMUFObserver williamr@4: @see CMetaDataFieldsArray williamr@4: @see CMetaDataFieldItem williamr@4: @see CMetaDataParser williamr@4: williamr@4: This #define supports PREQ1823. williamr@4: */ williamr@4: #define SYMBIAN_MULTIMEDIA_MUF williamr@4: williamr@4: williamr@4: /** williamr@4: @publishedAll williamr@4: @released williamr@4: williamr@4: SYMBIAN_MBUFMANAGER_V2 williamr@4: williamr@4: williamr@4: SYMBIAN_MBUFMANAGER_V2 make several changes in williamr@4: the CMBufManager including multiple sized RMBuf's. williamr@4: This #define supports REQ7857, REQ7860, REQ7864, REQ8585, REQ8586 williamr@4: developed as part of PREQ1248. williamr@4: These changes introduces a BR-2242. williamr@4: */ williamr@4: #define SYMBIAN_MBUFMANAGER_V2 williamr@4: williamr@4: williamr@4: /** williamr@4: @publishedPartner williamr@4: @released williamr@4: williamr@4: SYMBIAN_FEATURE_MANAGER williamr@4: williamr@4: If SYMBIAN_FEATURE_MANAGER is defined then the Feature Registry williamr@4: functionality is implemented via the Feature Manager, with williamr@4: corresponding changes in the ROM building tools. williamr@4: williamr@4: This #define supports PREQ1645 williamr@4: */ williamr@4: #define SYMBIAN_FEATURE_MANAGER williamr@4: williamr@4: williamr@4: /** williamr@4: @publishedAll williamr@4: @released williamr@4: williamr@4: SYMBIAN_BUILD_GCE williamr@4: williamr@4: If SYMBIAN_BUILD_GCE is defined, the Surface Manager and Graphics williamr@4: Composition Engine APIs are available at build time. williamr@4: williamr@4: @see RWindowBase::SetBackgroundSurface williamr@4: @see RSurfaceManager williamr@4: @see RSurfaceUpdateSession williamr@4: williamr@4: Note that the Surface Manager and GCE executables are optional, williamr@4: and will not be present in the ROM or the emulator unless williamr@4: appropriately configured. williamr@4: williamr@4: This #define supports PREQ1007 and PREQ1019 williamr@4: */ williamr@4: #define SYMBIAN_BUILD_GCE williamr@4: williamr@4: williamr@4: /** williamr@4: @publishedAll williamr@4: @released williamr@4: williamr@4: SYMBIAN_NON_SEAMLESS_NETWORK_BEARER_MOBILITY williamr@4: williamr@4: If SYMBIAN_NON_SEAMLESS_NETWORK_BEARER_MOBILITY is defined williamr@4: then the comms-infras framework supports the management plane williamr@4: with the RCommsManager API providing support for connection williamr@4: selection, bearer mobility and other functionality. williamr@4: williamr@4: This #define supports PREQ 1060 and PREQ 399. williamr@4: */ williamr@4: #define SYMBIAN_NON_SEAMLESS_NETWORK_BEARER_MOBILITY williamr@4: williamr@4: /** williamr@4: @publishedPartner williamr@4: @released williamr@4: williamr@4: SYMBIAN_CAF_STREAMING williamr@4: williamr@4: If SYMBIAN_CAF_STREAMING is defined then CAF provides support for williamr@4: streamed broadcast protection standards, such as DVB-H or OMA DRM BCAST. williamr@4: williamr@4: This #define supports PREQ782 williamr@4: */ williamr@4: #define SYMBIAN_CAF_STREAMING williamr@4: williamr@4: williamr@4: /** williamr@4: @publishedPartner williamr@4: @released williamr@4: williamr@4: SYMBIAN_ENABLE_USB_OTG_HOST williamr@4: williamr@4: If SYMBIAN_ENABLE_USB_OTG_HOST is defined, executables related williamr@4: to USB Host and USB OTG will be built in addition to the williamr@4: existing support for USB Client. williamr@4: williamr@4: These additional components are necessary to enable building a williamr@4: ROM incorporating USB Client, Host and OTG functionality. williamr@4: williamr@4: This #define supports PREQ1782 williamr@4: */ williamr@4: #define SYMBIAN_ENABLE_USB_OTG_HOST williamr@4: williamr@4: /** williamr@4: @publishedPartner williamr@4: @released williamr@2: williamr@2: SYMBIAN_MULTIMEDIA_A3FDEVSOUND williamr@2: williamr@2: If SYMBIAN_MULTIMEDIA_A3FDEVSOUND is defined, the PREQ1540 DevSound API is williamr@2: present in the Advanced Audio Adaptation Framework williamr@2: williamr@2: This #define supports PREQ1540. williamr@2: */ williamr@4: #define SYMBIAN_MULTIMEDIA_A3FDEVSOUND williamr@4: williamr@4: /** williamr@4: @publishedAll williamr@4: @released williamr@4: williamr@4: SYMBIAN_OS_EXCLUDE_DMCPDS williamr@4: williamr@4: When this macro is enabled, OMA dataSync, Device Management and Client Provisioning protocol williamr@4: implementations will be excluded. williamr@4: williamr@4: This #define supports PREQ2474. williamr@4: */ williamr@4: #define SYMBIAN_OS_EXCLUDE_DMCPDS williamr@4: williamr@4: /** williamr@4: @publishedPartner williamr@4: @released williamr@4: williamr@4: SYMBIAN_USB_RNDIS williamr@4: williamr@4: If SYMBIAN_USB_RNDIS is defined, SYMBIAN OS will provide USB Remote NDIS class (this affects Bluetooth PAN as well). williamr@4: williamr@4: This #define supports PREQ1872. williamr@4: */ williamr@4: #define SYMBIAN_USB_RNDIS williamr@4: williamr@4: /** williamr@4: @internalAll williamr@4: @released williamr@4: williamr@4: SYMBIAN_ALARM_REPEAT_EXTENSIONS williamr@4: If SYMBIAN_ALARM_REPEAT_EXTENSIONS is defined then the client APIs delivered by PREQ2069 will be avilable. williamr@4: These APIs introduce an additional alarm repeat definition and a new alarm expiry behaviour. williamr@4: williamr@4: #define supports PREQ2069. williamr@4: */ williamr@4: #define SYMBIAN_ALARM_REPEAT_EXTENSIONS williamr@4: williamr@4: /** williamr@4: @publishedPartner williamr@4: williamr@4: SYMBIAN_BAFL_MULTIPARTPARSER williamr@4: williamr@4: If SYMBIAN_BAFL_MULTIPARTPARSER is defined then the BAFL williamr@4: component provides the MultipartParser.dll functionality. williamr@4: williamr@4: This #define supports PREQ2051. williamr@4: */ williamr@4: #define SYMBIAN_BAFL_MULTIPARTPARSER williamr@4: williamr@4: /** williamr@4: @internalAll williamr@4: @released williamr@4: williamr@4: SYMBIAN_CENTREP_SUPPORT_MULTIROFS williamr@4: williamr@4: If SYMBIAN_CENTREP_SUPPORT_MULTIROFS is defined, centralrepository client williamr@4: will be able to define keyspaces that are composed of multiple files in different ROFS layers. williamr@4: williamr@4: This #define supports PREQ2112 williamr@4: */ williamr@4: #define SYMBIAN_CENTREP_SUPPORT_MULTIROFS williamr@4: williamr@4: /** williamr@4: @publishedPartner williamr@4: @released williamr@4: williamr@4: SYMBIAN_DNS_PROXY williamr@4: williamr@4: If SYMBIAN_DNS_PROXY is defined, SYMBIAN OS will provide DNS Proxy Service. williamr@4: williamr@4: This define supports PREQ1684. williamr@4: */ williamr@4: #define SYMBIAN_DNS_PROXY williamr@4: williamr@4: /** williamr@4: @publishedPartner williamr@4: @released williamr@4: williamr@4: SYMBIAN_DNS_PUNYCODE williamr@4: williamr@4: If SYMBIAN_DNS_PUNYCODE is defined, this will enable punycode conversion williamr@4: functionality in the system. If SYMBIAN_DNS_PUNYCODE is enabled, then the DND williamr@4: can resolve the International Domain Names also. As per the requirement, application williamr@4: can use this punycode conversion. williamr@4: williamr@4: This define supports PREQ2296. williamr@4: */ williamr@4: #define SYMBIAN_DNS_PUNYCODE williamr@4: williamr@4: /** williamr@4: @publishedAll williamr@4: williamr@4: SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API williamr@4: williamr@4: Enables the File Server Client side API for large file access (file size greater than 2GB - 1). williamr@4: Enables the configurable part of File Server side to support large files. williamr@4: williamr@4: This #define supports PREQ1725 williamr@4: */ williamr@4: #define SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API williamr@4: williamr@4: /** williamr@4: @publishedPartner williamr@4: @released williamr@4: williamr@4: SYMBIAN_ENABLE_FAT_DIRECTORY_OPT williamr@4: williamr@4: If SYMBIAN_ENABLE_FAT_DIRECTORY_OPT is defined, a size-configurable williamr@4: Leaf Directory Name Caching and optimisations to file creation operations williamr@4: is enabled to improve performance of locating leaf directories and williamr@4: file creation on FAT volumes. williamr@4: williamr@4: This #define supports PREQ1885. williamr@4: */ williamr@4: #define SYMBIAN_ENABLE_FAT_DIRECTORY_OPT williamr@4: williamr@4: /** williamr@4: @publishedAll williamr@4: @released williamr@4: williamr@4: SYMBIAN_EUSERHL williamr@4: williamr@4: EUserHl generic usability library williamr@4: williamr@4: This #define supports PREQ2177 williamr@4: */ williamr@4: #define SYMBIAN_EUSERHL williamr@4: williamr@4: /** williamr@4: @publishedPartner williamr@4: SYMBIAN_LOCATION_BTGPSCONFIG williamr@4: williamr@4: Allows applications that use the LBS subsystem to automatically utilize the best Bluetooth GPS positioning source williamr@4: available (rather than be manually configured to a particular Bluetooth GPS device) williamr@4: williamr@4: */ williamr@4: #define SYMBIAN_LOCATION_BTGPSCONFIG williamr@4: williamr@4: /** williamr@4: @publishedAll williamr@4: @released williamr@4: williamr@4: SYMBIAN_MESSAGESTORE_ENHANCED_SEARCH williamr@4: williamr@4: If SYMBIAN_MESSAGESTORE_ENHANCED_SEARCH is defined then the client williamr@4: side of messaging server provides enhanced search capabilities. williamr@4: */ williamr@4: #define SYMBIAN_MESSAGESTORE_ENHANCED_SEARCH williamr@4: williamr@4: /** williamr@4: @publishedPartner williamr@4: @released williamr@4: williamr@4: SYMBIAN_NETWORKING_ADDRESS_PROVISION williamr@4: williamr@4: If SYMBIAN_NETWORKING_ADDRESS_PROVISION is defined, this will enable williamr@4: the DHCP server to provide IP address to the client based on its williamr@4: hardware address, this hardware address is provisioned by the williamr@4: application which is loading the DHCP server. Also NAPT will williamr@4: forward any packets to the uplink only if the source address is williamr@4: provisioned. williamr@4: williamr@4: This define supports PREQ1872. williamr@4: */ williamr@4: #define SYMBIAN_NETWORKING_ADDRESS_PROVISION williamr@4: williamr@4: /** williamr@4: williamr@4: @internalComponent williamr@4: williamr@4: SYMBIAN_OE_LIBRT williamr@4: williamr@4: If SYMBIAN_OE_LIBRT is defined, the open environment component will be extended to include the williamr@4: Symbian OS port of the latest version of librt ("realtime") open source library. williamr@4: williamr@4: This #define supports PREQ1974 williamr@4: williamr@4: */ williamr@4: #define SYMBIAN_OE_LIBRT williamr@4: williamr@4: /** williamr@4: williamr@4: @internalComponent williamr@4: williamr@4: SYMBIAN_OE_POSIX_SIGNALS williamr@4: williamr@4: If SYMBIAN_OE_POSIX_SIGNALS is enabled, the libc component will use POSIX signals emulation. williamr@4: williamr@4: This #define supports PREQ1579 williamr@4: williamr@4: */ williamr@4: #define SYMBIAN_OE_POSIX_SIGNALS williamr@4: williamr@4: /** williamr@4: @publishedPartner williamr@4: williamr@4: SYMBIAN_SDP_IPSEC_VOIP_SUPPORT williamr@4: williamr@4: If SYMBIAN_SDP_IPSEC_VOIP_SUPPORT is defined, then PREQ1853 APIs enable use of the cipher based MAC evaluation williamr@4: and psuedo random generation algorithms (AES-XCBC-MAC-96 and AES-XCBC-PRF-128 respectively) through a new MAC williamr@4: interface introduced in the CryptoSpi framework. williamr@4: williamr@4: Tbis #define supports PREQ1853 williamr@4: */ williamr@4: #define SYMBIAN_SDP_IPSEC_VOIP_SUPPORT williamr@4: williamr@4: /** williamr@4: @internalAll williamr@4: @released williamr@4: williamr@4: SYMBIAN_SKIPPED_CALENDAR_ALARMS williamr@4: williamr@4: If SYMBIAN_SKIPPED_CALENDAR_ALARMS is present then the alarm server shall williamr@4: persist details of missed calendar alarms and clients shall be able to williamr@4: retrieve the list of missed calendar alarms from the Alarm server client API. williamr@4: williamr@4: This supports PREQ2088. williamr@4: */ williamr@4: #define SYMBIAN_SKIPPED_CALENDAR_ALARMS williamr@4: williamr@4: /** williamr@4: @internalTechnology williamr@4: williamr@4: SYMBIAN_SSM_FLEXIBLE_MERGE williamr@4: williamr@4: When SYMBIAN_SSM_FLEXIBLE_MERGE is enabled then flexible merging williamr@4: of startup command lists based on priority is supported. williamr@4: williamr@4: This define supports PREQ1871. williamr@4: */ williamr@4: #define SYMBIAN_SSM_FLEXIBLE_MERGE williamr@4: williamr@4: /** williamr@4: @internalAll williamr@4: williamr@4: SYMBIAN_SSM_GRACEFUL_SHUTDOWN williamr@4: williamr@4: If SYMBIAN_SSM_GRACEFUL_SHUTDOWN is defined, this will enable williamr@4: Staged Shutdown of the device, which allows definition of williamr@4: a policy to specify the order for notifying registered williamr@4: components of shutdown, allowing them to perform any necessary williamr@4: tasks before the device completes its shutdown. williamr@4: williamr@4: This define supports PREQ2326. williamr@4: */ williamr@4: #define SYMBIAN_SSM_GRACEFUL_SHUTDOWN williamr@4: williamr@4: /** williamr@4: @publishedPartner williamr@4: @released williamr@4: williamr@4: SYMBIAN_STRICT_EXPLICIT_SOCKET_BINDING williamr@4: williamr@4: If SYMBIAN_STRICT_EXPLICIT_SOCKET_BINDING is defined then williamr@4: the TCP/IP stack shall support explictly bound sockets. williamr@4: If a socket is explicitly bound and a packet arrives on an interface williamr@4: that the socket isn't bound to, then the packet should be dropped. williamr@4: williamr@4: This define supports PREQ2279. williamr@4: */ williamr@4: #define SYMBIAN_STRICT_EXPLICIT_SOCKET_BINDING williamr@4: williamr@4: /** williamr@4: @publishedAll williamr@4: williamr@4: SYMBIAN_SWI_RUN_ON_INSTALL_COMPLETE williamr@4: williamr@4: This new Macro will enable the support for new run option for SIS files . When executables/files inside williamr@4: SIS file marked with this new run option, they will be executed at the end of the successful installation. williamr@4: williamr@4: This #define supports PREQ2264, CR1544 williamr@4: */ williamr@4: #define SYMBIAN_SWI_RUN_ON_INSTALL_COMPLETE williamr@4: williamr@4: /** williamr@4: @publishedPartner williamr@4: @released williamr@4: williamr@4: SYMBIAN_SYSTEM_STATE_MANAGEMENT williamr@4: williamr@4: If SYMBIAN_SYSTEM_STATE_MANAGEMENT is defined, this will enable williamr@4: the System State Management Architecture, which supports the williamr@4: concept of system states (including startup, normal operation, williamr@4: shutdown, and failure) and associated behaviour, and facilitates williamr@4: the transitioning between them according to licensee-defined williamr@4: policies and procedures. williamr@4: williamr@4: This define supports PREQ1871. williamr@4: */ williamr@4: #define SYMBIAN_SYSTEM_STATE_MANAGEMENT williamr@4: williamr@4: /** williamr@4: @internalAll williamr@4: williamr@4: SYMBIAN_WRITABLE_DATA_PAGING williamr@4: williamr@4: This System Wide Define will be used to issue a warning when a rom is built that enables data paging on a williamr@4: version of the OS for which data paging is not warranted. williamr@4: williamr@4: This #define supports PREQ1954 williamr@4: */ williamr@4: #define SYMBIAN_WRITABLE_DATA_PAGING williamr@4: williamr@4: /** williamr@4: @publishedPartner williamr@4: @released williamr@4: williamr@4: SYMBIAN_ZERO_COPY_NETWORKING williamr@4: williamr@4: If SYMBIAN_ZERO_COPY_NETWORKING is defined the Comms Stack switches from using single memory pool overseen williamr@4: by MBufManager to multiple, HW specific pools. With SYMBIAN_ZERO_COPY_NETWORKING defined link-level flows williamr@4: can avoid copying data when communicating with the respective HW drivers. williamr@4: williamr@4: This #define supports PREQ2106. williamr@4: */ williamr@4: #define SYMBIAN_ZERO_COPY_NETWORKING williamr@4: williamr@4: /** williamr@4: @publishedPartner williamr@4: @released williamr@4: williamr@4: SYMBIAN_ENABLE_SPLIT_HEADERS williamr@4: williamr@4: When this is not defined, header files, that have been split, #include the extra header files to disable the source break. When this is defined, the headers have been fully split and the source break is enabled. williamr@4: williamr@4: This #define supports PREQ2740 and other splitting "mixed" header file PREQs. williamr@4: */ williamr@4: williamr@4: #define SYMBIAN_ENABLE_SPLIT_HEADERS williamr@4: williamr@4: /** williamr@4: @publishedAll williamr@4: @released williamr@4: williamr@4: SYMBIAN_OE_LIBSTDCPP williamr@4: williamr@4: If SYMBIAN_OE_LIBSTDCPP is defined, the open environment component will be extended to include the standard new and delete operators, and STDxxx targets will be linked against stdnew.lib for ARM builds, while other targets will be linked against scppnwdl.lib for Emulator builds. williamr@4: williamr@4: This #define supports PREQ1184 williamr@4: */ williamr@4: #define SYMBIAN_OE_LIBSTDCPP williamr@4: williamr@4: /** williamr@4: @publishedPartner williamr@4: @released williamr@4: williamr@4: SYMBIAN_E32_ATOMIC_API williamr@4: williamr@4: If SYMBIAN_E32_ATOMIC_API is defined the header file e32atomics.h is available williamr@4: and should be used in preference to hand-coding ARM atomic instructions. williamr@4: */ williamr@4: #define SYMBIAN_E32_ATOMIC_API williamr@4: williamr@4: /** williamr@4: SYMBIAN_GRAPHICS_BUILD_OPENWF_WSERV williamr@4: williamr@4: If SYMBIAN_GRAPHICS_BUILD_OPENWF_WSERV, the windowserver component is built to use the OpenWF version of NGA. williamr@4: */ williamr@4: #define SYMBIAN_GRAPHICS_BUILD_OPENWF_WSERV