-
Notifications
You must be signed in to change notification settings - Fork 17
/
setup.py
85 lines (73 loc) · 3.22 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
from setuptools import setup
from setuptools.extension import Extension
import numpy as np
import versioneer
## Metadata
project_name = 'fretbursts'
long_description = """
FRETBursts
==========
**FRETBursts** is a software toolkit for burst analysis of confocal
single-molecule FRET (smFRET) measurements. It can analyze both single-spot
and multi-spot smFRET data with or without alternating laser excitation (ALEX).
For more info please refer to:
- **FRETBursts: An Open Source Toolkit for Analysis of Freely-Diffusing Single-Molecule FRET**
*Ingargiola et. al.* (2016). PLoS ONE doi: `10.1371/journal.pone.0160716 <10.1371/journal.pone.0160716>`__.
Quick links:
- `FRETBursts Homepage <http://opensmfs.github.io/FRETBursts/>`_
- `FRETBursts Reference Documentation <http://fretbursts.readthedocs.org>`_
- `FRETBursts Tutorials <https://github.com/OpenSMFS/FRETBursts_notebooks>`_
See also `Release Notes <http://fretbursts.readthedocs.io/en/latest/releasenotes.html>`__.
"""
## Configuration to build Cython extensions
try:
from Cython.Distutils import build_ext
except ImportError:
# cython is not installed: do not build extensions
has_cython = False
ext_modules = []
else:
# cython is installed: register the extensions to be built
has_cython = True
ext_modules = [Extension("burstsearch_c",
[project_name + "/phtools/burstsearch_c.pyx"]),
Extension("phrates_c",
[project_name + "/phtools/phrates_cy.pyx"],
include_dirs = ["."],)]
## Configure setup.py commands
cmdclass = versioneer.get_cmdclass()
if has_cython:
cmdclass.update(build_ext=build_ext)
else:
print('WARNING: No cython found. Fast routines will not be installed.')
setup(name = project_name,
version = versioneer.get_version(),
cmdclass = cmdclass,
include_dirs = [np.get_include()],
ext_modules = ext_modules,
author = 'Antonino Ingargiola',
author_email = 'tritemio@gmail.com',
url = 'http://opensmfs.github.io/FRETBursts/',
download_url = 'http://opensmfs.github.io/FRETBursts/',
install_requires = ['numpy', 'scipy', 'matplotlib', 'lmfit', 'seaborn',
'phconvert', 'future'],
include_package_data = True,
license = 'GPLv2',
description = ("Burst analysis toolkit for single and multi-spot "
"smFRET data."),
long_description = long_description,
platforms = ('Windows', 'Linux', 'Mac OS X'),
classifiers=['Intended Audience :: Science/Research',
'Operating System :: OS Independent',
'Programming Language :: Python',
'Programming Language :: Python :: 2.7',
'Programming Language :: Python :: 3.4',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
'Topic :: Scientific/Engineering',
],
packages = ['fretbursts', 'fretbursts.utils', 'fretbursts.fit',
'fretbursts.phtools', 'fretbursts.dataload',
'fretbursts.tests'],
keywords = 'single-molecule FRET smFRET burst-analysis biophysics',
)