Symbian3/SDK/Source/GUID-2910AB26-CA7C-50B9-A187-0C8406C1ED1F.dita
changeset 13 48780e181b38
parent 12 80ef3a206772
child 14 578be2adaf3e
equal deleted inserted replaced
12:80ef3a206772 13:48780e181b38
     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-2910AB26-CA7C-50B9-A187-0C8406C1ED1F" xml:lang="en"><title>prj_extensions</title><prolog><metadata><keywords/></metadata></prolog><conbody>
       
    13 <p> <codeph>prj_extensions</codeph>  </p>
       
    14 <p> <codeph>start extension</codeph>  <varname>subsystem\ext-template</varname>  </p>
       
    15 <p>[<codeph>target</codeph>  <varname>target_file_name</varname>] </p>
       
    16 <p>[<codeph>sources</codeph>  <varname>source_file_1 ... source_file_n</varname>] </p>
       
    17 <p>[<codeph>dependencies</codeph>  <varname>dependency_file_1 ...        
       
    18 dependency_file_n</varname>] </p>
       
    19 <p>[<codeph>tool</codeph>  <varname>toolname</varname>] </p>
       
    20 <p>[<codeph>option</codeph>  <varname>key_1</varname> <varname>value_1</varname>] </p>
       
    21 <p>... </p>
       
    22 <p>[<codeph>option</codeph>  <varname>key_n</varname> <varname>value_n</varname>] </p>
       
    23 <p> <codeph>end</codeph>  </p>
       
    24 <p> <b>Note:</b> The value argument in the option statement is optional. </p>
       
    25 <p>The <codeph>prj_extensions</codeph> section lists all the template extension
       
    26 makefiles that are to be invoked while building the component. This approach
       
    27 is introduced since Symbian OS v9.3 and it deprecates the use of <codeph>makefile</codeph> and <codeph>gnumakefile</codeph> directives
       
    28 in <filepath>bld.inf</filepath> files. It is recommend to use <codeph>prj_extensions</codeph> approach
       
    29 to call the extension makefile templates. </p>
       
    30 <p> <i>Note that a prj_extensions section can have one or more of start extension
       
    31 ... end blocks.</i>  </p>
       
    32 <p> <varname>subsystem/ext-template</varname> specifies the extension makefile
       
    33 template name along with its path relative to the <codeph>epoc32</codeph> template
       
    34 directory, which is <filepath>\epoc32\tools\makefile_templates\</filepath>.
       
    35 The <codeph>.mk</codeph> suffix of the template need not be specified, as
       
    36 it is handled automatically. </p>
       
    37 <p>The optional <codeph>target</codeph>  <varname>target_file_name</varname> specifies
       
    38 the name and location of the target to be built. </p>
       
    39 <p>The optional <codeph>sources</codeph>  <varname>source_file_1 ....    
       
    40     source_file_n</varname> specifies the list of source file names along
       
    41 with their path, which are required to build the <codeph>target</codeph>. </p>
       
    42 <p>The optional <codeph>dependencies</codeph>  <varname>dependency_file_1
       
    43 ...         dependency_file_n</varname> specifies the list of dependency file
       
    44 names along with their path, which are required to build the <codeph>target</codeph>.
       
    45 The file extension part of the name need not be specified, as this will be
       
    46 automatically supplied. </p>
       
    47 <p>The optional <codeph>tool</codeph>  <varname>toolname</varname> specifies
       
    48 the tool to be used to build the target. </p>
       
    49 <p>The optional <codeph>option</codeph>  <varname>key_1</varname> <varname>value_1</varname> specifies
       
    50 the parameter values for the template extension makefile, as key-value pairs.
       
    51 These parameters are variables used in the template, and the precise set of
       
    52 variables specified here are entirely dependent on the requirement. There
       
    53 is no limit to the number of parameters a template extension makefile may
       
    54 require and can take. </p>
       
    55 <example><p>This example sets <codeph>PREFIX</codeph>, <codeph>HALPATH</codeph> and <codeph>SOURCE</codeph> options
       
    56 of the template extension makefile <filepath>config.mk</filepath></p><codeblock id="GUID-E876D415-D71A-51B9-BAF7-4ABE5335947E" xml:space="preserve">PRJ_EXTENSIONS
       
    57 start        extension        base\config
       
    58 
       
    59 option         PREFIX         _SH2_
       
    60 option         HALPATH        \..\..\..
       
    61 option            SOURCE            \..\hal
       
    62 
       
    63 end
       
    64 </codeblock></example>
       
    65 </conbody></concept>