]> rtime.felk.cvut.cz Git - fpga/lx-cpu1/binutils-tumbl.git/blob - binutils/doc/dlltool.1
bfd/
[fpga/lx-cpu1/binutils-tumbl.git] / binutils / doc / dlltool.1
1 .\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14)
2 .\"
3 .\" Standard preamble:
4 .\" ========================================================================
5 .de Sp \" Vertical space (when we can't use .PP)
6 .if t .sp .5v
7 .if n .sp
8 ..
9 .de Vb \" Begin verbatim text
10 .ft CW
11 .nf
12 .ne \\$1
13 ..
14 .de Ve \" End verbatim text
15 .ft R
16 .fi
17 ..
18 .\" Set up some character translations and predefined strings.  \*(-- will
19 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
20 .\" double quote, and \*(R" will give a right double quote.  \*(C+ will
21 .\" give a nicer C++.  Capital omega is used to do unbreakable dashes and
22 .\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,
23 .\" nothing in troff, for use with C<>.
24 .tr \(*W-
25 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
26 .ie n \{\
27 .    ds -- \(*W-
28 .    ds PI pi
29 .    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
30 .    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
31 .    ds L" ""
32 .    ds R" ""
33 .    ds C` ""
34 .    ds C' ""
35 'br\}
36 .el\{\
37 .    ds -- \|\(em\|
38 .    ds PI \(*p
39 .    ds L" ``
40 .    ds R" ''
41 'br\}
42 .\"
43 .\" Escape single quotes in literal strings from groff's Unicode transform.
44 .ie \n(.g .ds Aq \(aq
45 .el       .ds Aq '
46 .\"
47 .\" If the F register is turned on, we'll generate index entries on stderr for
48 .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
49 .\" entries marked with X<> in POD.  Of course, you'll have to process the
50 .\" output yourself in some meaningful fashion.
51 .ie \nF \{\
52 .    de IX
53 .    tm Index:\\$1\t\\n%\t"\\$2"
54 ..
55 .    nr % 0
56 .    rr F
57 .\}
58 .el \{\
59 .    de IX
60 ..
61 .\}
62 .\"
63 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
64 .\" Fear.  Run.  Save yourself.  No user-serviceable parts.
65 .    \" fudge factors for nroff and troff
66 .if n \{\
67 .    ds #H 0
68 .    ds #V .8m
69 .    ds #F .3m
70 .    ds #[ \f1
71 .    ds #] \fP
72 .\}
73 .if t \{\
74 .    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
75 .    ds #V .6m
76 .    ds #F 0
77 .    ds #[ \&
78 .    ds #] \&
79 .\}
80 .    \" simple accents for nroff and troff
81 .if n \{\
82 .    ds ' \&
83 .    ds ` \&
84 .    ds ^ \&
85 .    ds , \&
86 .    ds ~ ~
87 .    ds /
88 .\}
89 .if t \{\
90 .    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
91 .    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
92 .    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
93 .    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
94 .    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
95 .    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
96 .\}
97 .    \" troff and (daisy-wheel) nroff accents
98 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
99 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
100 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
101 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
102 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
103 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
104 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
105 .ds ae a\h'-(\w'a'u*4/10)'e
106 .ds Ae A\h'-(\w'A'u*4/10)'E
107 .    \" corrections for vroff
108 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
109 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
110 .    \" for low resolution devices (crt and lpr)
111 .if \n(.H>23 .if \n(.V>19 \
112 \{\
113 .    ds : e
114 .    ds 8 ss
115 .    ds o a
116 .    ds d- d\h'-1'\(ga
117 .    ds D- D\h'-1'\(hy
118 .    ds th \o'bp'
119 .    ds Th \o'LP'
120 .    ds ae ae
121 .    ds Ae AE
122 .\}
123 .rm #[ #] #H #V #F C
124 .\" ========================================================================
125 .\"
126 .IX Title "DLLTOOL 1"
127 .TH DLLTOOL 1 "2013-03-25" "binutils-2.23.2" "GNU Development Tools"
128 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
129 .\" way too many mistakes in technical documents.
130 .if n .ad l
131 .nh
132 .SH "NAME"
133 dlltool \- Create files needed to build and use DLLs.
134 .SH "SYNOPSIS"
135 .IX Header "SYNOPSIS"
136 dlltool [\fB\-d\fR|\fB\-\-input\-def\fR \fIdef-file-name\fR]
137         [\fB\-b\fR|\fB\-\-base\-file\fR \fIbase-file-name\fR]
138         [\fB\-e\fR|\fB\-\-output\-exp\fR \fIexports-file-name\fR]
139         [\fB\-z\fR|\fB\-\-output\-def\fR \fIdef-file-name\fR]
140         [\fB\-l\fR|\fB\-\-output\-lib\fR \fIlibrary-file-name\fR]
141         [\fB\-y\fR|\fB\-\-output\-delaylib\fR \fIlibrary-file-name\fR]
142         [\fB\-\-export\-all\-symbols\fR] [\fB\-\-no\-export\-all\-symbols\fR]
143         [\fB\-\-exclude\-symbols\fR \fIlist\fR]
144         [\fB\-\-no\-default\-excludes\fR]
145         [\fB\-S\fR|\fB\-\-as\fR \fIpath-to-assembler\fR] [\fB\-f\fR|\fB\-\-as\-flags\fR \fIoptions\fR]
146         [\fB\-D\fR|\fB\-\-dllname\fR \fIname\fR] [\fB\-m\fR|\fB\-\-machine\fR \fImachine\fR]
147         [\fB\-a\fR|\fB\-\-add\-indirect\fR]
148         [\fB\-U\fR|\fB\-\-add\-underscore\fR] [\fB\-\-add\-stdcall\-underscore\fR]
149         [\fB\-k\fR|\fB\-\-kill\-at\fR] [\fB\-A\fR|\fB\-\-add\-stdcall\-alias\fR]
150         [\fB\-p\fR|\fB\-\-ext\-prefix\-alias\fR \fIprefix\fR]
151         [\fB\-x\fR|\fB\-\-no\-idata4\fR] [\fB\-c\fR|\fB\-\-no\-idata5\fR]
152         [\fB\-\-use\-nul\-prefixed\-import\-tables\fR]
153         [\fB\-I\fR|\fB\-\-identify\fR \fIlibrary-file-name\fR] [\fB\-\-identify\-strict\fR]
154         [\fB\-i\fR|\fB\-\-interwork\fR]
155         [\fB\-n\fR|\fB\-\-nodelete\fR] [\fB\-t\fR|\fB\-\-temp\-prefix\fR \fIprefix\fR]
156         [\fB\-v\fR|\fB\-\-verbose\fR]
157         [\fB\-h\fR|\fB\-\-help\fR] [\fB\-V\fR|\fB\-\-version\fR]
158         [\fB\-\-no\-leading\-underscore\fR] [\fB\-\-leading\-underscore\fR]
159         [object\-file ...]
160 .SH "DESCRIPTION"
161 .IX Header "DESCRIPTION"
162 \&\fBdlltool\fR reads its inputs, which can come from the \fB\-d\fR and
163 \&\fB\-b\fR options as well as object files specified on the command
164 line.  It then processes these inputs and if the \fB\-e\fR option has
165 been specified it creates a exports file.  If the \fB\-l\fR option
166 has been specified it creates a library file and if the \fB\-z\fR option
167 has been specified it creates a def file.  Any or all of the \fB\-e\fR,
168 \&\fB\-l\fR and \fB\-z\fR options can be present in one invocation of
169 dlltool.
170 .PP
171 When creating a \s-1DLL\s0, along with the source for the \s-1DLL\s0, it is necessary
172 to have three other files.  \fBdlltool\fR can help with the creation of
173 these files.
174 .PP
175 The first file is a \fI.def\fR file which specifies which functions are
176 exported from the \s-1DLL\s0, which functions the \s-1DLL\s0 imports, and so on.  This
177 is a text file and can be created by hand, or \fBdlltool\fR can be used
178 to create it using the \fB\-z\fR option.  In this case \fBdlltool\fR
179 will scan the object files specified on its command line looking for
180 those functions which have been specially marked as being exported and
181 put entries for them in the \fI.def\fR file it creates.
182 .PP
183 In order to mark a function as being exported from a \s-1DLL\s0, it needs to
184 have an \fB\-export:<name_of_function>\fR entry in the \fB.drectve\fR
185 section of the object file.  This can be done in C by using the
186 \&\fIasm()\fR operator:
187 .PP
188 .Vb 2
189 \&          asm (".section .drectve");
190 \&          asm (".ascii \e"\-export:my_func\e"");
191 \&        
192 \&          int my_func (void) { ... }
193 .Ve
194 .PP
195 The second file needed for \s-1DLL\s0 creation is an exports file.  This file
196 is linked with the object files that make up the body of the \s-1DLL\s0 and it
197 handles the interface between the \s-1DLL\s0 and the outside world.  This is a
198 binary file and it can be created by giving the \fB\-e\fR option to
199 \&\fBdlltool\fR when it is creating or reading in a \fI.def\fR file.
200 .PP
201 The third file needed for \s-1DLL\s0 creation is the library file that programs
202 will link with in order to access the functions in the \s-1DLL\s0 (an `import
203 library').  This file can be created by giving the \fB\-l\fR option to
204 dlltool when it is creating or reading in a \fI.def\fR file.
205 .PP
206 If the \fB\-y\fR option is specified, dlltool generates a delay-import
207 library that can be used instead of the normal import library to allow
208 a program to link to the dll only as soon as an imported function is
209 called for the first time. The resulting executable will need to be
210 linked to the static delayimp library containing _\|\fI_delayLoadHelper2()\fR,
211 which in turn will import LoadLibraryA and GetProcAddress from kernel32.
212 .PP
213 \&\fBdlltool\fR builds the library file by hand, but it builds the
214 exports file by creating temporary files containing assembler statements
215 and then assembling these.  The \fB\-S\fR command line option can be
216 used to specify the path to the assembler that dlltool will use,
217 and the \fB\-f\fR option can be used to pass specific flags to that
218 assembler.  The \fB\-n\fR can be used to prevent dlltool from deleting
219 these temporary assembler files when it is done, and if \fB\-n\fR is
220 specified twice then this will prevent dlltool from deleting the
221 temporary object files it used to build the library.
222 .PP
223 Here is an example of creating a \s-1DLL\s0 from a source file \fBdll.c\fR and
224 also creating a program (from an object file called \fBprogram.o\fR)
225 that uses that \s-1DLL:\s0
226 .PP
227 .Vb 4
228 \&          gcc \-c dll.c
229 \&          dlltool \-e exports.o \-l dll.lib dll.o
230 \&          gcc dll.o exports.o \-o dll.dll
231 \&          gcc program.o dll.lib \-o program
232 .Ve
233 .PP
234 \&\fBdlltool\fR may also be used to query an existing import library
235 to determine the name of the \s-1DLL\s0 to which it is associated.  See the
236 description of the \fB\-I\fR or \fB\-\-identify\fR option.
237 .SH "OPTIONS"
238 .IX Header "OPTIONS"
239 The command line options have the following meanings:
240 .IP "\fB\-d\fR \fIfilename\fR" 4
241 .IX Item "-d filename"
242 .PD 0
243 .IP "\fB\-\-input\-def\fR \fIfilename\fR" 4
244 .IX Item "--input-def filename"
245 .PD
246 Specifies the name of a \fI.def\fR file to be read in and processed.
247 .IP "\fB\-b\fR \fIfilename\fR" 4
248 .IX Item "-b filename"
249 .PD 0
250 .IP "\fB\-\-base\-file\fR \fIfilename\fR" 4
251 .IX Item "--base-file filename"
252 .PD
253 Specifies the name of a base file to be read in and processed.  The
254 contents of this file will be added to the relocation section in the
255 exports file generated by dlltool.
256 .IP "\fB\-e\fR \fIfilename\fR" 4
257 .IX Item "-e filename"
258 .PD 0
259 .IP "\fB\-\-output\-exp\fR \fIfilename\fR" 4
260 .IX Item "--output-exp filename"
261 .PD
262 Specifies the name of the export file to be created by dlltool.
263 .IP "\fB\-z\fR \fIfilename\fR" 4
264 .IX Item "-z filename"
265 .PD 0
266 .IP "\fB\-\-output\-def\fR \fIfilename\fR" 4
267 .IX Item "--output-def filename"
268 .PD
269 Specifies the name of the \fI.def\fR file to be created by dlltool.
270 .IP "\fB\-l\fR \fIfilename\fR" 4
271 .IX Item "-l filename"
272 .PD 0
273 .IP "\fB\-\-output\-lib\fR \fIfilename\fR" 4
274 .IX Item "--output-lib filename"
275 .PD
276 Specifies the name of the library file to be created by dlltool.
277 .IP "\fB\-y\fR \fIfilename\fR" 4
278 .IX Item "-y filename"
279 .PD 0
280 .IP "\fB\-\-output\-delaylib\fR \fIfilename\fR" 4
281 .IX Item "--output-delaylib filename"
282 .PD
283 Specifies the name of the delay-import library file to be created by dlltool.
284 .IP "\fB\-\-export\-all\-symbols\fR" 4
285 .IX Item "--export-all-symbols"
286 Treat all global and weak defined symbols found in the input object
287 files as symbols to be exported.  There is a small list of symbols which
288 are not exported by default; see the \fB\-\-no\-default\-excludes\fR
289 option.  You may add to the list of symbols to not export by using the
290 \&\fB\-\-exclude\-symbols\fR option.
291 .IP "\fB\-\-no\-export\-all\-symbols\fR" 4
292 .IX Item "--no-export-all-symbols"
293 Only export symbols explicitly listed in an input \fI.def\fR file or in
294 \&\fB.drectve\fR sections in the input object files.  This is the default
295 behaviour.  The \fB.drectve\fR sections are created by \fBdllexport\fR
296 attributes in the source code.
297 .IP "\fB\-\-exclude\-symbols\fR \fIlist\fR" 4
298 .IX Item "--exclude-symbols list"
299 Do not export the symbols in \fIlist\fR.  This is a list of symbol names
300 separated by comma or colon characters.  The symbol names should not
301 contain a leading underscore.  This is only meaningful when
302 \&\fB\-\-export\-all\-symbols\fR is used.
303 .IP "\fB\-\-no\-default\-excludes\fR" 4
304 .IX Item "--no-default-excludes"
305 When \fB\-\-export\-all\-symbols\fR is used, it will by default avoid
306 exporting certain special symbols.  The current list of symbols to avoid
307 exporting is \fBDllMain@12\fR, \fBDllEntryPoint@0\fR,
308 \&\fBimpure_ptr\fR.  You may use the \fB\-\-no\-default\-excludes\fR option
309 to go ahead and export these special symbols.  This is only meaningful
310 when \fB\-\-export\-all\-symbols\fR is used.
311 .IP "\fB\-S\fR \fIpath\fR" 4
312 .IX Item "-S path"
313 .PD 0
314 .IP "\fB\-\-as\fR \fIpath\fR" 4
315 .IX Item "--as path"
316 .PD
317 Specifies the path, including the filename, of the assembler to be used
318 to create the exports file.
319 .IP "\fB\-f\fR \fIoptions\fR" 4
320 .IX Item "-f options"
321 .PD 0
322 .IP "\fB\-\-as\-flags\fR \fIoptions\fR" 4
323 .IX Item "--as-flags options"
324 .PD
325 Specifies any specific command line options to be passed to the
326 assembler when building the exports file.  This option will work even if
327 the \fB\-S\fR option is not used.  This option only takes one argument,
328 and if it occurs more than once on the command line, then later
329 occurrences will override earlier occurrences.  So if it is necessary to
330 pass multiple options to the assembler they should be enclosed in
331 double quotes.
332 .IP "\fB\-D\fR \fIname\fR" 4
333 .IX Item "-D name"
334 .PD 0
335 .IP "\fB\-\-dll\-name\fR \fIname\fR" 4
336 .IX Item "--dll-name name"
337 .PD
338 Specifies the name to be stored in the \fI.def\fR file as the name of
339 the \s-1DLL\s0 when the \fB\-e\fR option is used.  If this option is not
340 present, then the filename given to the \fB\-e\fR option will be
341 used as the name of the \s-1DLL\s0.
342 .IP "\fB\-m\fR \fImachine\fR" 4
343 .IX Item "-m machine"
344 .PD 0
345 .IP "\fB\-machine\fR \fImachine\fR" 4
346 .IX Item "-machine machine"
347 .PD
348 Specifies the type of machine for which the library file should be
349 built.  \fBdlltool\fR has a built in default type, depending upon how
350 it was created, but this option can be used to override that.  This is
351 normally only useful when creating DLLs for an \s-1ARM\s0 processor, when the
352 contents of the \s-1DLL\s0 are actually encode using Thumb instructions.
353 .IP "\fB\-a\fR" 4
354 .IX Item "-a"
355 .PD 0
356 .IP "\fB\-\-add\-indirect\fR" 4
357 .IX Item "--add-indirect"
358 .PD
359 Specifies that when \fBdlltool\fR is creating the exports file it
360 should add a section which allows the exported functions to be
361 referenced without using the import library.  Whatever the hell that
362 means!
363 .IP "\fB\-U\fR" 4
364 .IX Item "-U"
365 .PD 0
366 .IP "\fB\-\-add\-underscore\fR" 4
367 .IX Item "--add-underscore"
368 .PD
369 Specifies that when \fBdlltool\fR is creating the exports file it
370 should prepend an underscore to the names of \fIall\fR exported symbols.
371 .IP "\fB\-\-no\-leading\-underscore\fR" 4
372 .IX Item "--no-leading-underscore"
373 .PD 0
374 .IP "\fB\-\-leading\-underscore\fR" 4
375 .IX Item "--leading-underscore"
376 .PD
377 Specifies whether standard symbol should be forced to be prefixed, or
378 not.
379 .IP "\fB\-\-add\-stdcall\-underscore\fR" 4
380 .IX Item "--add-stdcall-underscore"
381 Specifies that when \fBdlltool\fR is creating the exports file it
382 should prepend an underscore to the names of exported \fIstdcall\fR
383 functions. Variable names and non-stdcall function names are not modified.
384 This option is useful when creating GNU-compatible import libs for third
385 party DLLs that were built with MS-Windows tools.
386 .IP "\fB\-k\fR" 4
387 .IX Item "-k"
388 .PD 0
389 .IP "\fB\-\-kill\-at\fR" 4
390 .IX Item "--kill-at"
391 .PD
392 Specifies that when \fBdlltool\fR is creating the exports file it
393 should not append the string \fB@ <number>\fR.  These numbers are
394 called ordinal numbers and they represent another way of accessing the
395 function in a \s-1DLL\s0, other than by name.
396 .IP "\fB\-A\fR" 4
397 .IX Item "-A"
398 .PD 0
399 .IP "\fB\-\-add\-stdcall\-alias\fR" 4
400 .IX Item "--add-stdcall-alias"
401 .PD
402 Specifies that when \fBdlltool\fR is creating the exports file it
403 should add aliases for stdcall symbols without \fB@ <number>\fR
404 in addition to the symbols with \fB@ <number>\fR.
405 .IP "\fB\-p\fR" 4
406 .IX Item "-p"
407 .PD 0
408 .IP "\fB\-\-ext\-prefix\-alias\fR \fIprefix\fR" 4
409 .IX Item "--ext-prefix-alias prefix"
410 .PD
411 Causes \fBdlltool\fR to create external aliases for all \s-1DLL\s0
412 imports with the specified prefix.  The aliases are created for both
413 external and import symbols with no leading underscore.
414 .IP "\fB\-x\fR" 4
415 .IX Item "-x"
416 .PD 0
417 .IP "\fB\-\-no\-idata4\fR" 4
418 .IX Item "--no-idata4"
419 .PD
420 Specifies that when \fBdlltool\fR is creating the exports and library
421 files it should omit the \f(CW\*(C`.idata4\*(C'\fR section.  This is for compatibility
422 with certain operating systems.
423 .IP "\fB\-\-use\-nul\-prefixed\-import\-tables\fR" 4
424 .IX Item "--use-nul-prefixed-import-tables"
425 Specifies that when \fBdlltool\fR is creating the exports and library
426 files it should prefix the \f(CW\*(C`.idata4\*(C'\fR and \f(CW\*(C`.idata5\*(C'\fR by zero an
427 element. This emulates old gnu import library generation of
428 \&\f(CW\*(C`dlltool\*(C'\fR. By default this option is turned off.
429 .IP "\fB\-c\fR" 4
430 .IX Item "-c"
431 .PD 0
432 .IP "\fB\-\-no\-idata5\fR" 4
433 .IX Item "--no-idata5"
434 .PD
435 Specifies that when \fBdlltool\fR is creating the exports and library
436 files it should omit the \f(CW\*(C`.idata5\*(C'\fR section.  This is for compatibility
437 with certain operating systems.
438 .IP "\fB\-I\fR \fIfilename\fR" 4
439 .IX Item "-I filename"
440 .PD 0
441 .IP "\fB\-\-identify\fR \fIfilename\fR" 4
442 .IX Item "--identify filename"
443 .PD
444 Specifies that \fBdlltool\fR should inspect the import library
445 indicated by \fIfilename\fR and report, on \f(CW\*(C`stdout\*(C'\fR, the name(s)
446 of the associated \s-1DLL\s0(s).  This can be performed in addition to any
447 other operations indicated by the other options and arguments.
448 \&\fBdlltool\fR fails if the import library does not exist or is not
449 actually an import library. See also \fB\-\-identify\-strict\fR.
450 .IP "\fB\-\-identify\-strict\fR" 4
451 .IX Item "--identify-strict"
452 Modifies the behavior of the \fB\-\-identify\fR option, such
453 that an error is reported if \fIfilename\fR is associated with
454 more than one \s-1DLL\s0.
455 .IP "\fB\-i\fR" 4
456 .IX Item "-i"
457 .PD 0
458 .IP "\fB\-\-interwork\fR" 4
459 .IX Item "--interwork"
460 .PD
461 Specifies that \fBdlltool\fR should mark the objects in the library
462 file and exports file that it produces as supporting interworking
463 between \s-1ARM\s0 and Thumb code.
464 .IP "\fB\-n\fR" 4
465 .IX Item "-n"
466 .PD 0
467 .IP "\fB\-\-nodelete\fR" 4
468 .IX Item "--nodelete"
469 .PD
470 Makes \fBdlltool\fR preserve the temporary assembler files it used to
471 create the exports file.  If this option is repeated then dlltool will
472 also preserve the temporary object files it uses to create the library
473 file.
474 .IP "\fB\-t\fR \fIprefix\fR" 4
475 .IX Item "-t prefix"
476 .PD 0
477 .IP "\fB\-\-temp\-prefix\fR \fIprefix\fR" 4
478 .IX Item "--temp-prefix prefix"
479 .PD
480 Makes \fBdlltool\fR use \fIprefix\fR when constructing the names of
481 temporary assembler and object files.  By default, the temp file prefix
482 is generated from the pid.
483 .IP "\fB\-v\fR" 4
484 .IX Item "-v"
485 .PD 0
486 .IP "\fB\-\-verbose\fR" 4
487 .IX Item "--verbose"
488 .PD
489 Make dlltool describe what it is doing.
490 .IP "\fB\-h\fR" 4
491 .IX Item "-h"
492 .PD 0
493 .IP "\fB\-\-help\fR" 4
494 .IX Item "--help"
495 .PD
496 Displays a list of command line options and then exits.
497 .IP "\fB\-V\fR" 4
498 .IX Item "-V"
499 .PD 0
500 .IP "\fB\-\-version\fR" 4
501 .IX Item "--version"
502 .PD
503 Displays dlltool's version number and then exits.
504 .IP "\fB@\fR\fIfile\fR" 4
505 .IX Item "@file"
506 Read command-line options from \fIfile\fR.  The options read are
507 inserted in place of the original @\fIfile\fR option.  If \fIfile\fR
508 does not exist, or cannot be read, then the option will be treated
509 literally, and not removed.
510 .Sp
511 Options in \fIfile\fR are separated by whitespace.  A whitespace
512 character may be included in an option by surrounding the entire
513 option in either single or double quotes.  Any character (including a
514 backslash) may be included by prefixing the character to be included
515 with a backslash.  The \fIfile\fR may itself contain additional
516 @\fIfile\fR options; any such options will be processed recursively.
517 .SH "SEE ALSO"
518 .IX Header "SEE ALSO"
519 The Info pages for \fIbinutils\fR.
520 .SH "COPYRIGHT"
521 .IX Header "COPYRIGHT"
522 Copyright (c) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
523 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
524 2010, 2011, 2012
525 Free Software Foundation, Inc.
526 .PP
527 Permission is granted to copy, distribute and/or modify this document
528 under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.3
529 or any later version published by the Free Software Foundation;
530 with no Invariant Sections, with no Front-Cover Texts, and with no
531 Back-Cover Texts.  A copy of the license is included in the
532 section entitled \*(L"\s-1GNU\s0 Free Documentation License\*(R".