swig (1) Linux Manual Page
NAME
swig – Simplified Wrapper and Interface Generator
SYNOPSIS
swig [options] file
DESCRIPTION
The swig command is used to create wrapper code to connect C and C++ code to scripting languages like Perl, Python, Tcl etc. from the definition of the interface. For detailed information on writing those interface definitions please refer to /usr/share/doc/swig-doc-2.0.9/Doc/Manual/index.html from the swig-doc package. This manpage concentrates on explaining the invocation of the swig command.
OPTIONS
Target Language Options:
-allegrocl- Generate ALLEGROCL wrappers
-chicken- Generate CHICKEN wrappers
-clisp- Generate CLISP wrappers
-cffi- Generate CFFI wrappers
-csharp- Generate C# wrappers
-d- Generate D wrappers
-go- Generate Go wrappers
-guile- Generate Guile wrappers
-java- Generate Java wrappers
-lua- Generate Lua wrappers
-modula3- Generate Modula 3 wrappers
-mzscheme- Generate Mzscheme wrappers
-ocaml- Generate Ocaml wrappers
-octave- Generate Octave wrappers
-perl- Generate Perl wrappers
-php- Generate PHP wrappers
-pike- Generate Pike wrappers
-python- Generate Python wrappers
-r- Generate R (aka GNU S) wrappers
-ruby- Generate Ruby wrappers
-sexp- Generate Lisp S-Expressions wrappers
-tcl- Generate Tcl wrappers
-uffi- Generate Common Lisp / UFFI wrappers
-xml- Generate XML wrappers i
General Options:
-addextern- Add extra extern declarations
-c++- Enable C++ processing
-cofile- Check file out of the SWIG library
-copyctor- Automatically generate copy constructors wherever possible
-cpperraswarn- Treat the preprocessor #error statement as #warning (default)
-copyright- Display copyright notices
-debug-classes- Display information about the classes found in the interface
-debug-modulen- Display module parse tree at stages 1-4, n is a csv list of stages
-debug-symtabs- Display symbol tables information
-debug-symbols- Display target language symbols in the symbol tables
-debug-csymbols- Display C symbols in the symbol tables
-debug-lsymbols- Display target language layer symbols
-debug-tags- Display information about the tags found in the interface
-debug-template- Display information for debugging templates
-debug-topn- Display entire parse tree at stages 1-4, n is a csv list of stages
-debug-typedef- Display information about the types and typedefs in the interface
-debug-typemap- Display typemap debugging information
-debug-tmsearch- Display typemap search debugging information
-debug-tmused- Display typemaps used debugging information
-directors- Turn on director mode for all the classes, mainly for testing
-dirprot- Turn on wrapping of protected members for director classes (default)
-Dsymbol- Define a symbol symbol (for conditional compilation)
-E- Preprocess only, does not generate wrapper code
-external-runtime [file]- Export the SWIG runtime stack
-fakeversionv- Make SWIG fake the program version number to v
-fcompact- Compile in compact mode
-featureslist- Set global features, where list is a comma separated list of features, eg -features directors,autodoc=1 If no explicit value is given to the feature, a default of 1 is used
-fastdispatch- Enable fast dispatch mode to produce faster overload dispatcher code
-Fmicrosoft- Display error/warning messages in Microsoft format
-Fstandard- Display error/warning messages in commonly used format
-fvirtual- Compile in virtual elimination mode
-help- This output
-I-- Don’t search the current directory
-Idir- Look for SWIG files in directory dir
-ignoremissing- Ignore missing include files
-importall- Follow all #include statements as imports
-includeall- Follow all #include statements
-lifile- Include SWIG library file ifile
-macroerrors- Report errors inside macros
-makedefault- Create default constructors/destructors (the default)
-M- List all dependencies
-MD- Is equivalent to ‘-M -MF file‘, except ‘-E’ is not implied
-MFfile- Generate dependencies into file and continue generating wrappers
-MM- List dependencies, but omit files in SWIG library
-MMD- Like ‘-MD’, but omit files in SWIG library
-modulename- Set module name to name
-MP- Generate phony targets for all dependencies
-MTtarget- Set the target of the rule emitted by dependency generation
-nocontract- Turn off contract checking
-nocpperraswarn- Do not treat the preprocessor #error statement as #warning
-nodefault- Do not generate default constructors nor default destructors
-nodefaultctor- Do not generate implicit default constructors
-nodefaultdtor- Do not generate implicit default destructors
-nodirprot- Do not wrap director protected members
-noexcept- Do not wrap exception specifiers
-nofastdispatch- Disable fast dispatch mode (default)
-nopreprocess- Skip the preprocessor step
-notemplatereduce- Disable reduction of the typedefs in templates
-O- Enable the optimization options: -fastdispatch -fvirtual
-ooutfile- Set name of the output file to outfile
-oh headfile- Set name of the output header file to headfile
-outcurrentdir- Set default output dir to current dir instead of input file’s path
-outdirdir- Set language specific files output directory to dir
-pcreversion- Display PCRE version information
-small- Compile in virtual elimination & compact mode
-swiglib- Report location of SWIG library and exit
-templatereduce- Reduce all the typedefs in templates
-v- Run in verbose mode
-version- Display SWIG version number
-Wall- Remove all warning suppression, also implies -Wextra
-Wallkw- Enable keyword warnings for all the supported languages
-Werror- Treat warnings as errors
-Wextra- Adds the following additional warnings: 202,309,403,512,321,322
-wlist- Suppress/add warning messages, eg -w401,+321 see Warnings.html
-xmlout file- Write XML version of the parse tree to file after normal processing
Tcl 8 Options (available with -tcl)
-itcl- Enable ITcl support
-nosafe- Leave out SafeInit module function.
-prefixname- Set a prefix name to be prepended to all names
-namespace- Build module into a Tcl 8 namespace
-pkgversion- Set package version
Note: ‘swig –lang -help’ displays options for a specific target language.
AUTHOR
SWIG was originally created by David Beazley. For up-to-date information about authors and contributors please check http://www.swig.org/guilty.html. This manual page was written by Torsten Landschoff <torsten [at] debian.org> and updated by Jitka Plesnikova <jplesnik [at] redhat.com> (but may be used by others).
