1import os 2import sys 3import glob 4 5from setuptools import setup, find_packages 6from distutils.core import Extension 7from distutils.util import get_platform 8 9here = os.path.abspath(os.path.dirname(__file__)) 10README = open(os.path.join(here, 'README.txt')).read() 11CHANGES = open(os.path.join(here, 'CHANGES.txt')).read() 12 13setup(name='ed25519ll', 14 version='0.6', 15 description='A low-level ctypes wrapper for Ed25519 digital signatures.', 16 long_description=README + '\n\n' + CHANGES, 17 classifiers=[ 18 "Development Status :: 4 - Beta", 19 "Intended Audience :: Developers", 20 "Programming Language :: Python", 21 "Topic :: Security :: Cryptography", 22 "Programming Language :: Python", 23 "Programming Language :: Python :: 2", 24 "Programming Language :: Python :: 2.6", 25 "Programming Language :: Python :: 2.7", 26 "Programming Language :: Python :: 3", 27 "Programming Language :: Python :: 3.2", 28 "Programming Language :: Python :: 3.3", 29 ], 30 author='Daniel Holth', 31 author_email='dholth@fastmail.fm', 32 url='http://bitbucket.org/dholth/ed25519ll/', 33 keywords='ed25519', 34 license='MIT', 35 packages=['ed25519ll'], 36 include_package_data=True, 37 zip_safe=False, 38 tests_require=['nose'], 39 test_suite='nose.collector', 40 ext_modules=[ 41 Extension('ed25519ll._ed25519', 42 sources=[ 43 'ed25519-supercop-ref10/ge_frombytes.c', 44 'ed25519-supercop-ref10/fe_frombytes.c', 45 'ed25519-supercop-ref10/ge_tobytes.c', 46 'ed25519-supercop-ref10/fe_sq.c', 47 'ed25519-supercop-ref10/ge_scalarmult_base.c', 48 'ed25519-supercop-ref10/sc_reduce.c', 49 'ed25519-supercop-ref10/ge_p2_0.c', 50 'ed25519-supercop-ref10/ge_sub.c', 51 'ed25519-supercop-ref10/fe_sub.c', 52 'ed25519-supercop-ref10/ge_p2_dbl.c', 53 'ed25519-supercop-ref10/ge_double_scalarmult.c', 54 'ed25519-supercop-ref10/fe_0.c', 55 'ed25519-supercop-ref10/ge_p3_to_p2.c', 56 'ed25519-supercop-ref10/ge_precomp_0.c', 57 'ed25519-supercop-ref10/fe_cmov.c', 58 'ed25519-supercop-ref10/sc_muladd.c', 59 'ed25519-supercop-ref10/fe_isnegative.c', 60 'ed25519-supercop-ref10/ge_p3_dbl.c', 61 'ed25519-supercop-ref10/ge_add.c', 62 'ed25519-supercop-ref10/fe_neg.c', 63 'ed25519-supercop-ref10/ge_p3_0.c', 64 'ed25519-supercop-ref10/fe_1.c', 65 'ed25519-supercop-ref10/ge_madd.c', 66 'ed25519-supercop-ref10/fe_tobytes.c', 67 'ed25519-supercop-ref10/sign.c', 68 'ed25519-supercop-ref10/fe_copy.c', 69 'ed25519-supercop-ref10/ge_p1p1_to_p2.c', 70 'ed25519-supercop-ref10/fe_isnonzero.c', 71 'ed25519-supercop-ref10/open.c', 72 'ed25519-supercop-ref10/fe_sq2.c', 73 'ed25519-supercop-ref10/ge_msub.c', 74 'ed25519-supercop-ref10/fe_add.c', 75 'ed25519-supercop-ref10/fe_mul.c', 76 'ed25519-supercop-ref10/fe_pow22523.c', 77 'ed25519-supercop-ref10/fe_invert.c', 78 'ed25519-supercop-ref10/ge_p3_tobytes.c', 79 'ed25519-supercop-ref10/ge_p1p1_to_p3.c', 80 'ed25519-supercop-ref10/ge_p3_to_cached.c', 81 'ed25519-supercop-ref10/sha512-blocks.c', 82 'ed25519-supercop-ref10/sha512-hash.c', 83 'ed25519-supercop-ref10/verify.c', 84 'ed25519-supercop-ref10/keypair.c', 85 'ed25519-supercop-ref10/py.c'], 86 include_dirs=['ed25519-supercop-ref10', ], 87 export_symbols=["crypto_sign", 88 "crypto_sign_open", 89 "crypto_sign_keypair"], 90 compile_extra=['-march=native']), 91 ], 92 ) 93 94