Changes for version 1.1
- 1/4/98 : Changed structured of the Examples directory to be more friendly to Borland C++.
- 1/4/98 : Added the function Makefile.win.bc for compiling the examples under Borland 5.2.
- 1/4/98 : Slight change to the perl5 module and C++ compilation. The <math.h> library is now included before any Perl headers because Perl the extern "C" linkage of math.h screws alot of things up (especially on Windows).
- 1/2/98 : Change to the Python module that reduces the number of constants created by C++ classes, inheritance, and shadow classes. This modification may introduce a few slight incompatibilities if you attempt to use the non-shadow class interface with shadow classes enabled. Patch contributed by Mike Romberg.
- 1/2/98 : Support for Tcl 8.0 namespaces has been added. This *replaces* the original SWIG mechanism that assumed [incr Tcl] namespaces. To use namespaces, simply run SWIG with the following options
- swig -tcl -namespace foo.i
- This places everything in a namespace that matches the module name
- swig -tcl -namespace -prefix bar foo.i
- This places everything in the namespace 'bar'
- The use of namespaces is new in Tcl 8.0. However, the wrapper code generated by SWIG will still work with all versions of Tcl newer than and including Tcl 7.3/Tk3.6 even if the -namespace option is used.
- POTENTIAL INCOMPATIBILITY *** This change may break existing applications that relied on the -prefix and -namespace options.
- swig -tcl -namespace foo.i
- 1/2/98 : Added the following constants to the Tcl wrapper code
- SWIG_name - Name of the SWIG module SWIG_prefix - Prefix/namespace appended to command names SWIG_namespace - Name of the namespace
- SWIG library writers can use these to their advantages.
- 1/2/98 : Fixed a bug in the Tcl8 module related to the creation of pointer constants (the function SWIG_MakePtr was missing from the wrapper code).
- 1/2/98 : Added the consthash.i library file to the Tcl and Tcl8 modules.
- 1/1/98 : Changed and cleaned up the Python typemaps.i file. The following significant changes were made :
- 1. The OUTPUT typemap now returns Python tuples instead of lists. Lists can be returned as before by using the L_OUTPUT type. If compatibility with older versions is needed, run SWIG with the -DOUTPUT_LIST option.
- 2. The BOTH typemap has been renamed to INOUT. For backwards compatibility, the "BOTH" method still exists however.
- 3. Output typemaps now generate less code than before.
- Changes to typemaps.i may break existing Python scripts that assume output in the form of a list.
- POTENTIAL INCOMPATIBILITY ***
- 12/31/97: Fixed long overdue problems with the testing scripts and certain makefiles that required the use of the bash shell. Everything should work properly with the standard Bourne shell (sh) now.
- 12/31/97: Modified typemaps to allow $basetype as a valid local variable. This allows for all sorts of bizarre hackish typemaps that do cool things. Patch contributed by Dominique Dumont.
- 12/31/97: Switched accessor functions generated for member data to C preprocessor macros (except in cases involving typemaps or char *).
- 12/31/97: Fixed a bug related to C++ member data involving references.
- 12/31/97: Changed accessor functions for C++ member functions to preprocessor macros. This cleans up the wrapper code and results in fewer function definitions.
- 12/31/97: Changed the default C constructor to use calloc() instead of malloc()
- 12/30/97: Changed the creation of constants in the Perl5 module. For all practical purposes, they should work in exactly the same way as before except that they now require much less wrapper code. Modules containing large numbers of constants may see greater than a 50% reduction in wrapper code size.
- 12/30/97: Modified the Python module to be more intelligent about the creation of constants. SWIG no longer generates redundant global variables and the size of the module initialization function should be reduced. (Many thanks to Jim Fulton).
- 12/29/97: Fixed a bug in C++ code generation related to member functions, default arguments, and references.
- 12/29/97: Fixed configure script and a few makefiles to support Python 1.5
- 12/29/97: Added 'embed15.i' library file. This file should be used to staticly link versions of Python 1.5. To make it the default, simply copy 'swig_lib/python/embed15.i' to 'swig_lib/python/embed.i'
Provides
in Examples/perl5/filedialog/FileSelect.pm
in Examples/tcl/objc/list.pm
in Examples/perl5/SWIGtoXS/produce.pm
in Tests/Doc/swig.pm
in Tests/Doc/text.pm
Examples
- Examples/GIFPlot/Data/logs.9604
- Examples/GIFPlot/Data/mesh.tris
- Examples/GIFPlot/Doc/frame0.gif
- Examples/GIFPlot/Doc/frame1.gif
- Examples/GIFPlot/Doc/frame2.gif
- Examples/GIFPlot/Doc/plot3d_2.gif
- Examples/GIFPlot/Doc/view3d.gif
- Examples/GIFPlot/Doc/view3d_2.gif
- Examples/GIFPlot/Examples/clip/Makefile
- Examples/GIFPlot/Examples/hello/Makefile
- Examples/GIFPlot/Examples/inset/plot3d.c
- Examples/GIFPlot/Examples/ortho/plot3d.c
- Examples/GIFPlot/Examples/plot/cm15
- Examples/GIFPlot/Examples/plot2dc/cm15
- Examples/GIFPlot/Examples/plot2di/cm15
- Examples/GIFPlot/Examples/plot3d/Makefile
- Examples/GIFPlot/Examples/plot3d/plot3d.c
- Examples/GIFPlot/Examples/plot3dc/plot3d.c
- Examples/GIFPlot/Examples/view/cm15
- Examples/GIFPlot/Include/gifplot.h
- Examples/GIFPlot/Lib/color.c
- Examples/GIFPlot/Lib/makefile.msc
- Examples/GIFPlot/Lib/pixmap.c
- Examples/GIFPlot/Perl/README
- Examples/GIFPlot/Perl/cmap
- Examples/GIFPlot/Perl/simple.pl
- Examples/GIFPlot/Python/Makefile
- Examples/GIFPlot/Python/Makefile.msc
- Examples/GIFPlot/Python/cmap
- Examples/GIFPlot/Python/image3d.py
- Examples/GIFPlot/Python/plotfunc.py
- Examples/GIFPlot/Python/simple.py
- Examples/MATLAB/example.c
- Examples/MATLAB/example.i
- Examples/OpenGL/Makefile
- Examples/OpenGL/README
- Examples/OpenGL/Tcl/shade.tcl
- Examples/OpenGL/Tcl/sphere.tcl
- Examples/OpenGL/Tcl/test.tcl
- Examples/OpenGL/Tcl/torus.tcl
- Examples/OpenGL/carray.i
- Examples/OpenGL/gl.i
- Examples/OpenGL/glx.i
- Examples/OpenGL/help.i
- Examples/OpenGL/typemap.i
- Examples/README
- Examples/guile/matrix/README
- Examples/guile/matrix/package.i
- Examples/guile/simple/example.c
- Examples/guile/simple/example.i
- Examples/guile/simple/example.scm
- Examples/lang/example.c
- Examples/lang/example.i
- Examples/lang/example.tcl
- Examples/perl4/simple/example.c
- Examples/perl4/simple/example.i
- Examples/perl4/simple/example.pl
- Examples/perl5/constraint/example.i
- Examples/perl5/constraint/example1.pl
- Examples/perl5/constraint/example2.pl
- Examples/perl5/defarg/example.c
- Examples/perl5/defarg/example.i
- Examples/perl5/defarg/example.pl
- Examples/perl5/graph/graph1/Makefile
- Examples/perl5/graph/graph1/graph.h
- Examples/perl5/simple/Makefile
- Examples/perl5/simple/Makefile.msc
- Examples/perl5/simple/example.c
- Examples/perl5/simple/example.i
- Examples/perl5/simple/example.pl
- Examples/perl5/tree/Makefile
- Examples/perl5/tree/README
- Examples/perl5/tree/tree.h
- Examples/perl5/typemaps/argv/Makefile
- Examples/perl5/typemaps/argv/Makefile.msc
- Examples/perl5/typemaps/argv/README
- Examples/perl5/typemaps/argv2/Makefile.msc
- Examples/perl5/typemaps/arraymember/amember.pl
- Examples/perl5/typemaps/database/Makefile
- Examples/perl5/typemaps/ignore/Makefile
- Examples/perl5/typemaps/ignore/README
- Examples/perl5/typemaps/ignore/ignore.i
- Examples/perl5/typemaps/integer/Makefile
- Examples/perl5/typemaps/integer/integer.i
- Examples/perl5/typemaps/output/example.c
- Examples/perl5/typemaps/passref/Makefile
- Examples/perl5/typemaps/passref/Makefile.msc
- Examples/perl5/typemaps/passref/README
- Examples/perl5/typemaps/passref/pass.i
- Examples/perl5/typemaps/reference/README
- Examples/perl5/typemaps/reference/example.c
- Examples/perl5/typemaps/reference/out.pl
- Examples/perl5/typemaps/return/Makefile.msc
- Examples/perl5/typemaps/return/README
- Examples/python/array/Makefile.msc
- Examples/python/array/README
- Examples/python/arraymember/Makefile.msc
- Examples/python/arraymember/arraymember.i
- Examples/python/arraymember2/test.py
- Examples/python/callback/Makefile.msc
- Examples/python/callback/test.py
- Examples/python/callback2/Makefile
- Examples/python/constraint/Makefile.msc
- Examples/python/constraint/constraints.i
- Examples/python/constraint/example.i
- Examples/python/constraint/example1.py
- Examples/python/constraint/example2.py
- Examples/python/database/README
- Examples/python/database/db.i
- Examples/python/defarg/README
- Examples/python/defarg/example.c
- Examples/python/defarg/example.i
- Examples/python/manual/README
- Examples/python/manual/gd1/Makefile
- Examples/python/manual/gd1/gd.i
- Examples/python/manual/gd2/mesh.tris
- Examples/python/manual/gd2/plotmesh.py
- Examples/python/manual/pde1/Makefile
- Examples/python/manual/pde1/pde.h
- Examples/python/manual/pde2/ex3.py
- Examples/python/manual/pde2/pde.c
- Examples/python/manual/pde2/pde.i
- Examples/python/manual/pde3/Makefile
- Examples/python/manual/pde3/README
- Examples/python/manual/pde3/pde.i
- Examples/python/manual/pde4/Makefile
- Examples/python/manual/pde4/README
- Examples/python/manual/pde4/ex7.py
- Examples/python/manual/pde4/pde.c
- Examples/python/manual/pde4/pde.h
- Examples/python/manual/pde_gd/README
- Examples/python/manual/pde_gd/ex8.py
- Examples/python/manual/pde_gd/image.py
- Examples/python/manual/widget/main.cxx
- Examples/python/manual/widget/plot.py
- Examples/python/manual/widget/widget.cxx
- Examples/python/multinherit/Makefile
- Examples/python/multinherit/Makefile.msc
- Examples/python/multinherit/README
- Examples/python/multinherit/inherit_test.py
- Examples/python/native/native.c
- Examples/python/nested/Makefile.msc
- Examples/python/nested/test.py
- Examples/python/objc/list.i
- Examples/python/objc/list.m
- Examples/python/objc/user.m
- Examples/python/runtime/Makefile
- Examples/python/runtime/README
- Examples/python/runtime/bar.i
- Examples/python/runtime/test.py
- Examples/python/shadow/README
- Examples/python/shadow/noshadow.py
- Examples/python/shadow/shadow.py
- Examples/python/simple/Makefile
- Examples/python/simple/Makefile.msc
- Examples/python/simple/README
- Examples/python/simple/example.c
- Examples/python/simple/example.i
- Examples/python/simple/example.py
- Examples/python/typemaps/Makefile
- Examples/python/typemaps/README
- Examples/python/typemaps/argv/Makefile.msc
- Examples/python/typemaps/argv/README
- Examples/python/typemaps/array2/Makefile.msc
- Examples/python/typemaps/array2/arraytest.py
- Examples/python/typemaps/ignore/Makefile.msc
- Examples/python/typemaps/ignore/README
- Examples/python/typemaps/output/README
- Examples/python/typemaps/output/example.c
- Examples/python/typemaps/return/Makefile
- Examples/python/typemaps/return/out.py
- Examples/python/typemaps/simple/Makefile.msc
- Examples/python/typemaps/simple/README
- Examples/python/typemaps/simple/example.c
- Examples/python/typemaps/simple/example.i
- Examples/python/typemaps/simple/example.py
- Examples/tcl/array/array.tcl
- Examples/tcl/array/test.tcl
- Examples/tcl/blttix/Makefile
- Examples/tcl/blttix/example.i
- Examples/tcl/blttix/example.tcl
- Examples/tcl/c++/inherit/inherit.tcl
- Examples/tcl/c++/list/Makefile.msc
- Examples/tcl/c++/multinherit/Makefile.msc
- Examples/tcl/c++/struct/Makefile.msc
- Examples/tcl/c++/struct/vector.tcl
- Examples/tcl/c++/struct/vector1.tcl
- Examples/tcl/constant/Makefile
- Examples/tcl/constant/Makefile.msc
- Examples/tcl/constant/README
- Examples/tcl/constant/example.i
- Examples/tcl/constant/example.tcl
- Examples/tcl/constraint/Makefile.msc
- Examples/tcl/constraint/example.i
- Examples/tcl/constraint/example1.tcl
- Examples/tcl/constraint/example2.tcl
- Examples/tcl/defarg/README
- Examples/tcl/defarg/example.c
- Examples/tcl/defarg/example.i
- Examples/tcl/defarg/example.tcl
- Examples/tcl/graph/graph.tcl
- Examples/tcl/itcl/simple/README
- Examples/tcl/itcl/simple/example.c
- Examples/tcl/itcl/simple/example.i
- Examples/tcl/itcl/simple/example.tcl
- Examples/tcl/objc/Makefile
- Examples/tcl/objc/README
- Examples/tcl/objc/list.i
- Examples/tcl/objc/list.m
- Examples/tcl/objc/test.tcl
- Examples/tcl/objc/user.h
- Examples/tcl/runtime/Makefile
- Examples/tcl/runtime/README
- Examples/tcl/runtime/base.h
- Examples/tcl/runtime/test.tcl
- Examples/tcl/shadow/Makefile.msc
- Examples/tcl/shadow/README
- Examples/tcl/shadow/list.i
- Examples/tcl/simple/example.c
- Examples/tcl/simple/example.i
- Examples/tcl/simple/example.tcl
- Examples/tcl/tcl_plugin/graph/graph.html
- Examples/tcl/tcl_plugin/simple/README
- Examples/tcl/tcl_plugin/simple/example.c
- Examples/tcl/tcl_plugin/simple/example.html
- Examples/tcl/tcl_plugin/simple/example.i
- Examples/tcl/tcl_plugin/simple/example.tcl
- Examples/tcl/tree/Makefile
- Examples/tcl/tree/tree.c
- Examples/tcl/tree/tree.h
- Examples/tcl/tree/tree.tcl
- Examples/tcl/typemaps/argv/argv.i
- Examples/tcl/typemaps/argv/test.tcl
- Examples/tcl/typemaps/constrain/example.c
- Examples/tcl/typemaps/constrain/example.i
- Examples/tcl/typemaps/constrain/example.tcl
- Examples/tcl/typemaps/database/db.i
- Examples/tcl/typemaps/interp/interp.i
- Examples/tcl/typemaps/output/README
- Examples/tcl/typemaps/output/example.c
- Examples/tcl/typemaps/output/output.i
- Examples/tcl/typemaps/retbyref/Makefile
- Examples/tcl/typemaps/retbyref/Makefile.msc
- Examples/tcl/typemaps/retbyref/return.i
- Examples/tcl/typemaps/return/out.tcl