|
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 = <payloaduid></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 = <payloadflags></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 <binary_name> @ <symbolname> <newvalue> |
|
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><binary_name> </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><symbolname> </p> </entry> |
|
91 <entry><p>The symbolic name of the constant exported by the binary. </p> </entry> |
|
92 </row> |
|
93 <row> |
|
94 <entry><p><newvalue> </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 <e32cons.h> |
|
117 #include <e32base.h> |
|
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]] = <source-file> <destination-image-file> [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 = <hex-number> | <priority-keyword></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 = <file path of process being attached></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 = <hex-address></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 <comment></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]]= <existing-file> <destination-file> [ 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 = <filename></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 = <size in bytes></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 = <hex-alignment></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 <command-line-option></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 = <32 bit hex-number></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 <id> <name> [size=<rom max size>] [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 = <rom-max-size></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\<process SID>\Apps\Calc\calc.INSTCOL_MBM \private\<process SID>\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 = <hex-address></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 = <rom-file-name></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 = <rom-file-name-even> |
|
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 = <rom-file-name-odd></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 = <hex-size></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> |