Symbian3/SDK/Source/GUID-0C02D927-0B06-49BD-8738-149DCDDB23FC.dita
changeset 7 51a74ef9ed63
parent 0 89d6a7a84779
equal deleted inserted replaced
6:43e37759235e 7:51a74ef9ed63
       
     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-0C02D927-0B06-49BD-8738-149DCDDB23FC" xml:lang="en"><title>Preparation
       
    13 of the MMP and <filepath>bld.inf</filepath> Files</title><shortdesc>At the end of this phase, Symbian port should have the <filepath>bld.inf</filepath> and
       
    14 MMP files.</shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody>
       
    15 <section id="GUID-8FAD2820-D96D-4AA8-8653-B5A947713788">       <title>MMP
       
    16 file</title>       <p>An <filepath>.mmp</filepath> project definition file
       
    17 specifies the properties of a project in a platform and compiler-independent
       
    18 way. The MMP file is very similar to ‘Makefile’ of Linux. MMP file exists
       
    19 per <filepath>.SO</filepath>, <filepath>.A</filepath>, or <filepath>.EXE</filepath>.</p><p>The
       
    20 contents of a sample MMP file created for <codeph>libjpeg</codeph> are shown
       
    21 below: </p><codeblock xml:space="preserve">TARGET	libjpeg.dll
       
    22 TARGETTYPE	DLL
       
    23 UID             	0x1000008d 0x0xE0000100 
       
    24 CAPABILITY All -Tcb
       
    25 EpocAllowDllData
       
    26 
       
    27 USERINCLUDE	.
       
    28 
       
    29 SYSTEMINCLUDE	\epoc32\include\stdapis
       
    30 SYSTEMINCLUDE	\epoc32\include
       
    31 
       
    32 SOURCEPATH	.
       
    33 // LIBSOURCES
       
    34 SOURCE	jcapimin.c jcapistd.c jccoefct.c jccolor.c jcdctmgr.c jchuff.c
       
    35 SOURCE	jcinit.c jcmainct.c jcmarker.c jcmaster.c jcomapi.c jcparam.c
       
    36 SOURCE	jcphuff.c jcprepct.c jcsample.c jctrans.c jdapimin.c jdapistd.c
       
    37 SOURCE	jdatadst.c jdatasrc.c jdcoefct.c jdcolor.c jddctmgr.c jdhuff.c
       
    38 SOURCE	jdinput.c jdmainct.c jdmarker.c jdmaster.c jdmerge.c jdphuff.c
       
    39 SOURCE	jdpostct.c jdsample.c jdtrans.c jerror.c jfdctflt.c jfdctfst.c
       
    40 SOURCE	jfdctint.c jidctflt.c jidctfst.c jidctint.c jidctred.c jquant1.c
       
    41 SOURCE	jquant2.c jutils.c jmemmgr.c
       
    42 // SYSDEPSOURCES
       
    43 SOURCE	jmemansi.c
       
    44 LIBRARY	euser.lib
       
    45 
       
    46 LIBRARY	libc.lib
       
    47 MACRO	HAVE_CONFIG_H
       
    48 MACRO 	__SYMBIAN32__ </codeblock><p>The following table gives a brief introduction
       
    49 to the MMP file keywords found in above file.</p><table id="GUID-367FB69E-EE9B-4100-8E44-6B102430297A">
       
    50 <tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
       
    51 <tbody>
       
    52 <row>
       
    53 <entry><p><b>Keyword</b></p></entry>
       
    54 <entry><p><b>Description</b></p></entry>
       
    55 </row>
       
    56 <row>
       
    57 <entry><codeph>TARGETTYPE</codeph></entry>
       
    58 <entry><p>Target type.Can be DLL, EXE, or LIB. Other types are also supported.</p></entry>
       
    59 </row>
       
    60 <row>
       
    61 <entry><codeph>TARGET</codeph></entry>
       
    62 <entry><p>Name of the target.</p></entry>
       
    63 </row>
       
    64 <row>
       
    65 <entry><codeph>UID</codeph></entry>
       
    66 <entry><p>Unique identifier of the target. It is recommended to use test UIDs
       
    67 from the range <codeph>0xE0000000-0xEFFFFFFF</codeph> which is targeted for
       
    68 development use only. For production quality code, UIDs must be requested
       
    69 from Symbian (<xref href="https://www.symbiansigned.com/app/page" scope="external">https://www.symbiansigned.com/app/page</xref>)
       
    70 before the application can be sent for signing. </p></entry>
       
    71 </row>
       
    72 <row>
       
    73 <entry><codeph>CAPABILITY</codeph></entry>
       
    74 <entry><p>Capability requirement of the target. </p><note>Even if the example
       
    75 uses All-TCB capabilities, it is strongly recommended to use a more narrow
       
    76 set of capabilities to have the application successfully signed.</note></entry>
       
    77 </row>
       
    78 <row>
       
    79 <entry><codeph>EpocAllowDllData</codeph></entry>
       
    80 <entry><p>Allow global static data in the target</p></entry>
       
    81 </row>
       
    82 <row>
       
    83 <entry><codeph>USERINCLUDE</codeph></entry>
       
    84 <entry><p>Local file include path. The compiler will look in this path for
       
    85 the files included with “ ”. For example, <codeph>#include "config.h"</codeph></p></entry>
       
    86 </row>
       
    87 <row>
       
    88 <entry><codeph>SYSTEMINCLUDE</codeph></entry>
       
    89 <entry><p>System file include path. The compiler will look in this path for
       
    90 the files included with<codeph> &lt; &gt;</codeph>. For example, <codeph>#include
       
    91 &lt;stdio.h&gt;</codeph></p></entry>
       
    92 </row>
       
    93 <row>
       
    94 <entry><codeph>SOURCEPATH</codeph></entry>
       
    95 <entry><p>Source path for the source files.</p></entry>
       
    96 </row>
       
    97 <row>
       
    98 <entry><codeph>SOURCE</codeph></entry>
       
    99 <entry><p>Source file listing.</p></entry>
       
   100 </row>
       
   101 <row>
       
   102 <entry><codeph>LIBRARY</codeph></entry>
       
   103 <entry><p>Dependent DLL library file list.</p></entry>
       
   104 </row>
       
   105 <row>
       
   106 <entry><codeph>STATICLIBRARY</codeph></entry>
       
   107 <entry><p>Dependent static library file list.</p></entry>
       
   108 </row>
       
   109 <row>
       
   110 <entry><codeph>MACRO</codeph></entry>
       
   111 <entry><p>Preprocessor declarations. Makefile declares these preprocessor
       
   112 declarations using <codeph>–D</codeph> flag. </p></entry>
       
   113 </row>
       
   114 </tbody>
       
   115 </tgroup>
       
   116 </table> </section>
       
   117 <section id="GUID-C55666DD-4B7F-4913-9D5D-7A5992406422"><title>bld.inf</title><p><filepath>bld.inf</filepath> is
       
   118 a component definition file, used by <codeph>bldmake</codeph> to define the <filepath>abld.bat</filepath> file
       
   119 and <codeph>makefiles</codeph> to be created. <filepath>bld.inf</filepath> can
       
   120 be loosely compared to configure script of Linux. There is one <filepath>bld.inf</filepath> for
       
   121 entire the OSS. If the project is divided into more than one module, each
       
   122 module can have an individual <filepath>bld.inf</filepath> file. Have a look
       
   123 at the contents of the sample MMP file below created for <codeph>libjpeg</codeph>. </p><codeblock xml:space="preserve">PRJ_PLATFORMS
       
   124 default
       
   125 
       
   126 PRJ_MMPFILES
       
   127 jpeg.mmp
       
   128 
       
   129 PRJ_EXPORTS
       
   130 jpeglib.h   \epoc32\include\jpeg-6b\jpeglib.h
       
   131 jconfig.h   \epoc32\include\jpeg-6b\jconfig.h
       
   132 jmorecfg.h  \epoc32\include\jpeg-6b\jmorecfg.h
       
   133 jerror.h    \epoc32\include\jpeg-6b\jerror.h
       
   134 </codeblock><p>The following table gives a brief introduction to the <filepath>bld.inf</filepath> keywords.</p><table id="GUID-644E05C0-1E42-447D-8223-EC089FF34117">
       
   135 <tgroup cols="2"><colspec colname="col1"/><colspec colname="col2"/>
       
   136 <tbody>
       
   137 <row>
       
   138 <entry><p><b>Keyword</b></p></entry>
       
   139 <entry><p><b>Description</b></p></entry>
       
   140 </row>
       
   141 <row>
       
   142 <entry><codeph>PRJ_PLATFORMS</codeph></entry>
       
   143 <entry><p>Platform to which <codeph>makefiles</codeph> will be created.</p></entry>
       
   144 </row>
       
   145 <row>
       
   146 <entry><codeph>PRJ_MMPFILES</codeph></entry>
       
   147 <entry><p>MMP file list.</p></entry>
       
   148 </row>
       
   149 <row>
       
   150 <entry><codeph>PRJ_EXPORTS</codeph></entry>
       
   151 <entry><p>List of public header files for target library users. This list
       
   152 can be prepared by looking at the include directory in Linux installation. </p></entry>
       
   153 </row>
       
   154 </tbody>
       
   155 </tgroup>
       
   156 </table></section>
       
   157 </conbody></concept>