|
1 /* |
|
2 * Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies). |
|
3 * All rights reserved. |
|
4 * This component and the accompanying materials are made available |
|
5 * under the terms of "Eclipse Public License v1.0" |
|
6 * which accompanies this distribution, and is available |
|
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
|
8 * |
|
9 * Initial Contributors: |
|
10 * Nokia Corporation - initial contribution. |
|
11 * |
|
12 * Contributors: |
|
13 * |
|
14 * Description: Predefined include paths to be used in the mmp-files for the |
|
15 * components in the layered model. There is one definition for |
|
16 * each layer. The mmp-file should use the statement that is |
|
17 * intended for the same layer as where the mmp-file resides. |
|
18 * |
|
19 * There is also macros to be used in the bld.inf-files to |
|
20 * export of Public and Platform headers into |
|
21 * correct locations. |
|
22 * |
|
23 * Usage examples: |
|
24 * --------------------------------------------- |
|
25 * How to include this file in bld.inf and mmp-files. |
|
26 * Reasoning: The build system is such that at the time the |
|
27 * bld.inf and mmp-files are "compiled" the available |
|
28 * include paths are limited. Only the /epoc32/include |
|
29 * can be guaranteed. Thus to get this file available |
|
30 * you need to make include relative to the mentioned |
|
31 * directory. |
|
32 * --------------------------------------------- |
|
33 * |
|
34 * #include <platform_paths.hrh> |
|
35 * |
|
36 * ************************************************************* |
|
37 * * MMP file related macro usages to add the system include paths |
|
38 * * |
|
39 * * The include paths has to be related to the layer in which your SW |
|
40 * * resides. Thus as an example: a component residing in middleware |
|
41 * * layer should use the MW specific macro. |
|
42 * * Keep this as a separate line in the mmp-files. If you need to |
|
43 * * add your own SYSTEMINCLUDE paths, please defined them as |
|
44 * * separate statement. |
|
45 * ************************************************************* |
|
46 * APP_LAYER_SYSTEMINCLUDE |
|
47 * MW_LAYER_SYSTEMINCLUDE |
|
48 * OS_LAYER_SYSTEMINCLUDE |
|
49 ** |
|
50 * ************************************************************* |
|
51 * * Macros related to using various parts of stdapis |
|
52 * ************************************************************* |
|
53 * To use STLLIB you need to have this in your mmp-file |
|
54 * STLLIB_USAGE_DEFINITIONS |
|
55 * |
|
56 * Depending on what module you are using from stdapis you need to have |
|
57 * one or more of the following macros in your mmp-file (every one in |
|
58 * separate line !) |
|
59 * |
|
60 * OS_LAYER_LIBC_SYSTEMINCLUDE |
|
61 * OS_LAYER_GLIB_SYSTEMINCLUDE |
|
62 * OS_LAYER_SSL_SYSTEMINCLUDE |
|
63 * OS_LAYER_STDCPP_SYSTEMINCLUDE |
|
64 * OS_LAYER_BOOST_SYSTEMINCLUDE |
|
65 * OS_LAYER_DBUS_SYSTEMINCLUDE |
|
66 * OS_LAYER_LIBUTILITY_SYSTEMINCLUDE |
|
67 * |
|
68 * ************************************************************* |
|
69 * * Macros related to exporting Public and Platform APIs into |
|
70 * * correct place in the new system. |
|
71 * * |
|
72 * * The macro that you should use depends on 2 things: |
|
73 * * - in which layer your package, which exports the APIs resides |
|
74 * * - what is the visibility of the API (public or platform) |
|
75 * ************************************************************* |
|
76 * // the exporting of public APIs should use one of below macros |
|
77 * // depending on which layer the API belogs to |
|
78 * APP_LAYER_PUBLIC_EXPORT_PATH |
|
79 * MW_LAYER_PUBLIC_EXPORT_PATH |
|
80 * OS_LAYER_PUBLIC_EXPORT_PATH |
|
81 * |
|
82 * // the exporting of platform APIs should use one of below macros |
|
83 * // depending on which layer the API belogs to |
|
84 * APP_LAYER_PLATFORM_EXPORT_PATH |
|
85 * MW_LAYER_PLATFORM_EXPORT_PATH |
|
86 * OS_LAYER_PLATFORM_EXPORT_PATH |
|
87 * |
|
88 * The hierarchy how APIs should reside in foundation has been specified |
|
89 * in developer documentation. See further details from documentation. |
|
90 * Below is example case relying on the structure |
|
91 * my_own_api/group/bld.inf |
|
92 * my_own_api/inc/header1.h |
|
93 * my_own_api/inc/subdir/header2.h |
|
94 * |
|
95 * Assuming that the API is in middleware layer and a public API. |
|
96 * Then the bld.inf should have the following |
|
97 * ../inc/header1.h APP_LAYER_PUBLIC_EXPORT_PATH(header1.h) |
|
98 * ../inc/subdir/header2.h APP_LAYER_PUBLIC_EXPORT_PATH(subdir/header2.h) |
|
99 * |
|
100 * In the above case the locations are as follow (with current MACRO settings): |
|
101 * header1.h in /epoc32/include/app |
|
102 * header2.h in /epoc32/include/app/subdir |
|
103 * |
|
104 * |
|
105 * ************************************************************* |
|
106 * * Macros related to IBY file exporting |
|
107 * ************************************************************* |
|
108 * |
|
109 * Component bld.inf files need to include platform_paths.hrh, see |
|
110 * beginning of this file on how to do this correctly. Component bld.inf |
|
111 * files need to use these macros in PRJ_EXPORTS to get their IBY files |
|
112 * to ROM image. |
|
113 * |
|
114 * --------------------------------------------- |
|
115 * Usage for Core image (ROM+ROFS1): |
|
116 * --------------------------------------------- |
|
117 * // Layer specific specific macros. Use the macro, which is specified |
|
118 * // for the layer, in which your component resides |
|
119 * <somepath>/<file1.iby> CORE_APP_LAYER_IBY_EXPORT_PATH(<file1.iby>) |
|
120 * <somepath>/<file2.iby> CORE_MW_LAYER_IBY_EXPORT_PATH(<file2.iby>) |
|
121 * <somepath>/<file3.iby> CORE_OS_LAYER_IBY_EXPORT_PATH(<file3.iby>) |
|
122 * |
|
123 * //stub iby files |
|
124 * <somepath>/<file4.iby> CORE_IBY_EXPORT_PATH(stubs,<file4.iby>) |
|
125 * //tool iby files |
|
126 * <somepath>/<file5.iby> CORE_IBY_EXPORT_PATH(tools,<file5.iby>) |
|
127 * |
|
128 * --------------------------------------------- |
|
129 * Usage for Variant image, Language part (ROFS2): |
|
130 * --------------------------------------------- |
|
131 * // Layer specific specific macros. Use the macro, which is specified |
|
132 * // for the layer, in which your component resides |
|
133 * <somepath>/<file1.iby> LANGUAGE_APP_LAYER_IBY_EXPORT_PATH(<file1.iby>) |
|
134 * <somepath>/<file2.iby> LANGUAGE_MW_LAYER_IBY_EXPORT_PATH(<file2.iby>) |
|
135 * <somepath>/<file3.iby> LANGUAGE_OS_LAYER_IBY_EXPORT_PATH(<file3.iby>) |
|
136 * |
|
137 * --------------------------------------------- |
|
138 * Usage for Variant image, Language part (ROFS2): |
|
139 * --------------------------------------------- |
|
140 * // Layer specific specific macros. Use the macro, which is specified |
|
141 * // for the layer, in which your component resides |
|
142 * <somepath>/<file1.iby> CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(<file1.iby>) |
|
143 * <somepath>/<file2.iby> CUSTOMER_MW_LAYER_IBY_EXPORT_PATH(<file2.iby>) |
|
144 * <somepath>/<file3.iby> CUSTOMER_OS_LAYER_IBY_EXPORT_PATH(<file3.iby>) |
|
145 * |
|
146 * --------------------------------------------- |
|
147 * Usage for Customer Variant image, (ROFS3): |
|
148 * --------------------------------------------- |
|
149 * // Layer specific specific macros. Use the macro, which is specified |
|
150 * // for the layer, in which your component resides |
|
151 * <somepath>/<f1.iby> CUSTOMER_VARIANT_APP_LAYER_IBY_EXPORT_PATH(<f1.iby>) |
|
152 * <somepath>/<f2.iby> CUSTOMER_VARIANT_MW_LAYER_IBY_EXPORT_PATH(<f2.iby>) |
|
153 * <somepath>/<f3.iby> CUSTOMER_VARIANT_OS_LAYER_IBY_EXPORT_PATH(<f3.iby>) |
|
154 * |
|
155 * |
|
156 * ************************************************************* |
|
157 * * Macro related to Exporting localization .loc files into |
|
158 * * correct place in the system. |
|
159 * ************************************************************* |
|
160 * |
|
161 * --------------------------------------------- |
|
162 * Usage for components: |
|
163 * --------------------------------------------- |
|
164 * Component bld.inf files need to include platform_paths.hrh, see |
|
165 * beginning of this file on how to do this correctly. Component bld.inf |
|
166 * files need to use these macros in PRJ_EXPORTS to get their loc files |
|
167 * for localization. |
|
168 * loc files that should be localized by localisation team should be in |
|
169 * loc-folder in the source tree (see developer guidelines) |
|
170 * |
|
171 * // Layer specific specific macros. Use the macro, which is specified |
|
172 * // for the layer, in which your component resides |
|
173 * <somepath>/loc/<file>.loc APP_LAYER_LOC_EXPORT_PATH(<file>.loc) |
|
174 * <somepath>/loc/<file>.loc MW_LAYER_LOC_EXPORT_PATH(<file>.loc) |
|
175 * <somepath>/loc/<file>.loc OS_LAYER_LOC_EXPORT_PATH(<file>.loc) |
|
176 * |
|
177 * |
|
178 * |
|
179 * |
|
180 */ |
|
181 |
|
182 |
|
183 #ifndef PLATFORM_PATHS_HRH |
|
184 #define PLATFORM_PATHS_HRH |
|
185 |
|
186 /** |
|
187 ************************************************************************** |
|
188 * General comments about the exporting of headers macros |
|
189 * 1) The definitions point currently to the old locations. (which makes some |
|
190 * macros to have same values. The idea is that you can already start using |
|
191 * them now and those will be later on changed => change affects everybody. |
|
192 *************************************************************************** |
|
193 */ |
|
194 |
|
195 /** |
|
196 * --------------------------------------- |
|
197 * Location, where the applications layer specific public headers should be exported |
|
198 * See usage on top of this hrh-file. |
|
199 * --------------------------------------- |
|
200 */ |
|
201 |
|
202 #if __GNUC__ >= 3 |
|
203 #define APP_LAYER_SDK_EXPORT_PATH(exported) do not use intentionally generates error |
|
204 #define APP_LAYER_PUBLIC_EXPORT_PATH(exported) /epoc32/include/app/exported |
|
205 #else |
|
206 #define APP_LAYER_SDK_EXPORT_PATH(exported) do not use intentionally generates error |
|
207 #define APP_LAYER_PUBLIC_EXPORT_PATH(exported) /epoc32/include/app/##exported |
|
208 #endif |
|
209 |
|
210 /** |
|
211 * --------------------------------------- |
|
212 * Location, where the applications layer specific platform headers should be exported |
|
213 * See usage on top of this hrh-file. |
|
214 * --------------------------------------- |
|
215 */ |
|
216 #if __GNUC__ >= 3 |
|
217 #define APP_LAYER_DOMAIN_EXPORT_PATH(exported) do not use intentionally generates error |
|
218 #define APP_LAYER_PLATFORM_EXPORT_PATH(exported) /epoc32/include/platform/app/exported |
|
219 #else |
|
220 #define APP_LAYER_DOMAIN_EXPORT_PATH(exported) do not use intentionally generates error |
|
221 #define APP_LAYER_PLATFORM_EXPORT_PATH(exported) /epoc32/include/platform/app/##exported |
|
222 #endif |
|
223 |
|
224 /** |
|
225 * --------------------------------------- |
|
226 * Location, where the middleware layer specific public headers should be exported |
|
227 * See usage on top of this hrh-file. |
|
228 * --------------------------------------- |
|
229 */ |
|
230 #if __GNUC__ >= 3 |
|
231 #define MW_LAYER_SDK_EXPORT_PATH(exported) do not use intentionally generates error |
|
232 #define MW_LAYER_PUBLIC_EXPORT_PATH(exported) /epoc32/include/mw/exported |
|
233 #else |
|
234 #define MW_LAYER_SDK_EXPORT_PATH(exported) do not use intentionally generates error |
|
235 #define MW_LAYER_PUBLIC_EXPORT_PATH(exported) /epoc32/include/mw/##exported |
|
236 #endif |
|
237 |
|
238 /** |
|
239 * --------------------------------------- |
|
240 * Location, where the middleware layer specific platform headers should be exported |
|
241 * --------------------------------------- |
|
242 */ |
|
243 #if __GNUC__ >= 3 |
|
244 #define MW_LAYER_DOMAIN_EXPORT_PATH(exported) do not use intentionally generates error |
|
245 #define MW_LAYER_PLATFORM_EXPORT_PATH(exported) /epoc32/include/platform/mw/exported |
|
246 #else |
|
247 #define MW_LAYER_DOMAIN_EXPORT_PATH(exported) do not use intentionally generates error |
|
248 #define MW_LAYER_PLATFORM_EXPORT_PATH(exported) /epoc32/include/platform/mw/##exported |
|
249 #endif |
|
250 |
|
251 /** |
|
252 * --------------------------------------- |
|
253 * Location, where the os layer specific public headers should be exported |
|
254 * --------------------------------------- |
|
255 */ |
|
256 #if __GNUC__ >= 3 |
|
257 #define OSEXT_LAYER_SDK_EXPORT_PATH(exported) do not use intentionally generates error |
|
258 #define OS_LAYER_PUBLIC_EXPORT_PATH(exported) /epoc32/include/exported |
|
259 #else |
|
260 #define OSEXT_LAYER_SDK_EXPORT_PATH(exported) do not use intentionally generates error |
|
261 #define OS_LAYER_PUBLIC_EXPORT_PATH(exported) /epoc32/include/##exported |
|
262 #endif |
|
263 |
|
264 /** |
|
265 * --------------------------------------- |
|
266 * Location, where the os specific platform headers should be exported |
|
267 * --------------------------------------- |
|
268 */ |
|
269 #if __GNUC__ >= 3 |
|
270 #define OSEXT_LAYER_DOMAIN_EXPORT_PATH(exported) do not use intentionally generates error |
|
271 #define OS_LAYER_PLATFORM_EXPORT_PATH(exported) /epoc32/include/platform/exported |
|
272 #else |
|
273 #define OSEXT_LAYER_DOMAIN_EXPORT_PATH(exported) do not use intentionally generates error |
|
274 #define OS_LAYER_PLATFORM_EXPORT_PATH(exported) /epoc32/include/platform/##exported |
|
275 #endif |
|
276 |
|
277 /** |
|
278 * --------------------------------------- |
|
279 * Location, where the cenrep excel sheets should be exported |
|
280 * Deprecated: should no longer be used. Kept for compability. |
|
281 * --------------------------------------- |
|
282 */ |
|
283 #if __GNUC__ >= 3 |
|
284 #define CENREP_XLS_EXPORT_PATH(exported) /epoc32/tools/cenrep/data/src/exported |
|
285 #else |
|
286 #define CENREP_XLS_EXPORT_PATH(exported) /epoc32/tools/cenrep/data/src/##exported |
|
287 #endif |
|
288 |
|
289 /** |
|
290 ************************************************************************** |
|
291 * General comments about the 3 define statements related to include paths: |
|
292 * 1) the /epoc32/include/oem is now defined there for backward compability. |
|
293 * Once the directory is empty, the directory will be removed. However this |
|
294 * enables us to ensure that if you use these define statements => you do |
|
295 * not have to remove the statements later on, when the directory no longer |
|
296 * exists. |
|
297 * 2) These statements should be enough in normal cases. For certain specific |
|
298 * cases you migth need to add some specific directory from /epoc32/include |
|
299 * (for instance /epoc32/include/ecom). |
|
300 * In normal cases the include staments in code should be relative to one of |
|
301 * the system include paths, but in certain cases, the included files requires |
|
302 * that the subdirectory is also part of the system include paths. |
|
303 **************************************************************************** |
|
304 */ |
|
305 |
|
306 /** |
|
307 * This define statements defines the SYSTEMINCLUDE-line, which is intended to be |
|
308 * used in the mmp-files that are part of the applications-layer. It includes all |
|
309 * the needed directories from the /epoc32/include, that are valid ones for the |
|
310 * application-layer components. |
|
311 * |
|
312 * Applications layer is the last one in the list, since most likely the most of |
|
313 * the headers come from middleware or os-layer => thus they are first. |
|
314 */ |
|
315 #define APP_LAYER_SYSTEMINCLUDE SYSTEMINCLUDE \ |
|
316 /epoc32/include \ |
|
317 /epoc32/include/mw \ |
|
318 /epoc32/include/platform/mw \ |
|
319 /epoc32/include/platform \ |
|
320 /epoc32/include/app \ |
|
321 /epoc32/include/platform/app \ |
|
322 /epoc32/include/platform/loc \ |
|
323 /epoc32/include/platform/mw/loc \ |
|
324 /epoc32/include/platform/app/loc \ |
|
325 /epoc32/include/platform/loc/sc \ |
|
326 /epoc32/include/platform/mw/loc/sc \ |
|
327 /epoc32/include/platform/app/loc/sc |
|
328 |
|
329 /** |
|
330 * This define statements defines the SYSTEMINCLUDE-line, which is intended to be |
|
331 * used in the mmp-files that are part of the middleware-layer. It includes all |
|
332 * the needed directories from the /epoc32/include, that are valid ones for the |
|
333 * middleware-layer components. |
|
334 */ |
|
335 #define MW_LAYER_SYSTEMINCLUDE SYSTEMINCLUDE \ |
|
336 /epoc32/include \ |
|
337 /epoc32/include/mw \ |
|
338 /epoc32/include/platform/mw \ |
|
339 /epoc32/include/platform \ |
|
340 /epoc32/include/platform/loc \ |
|
341 /epoc32/include/platform/mw/loc \ |
|
342 /epoc32/include/platform/loc/sc \ |
|
343 /epoc32/include/platform/mw/loc/sc |
|
344 |
|
345 /** |
|
346 * This define statements defines the SYSTEMINCLUDE-line, which is intended to be |
|
347 * used in the mmp-files that are part of the osextensions-layer. It includes all |
|
348 * the needed directories from the /epoc32/include, that are valid ones for the |
|
349 * os-layer components. |
|
350 */ |
|
351 #define OS_LAYER_SYSTEMINCLUDE SYSTEMINCLUDE \ |
|
352 /epoc32/include \ |
|
353 /epoc32/include/platform \ |
|
354 /epoc32/include/platform/loc \ |
|
355 /epoc32/include/platform/loc/sc |
|
356 |
|
357 // Below statement is Deprecated and the OS_LAYER_SYSTEMINCLUDE-macro has to be |
|
358 // used. |
|
359 // Removed, use teh OS_LAYER_SYSTEMINCLUDE instead. |
|
360 // #define OSEXT_LAYER_SYSTEMINCLUDE OS_LAYER_SYSTEMINCLUDE |
|
361 |
|
362 /** |
|
363 * This define statements defines the SYSTEMINCLUDE-line, which is intended to be |
|
364 * used in the mmp-files that are part of the os-layer. This is intended |
|
365 * to be only used by those components which need to use in their mmp-file either |
|
366 * kern_ext.mmh or nkern_ext.mmh. Reason is that those |
|
367 * 2 files already contain the /epoc32/include as system include path. |
|
368 * |
|
369 */ |
|
370 #define OS_LAYER_KERNEL_SYSTEMINCLUDE SYSTEMINCLUDE \ |
|
371 /epoc32/include/platform |
|
372 |
|
373 // Below statement is Deprecated and the OS_LAYER_KERNEL_SYSTEMINCLUDE-macro |
|
374 // has to be used. |
|
375 // Removed, use the OS_LAYER_KERNER_SYSTEMINCLUDE instead. |
|
376 // #define OSEXT_LAYER_KERNEL_SYSTEMINCLUDE OS_LAYER_KERNEL_SYSTEMINCLUDE |
|
377 |
|
378 /** |
|
379 **************************************************************************** |
|
380 * Definitions that also define the systeminclude paths for various |
|
381 * part of stdapis. Each statement has to be in its own line in the using |
|
382 * mmp-file. There are be more than 1 statement in single mmp-file. |
|
383 **************************************************************************** |
|
384 */ |
|
385 #define OS_LAYER_LIBC_SYSTEMINCLUDE SYSTEMINCLUDE OS_LAYER_PUBLIC_EXPORT_PATH(stdapis) |
|
386 |
|
387 #define OS_LAYER_GLIB_SYSTEMINCLUDE SYSTEMINCLUDE OS_LAYER_PUBLIC_EXPORT_PATH(stdapis/glib-2.0) \ |
|
388 OS_LAYER_PUBLIC_EXPORT_PATH(stdapis/glib-2.0/glib) \ |
|
389 OS_LAYER_PUBLIC_EXPORT_PATH(stdapis/glib-2.0/gobject) |
|
390 |
|
391 |
|
392 #define OS_LAYER_SSL_SYSTEMINCLUDE SYSTEMINCLUDE OS_LAYER_PUBLIC_EXPORT_PATH(stdapis/openssl) |
|
393 |
|
394 #define OS_LAYER_STDCPP_SYSTEMINCLUDE SYSTEMINCLUDE OS_LAYER_PUBLIC_EXPORT_PATH(stdapis/stlport) |
|
395 |
|
396 #define OS_LAYER_BOOST_SYSTEMINCLUDE SYSTEMINCLUDE OS_LAYER_PUBLIC_EXPORT_PATH(stdapis/boost) |
|
397 |
|
398 #define OS_LAYER_DBUS_SYSTEMINCLUDE SYSTEMINCLUDE OS_LAYER_PUBLIC_EXPORT_PATH(stdapis/dbus-1.0) \ |
|
399 OS_LAYER_PUBLIC_EXPORT_PATH(stdapis/dbus-1.0/dbus) |
|
400 #define OS_LAYER_LIBUTILITY_SYSTEMINCLUDE SYSTEMINCLUDE OS_LAYER_PLATFORM_EXPORT_PATH(stdapis/utility) |
|
401 |
|
402 #define OS_LAYER_LIBOIL_SYSTEMINCLUDE SYSTEMINCLUDE OS_LAYER_PLATFORM_EXPORT_PATH(stdapis/liboil) |
|
403 |
|
404 #define MW_LAYER_GSTREAMER_SYSTEMINCLUDE SYSTEMINCLUDE \ |
|
405 /epoc32/include/platform/mw/gstreamer/10_18 \ |
|
406 /epoc32/include/platform/mw/gstreamer/10_18/gst \ |
|
407 /epoc32/include/platform/mw/gstreamer/10_18/gst/gstcontroller \ |
|
408 /epoc32/include/stdapis/machine |
|
409 |
|
410 // You need to add STLLIB_USAGE_DEFINITIONS as a separate line into your mmp-file, if you are using |
|
411 // the stllib. |
|
412 #define STLLIB_USAGE_DEFINITIONS OPTION CW -wchar_t on\ |
|
413 MACRO _WCHAR_T_DECLARED |
|
414 |
|
415 |
|
416 /** |
|
417 **************************************************************************** |
|
418 * Definitions that also define the paths to the layer specific source directories. |
|
419 **************************************************************************** |
|
420 */ |
|
421 /** |
|
422 * The below 3 macros define the paths to the layer-specific source dirs. |
|
423 * See usage on top of this hrh-file, these are used the same way as |
|
424 * for instance the OS_LAYER_DOMAIN_EXPORT_PATH |
|
425 * Deprecated: is not allowed to be using in Symbian Foundation |
|
426 */ |
|
427 #if __GNUC__ >= 3 |
|
428 #define APP_LAYER_SOURCE_PATH(rest) do not use intentionally generates error in export |
|
429 #define MW_LAYER_SOURCE_PATH(rest) do not use intentionally generates error in export |
|
430 #define OSEXT_LAYER_SOURCE_PATH(rest) do not use intentionally generates error in export |
|
431 #else |
|
432 #define APP_LAYER_SOURCE_PATH(rest) do not use intentionally generates error in export |
|
433 #define MW_LAYER_SOURCE_PATH(rest) do not use intentionally generates error in export |
|
434 #define OSEXT_LAYER_SOURCE_PATH(rest) do not use intentionally generates error in export |
|
435 #endif |
|
436 |
|
437 /** |
|
438 **************************************************************************** |
|
439 * Definitions to export IBY files to different folders where they will be taken |
|
440 * to ROM image |
|
441 **************************************************************************** |
|
442 */ |
|
443 |
|
444 // Following three definitions are used for exporting IBY files to |
|
445 // Core image (ROM+ROFS1). IBY files are exported according to their layer. |
|
446 #if __GNUC__ >= 3 |
|
447 #define CORE_APP_LAYER_IBY_EXPORT_PATH(exported) /epoc32/rom/include/core/app/exported |
|
448 #define CORE_MW_LAYER_IBY_EXPORT_PATH(exported) /epoc32/rom/include/core/mw/exported |
|
449 #define CORE_OSEXT_LAYER_IBY_EXPORT_PATH(exported) do not use intentionally generates error |
|
450 #define CORE_OS_LAYER_IBY_EXPORT_PATH(exported) /epoc32/rom/include/core/os/exported |
|
451 #define CORE_ADAPT_LAYER_IBY_EXPORT_PATH(exported) /epoc32/rom/include/exported |
|
452 #else |
|
453 #define CORE_APP_LAYER_IBY_EXPORT_PATH(exported) /epoc32/rom/include/core/app/##exported |
|
454 #define CORE_MW_LAYER_IBY_EXPORT_PATH(exported) /epoc32/rom/include/core/mw/##exported |
|
455 #define CORE_OSEXT_LAYER_IBY_EXPORT_PATH(exported) do not use intentionally generates error |
|
456 #define CORE_OS_LAYER_IBY_EXPORT_PATH(exported) /epoc32/rom/include/core/os/##exported |
|
457 #define CORE_ADAPT_LAYER_IBY_EXPORT_PATH(exported) /epoc32/rom/include/##exported |
|
458 #endif |
|
459 |
|
460 // Following three definitions are used for exporting IBY files to Variant image, |
|
461 // Language part (ROFS2). IBY files are exported according to their layer. |
|
462 #if __GNUC__ >= 3 |
|
463 #define LANGUAGE_APP_LAYER_IBY_EXPORT_PATH(exported) /epoc32/rom/include/language/app/exported |
|
464 #define LANGUAGE_MW_LAYER_IBY_EXPORT_PATH(exported) /epoc32/rom/include/language/mw/exported |
|
465 #define LANGUAGE_OSEXT_LAYER_IBY_EXPORT_PATH(exported) do not use intentionally generates error |
|
466 #define LANGUAGE_OS_LAYER_IBY_EXPORT_PATH(exported) /epoc32/rom/include/language/os/exported |
|
467 #else |
|
468 #define LANGUAGE_APP_LAYER_IBY_EXPORT_PATH(exported) /epoc32/rom/include/language/app/##exported |
|
469 #define LANGUAGE_MW_LAYER_IBY_EXPORT_PATH(exported) /epoc32/rom/include/language/mw/##exported |
|
470 #define LANGUAGE_OSEXT_LAYER_IBY_EXPORT_PATH(exported) do not use intentionally generates error |
|
471 #define LANGUAGE_OS_LAYER_IBY_EXPORT_PATH(exported) /epoc32/rom/include/language/os/##exported |
|
472 #endif |
|
473 |
|
474 // Following three definitions are used for exporting IBY files to Variant image, (ROFS2). |
|
475 // BY files are exported according to their layer. |
|
476 #if __GNUC__ >= 3 |
|
477 #define CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(exported) /epoc32/rom/include/customer/app/exported |
|
478 #define CUSTOMER_MW_LAYER_IBY_EXPORT_PATH(exported) /epoc32/rom/include/customer/mw/exported |
|
479 #define CUSTOMER_OSEXT_LAYER_IBY_EXPORT_PATH(exported) do not use intentionally generates error |
|
480 #define CUSTOMER_OS_LAYER_IBY_EXPORT_PATH(exported) /epoc32/rom/include/customer/os/exported |
|
481 #else |
|
482 #define CUSTOMER_APP_LAYER_IBY_EXPORT_PATH(exported) /epoc32/rom/include/customer/app/##exported |
|
483 #define CUSTOMER_MW_LAYER_IBY_EXPORT_PATH(exported) /epoc32/rom/include/customer/mw/##exported |
|
484 #define CUSTOMER_OSEXT_LAYER_IBY_EXPORT_PATH(exported) do not use intentionally generates error |
|
485 #define CUSTOMER_OS_LAYER_IBY_EXPORT_PATH(exported) /epoc32/rom/include/customer/os/##exported |
|
486 #endif |
|
487 |
|
488 // Following three definitions are used for exporting IBY files to |
|
489 // Variant Customer part, (ROFS3). IBY files are exported according to |
|
490 // their layer. |
|
491 #if __GNUC__ >= 3 |
|
492 #define CUSTOMER_VARIANT_APP_LAYER_IBY_EXPORT_PATH(exported) /epoc32/rom/include/customervariant/app/exported |
|
493 #define CUSTOMER_VARIANT_MW_LAYER_IBY_EXPORT_PATH(exported) /epoc32/rom/include/customervariant/mw/exported |
|
494 #define CUSTOMER_VARIANT_OSEXT_LAYER_IBY_EXPORT_PATH(exported) do not use intentionally generates error |
|
495 #define CUSTOMER_VARIANT_OS_LAYER_IBY_EXPORT_PATH(exported) /epoc32/rom/include/customervariant/os/exported |
|
496 #else |
|
497 #define CUSTOMER_VARIANT_APP_LAYER_IBY_EXPORT_PATH(exported) /epoc32/rom/include/customervariant/app/##exported |
|
498 #define CUSTOMER_VARIANT_MW_LAYER_IBY_EXPORT_PATH(exported) /epoc32/rom/include/customervariant/mw/##exported |
|
499 #define CUSTOMER_VARIANT_OSEXT_LAYER_IBY_EXPORT_PATH(exported) do not use intentionally generates error |
|
500 #define CUSTOMER_VARIANT_OS_LAYER_IBY_EXPORT_PATH(exported) /epoc32/rom/include/customervariant/os/##exported |
|
501 #endif |
|
502 |
|
503 |
|
504 // Following definition is used for exporting tools and stubs IBY files to |
|
505 // Core image. |
|
506 #if __GNUC__ >= 3 |
|
507 #define CORE_IBY_EXPORT_PATH(path,exported) /epoc32/rom/include/core/path/exported |
|
508 #else |
|
509 #define CORE_IBY_EXPORT_PATH(path,exported) /epoc32/rom/include/core/##path##/##exported |
|
510 #endif |
|
511 |
|
512 /** |
|
513 * --------------------------------------- |
|
514 * Location, where the localization .loc file should be exported |
|
515 * --------------------------------------- |
|
516 */ |
|
517 // Location, where the os layer localization .loc file should be |
|
518 // exported |
|
519 #if __GNUC__ >= 3 |
|
520 // Deprecated: use the OS_LAYER_LOC_EXPORT_PATH instead |
|
521 #define OSEXT_LAYER_LOC_EXPORT_PATH(exported) do not use intentionally generates error |
|
522 #define OS_LAYER_LOC_EXPORT_PATH(exported) /epoc32/include/platform/loc/sc/exported |
|
523 |
|
524 // Location, where the middleware layer localization .loc file should be |
|
525 // exported |
|
526 #define MW_LAYER_LOC_EXPORT_PATH(exported) /epoc32/include/platform/mw/loc/sc/exported |
|
527 |
|
528 // Location, where the application layer localization .loc file should be |
|
529 // exported |
|
530 #define APP_LAYER_LOC_EXPORT_PATH(exported) /epoc32/include/platform/app/loc/sc/exported |
|
531 |
|
532 #else |
|
533 |
|
534 // Deprecated: use the OS_LAYER_LOC_EXPORT_PATH instead |
|
535 #define OSEXT_LAYER_LOC_EXPORT_PATH(exported) do not use intentionally generates error |
|
536 #define OS_LAYER_LOC_EXPORT_PATH(exported) /epoc32/include/platform/loc/sc/##exported |
|
537 |
|
538 // Location, where the middleware layer localization .loc file should be exported |
|
539 #define MW_LAYER_LOC_EXPORT_PATH(exported) /epoc32/include/platform/mw/loc/sc/##exported |
|
540 |
|
541 // Location, where the application layer localization .loc file should be exported |
|
542 #define APP_LAYER_LOC_EXPORT_PATH(exported) /epoc32/include/platform/app/loc/sc/##exported |
|
543 #endif |
|
544 |
|
545 /** |
|
546 * --------------------------------------- |
|
547 * Macros for Configuration tool migration. |
|
548 * The below macros define the location under epoc32, where the confml |
|
549 * (Configuration Markup Language) and crml (Central Repository Markup Language) |
|
550 * files should be exported. |
|
551 * --------------------------------------- |
|
552 */ |
|
553 #if __GNUC__ >= 3 |
|
554 #define CONFML_EXPORT_PATH(file,category) /epoc32/rom/config/confml_data/category/file |
|
555 #define CRML_EXPORT_PATH(file,category) /epoc32/rom/config/confml_data/category/file |
|
556 #define GCFML_EXPORT_PATH(file,category) /epoc32/rom/config/confml_data/category/file |
|
557 #define CONFML_CONFIG_EXPORT_PATH(file,category) /epoc32/rom/config/confml_data/category/config/file |
|
558 #else |
|
559 #define CONFML_EXPORT_PATH(file,category) /epoc32/rom/config/confml_data/##category##/##file |
|
560 #define CRML_EXPORT_PATH(file,category) /epoc32/rom/config/confml_data/##category##/##file |
|
561 #define GCFML_EXPORT_PATH(file,category) /epoc32/rom/config/confml_data/##category##/##file |
|
562 #define CONFML_CONFIG_EXPORT_PATH(file,category) /epoc32/rom/config/confml_data/##category##/config/##file |
|
563 #endif |
|
564 |
|
565 #define APP_LAYER_CONFML(exported) CONFML_EXPORT_PATH(exported,s60) |
|
566 #define APP_LAYER_CRML(exported) CRML_EXPORT_PATH(exported,s60) |
|
567 #define APP_LAYER_GCFML(exported) GCFML_EXPORT_PATH(exported,s60) |
|
568 #define APP_LAYER_CONFML_CONFIG(exported) CONFML_CONFIG_EXPORT_PATH(exported,s60) |
|
569 |
|
570 #define MW_LAYER_CONFML(exported) CONFML_EXPORT_PATH(exported,s60) |
|
571 #define MW_LAYER_CRML(exported) CRML_EXPORT_PATH(exported,s60) |
|
572 #define MW_LAYER_GCFML(exported) GCFML_EXPORT_PATH(exported,s60) |
|
573 #define MW_LAYER_CONFML_CONFIG(exported) CONFML_CONFIG_EXPORT_PATH(exported,s60) |
|
574 |
|
575 // Deprecate: Use the OS_LAYER_* macros instead of OSEXT_LAYER_* |
|
576 #define OSEXT_LAYER_CONFML(exported) do not use intentionally generates error |
|
577 #define OSEXT_LAYER_CRML(exported) do not use intentionally generates error |
|
578 #define OSEXT_LAYER_GCFML(exported) do not use intentionally generates error |
|
579 #define OSEXT_LAYER_CONFML_CONFIG(exported) do not use intentionally generates error |
|
580 #define OS_LAYER_CONFML(exported) CONFML_EXPORT_PATH(exported,s60) |
|
581 #define OS_LAYER_CRML(exported) CRML_EXPORT_PATH(exported,s60) |
|
582 #define OS_LAYER_GCFML(exported) GCFML_EXPORT_PATH(exported,s60) |
|
583 #define OS_LAYER_CONFML_CONFIG(exported) CONFML_CONFIG_EXPORT_PATH(exported,s60) |
|
584 |
|
585 #endif // end of PLATFORM_PATHS_HRH |