swig
swig(1) Simplified Wrapper and Interface Generator swig(1)
NAME
swig - produce scripting language wrapper code from an interface speci-
fication file
SYNOPSIS
swig [ options ] file.i
DESCRIPTION
swig generates wrapper code needed to integrate C,C++, and Objective-C
functions and variables with Tcl, Perl, Python, and Guile and produces
documentation. Consult the SWIG user manual for more details.
OPTIONS
The following major options are available. More options are available
by typing 'swig -help'.
-tcl Generate Tcl wrappers
-tcl8 Generate Tcl8.0 wrappers
-perl5 Generate Perl5 wrappers
-python Generate Python wrappers
-perl4 Generate Perl4 wrappers
-guile Generate Guile-iii wrappers
-dascii Generate ASCII format documentation
-dlatex Generate LaTeX format documentation
-dhtml Generate HTML format documentation
-dnone Generate no documentation
-I incdir Look in incdir for SWIG related include files
-llibfile Append a SWIG library file to the input.
-D symbol Define a symbol symbol for conditional compilation.
-v verbose mode (perhaps overly verbose)
-version Print SWIG version information
-nocoment Ignore all comments in interface file
-strict n Set pointer type-checking strictness to n n may be 0,
1 or 2.
-o outfile Change the name of the output file.
-c Do not include SWIG runtime functions (used for cre-
ating multi-module packages).
-c++ Enable special processing for C++.
-objc Enable Objective-C parsing.
-make_default Generate default constructors and destructors.
-co Check a file out of the SWIG library.
-ci Check a file into the SWIG library (must have write
permission)
-stat Display statistics.
-help Print all of the available command line options.
INTERFACE FILES
The interface file is specified on the swig command line as the file to
operate on. You may specify only one file on the command line. (See
the include directive in the user's manual for ways around this.)
As input, an interface file (typically with a .i suffix) must be given.
A minimal specification of this file is as follows:
%module mymodule
%{
/* Include your headers here */
%}
/* List variables and function prototypes in ANSI C syntax */
For example :
%module example
%{
#include "my_header.h"
%}
extern int My_variable;
extern double foo(double a, double b);
extern void bar(char *);
OUTPUT
Given the input "file.i". swig produces an output file called
"file_wrap.c" (You can override this using the -o option). This file
should be compiled with the C/C++ compiler and linked with the rest of
your code.
RESOURCES
SWIG documentation and updates are available at
http://www.cs.utah.edu/~beazley/SWIG
AUTHOR
Man page written by Patrick Tullmann. SWIG is all Dave's. (Dave Beaz-
ley, that is.)
LIMITATIONS
Hah! Bring it all on.
BUGS
None reported at this time.
VERSION
SWIG 1.1
SEE ALSO
Tcl(n), python(1), perl(1)
SWIG 1.1 June 23 1997 swig(1)