forked from aburrell/aacgmv2
-
Notifications
You must be signed in to change notification settings - Fork 0
/
setup.py
93 lines (85 loc) · 3.14 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
#!/usr/bin/env python
import os
import re
from os import path
from setuptools import setup, find_packages
from distutils.core import Extension
def read(fname, **kwargs):
return open(path.join(path.dirname(__file__), fname),
encoding=kwargs.get('encoding', 'utf8')).read()
# enable code coverage for C code
# We can't use CFLAGS=-coverage in tox.ini, since that may mess with
# compiling dependencies (e.g. numpy). Therefore we set PY_CCOV=-coverage
# in tox.ini and copy it to CFLAGS here (after deps have been installed)
if 'PY_CCOV' in os.environ.keys():
os.environ['CFLAGS'] = os.environ['PY_CCOV']
setup(
name='aacgmv2',
version='2.6.2',
license='MIT',
description='A Python wrapper for AACGM-v2 magnetic coordinates',
long_description='%s\n%s' % (read('README.rst'),
re.sub(':[a-z]+:`~?(.*?)`', r'``\1``',
read('CHANGELOG.rst'))),
long_description_content_type='text/x-rst',
author='Angeline G. Burrell, Christer van der Meeren',
author_email='angeline.burrell@nrl.navy.mil',
url='https://github.com/aburrell/aacgmv2',
packages=find_packages(),
include_package_data=True,
zip_safe=False,
classifiers=[
# complete classifier list:
# http://pypi.python.org/pypi?%3Aaction=list_classifiers
'Development Status :: 5 - Production/Stable',
'Intended Audience :: Science/Research',
'License :: OSI Approved :: MIT License',
'Operating System :: Unix',
'Operating System :: POSIX',
'Operating System :: MacOS :: MacOS X',
'Operating System :: Microsoft :: Windows',
'Programming Language :: Python',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3.7',
'Programming Language :: Python :: 3.8',
'Programming Language :: Python :: 3.9',
'Programming Language :: Python :: 3 :: Only',
'Programming Language :: Python :: Implementation :: CPython',
'Topic :: Scientific/Engineering :: Physics',
'Topic :: Utilities',
],
keywords=[
'aacgm',
'aacgm-v2',
'aacgmv2',
'magnetic coordinates',
'altitude adjusted corrected geomagnetic coordinates',
'mlt',
'magnetic local time',
'conversion',
'converting',
],
python_requires='>=3.6',
install_requires=[
'numpy',
],
extras_require={'test': ['pytest'],
},
ext_modules=[
Extension('aacgmv2._aacgmv2',
sources=['aacgmv2/aacgmv2module.c',
'c_aacgmv2/src/aacgmlib_v2.c',
'c_aacgmv2/src/astalglib.c',
'c_aacgmv2/src/genmag.c',
'c_aacgmv2/src/igrflib.c',
'c_aacgmv2/src/mlt_v2.c',
'c_aacgmv2/src/rtime.c'],
include_dirs=['c_aacgmv2/include'])
],
entry_points={
'console_scripts': [
'aacgmv2 = aacgmv2.__main__:main',
]
},
)