Repository navigation
Expand file tree
/
Copy pathsetup.py
More file actions
95 lines (91 loc) · 3.29 KB
/
Copy pathsetup.py
File metadata and controls
95 lines (91 loc) · 3.29 KB
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
from setuptools import setup, find_packages, Extension
import os, sys
IS_PYPY = '__pypy__' in sys.builtin_module_names
if IS_PYPY:
ext_modules = [] # built-in
else:
extra_compile_args = []
extra_source_files = []
if sys.platform == 'win32':
libraries = []
elif sys.platform == 'darwin':
libraries = []
extra_compile_args = ['-Wno-unused']
elif sys.platform.startswith('linux'):
libraries = ['dl','unwind']
extra_compile_args = ['-Wno-unused']
if sys.maxsize == 2**63-1:
libraries.append('unwind-x86_64')
else:
libraries.append('unwind-x86')
extra_source_files = [
'src/libbacktrace/backtrace.c',
'src/libbacktrace/state.c',
'src/libbacktrace/elf.c',
'src/libbacktrace/dwarf.c',
'src/libbacktrace/fileline.c',
'src/libbacktrace/mmap.c',
'src/libbacktrace/mmapio.c',
'src/libbacktrace/posix.c',
'src/libbacktrace/sort.c',
]
else:
raise NotImplementedError("platform '%s' is not supported!" % sys.platform)
extra_compile_args.append('-I src/')
extra_compile_args.append('-I src/libbacktrace')
ext_modules = [Extension('_vmprof',
sources=[
'src/libudis86/decode.c',
'src/libudis86/itab.c',
'src/libudis86/udis86.c',
'src/_vmprof.c',
'src/stack.c',
'src/trampoline.c',
'src/machine.c',
'src/symboltable.c',
'src/compat.c',
] + extra_source_files,
depends=[
'src/vmprof_main.h',
'src/vmprof_main_32.h',
'src/vmprof_mt.h',
'src/vmprof_common.h',
],
extra_compile_args=extra_compile_args,
libraries=libraries)]
if sys.version_info[:2] >= (3, 3):
extra_install_requires = []
else:
extra_install_requires = ["backports.shutil_which"]
setup(
name='vmprof',
author='vmprof team',
version="0.4.0.dev9",
packages=find_packages(),
description="Python's vmprof client",
long_description='See https://vmprof.readthedocs.org/',
url='https://github.com/vmprof/vmprof-python',
install_requires=[
'requests',
'six',
'pytz',
'colorama',
] + extra_install_requires,
tests_require=['pytest','cffi','hypothesis'],
entry_points = {
'console_scripts': [
'vmprofshow = vmprof.show:main'
]},
classifiers=[
'License :: OSI Approved :: MIT License',
'Programming Language :: Python',
'Programming Language :: Python :: 2.7',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: Implementation :: CPython',
'Programming Language :: Python :: Implementation :: PyPy',
],
zip_safe=False,
include_package_data=True,
ext_modules=ext_modules,
)