-
Notifications
You must be signed in to change notification settings - Fork 33
/
setup.py
executable file
·57 lines (40 loc) · 1.93 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
#!/usr/bin/python3
import os
from distutils.core import setup
from distutils.extension import Extension
from Cython.Build import cythonize
class PackageInfo(object):
def __init__(self, info_file):
with open(info_file) as f:
exec(f.read(), self.__dict__)
self.__dict__.pop('__builtins__', None)
def __getattribute__(self, name): # this is here to silence the IDE about missing attributes
return super(PackageInfo, self).__getattribute__(name)
def find_packages(root):
return [directory.replace(os.path.sep, '.') for directory, sub_dirs, files in os.walk(root) if '__init__.py' in files]
def list_resources(source_directory, destination_directory):
return [(directory.replace(source_directory, destination_directory), [os.path.join(directory, file) for file in files]) for directory, sub_dirs, files in os.walk(source_directory)]
package_info = PackageInfo(os.path.join('blink', '__info__.py'))
package_info.__description__ = "Fully featured, easy to use SIP client with a Qt based UI"
setup(
name=package_info.__project__,
version=package_info.__version__,
description=package_info.__summary__,
long_description=package_info.__description__,
license=package_info.__license__,
url=package_info.__webpage__,
author=package_info.__author__,
author_email=package_info.__email__,
platforms=["Platform Independent"],
classifiers=[
"Development Status :: 5 - Production/Stable",
"Intended Audience :: End Users/Desktop",
"License :: GNU General Public License 3 (GPLv3)",
"Operating System :: OS Independent",
"Programming Language :: Python"
],
packages=find_packages('blink'),
ext_modules=cythonize([Extension(name="blink.screensharing._rfb", sources=["blink/screensharing/_rfb.pyx"], libraries=["vncclient"])]),
data_files=list_resources('resources', destination_directory='share/blink'),
scripts=['bin/blink']
)