forked from gpiozero/gpiozero
-
Notifications
You must be signed in to change notification settings - Fork 0
/
setup.py
109 lines (94 loc) · 3.33 KB
/
setup.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
import os
import sys
from setuptools import setup, find_packages
"A simple interface to GPIO devices with Raspberry Pi."
if sys.version_info[0] == 2:
if not sys.version_info >= (2, 7):
raise ValueError('This package requires Python 2.7 or above')
elif sys.version_info[0] == 3:
if not sys.version_info >= (3, 2):
raise ValueError('This package requires Python 3.2 or above')
else:
raise ValueError('Unrecognized major version of Python')
HERE = os.path.abspath(os.path.dirname(__file__))
# Workaround <http://www.eby-sarna.com/pipermail/peak/2010-May/003357.html>
try:
import multiprocessing
except ImportError:
pass
__project__ = 'gpiozero'
__version__ = '1.3.1.post1'
__author__ = 'Ben Nuttall'
__author_email__ = 'ben@raspberrypi.org'
__url__ = 'https://github.com/RPi-Distro/python-gpiozero'
__platforms__ = 'ALL'
__classifiers__ = [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Education",
"Intended Audience :: Developers",
"Topic :: Education",
"Topic :: System :: Hardware",
"License :: OSI Approved :: BSD License",
"Programming Language :: Python :: 2",
"Programming Language :: Python :: 2.7",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.2",
"Programming Language :: Python :: 3.3",
"Programming Language :: Python :: 3.4",
"Programming Language :: Python :: 3.5",
"Programming Language :: Python :: Implementation :: PyPy",
]
__keywords__ = [
'raspberrypi',
'gpio',
]
__requires__ = [
]
__extra_requires__ = {
'doc': ['sphinx'],
'test': ['pytest', 'coverage', 'mock'],
}
if sys.version_info[:2] == (3, 2):
# Particular versions are required for Python 3.2 compatibility
__extra_requires__['doc'].extend([
'Jinja2<2.7',
'MarkupSafe<0.16',
])
__extra_requires__['test'][1] = 'coverage<4.0dev'
__entry_points__ = {
'gpiozero_pin_factories': [
'PiGPIOPin = gpiozero.pins.pigpiod:PiGPIOPin',
'RPiGPIOPin = gpiozero.pins.rpigpio:RPiGPIOPin',
'RPIOPin = gpiozero.pins.rpio:RPIOPin',
'NativePin = gpiozero.pins.native:NativePin',
'MockPin = gpiozero.pins.mock:MockPin',
'MockPWMPin = gpiozero.pins.mock:MockPWMPin',
],
}
def main():
import io
with io.open(os.path.join(HERE, 'README.rst'), 'r') as readme:
setup(
name = __project__,
version = __version__,
description = __doc__,
long_description = readme.read(),
classifiers = __classifiers__,
author = __author__,
author_email = __author_email__,
url = __url__,
license = [
c.rsplit('::', 1)[1].strip()
for c in __classifiers__
if c.startswith('License ::')
][0],
keywords = __keywords__,
packages = find_packages(),
include_package_data = True,
platforms = __platforms__,
install_requires = __requires__,
extras_require = __extra_requires__,
entry_points = __entry_points__,
)
if __name__ == '__main__':
main()