summaryrefslogtreecommitdiff
path: root/python/pycxx/README
diff options
context:
space:
mode:
Diffstat (limited to 'python/pycxx/README')
-rw-r--r--python/pycxx/README29
1 files changed, 29 insertions, 0 deletions
diff --git a/python/pycxx/README b/python/pycxx/README
new file mode 100644
index 0000000000..f64ce1f6b6
--- /dev/null
+++ b/python/pycxx/README
@@ -0,0 +1,29 @@
+PyCXX is designed to make it easier to extend Python with C++
+
+CXX/Objects is a set of C++ facilities to make it easier to write Python
+extensions. The chief way in which PyCXX makes it easier to write Python
+extensions is that it greatly increases the probability that your program
+will not make a reference-counting error and will not have to continually
+check error returns from the Python C API. CXX/Objects integrates Python
+with C++ in these ways:
+ + C++ exception handling is relied on to detect errors and clean up. In a
+ complicated function this is often a tremendous problem when writing in C.
+ With PyCXX, we let the compiler keep track of what objects need to be
+ dereferenced when an error occurs.
+ + The Standard Template Library (STL) and its many algorithms plug and
+ play with Python containers such as lists and tuples.
+ + The optional CXX/Extensions facility allows you to replace the clumsy C
+ tables with objects and method calls that define your modules and
+ extension objects.
+
+The original source will install CXX source code needed to help building
+python/C++ extension under /usr/share/python2.6/CXX which is a standard
+Debian directory. As Slackware does not have /usr/share/python2.6, I
+patched the installer to use /usr/share/CXX in order to follow the style of
+stock python packages like pygobject or pygtk. Be aware, though, that
+python packages that will use PyCXX will probably look for the needed files
+under the Debian standard path! You should investigate if their setup.py
+accept any switch to setup a different search path otherwise you will have
+to patch them.
+
+This requires pysetuptools.