Adaptation/GUID-43852F38-4841-5E6F-927B-A38ED4424F0C.dita
changeset 15 307f4279f433
equal deleted inserted replaced
14:578be2adaf3e 15:307f4279f433
       
     1 <?xml version="1.0" encoding="utf-8"?>
       
     2 <!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
       
     3 <!-- This component and the accompanying materials are made available under the terms of the License 
       
     4 "Eclipse Public License v1.0" which accompanies this distribution, 
       
     5 and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
       
     6 <!-- Initial Contributors:
       
     7     Nokia Corporation - initial contribution.
       
     8 Contributors: 
       
     9 -->
       
    10 <!DOCTYPE concept
       
    11   PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
       
    12 <concept id="GUID-43852F38-4841-5E6F-927B-A38ED4424F0C" xml:lang="en"><title>Keyword reference (P-R)</title><prolog><metadata><keywords/></metadata></prolog><conbody>
       
    13 <p>This page lists the keywords starting from P to R. </p>
       
    14 <section id="GUID-C95FF58E-B556-4B31-AC67-9B8FCB283D0F"><title>paged</title><codeblock xml:space="preserve">paged</codeblock><p><i>rombuild and rofsbuild</i></p><p>Use the <codeph>paged</codeph> keyword to specify that the executable
       
    15 is code paged.   If an executable is marked as code paged, the pages
       
    16 are loaded into the RAM on demand one page after another. This can
       
    17 reduce application startup time and memory usage. </p><p>This is the
       
    18 same as specifying the <codeph>pagedcode</codeph> keyword for an executable.</p></section>
       
    19 <section id="GUID-1314D06A-FA06-4D08-87FA-4B4927081127"><title>pagedcode</title><codeblock xml:space="preserve">pagedcode</codeblock><p><i>rombuild and rofsbuild</i></p><p>Same as <xref href="GUID-43852F38-4841-5E6F-927B-A38ED4424F0C.dita#GUID-43852F38-4841-5E6F-927B-A38ED4424F0C/GUID-C95FF58E-B556-4B31-AC67-9B8FCB283D0F"><codeph>paged</codeph></xref>.</p></section>
       
    20 <section id="GUID-23A28BEA-1AF4-42B6-887F-60C7B0EE2DEC"><title>pageddata</title><codeblock xml:space="preserve">pageddata</codeblock><p><i>rombuild and rofsbuild</i></p><p>Use the <codeph>pageddata</codeph> keyword to specify that the
       
    21 executable is <xref href="http://developer.symbian.org/main/documentation/reference/s3/pdk/GUID-1391CDCC-9A09-54FB-BA7D-BC7A91DB2351.html" scope="external">data paged</xref>. This controls the paging of both
       
    22 heap and stacks for an executable. For more fine-grained control of
       
    23 memory usage, specify the paging of heap and stack data during the
       
    24 creation of new threads and processes. </p></section>
       
    25 <section id="GUID-ADB633E8-8DD1-514C-9560-A6A2429DA199"><title>pagingoverride</title> <codeblock id="GUID-B519894B-22BB-516A-A955-093ED800767B" xml:space="preserve">pagingoverride [NOPAGING | ALWAYSPAGE | DEFAULTUNPAGED | DEFAULTPAGED]</codeblock> <p> <i>rombuild and rofsbuild</i>  </p> <p>This overrides the code
       
    26 and data paging settings for all the files, such as EXE and DLL in
       
    27 an OBY file. It takes a single argument, which can be one of the following: </p> <table id="GUID-CB22C2A3-68E8-51DD-9314-3ABC6AC71FE5">
       
    28 <tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/>
       
    29 <thead>
       
    30 <row>
       
    31 <entry>Argument</entry>
       
    32 <entry>Purpose</entry>
       
    33 </row>
       
    34 </thead>
       
    35 <tbody>
       
    36 <row>
       
    37 <entry><p> <i>NOPAGING</i>  </p> </entry>
       
    38 <entry><p>To mark all executables as unpaged, irrespective of whether
       
    39 they are marked as paged or unpaged in the <filepath>MMP</filepath> file. </p> </entry>
       
    40 </row>
       
    41 <row>
       
    42 <entry><p> <i>ALWAYSPAGE</i>  </p> </entry>
       
    43 <entry><p>To mark all executables as paged, irrespective of whether
       
    44 they are marked as paged or unpaged in the <filepath>MMP</filepath> file. </p> </entry>
       
    45 </row>
       
    46 <row>
       
    47 <entry><p> <i>DEFAULTUNPAGED</i>  </p> </entry>
       
    48 <entry><p>All executables, which are not marked as paged or unpaged
       
    49 are marked as unpaged by default. </p> </entry>
       
    50 </row>
       
    51 <row>
       
    52 <entry><p> <i>DEFAULTPAGED</i>  </p> </entry>
       
    53 <entry><p>All executables, which are not marked as paged or unpaged
       
    54 are marked as paged by default. </p> </entry>
       
    55 </row>
       
    56 </tbody>
       
    57 </tgroup>
       
    58 </table> <p>For example, the following entry in the Obey file marks
       
    59 all the executables as unpaged: </p> <codeblock id="GUID-A6794DD3-049A-5C5C-A68D-E54316DF30DD" xml:space="preserve">pagingoverride NOPAGING</codeblock> </section>
       
    60 <section id="GUID-29A1FB89-E364-5C90-99D3-92247B514810"><title>pagingpolicy</title> <codeblock id="GUID-AE92F332-CAF1-5BA7-918C-0BD8FE0F11C0" xml:space="preserve">pagingpolicy [NOPAGING | ALWAYSPAGE | DEFAULTUNPAGED | DEFAULTPAGED]</codeblock> <p> <i>rombuild and rofsbuild</i>  </p> <p>This overrides the default
       
    61 settings for both code and data paging. It also overrides the settings
       
    62 from all the <xref href="GUID-85B33746-074D-5B54-ACF4-1B1620D48FF6.dita#GUID-85B33746-074D-5B54-ACF4-1B1620D48FF6/GUID-08CFF2B1-63CC-5358-AD13-B4152A83B640">previous levels</xref>. This keyword takes a single argument, which
       
    63 can be one of the possible values listed in <xref href="GUID-43852F38-4841-5E6F-927B-A38ED4424F0C.dita#GUID-43852F38-4841-5E6F-927B-A38ED4424F0C/GUID-ADB633E8-8DD1-514C-9560-A6A2429DA199">pagingoverride</xref>. </p> <p>For example, the following entry in
       
    64 the Obey file instructs the loader not to page the executables in
       
    65 the default state: </p> <codeblock id="GUID-065D951C-4AD1-5DCB-A470-2B11D025D43F" xml:space="preserve">pagingpolicy NOPAGING</codeblock> </section>
       
    66 <section id="GUID-C3734F82-AAB3-438F-BE32-C3EF2C26B4FD"><title>payloaduid</title><p><codeblock xml:space="preserve">payloaduid = &lt;payloaduid&gt;</codeblock></p><p>Identifies
       
    67 the payload of the SMR partition. This field allows kernel consumers
       
    68 (such as HCR) at runtime to locate the memory regions that contain
       
    69 their data.</p></section>
       
    70 <section id="GUID-871843B7-9AB6-4BEC-92BD-4BB1D6E81B34"><title>payloadflags</title><p><codeblock xml:space="preserve">payloadflags = &lt;payloadflags&gt;</codeblock></p><p>Specifies the payload specific flags that are defined at runtime
       
    71 by the the payload provider tools or user and payload consumer. This
       
    72 field allows the provider to give metadata to the consumer of the
       
    73 payload.</p></section>
       
    74 <section id="GUID-705897FD-9EC4-5F54-9198-A93C5080B80E"><title>patchdata</title> <codeblock id="GUID-AC20808F-B7E1-5A92-8C61-94E3E93D0AC1" xml:space="preserve">patchdata &lt;binary_name&gt; @ &lt;symbolname&gt; &lt;newvalue&gt;
       
    75 </codeblock> <p> <i>BUILDROM only</i>  </p> <p>This keyword is introduced
       
    76 since Symbian OS v9.3, and it enables you to change the value of a
       
    77 constant that is exported by a binary while building the ROM image. </p> <p>This means that the value of the constant can be changed without
       
    78 rebuilding the binary. This is useful for quickly building ROM images
       
    79 with different values for the constant, allowing you to make comparisons
       
    80 in behaviour between the ROMs. This keyword must be placed before
       
    81 or after the binary that it patches in the <filepath>OBY</filepath> file. </p> <table id="GUID-AF61DE84-7208-52B6-A586-2493E4CDA6FC">
       
    82 <tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/>
       
    83 <tbody>
       
    84 <row>
       
    85 <entry><p>&lt;binary_name&gt; </p> </entry>
       
    86 <entry><p>The name of the binary on the PC and not the name in the
       
    87 ROM image. </p> </entry>
       
    88 </row>
       
    89 <row>
       
    90 <entry><p>&lt;symbolname&gt; </p> </entry>
       
    91 <entry><p>The symbolic name of the constant exported by the binary. </p> </entry>
       
    92 </row>
       
    93 <row>
       
    94 <entry><p>&lt;newvalue&gt; </p> </entry>
       
    95 <entry><p>The replacement value. This can be specified either as an
       
    96 integer or as a hexadecimal value. </p> <p>It is assumed that the
       
    97 exported constant is an integer that is either 1 byte, 2 bytes or
       
    98 4 bytes in length, which means that the size of this replacement value
       
    99 must not exceed the capacity of the constant to represent it. </p> </entry>
       
   100 </row>
       
   101 </tbody>
       
   102 </tgroup>
       
   103 </table> <p>For example, if a DLL named <filepath>dllA.dll</filepath> is created based on the header file <filepath>dllA.h</filepath> and
       
   104 source file <filepath>dllA.cpp</filepath>: </p> <codeblock id="GUID-D711F52C-2888-5AFA-AD38-F234CFC39A20" xml:space="preserve">//dllA.h
       
   105 IMPORT_C int bar();
       
   106 ...
       
   107 </codeblock> <codeblock id="GUID-F5663D32-3ABC-5C08-8145-624459278F5C" xml:space="preserve">//dllA.cpp
       
   108 #include “dllA.h”
       
   109 EXPORT_C extern const unsigned int foo = 0x1234;
       
   110 EXPORT_C int bar ()
       
   111     {
       
   112     return foo;
       
   113     ...
       
   114     }
       
   115 </codeblock> <p>then an executable file can import this constant;
       
   116 for example: </p> <codeblock id="GUID-CB782D99-4860-59E3-8E0F-2A6078A7DF55" xml:space="preserve">#include &lt;e32cons.h&gt;
       
   117 #include &lt;e32base.h&gt;
       
   118 #include “dllA.h”
       
   119 ...
       
   120 int importValue = bar();
       
   121 ...
       
   122 </codeblock> <p>If you add the following statement to the <filepath>.oby</filepath> file to change the value of constant "foo" while
       
   123 building the ROM, then the actual value of <codeph>foo</codeph> accessed
       
   124 by the executable file is <codeph>0x100</codeph>, and not <codeph>0x1234</codeph> as specified when <filepath>DllA</filepath> was originally
       
   125 built. </p> <codeblock id="GUID-39DF91C3-AD49-5FCB-9825-3A6CE73F8B4C" xml:space="preserve">patchdata dllA @ foo 0x100</codeblock> <p> <b> Notes:</b>  </p> <ul>
       
   126 <li id="GUID-825461D9-E933-531C-AD97-398AE781105F"><p>The value of
       
   127 the constant in the source is not changed. It is only its value in
       
   128 the copy of the binary incorporated into the ROM image that is changed. </p> </li>
       
   129 <li id="GUID-0BAAF169-F04B-5E3C-B7E1-E66132034D4D"><p>Do not define
       
   130 a patchable constant (exported data) in the source file in which it
       
   131 is referred to, because the compiler may inline it. If a constant
       
   132 is inlined, it cannot be patched. Hence, the constant must be defined
       
   133 in a separate source file and must be referred to in other source
       
   134 files by using the <codeph>extern</codeph> qualifier. </p> </li>
       
   135 </ul> </section>
       
   136 <section id="GUID-19D81B5A-A13E-5468-B886-2EF65139C950"><title>patched</title> <codeblock id="GUID-3C8C1038-E677-5583-9E68-0BF6CADDB586" xml:space="preserve">patched</codeblock> <p> <i>rombuild only</i>  </p> <p>This is used when sectioning a
       
   137 ROM for language variants etc. If an executable is to be replaced,
       
   138 make it patched in the first section of the ROM and include a replacement
       
   139 in the top section of the ROM, after the <xref href="GUID-6843109A-1567-5287-9AFF-3AE5E80334AF.dita#GUID-6843109A-1567-5287-9AFF-3AE5E80334AF/GUID-D31658A3-6346-5BBE-B79C-D274113C6120">section</xref> keyword. </p> <p>This keyword appears at the point
       
   140 in the obey file where the ROM is to be split. All files before this
       
   141 line appear in the first (constant) section and files after appear
       
   142 in the second (patch/language) section. </p> </section>
       
   143 <section id="GUID-1950C3F1-BB6A-5560-955B-41D8A62FF041"><title>platsecdiagnostics</title> <codeblock id="GUID-438A1C0E-6526-5907-A1A5-77FDE415B191" xml:space="preserve">platsecdiagnostics [on | off]</codeblock> <p> <i>rombuild only</i>  </p> <p>This is a keyword that affects
       
   144 Symbian platform security when building a ROM. </p> <p>It controls
       
   145 whether or not diagnostic messages are emitted when a capability or
       
   146 other platform security policy check fails. A diagnostic message takes
       
   147 the general form: </p> <codeblock id="GUID-5D417FA2-0C87-5D56-A9A7-24D13A3DDDE2" xml:space="preserve">*PlatSec* ERROR - xxxxx</codeblock> <p>if platform security is enforced </p> <codeblock id="GUID-0FD5A8AA-FCDB-539E-ACE4-1B8FFD1659D8" xml:space="preserve">*PlatSec* WARNING - xxxxx</codeblock> <p>if platform security is <i>NOT</i> enforced. </p> <p>The string
       
   148 xxxxx represents the text of the message that describes the capability
       
   149 being violated or the security policy check that is failing. </p> <ul>
       
   150 <li id="GUID-9D53B858-A308-597B-B2D9-D9FF3A2996CC"><p>Specify <codeph>on</codeph> to <i>enable</i> diagnostic messages to be emitted. </p> </li>
       
   151 <li id="GUID-EA18D791-E5C6-5B83-8B50-BD24A1292583"><p>Specify <codeph>off</codeph> to <i>disable</i> diagnostic messages from being emitted. </p> </li>
       
   152 <li id="GUID-3FAF9887-5C75-5892-B0A6-F85D75DC2188"><p>If neither <codeph>on</codeph> nor <codeph>off</codeph> is specified, then <codeph>on</codeph> is assumed as a default. </p> </li>
       
   153 </ul> </section>
       
   154 <section id="GUID-2644E195-4339-5809-ACA0-6B15244AA4AD"><title>platsecdisabledcaps</title> <codeblock id="GUID-9377A178-7A9D-5B48-8F6F-FB832180F483" xml:space="preserve">platsecdisabledcaps [+|-]cap1 [+|- cap2] [+|- cap3] ...[+|-capn]</codeblock> <p> <i>rombuild only</i>  </p> <p>This is a keyword that affects
       
   155 Symbian platform security when building a ROM. </p> <p>It allows capabilities
       
   156 to be added to, or removed from, all executables in the ROM image. </p> <p>Specify a list of capability names prefixed either by a <codeph>+</codeph> character or a <codeph>-</codeph> character. The first
       
   157 capability name in the list does not need to prefixed by either of
       
   158 these characters, but if it is omitted a <codeph>+</codeph> character
       
   159 is assumed. </p> <p>Capabilities preceded by a <codeph>+</codeph> character
       
   160 are added to all executables, while those preceded by a <codeph>-</codeph> character are removed from all executables. </p> <p>Any of the capabilities
       
   161 listed in the left hand column in the table below can be specified;
       
   162 follow the corresponding link in the right hand column for a description
       
   163 of that capability. Note that you can also use: </p> <codeblock id="GUID-D27E91F6-4522-5A78-AA36-5F21F6893B89" xml:space="preserve">+ALL</codeblock> <p>to add all capabilities, and </p> <codeblock id="GUID-005016EE-7B7C-5B92-98AF-12176CEBEEBF" xml:space="preserve">+NONE</codeblock> <p>to remove all capabilities. </p> <p>Note, however, that the combinations <codeph>-ALL</codeph> and <codeph>-NONE</codeph> are not permitted </p> <table id="GUID-60D9A9D6-420C-593E-A67B-FA10572DBC3D">
       
   164 <tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/>
       
   165 <tbody>
       
   166 <row>
       
   167 <entry><p><table id="GUID-F0A90295-7468-5559-BDF7-68E70E10EFCE">
       
   168 <tgroup cols="1"><colspec colname="col0"/>
       
   169 
       
   170 <tbody>
       
   171 <row>
       
   172 <entry>Capability</entry>
       
   173 </row>
       
   174 </tbody>
       
   175 </tgroup>
       
   176 </table> </p> </entry>
       
   177 <entry><p><table id="GUID-E1446E24-51B8-53CB-902F-5DB0EF66323D">
       
   178 <tgroup cols="1"><colspec colname="col0"/>
       
   179 
       
   180 <tbody>
       
   181 <row>
       
   182 <entry>TCapability Enum value</entry>
       
   183 </row>
       
   184 </tbody>
       
   185 </tgroup>
       
   186 </table> </p> </entry>
       
   187 </row>
       
   188 <row>
       
   189 <entry><p>TCB </p> </entry>
       
   190 <entry><p> <xref href="GUID-0C19208D-732F-3B2B-9B0F-81CB1CB56DFC.dita"><apiname>ECapabilityTCB</apiname></xref>  </p> </entry>
       
   191 </row>
       
   192 <row>
       
   193 <entry><p>CommDD </p> </entry>
       
   194 <entry><p> <xref href="GUID-2714B609-120A-31C1-9415-235A2FEB9D9A.dita"><apiname>ECapabilityCommDD</apiname></xref>  </p> </entry>
       
   195 </row>
       
   196 <row>
       
   197 <entry><p>PowerMgmt </p> </entry>
       
   198 <entry><p> <xref href="GUID-76F4383B-4EA5-391A-A271-A8F65ED77EC0.dita"><apiname>ECapabilityPowerMgmt</apiname></xref>  </p> </entry>
       
   199 </row>
       
   200 <row>
       
   201 <entry><p>MultimediaDD </p> </entry>
       
   202 <entry><p> <xref href="GUID-48AA1686-C619-3C36-B4B5-6C5DE1F50B0A.dita"><apiname>ECapabilityMultimediaDD</apiname></xref>  </p> </entry>
       
   203 </row>
       
   204 <row>
       
   205 <entry><p>ReadDeviceData </p> </entry>
       
   206 <entry><p> <xref href="GUID-1AC4E327-14CE-382D-AA1A-1A7EDBA1863E.dita"><apiname>ECapabilityReadDeviceData</apiname></xref>  </p> </entry>
       
   207 </row>
       
   208 <row>
       
   209 <entry><p>WriteDeviceData </p> </entry>
       
   210 <entry><p> <xref href="GUID-C607209F-6FC5-31DE-8034-E5B799B857A8.dita"><apiname>ECapabilityWriteDeviceData</apiname></xref>  </p> </entry>
       
   211 </row>
       
   212 <row>
       
   213 <entry><p>DRM </p> </entry>
       
   214 <entry><p> <xref href="GUID-C0EF5A59-F716-313A-911F-2D3D773DF597.dita"><apiname>ECapabilityDRM</apiname></xref>  </p> </entry>
       
   215 </row>
       
   216 <row>
       
   217 <entry><p>TrustedUI </p> </entry>
       
   218 <entry><p> <xref href="GUID-AFB7AB40-B829-37B8-AAB1-7A6FAED9671B.dita"><apiname>ECapabilityTrustedUI</apiname></xref>  </p> </entry>
       
   219 </row>
       
   220 <row>
       
   221 <entry><p>ProtServ </p> </entry>
       
   222 <entry><p> <xref href="GUID-200CA018-2CB3-3E4A-A505-085FAD2E3E8B.dita"><apiname>ECapabilityProtServ</apiname></xref>  </p> </entry>
       
   223 </row>
       
   224 <row>
       
   225 <entry><p>DiskAdmin </p> </entry>
       
   226 <entry><p> <xref href="GUID-99D8A4E8-BC4F-39FF-A3DF-832CF0411629.dita"><apiname>ECapabilityDiskAdmin</apiname></xref>  </p> </entry>
       
   227 </row>
       
   228 <row>
       
   229 <entry><p>NetworkControl </p> </entry>
       
   230 <entry><p> <xref href="GUID-4AFB561B-34D7-3570-A4C9-24B4952C787A.dita"><apiname>ECapabilityNetworkControl</apiname></xref>  </p> </entry>
       
   231 </row>
       
   232 <row>
       
   233 <entry><p>AllFiles </p> </entry>
       
   234 <entry><p> <xref href="GUID-89631CF3-4AEE-3C2F-8AAE-5D9C3EB3B373.dita"><apiname>ECapabilityAllFiles</apiname></xref>  </p> </entry>
       
   235 </row>
       
   236 <row>
       
   237 <entry><p>SwEvent </p> </entry>
       
   238 <entry><p> <xref href="GUID-369B6584-AB7F-3AA2-B912-E912D2BCBE98.dita"><apiname>ECapabilitySwEvent</apiname></xref>  </p> </entry>
       
   239 </row>
       
   240 <row>
       
   241 <entry><p>NetworkServices </p> </entry>
       
   242 <entry><p> <xref href="GUID-07A09CBA-CB4E-3CBE-9FA3-930C455F3B0C.dita"><apiname>ECapabilityNetworkServices</apiname></xref>  </p> </entry>
       
   243 </row>
       
   244 <row>
       
   245 <entry><p>LocalServices </p> </entry>
       
   246 <entry><p> <xref href="GUID-7D0E447B-EC32-355B-8BBF-F074A1B10D8A.dita"><apiname>ECapabilityLocalServices</apiname></xref>  </p> </entry>
       
   247 </row>
       
   248 <row>
       
   249 <entry><p>ReadUserData </p> </entry>
       
   250 <entry><p> <xref href="GUID-4897D21D-5ACF-30A5-A38C-371A3983814D.dita"><apiname>ECapabilityReadUserData</apiname></xref>  </p> </entry>
       
   251 </row>
       
   252 <row>
       
   253 <entry><p>WriteUserData </p> </entry>
       
   254 <entry><p> <xref href="GUID-8908E5F7-AC6A-333B-8F65-6DDC46798F48.dita"><apiname>ECapabilityWriteUserData</apiname></xref>  </p> </entry>
       
   255 </row>
       
   256 <row>
       
   257 <entry><p>Location </p> </entry>
       
   258 <entry><p> <xref href="GUID-1B530864-C77B-3CDE-B761-83C2EED44DB8.dita"><apiname>ECapabilityLocation</apiname></xref>  </p> </entry>
       
   259 </row>
       
   260 </tbody>
       
   261 </tgroup>
       
   262 </table> <p>For example: </p> <codeblock id="GUID-9EB9582E-7FD8-525D-872A-50B6E6D0AAE0" xml:space="preserve">PlatSecDisabledCaps LocalServices+ReadDeviceData+ReadUserData</codeblock> </section>
       
   263 <section id="GUID-275FDBE0-D0AA-5976-9886-B0D56C075C7F"><title>platsecenforcement</title> <codeblock id="GUID-CEAAB920-F6C4-5079-BD58-88ECC541D8D5" xml:space="preserve">platsecenforcement [on | off]</codeblock> <p> <i>rombuild only</i>  </p> <p>This is a keyword that affects
       
   264 Symbian platform security when building a ROM. </p> <p>It controls
       
   265 whether or not platform security is enforced. </p> <ul>
       
   266 <li id="GUID-E33ED82C-6870-59CE-8240-B60E4C5C33E9"><p>Specify <codeph>on</codeph> to <i>enable</i> platform security enforcement. If enforcement
       
   267 is enabled, and a capability or other platform security policy check
       
   268 fails, then the appropriate action for a failed platform security
       
   269 check occurs. </p> </li>
       
   270 <li id="GUID-35B93E8F-A341-5246-A400-FD501FE2F4C8"><p>Specify <codeph>off</codeph> to <i>disable</i> platform security enforcement. If
       
   271 enforcement is disabled, and a capability or other platform security
       
   272 policy check fails, then the system continues as though the original
       
   273 platform security check had in fact passed. </p> </li>
       
   274 <li id="GUID-DAEBBB42-DBF7-5821-B4E9-2FAC23057FEF"><p>If neither <codeph>on</codeph> nor <codeph>off</codeph> is specified, then <codeph>on</codeph> is assumed as a default. </p> </li>
       
   275 </ul> </section>
       
   276 <section id="GUID-83F419EE-9ECD-5B19-9B9E-11F2066E5C8D"><title>platsecenforcesysbin</title> <codeblock id="GUID-8913D68B-F934-5D8B-9095-1493770E060B" xml:space="preserve">platsecenforcesysbin [on | off]</codeblock> <p> <i>rombuild only</i>  </p> <p>This is a keyword that affects
       
   277 Symbian platform security when building a ROM. </p> <p>It controls
       
   278 whether or not to force the location of binary executables into the <filepath>\Sys\Bin\</filepath> directory. </p> <ul>
       
   279 <li id="GUID-C9712785-EC25-598A-AEAD-69197B032D7B"><p>Specifying <codeph>on</codeph> has the following effects: </p> <ul>
       
   280 <li id="GUID-DD14B43D-B1F1-5C39-9B05-176276664D73"><p> <codeph>rombuild</codeph> places all executables into <filepath>Z:\Sys\Bin\</filepath>, and
       
   281 overrides any file path specified in any of the <filepath>.IBY</filepath> files. </p> </li>
       
   282 <li id="GUID-3DF8A9CE-46E5-5125-B562-62F747346B01"><p>the loader only
       
   283 looks for files in the <filepath>\Sys\Bin\</filepath> directory and
       
   284 only loads files from the <filepath>\Sys\Bin\</filepath> directory.
       
   285 If a different path is specified this path is ignored and the <filepath>\Sys\Bin\</filepath> directory is searched. </p> </li>
       
   286 </ul> </li>
       
   287 <li id="GUID-4BEFDE6C-4E52-570A-9804-76A864AB501E"><p>Specifying <codeph>off</codeph> causes <codeph>rombuild</codeph> to place files according
       
   288 to the file path specified in the <filepath>.IBY</filepath> files
       
   289 and permits the loader to load files from any specified path. </p> </li>
       
   290 <li id="GUID-1860E5D0-B8C3-5FCB-A023-87DF6935B958"><p>If neither <codeph>on</codeph> nor <codeph>off</codeph> is specified, then <codeph>on</codeph> is assumed as a default. </p> </li>
       
   291 </ul> </section>
       
   292 <section id="GUID-B5EE7071-532B-591B-904B-93108A42D939"><title>platsecprocessisolation</title> <codeblock id="GUID-835546BD-69EB-5CBC-AB8C-B6CAC38A5193" xml:space="preserve">platsecprocessisolation [on | off]</codeblock> <p> <i>rombuild only</i>  </p> <p>This is a keyword that affects
       
   293 Symbian platform security when building a ROM. </p> <p>It controls
       
   294 whether or not insecure APIs inherited from EKA1 (Versions 8.1a, 8.0a,
       
   295 7.0s, and earlier) are to be disabled. These are APIs whose use is
       
   296 intended to be restricted. The kernel provides run-time checks for
       
   297 their correct usage. </p> <p>See the <xref href="GUID-DB441DFF-0075-5122-A2EB-A6EF76375D71.dita">list of APIs affected
       
   298 by the platsecprocessisolation keyword</xref>. </p> <ul>
       
   299 <li id="GUID-78A05AA6-49AC-54CF-AB53-6FEACBC2AB86"><p>Specify <codeph>on</codeph> to <i>disable</i> insecure APIs. Incorrect use of this
       
   300 set of restricted APIs results in diagnostic messages, if <xref href="GUID-43852F38-4841-5E6F-927B-A38ED4424F0C.dita#GUID-43852F38-4841-5E6F-927B-A38ED4424F0C/GUID-1950C3F1-BB6A-5560-955B-41D8A62FF041">platsecdiagnostics</xref> is <codeph>on</codeph>, and raises panics
       
   301 or causes errors if <xref href="GUID-43852F38-4841-5E6F-927B-A38ED4424F0C.dita#GUID-43852F38-4841-5E6F-927B-A38ED4424F0C/GUID-275FDBE0-D0AA-5976-9886-B0D56C075C7F">platsecenforcement</xref> is <codeph>on</codeph>. </p> </li>
       
   302 <li id="GUID-F1160335-4D72-5FEC-B1EF-02724A4F70C3"><p>Specify <codeph>off</codeph> to <i>allow</i> insecure APIs. </p> </li>
       
   303 <li id="GUID-9B48AE55-EBFA-587D-AB37-0C609D1066AC"><p>If neither <codeph>on</codeph> nor <codeph>off</codeph> is specified then <codeph>on</codeph> is assumed as a default. </p> </li>
       
   304 </ul> </section>
       
   305 <section id="PREFERREDPREFERREDROMBUILDONLYTHIS-0399C898"><title>preferred</title><codeblock xml:space="preserve">preferred</codeblock><p><i>rombuild only</i></p><p>This
       
   306 keyword specifies that the major version of the executable binary
       
   307 must be preferred over its minor versions.  The minor version specifies
       
   308 the revision of the executable. The major version enables you to identify
       
   309 whether two versions of an executable are compatible.  The two versions
       
   310 of an executable can be compatible only if they have same major version.</p><p>The executable's header stores minor and major versions of the
       
   311 executable. </p></section>
       
   312 <section id="GUID-D14ECB32-00DD-574B-9301-2EF11AE55BA5"><title>primary[[HWVD]]</title> <codeblock id="GUID-F15C440F-EBAB-55EE-B785-D345B5131A45" xml:space="preserve">primary[[HWVD]] = &lt;source-file&gt; &lt;destination-image-file&gt; [File-attribute-list] [Override-Attribute-list]</codeblock> <p> <i>rombuild only</i>  </p> <p>A standard executable file that
       
   313 is loaded directly, bypassing the file server. The Boot program loads
       
   314 and gives control to the primary; this is the Kernel. </p> <p>As with
       
   315 all standard executable files, this is loaded, relocated and stripped
       
   316 of its relocation information. </p> <p>Note that the <codeph>HWVD</codeph> is optional but, if specified, must be enclosed within square brackets. </p> </section>
       
   317 <section id="GUID-02DE8552-5FE0-52D4-8A82-A0B679E934AA"><title>priority</title> <codeblock id="GUID-AD178D79-3C2B-5E64-BFF3-9C8BB0B6A0A2" xml:space="preserve">priority = &lt;hex-number&gt; | &lt;priority-keyword&gt;</codeblock> <p> <i>rombuild only</i>  </p> <p>Sets the priority of the process.
       
   318 The priority can be a hexadecimal number, or one of the keywords listed
       
   319 below. The keywords correspond to the associated priority value. </p> <table id="GUID-CA739D33-23F5-536F-B65D-DE43B699BEC1">
       
   320 <tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/>
       
   321 <tbody>
       
   322 <row>
       
   323 <entry><p>Keyword </p> </entry>
       
   324 <entry><p>Process priority </p> </entry>
       
   325 </row>
       
   326 <row>
       
   327 <entry><p>low </p> </entry>
       
   328 <entry><p>EPriorityLow </p> </entry>
       
   329 </row>
       
   330 <row>
       
   331 <entry><p>background </p> </entry>
       
   332 <entry><p>EPriorityBackground </p> </entry>
       
   333 </row>
       
   334 <row>
       
   335 <entry><p>foreground </p> </entry>
       
   336 <entry><p>EPriorityForeground </p> </entry>
       
   337 </row>
       
   338 <row>
       
   339 <entry><p>high </p> </entry>
       
   340 <entry><p>EPriorityHigh </p> </entry>
       
   341 </row>
       
   342 <row>
       
   343 <entry><p>windowserver </p> </entry>
       
   344 <entry><p>EPriorityWindowServer </p> </entry>
       
   345 </row>
       
   346 <row>
       
   347 <entry><p>fileserver </p> </entry>
       
   348 <entry><p>EPriorityFileServer </p> </entry>
       
   349 </row>
       
   350 <row>
       
   351 <entry><p>realtimeserver </p> </entry>
       
   352 <entry><p>EPriorityRealTimeServer </p> </entry>
       
   353 </row>
       
   354 <row>
       
   355 <entry><p>supervisor </p> </entry>
       
   356 <entry><p>EPrioritySupervisor </p> </entry>
       
   357 </row>
       
   358 </tbody>
       
   359 </tgroup>
       
   360 </table> </section>
       
   361 <section id="GUID-39CDB129-CE41-4ACD-952E-72D9DDA61556"><title>process</title><codeblock xml:space="preserve">process = &lt;file path of process being attached&gt;</codeblock><p><i>rombuild only</i></p><p>This keyword specifies the process
       
   362 to which a DLL is attached.</p></section>
       
   363 <section id="GUID-E816D875-0CE6-5C0A-BB1A-93F9A3E2DE90"><title>reloc</title> <codeblock id="GUID-4533709F-6D95-59C0-90F2-DFE95BC6C7A1" xml:space="preserve">reloc = &lt;hex-address&gt;</codeblock> <p> <i>rombuild only</i>  </p> <p>Overrides the default stack size
       
   364 for the executable. </p> </section>
       
   365 <section id="GUID-9724A786-4431-595F-8945-C29914D63A40"><title>rem</title> <codeblock id="GUID-9D98CF44-6DC6-5A74-8C71-5784C0CDEFA7" xml:space="preserve">rem &lt;comment&gt;</codeblock> <p> <i>rombuild and rofsbuild</i>  </p> <p>Defines a comment line.
       
   366 Text that appears after the rem keyword is interpreted as a comment. </p> </section>
       
   367 <section id="GUID-4584DD65-6861-5B2A-A4FB-B7F366DCE13A"><title>rename</title> <codeblock id="GUID-6A57E3F9-48D8-521F-A5AC-0CB6ADFB2F5F" xml:space="preserve">rename[[HWVD]]= &lt;existing-file&gt; &lt;destination-file&gt; [ full-attribute-list ]</codeblock> <p> <i>rombuild and rofsbuild</i>  </p> <p>Adding a file and then
       
   368 renaming it is equivalent to adding it directly at the rename destination.
       
   369 The existing and destination directories do not have to be the same. </p> </section>
       
   370 <section id="GUID-04CE5B92-FF2B-53BB-BC21-C66731B94CC1"><title>RIGHT_NOW</title> <codeblock id="GUID-292B46AF-28A6-5DC0-9F11-2A2B1747701C" xml:space="preserve">RIGHT_NOW</codeblock> <p> <i>BUILDROM only</i>  </p> <p>A pre-defined substitution. This
       
   371 is replaced with the exact time in the format <codeph>dd/mm/yy hh:mm:ss</codeph>  </p> <p>Note that there is no UNDEFINE facility, and substitutions
       
   372 are applied in an unspecified order. </p> </section>
       
   373 <section id="GUID-660AC1A4-948B-53AA-96F2-BFE48E478474"><title>rofsname</title> <codeblock id="GUID-B1A58F72-83B7-5BB0-9503-014849231AD0" xml:space="preserve">rofsname = &lt;filename&gt;</codeblock> <p> <i>rofsbuild only</i>  </p> <p>Defines the name of the core
       
   374 image. </p> </section>
       
   375 <section id="GUID-208C0FE4-DFC0-55C3-B6D7-F18C74F1A699"><title>rofssize</title> <codeblock id="GUID-46F9AD5E-9B59-5B21-A621-00116062A867" xml:space="preserve">rofssize = &lt;size in bytes&gt;</codeblock> <p> <i>rofsbuild only</i>  </p> <p>Specifies the maximum size of
       
   376 the core image, or the maximum size of the extension. </p> </section>
       
   377 <section id="GUID-C956A0A9-F8F0-5144-896C-1DBF32E76915"><title>romalign</title> <codeblock id="GUID-211623DD-B905-5CF2-98DD-E07FFA977C5B" xml:space="preserve">romalign = &lt;hex-alignment&gt;</codeblock> <p> <i>rombuild only</i>  </p> <p>The address alignment boundary
       
   378 for files in the ROM. </p> <p>This value should be greater than 4
       
   379 and a multiple of 4. The recommended value is 0x10. If no value is
       
   380 specified, <codeph>rombuild</codeph> defaults to using a value of
       
   381 0x1000. If the value specified is not a multiple of 4, it is rounded
       
   382 off. </p> </section>
       
   383 <section id="GUID-9841CB4D-D71F-53E8-AF0E-22B393ADF2CD"><title>ROMBUILD_OPTION</title> <codeblock id="GUID-CC19021A-0462-52FC-8461-07158AA23B28" xml:space="preserve">ROMBUILD_OPTION &lt;command-line-option&gt;</codeblock> <p> <i>BUILDROM only</i>  </p> <p>Adds additional command line parameters
       
   384 to the eventual invocation of <xref href="GUID-003D2C5B-09DC-5BD1-AF45-A0FCB56F567B.dita">rombuild</xref>.
       
   385 It is primarily used to specify the <codeph>-no-header</codeph> option
       
   386 for platforms which don't want the 256-byte REPRO header. The <codeph>ROMBUILD_OPTION</codeph> keyword can be used multiple times if desired. </p> </section>
       
   387 <section id="GUID-D9A6B254-D76E-51C2-A943-FA360CDB3F0E"><title>romchecksum</title> <codeblock id="GUID-6FCDB34E-93C4-56A0-98D8-AF1BBE007B13" xml:space="preserve">romchecksum = &lt;32 bit hex-number&gt;</codeblock> <p> <i>rombuild and rofsbuild</i>  </p> <p>The checksum in the final
       
   388 ROM image is made using the following algorithm: </p> <p>checksum
       
   389 = romchecksum - sum of 32bit words in ROM image. </p> </section>
       
   390 <section id="GUID-C88976BA-6381-5DEB-830F-5ED63CB929FA"><title>ROM_IMAGE</title> <codeblock id="GUID-49013022-96F0-5A17-BA76-C582AAB7B57F" xml:space="preserve">ROM_IMAGE &lt;id&gt; &lt;name&gt; [size=&lt;rom max size&gt;] [xip | non-xip] [compress | no-compress] [extension]</codeblock> <p> <i>BUILDROM only</i>  </p> <p>Defines a ROM image. </p> <p>This
       
   391 is a ROM configuration feature; up to 8 ROM images can be defined
       
   392 for a device. </p> <table id="GUID-393CADB8-1B1B-58EA-B368-E05B6F3A37D3">
       
   393 <tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/>
       
   394 <tbody>
       
   395 <row>
       
   396 <entry><p> <codeph>id</codeph>  </p> </entry>
       
   397 <entry><p>A value in the range 0..7 to identify the ROM image. </p> </entry>
       
   398 </row>
       
   399 <row>
       
   400 <entry><p> <codeph>name</codeph>  </p> </entry>
       
   401 <entry><p>A name suitable as a suffix for the ROM image, IBY and logs. </p> </entry>
       
   402 </row>
       
   403 <row>
       
   404 <entry><p> <codeph>non-xip</codeph>  </p> </entry>
       
   405 <entry><p>Specifies a non-XIP ROM. If not specified, a XIP ROM is
       
   406 the default </p> </entry>
       
   407 </row>
       
   408 <row>
       
   409 <entry><p> <codeph>size = &lt;rom-max-size&gt;</codeph>  </p> </entry>
       
   410 <entry><p>Defines the maximum size of the ROM. Not required for XIP
       
   411 ROMs. </p> </entry>
       
   412 </row>
       
   413 <row>
       
   414 <entry><p> <codeph>compress</codeph>  </p> </entry>
       
   415 <entry><p>Compresses an XIP ROM. If not specified, no compression
       
   416 is the default behaviour. </p> </entry>
       
   417 </row>
       
   418 <row>
       
   419 <entry><p> <codeph>extension</codeph>  </p> </entry>
       
   420 <entry><p>Defines this image as an extension to the previous image. </p> </entry>
       
   421 </row>
       
   422 </tbody>
       
   423 </tgroup>
       
   424 </table> <p>To mark a file for inclusion in a ROM it is prefixed with
       
   425 the keyword ROM_IMAGE. For example: </p> <codeblock id="GUID-52FA6075-B4D4-53D2-AECB-D5D72A2DB839" xml:space="preserve">ROM_IMAGE[2] data=\private\&lt;process SID&gt;\Apps\Calc\calc.INSTCOL_MBM \private\&lt;process SID&gt;\Apps\Calc\Calc.mbm</codeblock> <p>A Block of files can be included using '{' '}'
       
   426 braces, for example: </p> <codeblock id="GUID-E95D224C-EDA2-5BB4-A293-5E07F9142C74" xml:space="preserve">ROM_IMAGE[2]
       
   427     {
       
   428     #include "calc.iby"
       
   429     #include "word.iby"
       
   430     }
       
   431       </codeblock> <p>File blocks can be nested, for example: </p> <codeblock id="GUID-7C33BDB8-A0B4-5A22-BC03-0FB2982CB249" xml:space="preserve">ROM_IMAGE[2]
       
   432     {
       
   433     #include "calc.iby"
       
   434     ROM_IMAGE[0]
       
   435         {
       
   436         #include "word.iby"
       
   437         }
       
   438     #include "video.iby"
       
   439     }
       
   440       </codeblock> </section>
       
   441 <section id="GUID-6D4D4AF5-92E2-5E87-97D0-B5233E700287"><title>romlinearbase</title> <codeblock id="GUID-C9EA7FE3-CF87-52E4-9230-944D86463D13" xml:space="preserve">romlinearbase = &lt;hex-address&gt;</codeblock> <p> <i>rombuild only</i>  </p> <p>The virtual address of the start
       
   442 of ROM, in hex. </p> <p>This is the address at which the kernel expects
       
   443 to find the start of the ROM. The recommended value depends on the
       
   444 memory model: </p> <ul>
       
   445 <li id="GUID-4C4DAAF0-9FC6-5E2C-BF7C-832C453F4765"><p>For the Multiple
       
   446 Memory Model, typically used on ARMV6 based hardware platforms, the
       
   447 recommended value is 0x80000000. </p> </li>
       
   448 <li id="GUID-C9BADF29-5772-5C4C-8445-F78DBB3DA013"><p>For the Moving
       
   449 Memory Model, typically used on ARMV5 based hardware platforms, the
       
   450 recommended value is 0xF8000000. </p> </li>
       
   451 </ul> </section>
       
   452 <section id="GUID-29BEF45C-2361-5245-9184-0261B99B6FB1"><title>romname</title> <codeblock id="GUID-E6CCF8AD-B22B-5F89-852B-491B331A8ECA" xml:space="preserve">romname = &lt;rom-file-name&gt;</codeblock> <p> <i>rombuild only</i>  </p> <p>This is the name of the output
       
   453 file. It contains the ROM image that <codeph>rombuild</codeph> creates. </p> </section>
       
   454 <section id="GUID-2F1CEC9A-CC82-5029-9EC2-A03A491FEC09"><title>romnameeven</title> <codeblock id="GUID-F1C48F8F-A8E9-5861-A49F-E49C509D5339" xml:space="preserve">romnameeven = &lt;rom-file-name-even&gt;
       
   455 </codeblock> <p> <i>rombuild only</i>  </p> <p> <codeph>rombuild</codeph> can write two separate ROM images, one containing the odd bytes
       
   456 of the image and the other the even. This is done if this keyword
       
   457 and the <xref href="GUID-43852F38-4841-5E6F-927B-A38ED4424F0C.dita#GUID-43852F38-4841-5E6F-927B-A38ED4424F0C/GUID-FB2E9BFF-B5B3-50D8-AFAD-F120D2007173">romnameodd</xref> keyword are used to specify the output filenames
       
   458 for the two half-images. A filename of "*" can be specified, which
       
   459 means use the file name specified on the <xref href="GUID-43852F38-4841-5E6F-927B-A38ED4424F0C.dita#GUID-43852F38-4841-5E6F-927B-A38ED4424F0C/GUID-29BEF45C-2361-5245-9184-0261B99B6FB1">romname</xref> keyword and append <filepath>.even</filepath>. </p> </section>
       
   460 <section id="GUID-FB2E9BFF-B5B3-50D8-AFAD-F120D2007173"><title>romnameodd</title> <codeblock id="GUID-5D110E11-FFEC-5389-A0C4-FDCEB96BC190" xml:space="preserve">romnameodd = &lt;rom-file-name-odd&gt;</codeblock> <p> <i>rombuild only</i>  </p> <p> <codeph>rombuild</codeph> can
       
   461 write two separate ROM images, one containing the odd bytes of the
       
   462 image and the other the even. This is done if this keyword and the <xref href="GUID-43852F38-4841-5E6F-927B-A38ED4424F0C.dita#GUID-43852F38-4841-5E6F-927B-A38ED4424F0C/GUID-2F1CEC9A-CC82-5029-9EC2-A03A491FEC09">romnameeven</xref> keyword are used to specify the output filenames
       
   463 for the two half-images. A filename of "*" can be specified, which
       
   464 means use the file name specified on the <xref href="GUID-43852F38-4841-5E6F-927B-A38ED4424F0C.dita#GUID-43852F38-4841-5E6F-927B-A38ED4424F0C/GUID-29BEF45C-2361-5245-9184-0261B99B6FB1">romname</xref> keyword and append <filepath>.odd</filepath>. </p> </section>
       
   465 <section id="GUID-4F40AAAE-A6CE-5492-99E3-95B0D74F3229"><title>romsize</title> <codeblock id="GUID-639E3B10-FBFC-5172-8C40-FA243B174B6E" xml:space="preserve">romsize = &lt;hex-size&gt;</codeblock><p> <i>rombuild and rofsbuild</i> </p><p>The size of the entire ROM,
       
   466 in hex, for example, <codeph>0x400000</codeph> for a 4MB ROM. </p> </section>
       
   467 </conbody></concept>