README.rst 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. py3c
  2. ====
  3. py3c helps you port C extensions to Python 3.
  4. It provides a detailed guide, and a set of macros to make porting easy
  5. and reduce boilerplate.
  6. Design principles
  7. -----------------
  8. * Reduce chances of accidental subtle errors
  9. * Minimize boilerplate
  10. * Prefer the Python 3 way of doing things
  11. * Minimize semantic changes under Python 2
  12. Versions
  13. --------
  14. Projects using py3c will be compatible with CPython 2.6, 2.7, and 3.3+.
  15. Guides
  16. ------
  17. A detailed `porting guide`_ is provided.
  18. A `cheatsheet`_ is available for those that already know the Python C API,
  19. and want to know what the py3c macros do.
  20. .. _porting guide: http://py3c.readthedocs.org/en/latest/guide.html
  21. .. _cheatsheet: http://py3c.readthedocs.org/en/latest/cheatsheet.html
  22. Installation
  23. ------------
  24. If your build system supports pkg-config, you can set it up
  25. to look for a system-wide installation of py3c.
  26. Alternately, py3c can be used as a header-only library:
  27. copy the headers to your project and use them.
  28. If you wish to install py3c system-wide (e.g. if you are a distro packager),
  29. see the Contributing_ chapter in the documentation.
  30. .. _Contributing: http://py3c.readthedocs.org/en/latest/contributing.html
  31. Contribute
  32. ----------
  33. - Issue Tracker: http://github.com/encukou/py3c/issues
  34. - Source Code: http://github.com/encukou/py3c
  35. License
  36. -------
  37. The code is licensed under the MIT license. May it serve you well.
  38. The documentation is licensed under CC-BY-SA 3.0.
  39. See the files LICENSE.MIT and doc/LICENSE.CC-BY-SA-3.0.