diff options
author | cliechti <cliechti@f19166aa-fa4f-0410-85c2-fa1106f25c8a> | 2013-10-17 16:04:58 +0000 |
---|---|---|
committer | cliechti <cliechti@f19166aa-fa4f-0410-85c2-fa1106f25c8a> | 2013-10-17 16:04:58 +0000 |
commit | 8bec55528827d09937f411e27195ec396993d75c (patch) | |
tree | aae3383121e8513390cfa7362de60348e0e45699 /setup.py | |
parent | 5425bb0510ab10b4601139b7fec64a61e2aec543 (diff) | |
download | pyserial-git-8bec55528827d09937f411e27195ec396993d75c.tar.gz |
Diffstat (limited to 'setup.py')
-rw-r--r-- | setup.py | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/setup.py b/setup.py new file mode 100644 index 0000000..5a0d27f --- /dev/null +++ b/setup.py @@ -0,0 +1,88 @@ +# 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") + else: + sys.stderr.write('Detected Python 3, using 2to3\n') +else: + from distutils.command.build_py import build_py + from distutils.command.build_scripts import build_scripts + + +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", + 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', + 'Programming Language :: Python :: 3.3', + '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}, + use_2to3 = sys.version_info >= (3, 0), # for distribute + + scripts = ['serial/tools/miniterm.py'], +) |