agl/curve25519-donna — pull request #18 by warner (2011-12-30 20:46:31+00:00)
Title: move Python setup.py to the top-level directory

This rearranges the `python/` code to allow the standard "`python setup.py install`" command to work from the top-level directory. It also allows a "`python setup.py sdist`" command to create a source tarball *almost* suitable for uploading to pypi.python.org, where all python users will be able to install it with e.g. "`easy_install curve25519-donna`", and other packages can automatically depend on it.

It's not quite ready for pypi yet, for two reasons:

* this `setup.py` still runs "git" to find out what version string it should use, so an unpacked tarball will fail to build (not having any git metadata). I'm working on a fix (using my https://github.com/warner/versioneer tool), but it's not a regression: the current `python/setup.py` behaves the same way

* before publishing it to pypi, we should decide if we want to call it "curve25519-donna" or just "curve25519" (or maybe "Curve25519", I dunno). Once other projects start embedding the name in their dependency list, it gets harder to change

This patch adds a new python-specific file to the top-level directory (`setup.py`), and when the python code is built, another generated file appears (`MANIFEST`). I hope these aren't cluttering things up too badly.

I tested it against python2.6 and 3.1, so I don't think I changed any compatibility properties.

@martinsjoborg, you might want to take a look at this one too.