1SWIG(1)                          User Commands                         SWIG(1)
2
3
4

NAME

6       swig - Simplified Wrapper and Interface Generator
7

SYNOPSIS

9       swig [ options ] " file"
10

DESCRIPTION

12       The  swig  command  is used to create wrapper code to connect C and C++
13       code to scripting languages like Perl, Python, Tcl etc. from the  defi‐
14       nition  of  the  interface.  For  detailed information on writing those
15       interface definitions please refer to  /usr/share/doc/swig-doc/Doc/Man‐
16       ual/index.html from the swig-doc package.
17
18       This manpage concentrates on explaining the invocation of the swig com‐
19       mand.
20

OPTIONS

22       Target Language Options
23
24       -allegrocl
25              Generate ALLEGROCL wrappers
26
27       -chicken
28              Generate CHICKEN wrappers
29
30       -clisp Generate CLISP wrappers
31
32       -cffi  Generate CFFI wrappers
33
34       -csharp
35              Generate C# wrappers
36
37       -d     Generate D wrappers
38
39       -go    Generate Go wrappers
40
41       -guile Generate Guile wrappers
42
43       -java  Generate Java wrappers
44
45       -javascript
46              Generate Javascript wrappers
47
48       -lua   Generate Lua wrappers
49
50       -modula3
51              Generate Modula 3 wrappers
52
53       -mzscheme
54              Generate Mzscheme wrappers
55
56       -ocaml Generate Ocaml wrappers
57
58       -octave
59              Generate Octave wrappers
60
61       -perl  Generate Perl wrappers
62
63       -php5  Generate PHP5 wrappers
64
65       -php7  Generate PHP7 wrappers
66
67       -pike  Generate Pike wrappers
68
69       -python
70              Generate Python wrappers
71
72       -r     Generate R (aka GNU S) wrappers
73
74       -ruby  Generate Ruby wrappers
75
76       -scilab
77              Generate Scilab wrappers
78
79       -sexp  Generate Lisp S-Expressions wrappers
80
81       -tcl   Generate Tcl wrappers
82
83       -uffi  Generate Common Lisp / UFFI wrappers
84
85       -xml   Generate XML wrappers
86
87       General Options
88
89       -addextern
90              Add extra extern declarations
91
92       -c++   Enable C++ processing
93
94       -co <file>
95              Check <file> out of the SWIG library
96
97       -copyctor
98              Automatically generate copy constructors wherever possible
99
100       -cpperraswarn
101              Treat the preprocessor #error statement as #warning (default)
102
103       -cppext <ext>
104              Change file extension of generated C++ files to  <ext>  (default
105              is cxx, except for PHP5 which uses cpp)
106
107       -copyright
108              Display copyright notices
109
110       -debug-classes
111              Display information about the classes found in the interface
112
113       -debug-module <n> Display module parse tree at stages 1-4, <n> is a csv
114              list of stages
115
116       -debug-symtabs
117              Display symbol tables information
118
119       -debug-symbols
120              Display target language symbols in the symbol tables
121
122       -debug-csymbols
123              Display C symbols in the symbol tables
124
125       -debug-lsymbols
126              Display target language layer symbols
127
128       -debug-tags
129              Display information about the tags found in the interface
130
131       -debug-template
132              Display information for debugging templates
133
134       -debug-top <n>
135              Display entire parse tree at stages 1-4, <n> is a  csv  list  of
136              stages
137
138       -debug-typedef
139              Display  information  about the types and typedefs in the inter‐
140              face
141
142       -debug-typemap
143              Display typemap debugging information
144
145       -debug-tmsearch
146              Display typemap search debugging information
147
148       -debug-tmused
149              Display typemaps used debugging information
150
151       -directors
152              Turn on director mode for all the classes, mainly for testing
153
154       -dirprot
155              Turn on wrapping  of  protected  members  for  director  classes
156              (default)
157
158       -D<symbol>
159              Define a symbol <symbol> (for conditional compilation)
160
161       -E     Preprocess only, does not generate wrapper code
162
163       -external-runtime [file]
164              Export the SWIG runtime stack
165
166       -fakeversion <v> Make SWIG fake the program version number to <v>
167
168       -fcompact
169              Compile in compact mode
170
171       -features <list> Set global features, where <list> is a comma separated
172       list of
173              features, eg -features directors,autodoc=1 If no explicit  value
174              is given to the feature, a default of 1 is used
175
176       -fastdispatch
177              Enable  fast dispatch mode to produce faster overload dispatcher
178              code
179
180       -Fmicrosoft
181              Display error/warning messages in Microsoft format
182
183       -Fstandard
184              Display error/warning messages in commonly used format
185
186       -fvirtual
187              Compile in virtual elimination mode
188
189       -help  This output
190
191       -I             - Don't search the current directory
192
193       -I<dir>
194              Look for SWIG files in directory <dir>
195
196       -ignoremissing
197              Ignore missing include files
198
199       -importall
200              Follow all #include statements as imports
201
202       -includeall
203              Follow all #include statements
204
205       -l<ifile>
206              Include SWIG library file <ifile>
207
208       -macroerrors
209              Report errors inside macros
210
211       -makedefault
212              Create default constructors/destructors (the default)
213
214       -M     List all dependencies
215
216       -MD    Is equivalent to `-M -MF <file>', except `-E' is not implied
217
218       -MF <file>
219              Generate dependencies into <file> and continue generating  wrap‐
220              pers
221
222       -MM    List dependencies, but omit files in SWIG library
223
224       -MMD   Like `-MD', but omit files in SWIG library
225
226       -module <name>
227              Set module name to <name>
228
229       -MP    Generate phony targets for all dependencies
230
231       -MT <target>
232              Set the target of the rule emitted by dependency generation
233
234       -nocontract
235              Turn off contract checking
236
237       -nocpperraswarn
238              Do not treat the preprocessor #error statement as #warning
239
240       -nodefault
241              Do not generate default constructors nor default destructors
242
243       -nodefaultctor
244              Do not generate implicit default constructors
245
246       -nodefaultdtor
247              Do not generate implicit default destructors
248
249       -nodirprot
250              Do not wrap director protected members
251
252       -noexcept
253              Do not wrap exception specifiers
254
255       -nofastdispatch
256              Disable fast dispatch mode (default)
257
258       -nopreprocess
259              Skip the preprocessor step
260
261       -notemplatereduce
262              Disable reduction of the typedefs in templates
263
264       -O     Enable the optimization options: -fastdispatch -fvirtual
265
266       -o <outfile>
267              Set name of C/C++ output file to <outfile>
268
269       -oh <headfile>
270              Set name of C++ output header file for directors to <headfile>
271
272       -outcurrentdir
273              Set  default  output  dir to current dir instead of input file's
274              path
275
276       -outdir <dir>
277              Set language specific files output directory to <dir>
278
279       -pcreversion
280              Display PCRE version information
281
282       -small Compile in virtual elimination & compact mode
283
284       -swiglib
285              Report location of SWIG library and exit
286
287       -templatereduce
288              Reduce all the typedefs in templates
289
290       -v     Run in verbose mode
291
292       -version
293              Display SWIG version number
294
295       -Wall  Remove all warning suppression, also implies -Wextra
296
297       -Wallkw
298              Enable keyword warnings for all the supported languages
299
300       -Werror
301              Treat warnings as errors
302
303       -Wextra
304              Adds the following additional warnings: 202,309,403,512,321,322
305
306       -w<list>
307              Suppress/add warning messages, eg -w401,+321 - see Warnings.html
308
309       -xmlout <file>
310              Write XML version of the parse tree to <file> after normal  pro‐
311              cessing
312
313       Options  can  also be defined using the SWIG_FEATURES environment vari‐
314       able, for example:
315
316              $ SWIG_FEATURES="-Wall"
317              $ export SWIG_FEATURES
318              $ swig -python interface.i
319
320       is equivalent to:
321
322              $ swig -Wall -python interface.i
323
324       Tcl 8 Options (available with -tcl)
325
326       -itcl  Enable ITcl support
327
328       -nosafe
329              Leave out SafeInit module function.
330
331       -prefix <name>
332              Set a prefix <name> to be prepended to all names
333
334       -namespace
335              Build module into a Tcl 8 namespace
336
337       -pkgversion
338              Set package version
339
340       Note: 'swig -<lang> -help' displays options for a specific target  lan‐
341       guage.
342

AUTHOR

344       SWIG  was  originally created by David Beazley. For up-to-date informa‐
345       tion    about     authors     and     contributors     please     check
346       http://www.swig.org/guilty.html.   This  manual  page  was  written  by
347       Torsten Landschoff <torsten@debian.org> and updated by Jitka Plesnikova
348       <jplesnik@redhat.com> (but may be used by others).
349
350
351
352swig                             February 2019                         SWIG(1)
Impressum