-
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathsetup.py
90 lines (82 loc) · 2.79 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
from setuptools import setup, Extension, find_packages
import sys
from os.path import join, dirname, realpath, exists
# The next three lines are necessary for setup.py install to include
# ChangeLog and Documentation of PyScanFCS
from distutils.command.install import INSTALL_SCHEMES
for scheme in INSTALL_SCHEMES.values():
scheme['data'] = scheme['purelib']
# We don't need cython if a .whl package is available.
# Try to import cython and throw a warning if it does not work.
try:
import numpy as np
except ImportError:
print("NumPy not available. Building extensions "+
"with this setup script will not work:", sys.exc_info())
extensions = []
else:
extensions = [Extension("pyscanfcs.bin_pe",
sources=["pyscanfcs/bin_pe.pyx"],
include_dirs=[np.get_include()]
)
]
try:
import urllib.request
except ImportError:
pass
else:
# Download documentation if it was not compiled
pdfdoc = join(dirname(realpath(__file__)), "doc/PyScanFCS_doc.pdf")
webdoc = "https://github.com/FCS-analysis/PyScanFCS/wiki/PyScanFCS_doc.pdf"
if not exists(pdfdoc):
print("Downloading {} from {}".format(pdfdoc, webdoc))
import urllib
#testfile = urllib.URLopener()
urllib.request.urlretrieve(webdoc, pdfdoc)
author = u"Paul Müller"
authors = [author]
description = 'Scientific tool for perpendicular line scanning FCS.'
name='pyscanfcs'
year = "2012"
sys.path.insert(0, realpath(dirname(__file__))+"/"+name)
try:
from _version import version
except:
version = "unknown"
setup(
name=name,
author=author,
author_email='[email protected]',
url='https://github.com/FCS-analysis/PyScanFCS',
version=version,
packages=find_packages(include=(name+"*",)),
license="GPL v2",
description=description,
long_description=open('README.rst').read() if exists('README.rst') else '',
include_package_data=True,
ext_modules = extensions,
install_requires=[
"astropy",
"matplotlib>=1.1.0",
"multipletau>=0.1.4",
"numpy>=1.5.1",
"scipy>=0.8.0",
"tifffile>=2020.5.25",
"wxpython>=4.0.3",
],
setup_requires=['cython', 'numpy', 'pytest-runner'],
tests_require=["pytest"],
python_requires='>=3.4, <4',
keywords=["fcs", "fluorescence correlation spectroscopy",
"perpendicular line scanning", "multiple-tau"],
classifiers= [
'Operating System :: OS Independent',
'Programming Language :: Python :: 3',
'Topic :: Scientific/Engineering :: Visualization',
'Intended Audience :: Science/Research'
],
platforms=['ALL'],
entry_points={
"gui_scripts": ["pyscanfcs=pyscanfcs.gui_wx.main:Main"]
}
)