| # setup.py for pySerial |
| # |
| # Windows installer: |
| # "python setup.py bdist_wininst" |
| # |
| # Direct install (all systems): |
| # "python setup.py install" |
| # |
| # For Python 3.x use the corresponding Python executable, |
| # e.g. "python3 setup.py ..." |
| |
| import sys |
| |
| from distutils.core import setup |
| |
| if sys.version_info >= (3, 0): |
| try: |
| from distutils.command.build_py import build_py_2to3 as build_py |
| from distutils.command.build_scripts import build_scripts_2to3 as build_scripts |
| except ImportError: |
| raise ImportError("build_py_2to3 not found in distutils - it is required for Python 3.x") |
| suffix = "-py3k" |
| else: |
| from distutils.command.build_py import build_py |
| from distutils.command.build_scripts import build_scripts |
| suffix = "" |
| |
| |
| if sys.version < '2.3': |
| # distutils that old can't cope with the "classifiers" or "download_url" |
| # keywords and True/False constants and basestring are missing |
| raise ValueError("Sorry Python versions older than 2.3 are no longer" |
| "supported - check http://pyserial.sf.net for older " |
| "releases or upgrade your Python installation.") |
| |
| # importing version does not work with Python 3 as files have not yet been |
| # converted. |
| #~ import serial |
| #~ version = serial.VERSION |
| |
| import re, os |
| version = re.search( |
| "VERSION.*'(.+)'", |
| open(os.path.join('serial', '__init__.py')).read()).group(1) |
| |
| |
| setup( |
| name = "pyserial" + suffix, |
| description = "Python Serial Port Extension", |
| version = version, |
| author = "Chris Liechti", |
| author_email = "cliechti@gmx.net", |
| url = "http://pyserial.sourceforge.net/", |
| packages = ['serial', 'serial.tools', 'serial.urlhandler'], |
| license = "Python", |
| long_description = "Python Serial Port Extension for Win32, Linux, BSD, Jython, IronPython", |
| classifiers = [ |
| 'Development Status :: 5 - Production/Stable', |
| 'Intended Audience :: Developers', |
| 'Intended Audience :: End Users/Desktop', |
| 'License :: OSI Approved :: Python Software Foundation License', |
| 'Natural Language :: English', |
| 'Operating System :: POSIX', |
| 'Operating System :: Microsoft :: Windows', |
| #~ 'Operating System :: Microsoft :: Windows :: Windows CE', # could work due to new ctypes impl. someone needs to confirm that |
| 'Programming Language :: Python', |
| 'Programming Language :: Python :: 2', |
| 'Programming Language :: Python :: 2.3', |
| 'Programming Language :: Python :: 2.4', |
| 'Programming Language :: Python :: 2.5', |
| 'Programming Language :: Python :: 2.6', |
| 'Programming Language :: Python :: 2.7', |
| 'Programming Language :: Python :: 3', |
| 'Programming Language :: Python :: 3.0', |
| 'Programming Language :: Python :: 3.1', |
| 'Programming Language :: Python :: 3.2', |
| 'Topic :: Communications', |
| 'Topic :: Software Development :: Libraries', |
| 'Topic :: Software Development :: Libraries :: Python Modules', |
| 'Topic :: Terminals :: Serial', |
| ], |
| platforms = 'any', |
| cmdclass = {'build_py': build_py, 'build_scripts': build_scripts}, |
| |
| scripts = ['serial/tools/miniterm.py'], |
| ) |