|
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-5A3A3EA0-6C03-56F2-B277-B61A27ABFF9E" xml:lang="en"><title>abld |
|
13 command syntax overview</title><prolog><metadata><keywords/></metadata></prolog><conbody> |
|
14 <p>The <filepath>abld</filepath> batch file is used to control all aspects |
|
15 of building a project. The batch file is created using <filepath>bldmake</filepath> from |
|
16 a component description file. </p> |
|
17 <section><title>Invocation syntax </title><p> <codeph>abld [ |
|
18 test ]</codeph> <varname>command</varname> [ <varname>options</varname> ] |
|
19 [ <varname>platform</varname> [ <varname>build</varname> [ <varname>program</varname> ] |
|
20 ] ] </p><p>The usage for test, <varname>command</varname>, <varname>options</varname>, <varname>platform</varname>, <varname>build</varname>, |
|
21 and <varname>program</varname> are detailed in the following sections. </p><p> <b>Note:</b> For |
|
22 certain <filepath>abld</filepath> commands, parameters such as <varname>platform</varname>, <varname>build</varname>, |
|
23 and <varname>program</varname>, do not apply. For example, <codeph>abld export</codeph> does |
|
24 not require these parameters, as exports do not depend on <varname>build</varname>, <varname>platform</varname>, |
|
25 or <varname>program</varname>. </p><p><b>command </b> </p><p>You can use the |
|
26 following commands with <codeph>abld</codeph>: </p><table id="GUID-EF09108F-BFFC-5094-95BB-A34D3A86BCED"> |
|
27 <tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/> |
|
28 <thead> |
|
29 <row> |
|
30 <entry>Command</entry> |
|
31 <entry>Purpose</entry> |
|
32 </row> |
|
33 </thead> |
|
34 <tbody> |
|
35 <row> |
|
36 <entry><p> <codeph>build</codeph> </p> </entry> |
|
37 <entry><p>To build the binaries for the specified target. It is a combination |
|
38 of the commands, <codeph>export</codeph>, <codeph>makefile</codeph>, <codeph>library</codeph>, <codeph>resource</codeph>, <codeph>target</codeph>, |
|
39 and <codeph>final</codeph>. </p> </entry> |
|
40 </row> |
|
41 <row> |
|
42 <entry><p> <codeph>clean</codeph> </p> </entry> |
|
43 <entry><p>To remove everything built for the <codeph>abld target</codeph>. </p> </entry> |
|
44 </row> |
|
45 <row> |
|
46 <entry><p> <codeph>cleanexport</codeph> </p> </entry> |
|
47 <entry><p>To remove files created by the <codeph>abld</codeph> <codeph>export</codeph> command. </p> </entry> |
|
48 </row> |
|
49 <row> |
|
50 <entry><p> <codeph>export</codeph> </p> </entry> |
|
51 <entry><p>To copy the exported files to their destination. </p> </entry> |
|
52 </row> |
|
53 <row> |
|
54 <entry><p> <codeph>final</codeph> </p> </entry> |
|
55 <entry><p>To allow extension makefiles to run final commands. </p> </entry> |
|
56 </row> |
|
57 <row> |
|
58 <entry><p> <codeph>freeze</codeph> </p> </entry> |
|
59 <entry><p>To freeze the exported functions in a <filepath>.def</filepath> file. </p> </entry> |
|
60 </row> |
|
61 <row> |
|
62 <entry><p> <codeph>help</codeph> </p> </entry> |
|
63 <entry><p>To display commands, options, or help about a particular command. </p> </entry> |
|
64 </row> |
|
65 <row> |
|
66 <entry><p> <codeph>library</codeph> </p> </entry> |
|
67 <entry><p>To create import libraries from the frozen <filepath>.def</filepath> files. </p> </entry> |
|
68 </row> |
|
69 <row> |
|
70 <entry><p> <codeph>listing</codeph> </p> </entry> |
|
71 <entry><p>To create an assembler listing file for a particular source file. </p> </entry> |
|
72 </row> |
|
73 <row> |
|
74 <entry><p> <codeph>makefile</codeph> </p> </entry> |
|
75 <entry><p>To create makefiles or IDE workspaces. </p> </entry> |
|
76 </row> |
|
77 <row> |
|
78 <entry><p> <codeph>reallyclean</codeph> </p> </entry> |
|
79 <entry><p>To remove all the files. It is similar to the <codeph>clean</codeph> command, |
|
80 and additionally removes exported files and makefiles. </p> </entry> |
|
81 </row> |
|
82 <row> |
|
83 <entry><p> <codeph>resource</codeph> </p> </entry> |
|
84 <entry><p>To create resource files and bitmaps. </p> </entry> |
|
85 </row> |
|
86 <row> |
|
87 <entry><p> <codeph>target</codeph> </p> </entry> |
|
88 <entry><p>To create the main executable file and also the resources. </p> </entry> |
|
89 </row> |
|
90 <row> |
|
91 <entry><p> <codeph>tidy</codeph> </p> </entry> |
|
92 <entry><p>To remove executable files which need not be released. </p> </entry> |
|
93 </row> |
|
94 </tbody> |
|
95 </tgroup> |
|
96 </table><p><b>options </b> </p><p>You can use the following options with <codeph>abld</codeph>: </p><table id="GUID-722871C1-088A-50C4-B335-213340988C76"> |
|
97 <tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/> |
|
98 <thead> |
|
99 <row> |
|
100 <entry>Option</entry> |
|
101 <entry>Purpose</entry> |
|
102 </row> |
|
103 </thead> |
|
104 <tbody> |
|
105 <row> |
|
106 <entry><p> <codeph>-check or -c</codeph> </p> </entry> |
|
107 <entry><p>To check whether the filenames of the executable and resource files |
|
108 are compatible for Linux builds. </p> </entry> |
|
109 </row> |
|
110 <row> |
|
111 <entry><p> <codeph>-debug</codeph> </p> </entry> |
|
112 <entry><p>To generate symbolic debug information for release or debug builds. </p> </entry> |
|
113 </row> |
|
114 <row> |
|
115 <entry><p> <codeph>-keepgoing or -k</codeph> </p> </entry> |
|
116 <entry><p>To build unrelated targets on error. </p> </entry> |
|
117 </row> |
|
118 <row> |
|
119 <entry><p> <codeph>-no_debug</codeph> </p> </entry> |
|
120 <entry><p>To not generate symbolic debug information for release or debug |
|
121 builds. </p> </entry> |
|
122 </row> |
|
123 <row> |
|
124 <entry><p> <codeph>-savespace or -s</codeph> </p> </entry> |
|
125 <entry><p>To delete intermediate files on success. </p> </entry> |
|
126 </row> |
|
127 <row> |
|
128 <entry><p> <codeph>-verbose or -v</codeph> </p> </entry> |
|
129 <entry><p>To display the progress of the <codeph>abld</codeph> command. </p> </entry> |
|
130 </row> |
|
131 <row> |
|
132 <entry><p> <codeph>-what or -w</codeph> </p> </entry> |
|
133 <entry><p>To list all releaseables, which include executable/map files, resource |
|
134 files and so on. </p> </entry> |
|
135 </row> |
|
136 <row> |
|
137 <entry><p> <codeph>-I <platform></codeph> </p> </entry> |
|
138 <entry><p>To specify the ARM target to build for, overriding other settings. </p> </entry> |
|
139 </row> |
|
140 <row> |
|
141 <entry><p> <codeph>-wrap[=<value>]</codeph> </p> </entry> |
|
142 <entry><p>A static analysis tool can be invoked if <codeph>[=<value>]</codeph> is |
|
143 not specified. For example, <codeph>-wrap</codeph>. Alternatively, a run-time |
|
144 analysis tool can be invoked if <codeph><value></codeph> is specified as <codeph>proxy</codeph>. |
|
145 For example, <codeph>-wrap=proxy</codeph>. </p> </entry> |
|
146 </row> |
|
147 </tbody> |
|
148 </tgroup> |
|
149 </table><p> <b>Notes:</b> </p><ul> |
|
150 <li id="GUID-3B421EA1-26FB-5535-9808-C22DAC6801E8"><p>You can use <codeph>-debug</codeph> or <codeph>-no_debug</codeph> options |
|
151 irrespective of the output build type, that is, <codeph>UREL</codeph> or <codeph>UDEB</codeph>. </p> </li> |
|
152 <li id="GUID-0C2D4993-9231-5868-A321-615048F365B1"><p>All options are not |
|
153 applicable to all the commands. Wherever applicable, they can be specified |
|
154 in their long or short forms. For example, </p> <p> <codeph>-keepgoing</codeph> (long |
|
155 form) </p> <p>or </p> <p> <codeph>-k</codeph> (short form) </p> </li> |
|
156 </ul><p><b>platform </b> </p><p>This specifies the target platform. Possible |
|
157 platforms are: </p><table id="GUID-35EAE8DD-DBC1-5DA4-9419-8274A2C8AF28"> |
|
158 <tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/> |
|
159 <thead> |
|
160 <row> |
|
161 <entry>Target platform</entry> |
|
162 <entry>Purpose</entry> |
|
163 </row> |
|
164 </thead> |
|
165 <tbody> |
|
166 <row> |
|
167 <entry><p> <codeph>all</codeph> </p> </entry> |
|
168 <entry><p>To build for all platforms. </p> </entry> |
|
169 </row> |
|
170 <row> |
|
171 <entry><p> <codeph>armv5</codeph> </p> </entry> |
|
172 <entry><p>To build for ABI v1 of ARMV5 architecture using the RealView Compilation |
|
173 Tools (RVCT). </p> </entry> |
|
174 </row> |
|
175 <row> |
|
176 <entry><p> <codeph>armv5_abiv2</codeph> </p> </entry> |
|
177 <entry><p>To build for ABI v2 of ARMV5 architecture using RVCT. </p> </entry> |
|
178 </row> |
|
179 <row> |
|
180 <entry><p> <codeph>armv6</codeph> </p> </entry> |
|
181 <entry><p>To build for ABI v2 of ARMV6 architecture using RVCT. </p> </entry> |
|
182 </row> |
|
183 <row> |
|
184 <entry><p> <codeph>armv6t2</codeph> </p> </entry> |
|
185 <entry><p>To build for ABI v2 of ARMV6 architecture that supports Thumb-2 |
|
186 instruction set, using RVCT. </p> </entry> |
|
187 </row> |
|
188 <row> |
|
189 <entry><p> <codeph>armv7</codeph> </p> </entry> |
|
190 <entry><p>To build for ABI v2 of ARMV7 architecture that supports Thumb-2 |
|
191 instruction set, using RVCT. </p> </entry> |
|
192 </row> |
|
193 <row> |
|
194 <entry> <codeph>cw_ide</codeph> <p/> </entry> |
|
195 <entry><p>To build the Metrowerks CodeWarrior project file (importable <filepath>.xml</filepath> file). </p> </entry> |
|
196 </row> |
|
197 <row> |
|
198 <entry><p> <codeph>gcce</codeph> </p> </entry> |
|
199 <entry><p>To build for ABI v2 of ARMV5 architecture using the GNU GCC compiler. </p> </entry> |
|
200 </row> |
|
201 <row> |
|
202 <entry><p> <codeph>gccev6</codeph> </p> </entry> |
|
203 <entry><p>To build for ABI v2 of ARMV6 architecture using the GNU GCC compiler. </p> </entry> |
|
204 </row> |
|
205 <row> |
|
206 <entry><p> <codeph>gccev6t2</codeph> </p> </entry> |
|
207 <entry><p>To build for ABI v2 of ARMV6 architecture that supports Thumb-2 |
|
208 instruction set, using the GNU GCC compiler. </p> </entry> |
|
209 </row> |
|
210 <row> |
|
211 <entry><p> <codeph>gccev7</codeph> </p> </entry> |
|
212 <entry><p>To build for ABI v2 of ARMV7 architecture that supports Thumb-2 |
|
213 instruction set, using the GNU GCC compiler. </p> </entry> |
|
214 </row> |
|
215 <row> |
|
216 <entry><p> <codeph>gccxml</codeph> </p> </entry> |
|
217 <entry><p>To generate the XML description of the project and the program using |
|
218 GCC XML. </p> </entry> |
|
219 </row> |
|
220 <row> |
|
221 <entry><p> <codeph>vs6</codeph> </p> </entry> |
|
222 <entry><p>To create the project files suitable for opening the project in |
|
223 Microsoft Visual Studio IDE, version Visual C++ v6. </p> </entry> |
|
224 </row> |
|
225 <row> |
|
226 <entry><p> <codeph>vs2003</codeph> </p> </entry> |
|
227 <entry><p>To create the project files suitable for opening the project in |
|
228 Microsoft Visual Studio IDE, version .NET2003. </p> </entry> |
|
229 </row> |
|
230 <row> |
|
231 <entry><p> <codeph>winscw</codeph> </p> </entry> |
|
232 <entry><p>To build for the Symbian emulator on Microsoft Windows, using the |
|
233 Metrowerks CodeWarrior compiler. </p> </entry> |
|
234 </row> |
|
235 </tbody> |
|
236 </tgroup> |
|
237 </table><p> <b>Note</b>: The target platforms, <codeph>armv5</codeph> and <codeph>armv5_abiv2</codeph> are |
|
238 compatible with Symbian OS v9.4 or earlier versions. From Symbian OS v9.4 |
|
239 onwards, these build platforms are renamed as <codeph>armv5</codeph> and <codeph>armv5_abiv1</codeph> to |
|
240 generate binaries and libraries conforming to ABI v2 and ABI v1 respectively. </p><p>If <varname>platform</varname> is |
|
241 not specified, or is specified as <codeph>all</codeph>, then <codeph>abld</codeph> will |
|
242 build for all the platforms specified in the component description file. </p><p>Basenames |
|
243 of <filepath>.mmp</filepath> files or extension makefiles must not be platform |
|
244 names. </p><p><b>build </b> </p><p>This specifies the build type. Possible |
|
245 types are: </p><table id="GUID-AAD6A56F-61FD-5CB4-B196-FE201E9EE298"> |
|
246 <tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/> |
|
247 <tbody> |
|
248 <row> |
|
249 <entry><p> <codeph>udeb</codeph> </p> </entry> |
|
250 <entry><p>Debug build </p> </entry> |
|
251 </row> |
|
252 <row> |
|
253 <entry><p> <codeph>urel</codeph> </p> </entry> |
|
254 <entry><p>Release build </p> </entry> |
|
255 </row> |
|
256 <row> |
|
257 <entry><p> <codeph>all</codeph> </p> </entry> |
|
258 <entry><p>Debug and release builds </p> </entry> |
|
259 </row> |
|
260 </tbody> |
|
261 </tgroup> |
|
262 </table><p>If <varname>build</varname> is not specified, or specified as <codeph>all</codeph>, |
|
263 then <codeph>abld</codeph> will build for both <codeph>udeb</codeph> and <codeph>urel</codeph>. </p><p>Basenames |
|
264 of <filepath>.mmp</filepath> files or extension makefiles must not be build |
|
265 type names. </p><p><b>program </b> </p><p>This specifies the basename of a |
|
266 particular <filepath>.mmp</filepath> file or extension makefile, in order |
|
267 to limit the command to a single project within a component. </p><p>If <varname>program</varname> is |
|
268 not specified, then all the projects within the component are built. </p><p><b>test </b> </p><p>If <codeph>test</codeph> is |
|
269 specified before <codeph>command</codeph>, the <codeph>command</codeph> will |
|
270 build all the projects defined by <filepath>.mmp</filepath> files listed in |
|
271 the <codeph>prj_testmmpfiles</codeph> section of the component description |
|
272 file, rather than those listed in the <codeph>prj_mmpfiles</codeph> section. </p><p> <b>Note:</b> The <codeph>test</codeph> parameter |
|
273 is not relevant for some commands, and in those cases, it cannot be specified. </p></section> |
|
274 </conbody></concept> |