swig/Examples
William S Fulton b0e29fbdf3 Add missing checks for failures in calls to PyUnicode_AsUTF8String.
Previously a seg fault could occur when passing invalid UTF8 strings (low
surrogates), eg passing u"\udcff" to the C layer (Python 3).
2017-12-04 20:14:04 +00:00
..
android
chicken
contract
csharp
d
go fix swig/swig#600 and fix swig/swig#955 2017-06-17 11:38:07 +12:00
guile Remove shebang from non executable file 2017-01-27 23:51:51 +00:00
java
javascript Fix various comment and documentation typos 2017-08-13 18:04:33 +12:00
lua Remove differences from lua example compared to Python version 2017-02-06 20:30:13 +00:00
modula3
mzscheme
ocaml Update ocaml documentation (#885) 2017-02-01 10:46:17 +13:00
octave Remove random statement glued onto comment line 2017-07-28 09:37:41 +12:00
perl5 Remove GCJ support 2017-10-09 08:32:01 +13:00
php Remove -noproxy support in the Examples of PHP7 2017-06-27 16:32:44 +12:00
php5 Fix indentation in PHP7 and PHP5 variables example 2017-06-26 15:36:55 +12:00
pike
python Add missing checks for failures in calls to PyUnicode_AsUTF8String. 2017-12-04 20:14:04 +00:00
r Revert "Merge pull request #853 from ivannp/underscores" 2016-12-22 19:47:54 +00:00
ruby Remove GCJ support 2017-10-09 08:32:01 +13:00
s-exp
scilab Remove incorrect executable bit 2017-01-27 23:52:02 +00:00
tcl Remove GCJ support 2017-10-09 08:32:01 +13:00
test-suite Add missing checks for failures in calls to PyUnicode_AsUTF8String. 2017-12-04 20:14:04 +00:00
xml
index.html
Makefile.in Fix --with-2to3 configure option 2017-09-19 18:48:34 +01:00
README

SWIG Examples

The subdirectories of "Examples" named after SWIG's language backends
contain a number of simple examples that are primarily used for testing.

The file 'index.html' is the top of a hyperlinked document that
contains information about all of the examples along with various
notes related to each example.

Note: All of the examples rely upon the Makefile in this directory.
You may need to edit it to reflect the configuration of your machine
in case the configure script guesses incorrect settings.


*** Special note concerning C++ ***

The configure script is currently unable to handle all of the possible
options for producing dynamically loadable C++ extensions.  Here are
the rules of thumb for making C++ work:

 -  Try using the C++ as the linker for the shared library.  For example:

         g++ -shared $(OBJS) -o module.so

 -  If that doesn't work, you may need to explicitly link against some
    kind of C++ runtime library.  For example:

         ld -G $(OBJS) -L/opt/SUNWspro/lib -lCrun -o module.so

    This can be set by modifying the setting of CPP_DLLIBS in the
    Makefile.


*** Special note for SWIG Maintainers ***

When you add an example, consider arranging for the example to be also
useful as part of the SWIG testing framework.  To do this, include in
the example makefile a target "check" ("check: all" is sufficient for a
first pass), and add an invocation to ../Makefile.in under target
"check-examples" (or whatever is appropriate).  Later, we can add or
expand the actions under target "check" to do more in-depth testing.