X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/42637d60047a9f4763140648e028a83b22ebbbbb..b4eecebd423df0c6efe86d7658cd3df818d67ed8:/wxPython/SWIG/README.txt?ds=sidebyside diff --git a/wxPython/SWIG/README.txt b/wxPython/SWIG/README.txt index 83bcaf7763..050d52e739 100644 --- a/wxPython/SWIG/README.txt +++ b/wxPython/SWIG/README.txt @@ -1,5 +1,5 @@ -SWIG 1.3 Patches -================ +SWIG 1.3.x Patches +================== This directory holds a set of patches for the CVS version of SWIG that are required if you wish to use SWIG for wxPython development, or for @@ -8,74 +8,128 @@ wxPython. These have been submitted to SWIG's SourceForge patch tracker, so hopefully they will get incorporated into the main SWIG source tree soon. -wxPython currently uses the 20-Feb-2004 version of SWIG. You can get -that version from their CVS using these commands:: +wxPython currently uses the 1.3.29 version of SWIG, which you can get +from https://sourceforge.net/projects/swig/, plus the patch(es) in +this directory. Download the SWIG sources, apply the patch(es) here +and then build as normal. I have also have made available a tarball +containing the patched SWIG sources, plus a win32 binary, located +here: + http://starship.python.net/crew/robind/wxPython/tools/ - cvs -d :pserver:anonymous@cvs.sourceforge.net:/cvsroot/swig login - +If you want to use the patched version of SWIG and still have the +stock version available for other projects, then you can configure the +patched version to use a different --prefix and then specify that +executable when running setup.py, like this: - cvs -d :pserver:anonymous@cvs.sourceforge.net:/cvsroot/swig \ - checkout -D 20-FEB-2004 SWIG + python setup.py SWIG=/path/to/my/swig [other params] + +------------------------------------------------------------------------ + +swig-1.3.29.patch + + SWIG changed how the import statements are output to the proxy + file, but this also caused the order to change (they all moved to + the very top of the file) so this broke the module docstring, as + well as some behavior that Chandler development is depending upon, + so this patch changes back to how it was done in prior releases. + + Changed the exception message used for TypeErrors to make a little + more sense. + + Added support for dropping the leading wx from wxNames using + %rename("%(wxpy)s") ""; + + Don't set a module attribute for the *_swigregister functions, + just call the one in the extension module directly. + + Fixes to allow compiling with Python 2.5 headers. + + +------------------------------------------------------------------------ + +swig-1.3.27.patch + + SWIG changed slightly how the runtime type_info data is structured + in order to optimize load time and runtime access. wxPython + uncovered a bug in the implementation, so this patch includes the + fix that was checked in to CVS for 1.3.28. + + SWIG changed how the import statements are output to the proxy + file, but this also caused the order to change (they all moved to + the very top of the file) so this broke the module docstring, as + well as some behavior that Chandler development is depending upon, + so this patch changes back to how it was done in prior releases. + + Bug fix for SWIG's definition of the %makedefault macro. + + Fixes to allow compiling with Python 2.5 headers. + + ------------------------------------------------------------------------ +swig-1.3.24.patch (now obsolete) + + A bug was introduced in SWIG 1.3.23 and remains in 1.3.24 that + causes compilation problems with wxPython (copies are being made + of objects that don't have a copy constructor.) This patch fixes + the code generator to use a reference to the object instead of + making a copy. + + Part of my autodoc patch was disabled because a unit-test failed. + It turns out that the failure was due to a name clash in the unit + test itself, so I re-enabled that section of code in this patch. + + Don't generate the autodocs string for a class if it has a + docstring attribute. + + Some typos fixed, etc. -swig.python-docstring.patch Adds "autodoc" and "docstring" features. - See SF Patch #883402 - Also changes the "addtofunc" feature to - "pythonappend" and also adds a - "pythonprepend" feature that prepends - pythoncode to the begining of a - SWIG-generated proxy function or method. - Add support for two new options to the - %module directive. The first allows you - to specify a docstring for the proxy - module, you use it like this:: - %module(docstring="blah") modulename +------------------------------------------------------------------------ +This patch was added to SWIG's CVS on 10/2/2004 and a modified version +of it is in 1.3.23 and 1.3.24. +------------------------------------------------------------------------ + + +swig.python-2.patch - And then when generating the - modulename.py file SWIG will make a - docstring using the value given. + Adds the following features to the Python Module in SWIG. See the + updated docs in the patch for more details. - The second %module option allows you to - specify the name of the package that the - module will live in. This is useful when - the .i file is %imported by other .i - files. If they are to live in separate - packages then the importer can't do local - imports of the importee. If both modules - have the same package name then nothing - is generated differently than the current - SWIG functionality. If they are - different then the package name of the - importee is prepended to the import - statement and the base class declarations - in the importer. For example:: + %feature("autodoc") + %feature("docstring") + %feature("pythonprepend") + %feature("pythonappend") - %module(pacakge="wx") _core + %module(docstring="string") + %module(package="string") - Multiple %module options can be specfied, - separated by commmas. + https://sourceforge.net/tracker/index.php?func=detail&aid=1023309&group_id=1645&atid=301645 -swig.xmlout.patch Fixes a couple problems in the XML output - of SWIG: an extra "/>" was removed and - newlines in attribute values were changed - to the #10; entity reference so they will - be preserved by parsers. +------------------------------------------------------------------------ +This patch was applied to SWIG's CVS on 07/12/2004 and is in the +1.3.22 release. +------------------------------------------------------------------------ + +swig.xmlout.patch Fixes a couple problems in the XML output + of SWIG: an extra "/>" was removed and + newlines in attribute values were changed + to the #10; entity reference so they will + be preserved by parsers. - Also, added options for dumping or - writing to a file the XML of the parse - tree *after* other language modules have - been run (previously you could only do - the XML output *instead of* a regular - language module.) - See SF Patch #864689 + Also, added options for dumping or + writing to a file the XML of the parse + tree *after* other language modules have + been run (previously you could only do + the XML output *instead of* a regular + language module.) + See SF Patch #864689 @@ -84,21 +138,21 @@ These patches have already been checked in to SWIG's CVS and are in the 1.3.20 release. ------------------------------------------------------------------------ -swig.SplitLines.patch Adds a new SplitLines function to the DOH - library. See SF Patch #829317. - *Checked in 10/31/2003* - -swig.xml.patch Adds an option that drastically reduces - the size of the XML output of SWIG, which - increases the performance of the - build_renamers script used in the wxPython - build. See SF Patch #829319. - *Checked in 10/31/2003* - -swig.python.patch Lots of changes for SWIG's Python module, - especially in how the proxy code is - generated. See swig.python.patch.txt for - more details, also SF Patch #829325. - *Checked in 10/31/2003* +swig.SplitLines.patch Adds a new SplitLines function to the DOH + library. See SF Patch #829317. + *Checked in 10/31/2003* + +swig.xml.patch Adds an option that drastically reduces + the size of the XML output of SWIG, which + increases the performance of the + build_renamers script used in the wxPython + build. See SF Patch #829319. + *Checked in 10/31/2003* + +swig.python.patch Lots of changes for SWIG's Python module, + especially in how the proxy code is + generated. See swig.python.patch.txt for + more details, also SF Patch #829325. + *Checked in 10/31/2003* ------------------------------------------------------------------------